답변:
HAProxy의 저자 인 Willy Tarreau는 http://www.formilux.org/archives/haproxy/1003/3259.html 에서이 질문에 매우 정확하게 대답했습니다 .
위 링크에서 인용
하트 비트는 중복 haproxy 설정을 얻는 데 가장 적합한 도구가 아니며 클러스터를 구축하도록 설계되었습니다. 이는 두 개의 중복 상태 비 저장 네트워크 장비를 갖는 것과는 다릅니다. keepalived 또는 ucarp와 같은 네트워크 지향 도구가 해당 작업에 가장 적합합니다.
그 두 가족의 차이점은 간단합니다
- 하트 비트 와 같은 클러스터 지향 제품 은 공유 리소스가 최대 한 곳에 존재하도록합니다 . 이것은 공유 파일 시스템, 디스크 등에 매우 중요합니다. 스위치 오버 중에 한 노드에서 다른 노드로 서비스를 중단하도록 설계되었습니다. 이렇게하면 공유 리소스에 동시에 액세스 할 수 없습니다. 이것은 달성하기가 매우 어려운 작업이며 잘 수행됩니다.
- keepalived 와 같은 네트워크 지향 제품 은 공유 IP 주소가 최소한 한 곳에 존재할 것 입니다. 더 이상 서비스 나 리소스에 대해 이야기하는 것이 아니라 IP 주소로만 재생됩니다. 서비스를 중단하거나 가동하려고 시도하지 않으며 서비스를 제공하는 데 가장 적합한 노드를 결정하기 위해 특정 수의 기준을 고려합니다. 그러나 서비스는 이미 두 노드 모두에 있어야합니다. 따라서 중복 라우터, 방화벽 및 프록시에는 매우 적합하지만 디스크 어레이나 파일 시스템에는 전혀 적합하지 않습니다.
(예, 나는 그것이 오래된 질문이라는 것을 알고 있지만 나중에 참조 할 수 있습니다)
명확하고 일관된 차별화가 없습니다. 이 단어들은 때때로 다소 상호 교환 적으로 사용됩니다.
Keepalived 라는 고 가용성 설정에 대한 공통 사용자 영역 데몬이 있으며 Linux HA 프로젝트에는 Heartbeat라는 데몬이 있었으며 현재 Pacemaker로 변경되었습니다 . (나는 당신이 그 두 시스템에 대한 완전한 개요를 요구하지 않았으며 모든 차이점이 무엇인지, IMHO가 주제가 아닌 것임을 믿습니다.)
용어를 매일 사용 하면 가장 일반적인 용도는 다음과 같습니다.
"Keepalive"는보다 일반적으로 서비스의 가용성을 높이는 시스템을 말합니다.
"하트 비트"는보다 구체적으로 고 가용성 설정의 구성원에게 정기적으로 "예, 여전히 살아 있습니다!"를 보내는 통신 프로토콜을 나타냅니다. 메시지. 그런 다음 일정 시간 전에 "예, 살아 있습니다"라는 메시지가 표시되지 않으면 동료가 조치를 취합니다 (예 : 다른 호스트가 다운 됨). 이것은 맥박과 같은 느낌이므로 이름입니다.