728x90
728x90
HA란?
- High Availability (고가용성)
- 즉 애플리케이션의 다운타임을 최소화하는 것이다
- 이를 구현하려면 2개 이상의 호스트들을 묶어서(Clustering) 하나의 호스트가 죽을 시 다른 호스트가 그 역할을 대신 이어나가야 한다
- 즉 이중화 구성을 하는 것
- 윈도우같은 경우는 MSCS를 통해 GUI로 구현 가능
Pacemaker란?
- 리눅스의 이중화 도구
- 오픈소스 HA Cluster Resource Manager
- 즉, 여러 대의 호스트들을 Cluster로 묶고 그 호스트들의 자원을 관리한다
Pacemaker의 내부 구성 요소
- CRMd (Cluster Resource Management daemon)
- main controlling process
- 모든 리소스 작업 라우팅
- CIB (Cluster Information Base)
- 설정 정보 관리 데몬 - XML 파일로 설정
- PEngine (PE, Policy Engine)
- 현재 클러스터 상태 및 구성을 기반으로 다음 상태 결정
- LRMd (Local Resource Management daemon)
- CRMd와 각 리소스 사이의 인터페이스 역할 / CRMd의 명령을 agent에 전달
- CRM이 수행되어 보고된 결과에 따라 start/stop/monitor 동작
- STONITHd (Shoot The Other Node In The Head daemon)
- 그대로 번역한다면 "다른 노드의 머리를 쏜다"
- 즉, 오류가 발생한 호스트(노드)나 리소스를 비활성화 시키는 Fencing 기능 수행
- 다른 노드의 서비스 이상이나 Power-off 등이 감지되면 해당 노드나 서비스를 재시작한다
- 서비스가 중복으로 실행되어 충돌나는것을 방지
CoroSync
- Pacemaker가 현재 호스트에서 서비스들이 잘 동작하고 있는지 확인하는 역할이라면
- Corosync는 호스트간에 메시지를 주고받는 역할을 수행
- Pacemaker는 Resource Manager / Corosync는 Messaging Layer
Heartbeat
- Corosync랑 비슷한 역할이긴 하나 조금 다른듯해서 쓴다
- 클라이언트에 클러스터 인프라(통신 및 멤버십) 서비스를 제공하는 데몬
- 이를 통해 클라이언트는 다른 호스트에서의 서비스 이상 등을 감지할 수 있고 메시지를 쉽게 교환할 수 있다고 한다
RA (Resource Agent)
- Pacemaker가 서비스를 관리할 수 있는 추상 개념
- local resource의 start/stop/monitor 스크립트 제공
- LRM에 의해서 호출됨
- Pacemaker 제공 RA 지원 타입
- LSB : Linux Standard Base "init scripts"
- OCF : Open Cluster Framework
- etc...
Pacemaker 클러스터 유형
pcs (pacemaker configuration system)
- Pacemaker, Corosync, Heartbeat 등의 데몬들 제어하는 CLI 명령어 도구
- pcs <parameter1> <parameter2> .. 이런 식으로 쓰인다
- parameter : cluster, resource, stonith, constraints, property, status, config
DRBD (Distributed Replicated Block Device)
- HA 클러스터를 구성하기 위해 Block 단위로 분산 복제하는 장치
- Active 상태의 서버 disk에 데이터를 저장하면서 네트워크를 통해 standby 서버에 미러링하는 방식으로 이중화
- 즉, 네트워크를 통한 디스크 미러링!
참고
- clusterlabs.org/pacemaker/doc/en-US/Pacemaker/1.1/html-single/Clusters_from_Scratch/
- blog.naver.com/sunchan683/221465320344
- www.nextree.co.kr/p12211/
- m.blog.naver.com/alice_k106/221786625711
- blog.osci.kr/58
- techadminblog.com/about-corosync-and-hearbeat/
- blog.boxcorea.com/wp/archives/2660
- rockplace.co.kr/newsletter/2010/11/drbd.html
728x90
728x90
'공부 > HA' 카테고리의 다른 글
[HA] Fencing과 SBD (0) | 2021.04.16 |
---|---|
[Pacemaker] CentOS 7에 Pacemaker 구성하기 (1) | 2021.04.11 |
댓글