답변:
두 개의 haproxy 인스턴스에서로드 밸런싱이 필요한로드가 너무 많은 경우 DNS 라운드 로빈은 나쁜 생각이 아닙니다 (이로드가 있으면 놀랄 것입니다). DNS 라운드 로빈은 양호한 페일 오버를 제공하지 않습니다.
Stack Overflow heartbeat
에서는 단일 가상 IP를 제공하는 데 사용 하며이 IP는 한 번에 하나의 haproxy 호스트에서만 활성화됩니다 (정지 된 경우 다른 IP가이 IP를 인수 함). 하트 비트를 사용하여 각 컴퓨터에 IP를 설정 한 다음 두 컴퓨터 사이에 DNS 라운드 로빈을 사용할 수 있습니다. 하나가 실패하면 다른 하나는 두 IP를 모두 갖게됩니다.
HAProxy는 물리적 서버에서 약 1-5 %의 CPU를 사용하여 단일 트래픽을 균형있게 유지합니다 Intel(R) Xeon(R) CPU E5504 @ 2.00GHz
. 따라서 HAProxy는 일반적으로 많은 트래픽을 쉽게 처리 할 수 있습니다.
-c
하지만 바인딩 구성 실수와 같은 것을 포착하지 못할 수 있습니다.
Kyle이 말했듯이 하트 비트 는 두 개의 haproxy 서버가 페일 오버 쌍으로 작동하도록하는 데 사용될 수 있습니다. 그러나 많은 사람들이 그 일에 심장 박동 을 사용하지만 , keepalived 는 haproxy의 저자에 의해 제안됩니다.
그는 haproxy 메일 링리스트에 대한 세부 사항을 설명합니다 : http://www.formilux.org/archives/haproxy/1003/3259.html
간단히 말하면 다음과 같습니다.
하트 비트는 클러스터 지향입니다. 단 하나의 서버 만 리소스 (예 : SAN 스토리지)에 액세스 할 수 있습니다.
keepalived는 네트워크 중심입니다. 적어도 하나의 서버에 IP가 있는지 확인합니다.
당신이 찾고있는 것을 찾을 수 있습니다 : http://blog.haproxy.com/2014/01/17/emulating-activepassing-application-clustering-with-haproxy/