내 haproxy 구성은 다음과 같습니다.
backend my-liveBackend
timeout connect 5s
timeout server 600s
mode http
balance uri len 52
server my-live-backend1 10.80.1.161:8080 check
server my-live-backend2 10.80.1.162:8080 check
server my-live-backend3 10.80.1.163:8080 check
server my-live-backend4 10.80.1.164:8080 check
server my-live-backend5 10.80.10.165:8080 check backup
server my-live-backend6 10.80.10.166:8080 check backup
server my-live-backend7 10.80.10.167:8080 check backup
server my-live-backend8 10.80.10.168:8080 check backup
백업이 아닌 서버에 오류가 발생하면 haproxy는 이를 교체하기 위해 백업 서버를 활성화하지 않습니다.
나는 백업이 아닌 모든 작업이 실패하는 경우에만 haproxy가 백업을 활성화한다는 것을 이해합니다.
https://cbonte.github.io/haproxy-dconv/1.8/configuration.html#5.2-backup
서버 라인에 "백업"이 존재하는 경우 해당 서버는 다른 모든 비백업 서버를 사용할 수 없을 때 로드 밸런싱에만 사용됩니다.
실제로 라이브 서버를 유지 관리하는 동안 여러 개의 라이브 서버(4개 권장)와 백업용 서버가 필요합니다. 이 작업을 수행할 수 있는 옵션이 있습니까? "최소 4개의 서버가 항상 활성화되길 원합니다"와 같습니다.
이 작업을 수행하는 문서에서 아무것도 찾을 수 없습니다.
내 기대는 이렇습니다.
- 생방송 1
- 다음 live2
- 라이브 3UP
- 라이브 4 UP
- live5 BACKUP UP ACTIVE <<== 2가 유지 관리 중인 동안 2를 대체합니다.
- live6 백업이 활성화되지 않았습니다
- live7 백업이 활성화되지 않았습니다
- live8 백업이 활성화되지 않았습니다
답변1
글쎄, 나는 일어나서 haproxy 관리자에게 갔더니 그는 다음과 같이 대답했습니다. 로드맵에는 있지만 ETA는 없고 복잡한 코드 변경입니다.
이봐:https://github.com/haproxy/haproxy/issues/866#issuecomment-776658824