1.Pacemaker란
Pacemaker는 다수의 노드(서버)를 클러스터로 묶어 자원 관리를 통해 이중화가 가능한 오픈소스의 고가용성 클러스터 자원 관리 소프트웨어이다.
2. 시나리오
vmware 위 우분투 20.04 버전 2대에 동일하게 아파치를 올리고 페이스매이커를 설치 후 fail over 테스트를 해본다.
3.사전준비
VIP : 10.10.50.4
마스터 서버 IP : 10.10.50.2
슬레이브 서버 IP : 10.10.50.3
4. 필요한 패키지 설치
apt install -y pacemaker pcs
5.호스트네임 및 hosts 파일 설정
hostnamectl set-hostname node1 # 마스터 서버
hostnamectl set-hostname node2 # 슬레이브 서버
vi /etc/hosts 명령 후
10.10.50.2 node1
10.10.50.3 node2
※ 127.0.0.1 호스트네임 있을시 주석 하기 (localhost는 예외)
5. corosync.service 설정
vi /usr/lib/systemd/system/corosync.service
또는 vi lib/systemd/system/corosync.service 후
Type 부분 simple로 수정
6. hacluster 패스워드 설정 및 pcsd 시작
passwd hacluster
systemctl start pcsd
systemctl enable pcsd
7. pcs 설정
pcs host auth node1 node2 -u hacluster # 마스터에만
pcs cluster setup FileCluster node1 node2 --force # 마스터에만
pcs cluster start # 양쪽다
pcs cluster enable # 양쪽다
이후 pcs status 입력하여 Node List의 온라인에 node1과 node2가 잘 올라왔는지 확인한다.
노드가 잘 올라왔다면 아래 설정값을 마저 입력해준다.
pcs property set stonith-enabled=false # 마스터만
pcs property set no-quorum-policy=ignore # 마스터만
pcs property set default-resource-stickiness="INFINITY" --force # 마스터만
# VIP설정
pcs resource create vip ocf:heartbeat:IPaddr2 ip="10.10.50.4" cidr_netmask="32" op monitor timeout="30s" interval="20s" role="Slave" op monitor timeout="30s" interval="10s" role="Master" #마스터만
# 아파치 설정
pcs resource create web_service systemd:apache2 op monitor timeout="30s" interval="20s" role="Slave" op monitor timeout="30s" interval="10s" role="Master" #마스터만
ip addr show 명령을 하면 아래 사진과 같이 vip인 10.10.50.4 가 잘 올라온 것을 확인할 수있다.
8.fail-over 테스트
이제 reboot now로 마스터(node1)가 죽으면 제대로 fail-over 가 되는지 테스트를 해본다.
vip와 apache2의 시작 노드가 반대일 경우 아래 명령문으로 동일하게 맞출수 있다.
pcs constraint colocation add web_service with vip INFINITY
pcs status의 Node List에 node1이 off 라인이 되면서 vip와 apache2가 자동으로 node2로 변경되며 HA구성이 잘 된것을 확인할 수 있다.
'IT 인프라 > 서버' 카테고리의 다른 글
리눅스 특정 시간대 로그 추출하기 (0) | 2023.12.19 |
---|---|
우분투 20.04 삽질일기 (네트워크 어댑터 인식불가) (0) | 2022.08.29 |
hyper-v vmware 변환 vhdx to vmdk 마이그레이션 (2) | 2022.05.12 |
VMware CentOS7 설치 (0) | 2022.05.11 |
PFsense 초기 설정 (0) | 2022.05.10 |