heartbeat은 linux-ha 프로젝트에서 만든 툴이다. linux-ha 프로젝트의 목표는 리눅스 운영체제에 고가용성을 제공하는 것이다. 

인터넷 상에서 상용 서비스가 급속히 증가하고 있는데, 이런 것들은 중간에 중단되는 일이 없이 지속적으로 서비스를 제공하는 것이 중요하다. 이러한 특징을 고가용성이라고 하는데, 이러한 특징은 하드웨어나 소프트웨어를 중복되게 배치함으로써 가능하다. 

예를 들어 www.yahoo.com과 같은 회사는 http 서버가 잠시만 다운되어도 막대한 손실을 입을 수 있다. 이러한 회사는 http 서버를 2개(혹은 그 이상)를 둔다. 하나는 primary, 다른 하나는 standby이다. 평소에는 primary가 웹서버 역할을 하지만, primary가 고장이 나거나 갑자기 전원이 꺼지는 경우에는 standby가 primary 대신 웹서버의 역할을 한다. 이렇게 하면 외부에서 www.yahoo.com에 접속하는 사용자는 웹서버가 다운되었다는 사실을 전혀 알지 못 하고, 평소처럼 접속할 수 있다.


그렇다면 primary에 고장이 발생했다는 사실을 standby가 알 수 있어야만 primary를 대신해서 웹서비스를 할 수 있을 것이다. 이것은 어떻게 가능할까? 평소에 primary와 standby는 주기적으로 메세지를 교환한다. 이 메세지가 어느 시간 이상동안 도착하지 않으면 standby는 primary가 고장난 것으로 간주한다. 이 때 주고 받는 메세지를 heartbeat(심장 박동)이라고 한다. 위에서 이야기한 linux-ha 프로젝트에서 구현한 heartbeat이라는 툴은 이러한 메세지를 주고 받는 기능뿐만 아니라, 실제로 primary가 고장이 난 경우에 primary가 제공하던 서비스를 standby에서 제공할 수 있도록 하는 기능도 포함되어 있다.



'Linux' 카테고리의 다른 글

Heartbeat 설정하기 3  (0) 2015.09.13
Heartbeat 설치하기 2  (0) 2015.09.13
TCPDUMP 사용법  (0) 2015.09.06
리눅스 메모리 정리  (0) 2015.08.15
linux sh 파일 실행 방법  (0) 2015.06.16

+ Recent posts