Bamboo 로드 밸런서 설치 및 구성

로드 밸런서에서 프로토콜 및 상태 확인 구성

로드 밸런서는 다음 프로토콜을 프록시해야 합니다.

프로토콜

로드 밸런서의 일반적인 포트

Bamboo 클러스터 노드의 일반 포트

참고

프로토콜

로드 밸런서의 일반적인 포트

Bamboo 클러스터 노드의 일반 포트

참고

HTTP

80

8085

HTTP 모드. 세션 선호도("sticky sessions")는 52자 BAMBOOSESSIONID 쿠키를 사용하여 활성화해야 합니다.

HTTPS

443

8085

HTTP 모드. 로드 밸런서에서 SSL을 종료하고 Bamboo 클러스터 노드에 일반 HTTP를 실행하는 것이 좋습니다.

TCP

54663

54663

TCP 모드. 원격 에이전트 연결용

로드 밸런서는 BAMBOOSESSIONID 쿠키를 사용하여 세션 선호도("sticky sessions")를 지원해야 합니다. Bamboo Data Center는 로드 밸런서가 항상 각 사용자의 요청을 동일한 클러스터 노드로 보낸다고 가정합니다. 그렇지 않으면 사용자가 예기치 않게 로그아웃되거나 HTTP 세션에 저장될 수 있는 다른 정보가 손실될 수 있습니다.

로드 밸런서를 선택할 때는 HTTP, HTTPS 및 TCP 프로토콜을 지원해야 합니다.

참고:

  • Apache는 TCP 모드 로드 밸런싱을 지원하지 않습니다.

  • 1.5.0 이전 버전의 HAProxy는 HTTPS를 지원하지 않습니다.

로드 밸런서 설정

본 예제는 오픈 소스 소프트웨어 로드 밸런서인 HAProxy를 기반으로 작성 하였습니다.

$ vi /etc/haproxy/haproxy.cfg global log 127.0.0.1 local0 log 127.0.0.1 local1 debug maxconn 4096 defaults log global mode http option httplog option dontlognull retries 3 option redispatch maxconn 2000 timeout connect 5000 timeout client 50000 timeout server 50000 frontend localnodes bind *:80 mode http # stats enable # stats uri /haproxy?stats # stats realm Strictly\ Private # stats hide-version # stats auth admin:SECRET_PASSWORD default_backend nodes frontend mainjms bind *:54663 option tcplog mode tcp default_backend brokers backend nodes mode http balance roundrobin option forwardfor http-request set-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto https if { ssl_fc } option httpchk GET /rest/api/latest/status HTTP/1.1\r\nHost:\ 127.0.0.1 cookie BAMBOOSESSIONID insert nocache server bamboo1 192.168.0.1:8085 check cookie bamboo1 # server bamboo2 192.168.0.2:8085 check cookie bamboo2 backend brokers mode tcp option httpchk GET /rest/api/latest/status HTTP/1.1\r\nHost:\ 127.0.0.1 server bambooTcp1 192.168.0.1:54663 check port 54663 # server bambooTcp2 192.168.0.2:54663 check port 54663