HAProxy에서 "가중치 설정"을 사용하는 방법

HAProxy에서 "가중치 설정"을 사용하는 방법

안녕하세요. 두 서버 간의 트래픽 흐름 균형을 맞추기 위해 haproxy.cfg에 HAProxy 서버를 구성했습니다.

server web1 10.10.10.10 weight 50
server web2 10.10.10.11 weight 50

set weight <backend>/<server> <weight>[%] 테스트 목적으로 가중치를 동적으로 설정해야 하므로 이 문서에서 언급한 대로 명령을 사용합니다. http://cbonte.github.io/haproxy-dconv/configuration-1.4.html#hash-type

1) 그들이 언급한 문서에서

상대 가중치는 0~100% 사이에서만 허용되며 절대 가중치는 0~256 사이에서 허용됩니다.

백분율 값이 70%인 web1에 대해 설정된 가중치를 사용하면 web1(처음에 서버에 구성됨) 트래픽에 대해 할당된 50이 전달된다는 의미입니까? 그렇다면 나머지 30%는 해당 50 값에서 전달됩니다. 통과될까?

2) 또 다른 쿼리는 set Weight 명령을 다음과 같이 사용하는 경우입니다.

set weight web1 10.10.10.10 3
set weight web2 10.10.10.11 1

이는 web1 트래픽의 75%와 web2 트래픽의 25%를 의미합니까? 트래픽을 비율에 따라 분할하여 설정된 가중치로 사용하는 방법입니다.

가능하다면 트래픽 분할에 절대 가중치를 사용하는 방법을 알려주십시오. 답변 해주셔서 감사합니다.

답변1

질문 1:

그만큼선적 서류 비치상태:

값이 '%' 기호로 끝나는 경우 새 가중치는 처음에 구성된 가중치를 기준으로 합니다.

따라서 이는 실제로 "web1에 할당된 50"에서 70%를 의미합니다. 나머지 30%가 어디로 가는지는 문서에서 명확하지 않지만 삭제할 수 없으므로 web2여야 합니다.

질문 2:

그만큼HAProxy 문서상태:

"가중치" 매개변수는 다른 서버에 비해 서버의 가중치를 조정하는 데 사용됩니다. 모든 서버는 무게에 비례하여 로드를 받습니다. 모든 가중치의 합에 비례, 따라서 무게가 높을수록 하중도 높아집니다. 기본 가중치는 1이고 최대값은 256입니다.

그렇습니다. 이는 web1이 트래픽의 75% = 3/(1+3)을 수신하고 web2가 트래픽의 25%를 수신한다는 의미입니다.

추가 질문:

트래픽을 비율에 따라 분할하여 설정된 가중치로 사용하는 방법입니다.

가능하다면 트래픽 분할에 절대 가중치를 사용하는 방법을 알려주십시오.

이 두 가지 질문을 이해하지 못합니다. 좀 더 자세히 설명해 주시겠어요?

관련 정보