IBM Cloud Docs
IBM Cloud Load Balancer로 고급 트래픽 관리

IBM Cloud Load Balancer로 고급 트래픽 관리

IBM Cloud® Load Balancer 서비스와 함께 사용할 수 있는 여러 고급 트래픽 관리 기능에 대해 학습하십시오.

최대 연결 수

제공된 프론트 엔드 가상 포트에 대한 최대 동시 연결 수를 제한하려면 max connections 구성을 사용하십시오. 특정 프런트엔드 가상 포트에 대한 최대 동시 연결 수 또는 모든 프런트엔드 가상 포트에 대한 시스템 전체 동시 연결 수는 15000개입니다. 기본적으로 최대값인 15000으로 설정되어 있습니다.

세션 지속성

로드 밸런서는 연결의 소스 IP를 기준으로 세션 지속성을 지원합니다. 예를 들어, 포트 80(HTTP)에 대해 사용으로 설정된 source IP 유형 세션 지속성이 있는 경우에는 동일한 소스 IP 클라이언트의 후속 HTTP 연결 시도가 동일한 백엔드 서버에서 지속됩니다. 이 기능은 지원되는 세 개의 모든 프로토콜(HTTP, HTTPS, TCP)에 대해 사용 가능합니다.

로드 밸런서는 또한 HTTP 쿠키를 기반으로 세션 지속성을 지원합니다. 예를 들어 포트 80(HTTP)에 대해 HTTP Cookie 유형 세션 지속성을 사용하도록 설정한 경우 로드 밸런서가 백엔드 서버로부터 첫 번째 응답을 받으면 응답 헤더에 IBMCLB 이름과 back-end server UUID 값을 가진 쿠키를 추가합니다. 이후에 이 쿠키가 포함된 모든 HTTP 요청이 로드 밸런서에 도달하면 해당 요청이 동일한 백엔드 서버에서 지속됩니다. 이 기능은 HTTP 및 HTTPS에 사용할 수 있습니다.

HTTP 유지

로드 밸런서가 클라이언트 및 백엔드 서버 모두에서 사용으로 설정된 경우 HTTP keep alive가 지원됩니다. 로드 밸런서는 서버 측 HTTP 연결을 재사용하여 연결 효율성을 높이고 대기 시간을 줄입니다.

연결 제한시간

로드 밸런서에 사용되는 제한시간 값은 다음과 같습니다.

로드 밸런서 시간 초과 값
이름 설명 기본 제한시간 사용자 구성 가능
서버 측 연결 시도 로드밸런서가 백엔드 서버와 TCP 연결을 설정하는 데 사용할 수 있는 최대 시간 창입니다. 연결 시도가 실패하면 로드 밸런서는 사용자가 구성한 로드 밸런싱 메소드에 따라 다음으로 사용 가능한 서버에 연결을 시도합니다. 5초 아니오
클라이언트 측 유휴 연결 클라이언트가 연결을 제대로 종료하지 못한 경우 로드 밸런서가 클라이언트 측 연결을 중단시킨 후의 최대 유휴 시간입니다. 50초
서버 측 유휴 연결 로드 밸런서가 서버 측 연결을 끊은 후의 최대 유휴 시간(TCP의 백엔드 프로토콜 구성 사용)입니다. 로드 밸런서가 유휴 제한시간 기간 내에 HTTP 요청에 대한 응답을 수신하지 못하는 경우 HTTP의 백엔드 프로토콜 구성을 사용하여 일반 클라이언트에 오류 메시지를 리턴합니다. 50초

서버 측 및 클라이언트 측 유휴 연결 시간 제한 값은 API를 사용하여 구성할 수 있습니다. 서버 타임아웃ParameterName: serverTimeout) 및 클라이언트 타임아웃ParameterName: clientTimeout) 값은 SoftLayer_Network_LBaaS_Listener 서비스의 UpdateLoadBalancerProtocols 방법을 사용하여 최대 2시간(범위: 1~7200초)까지 초 단위로 설정할 수 있습니다. 사용자가 서버 또는 클라이언트 제한시간 값을 제공하지 않으면 로드 밸런서는 해당 제한시간에 대해 기본값(표 참조)을 사용합니다.

유휴 연결 시간 제한 값을 길게 설정하면 유휴 연결이 최대 동시 연결 수인 15,000개에 포함되므로 데이터 경로 트래픽에 지연이 발생하거나 차단될 수 있습니다. 데이터 경로 트래픽이 중단되지 않도록 최대 동시 연결 수와 함께 유휴 연결 시간 제한 값을 고려하세요.

일반 클라이언트 IP 주소 유지

IBM Cloud Load Balancer는 리버스 프록시로 작동하므로 클라이언트로부터 수신되는 트래픽을 종료합니다. 자체 IP 주소를 사용하여 백엔드 서버 인스턴스에 대한 개별 연결을 설정합니다. 백엔드 서버(프론트 엔드 HTTP 또는 HTTPS 연결에 대한)를 사용하는 HTTP 연결의 경우 로드 밸런서는 X-Forwarded-For HTTP 헤더 내에 기존의 클라이언트 IP 주소를 포함하여 이를 유지합니다. TCP 연결의 경우 기존의 클라이언트 IP 정보가 유지되지 않습니다.

일반 클라이언트 프로토콜 유지

IBM Cloud Load Balancer는 프론트 엔드 HTTP/HTTPS 연결을 위해 클라이언트에서 사용하는 원래 프로토콜을 유지합니다. 이를 위해 X-Forwarded-Proto HTTP 헤더 내에 원래 프로토콜을 포함시킵니다. TCP 프로토콜을 사용하는 경우 로드 밸런서에서 계층 7 트래픽을 검토하지 않으므로 TCP 프로토콜에는 이 사항이 적용되지 않습니다.