ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 로드 밸런싱(Load Balancing)
    IT/네트워크 2023. 9. 4. 11:27

    로드 밸런싱(Load Balancing)

    로드 밸런싱(Load Balancing)은 여러 대의 서버에 들어오는 데이터 요청을 고르게 분배하는 방법입니다. 예를 들어, 많은 사람들이 같은 웹사이트를 동시에 방문한다면, 하나의 서버만 사용하면 그 서버는 버겁게 될 것입니다. 이 문제를 해결하기 위해 로드 밸런서가 사용됩니다.

    Load Balancer(로드 밸런서)


    로드 밸런서는 트래픽의 중재자 같은 역할을 합니다. 여러 대의 서버가 있을 때 어떤 서버가 어느 정도 일을 하고 있는지를 살펴보고, 적절히 일을 분배합니다.


    동작 원리

    클라이언트(일반 사용자)가 데이터를 요청하면, 먼저 로드 밸런서에 도달합니다.
    로드 밸런서는 그 요청을 받아, 가장 적합한 서버에게 해당 요청을 전달합니다.
    서버는 요청을 처리한 후 결과를 클라이언트에게 보냅니다.

     

    간단한 예시로 이해해보세요.
    3개의 카페가 있는데, 한 카페는 사람들로 붐비고, 다른 두 카페는 비어있다고 생각해보세요.
    로드 밸런서는 문 앞에서 사람들을 어느 카페로 가야 하는지 지시하는 사람처럼 작동합니다.

     

    장점: 서비스가 끊기지 않고 안정적으로 운영됩니다.
    각 서버의 부하를 줄여 효율적인 작업이 가능합니다.
    단점: 로드 밸런서 자체에 문제가 생기면 전체 서비스에 문제가 생길 수 있습니다.

     

     


    Round Robin 방식

    Round Robin은 가장 간단한 부하 분산 알고리즘 중 하나입니다. 여기서는 순차적으로 각 서버에 요청을 분배합니다.
    첫 번째 요청은 첫 번째 서버로, 두 번째 요청은 두 번째 서버로, 그리고 마지막 서버에 요청을 보낸 후에는 다시 첫 번째 서버로 돌아가서 과정을 반복합니다.

    장점: 구현이 쉽고 단순합니다.
    단점: 모든 서버가 동일한 성능을 가진다고 가정하므로, 실제로는 서버 간 성능 차이가 클 경우에는 비효율적입니다.


    LB 모드
    L3 DSR(Direct Server Return) Tunnel 방식: 클라이언트의 요청은 로드 밸런서를 거쳐 해당 서버로 전달됩니다. 하지만 응답은 로드 밸런서를 거치지 않고 직접 클라이언트로 반환됩니다. 이 방식은 로드 밸런서의 부하를 줄여 성능을 향상시킵니다.

     

    INLINE 구성

    INLINE 모드에서는 로드 밸런서가 클라이언트와 서버 사이에 "인라인"으로 위치하게 됩니다. 모든 트래픽은 로드 밸런서를 거쳐서 전달되며, 로드 밸런서는 트래픽을 분산시키기 전에 추가적인 처리(예: SSL 해독)를 수행할 수 있습니다.

    장점: L3 DSR은 로드 밸런서의 부하를 줄이며, INLINE은 복잡한 트래픽 처리가 가능합니다.
    단점:L3 DSR은 서버 구성이 복잡할 수 있고, INLINE은 로드 밸런서 자체가 병목 현상의 원인이 될 수 있습니다.

     

    'IT > 네트워크' 카테고리의 다른 글

    Virtual IP  (0) 2023.09.04
Designed by Tistory.