¿ìºÐÅõ 22.04 Pacemaker Ŭ·¯½ºÅÍ ¼³Á¤

   Á¶È¸ 64379   Ãßõ 0    

https://bigbangcloud.co.kr/ (17835)
https://www.aiocp.co.kr/ (17739)






안녕하세요.

오늘은 우분투 22.04에 Pacemaker를 사용하여 클러스터를 만들어 보겠습니다.


먼저 2개의 서버와 3개의 IP를 준비합니다.

두 서버에는 아파치를 설치하여 테스트를 진행합니다.

node1 서버(Master 사용 예정)

node2 서버


두 서버 모두 아파치 패키지를 설치합니다.

sudo apt-get install apache2


서버에 서비스가 설치되면 각 서버의 /var/www/html/index.html 파일에 각 서버를 파악하기 쉽게 수정합니다.

수정이 완료되면 sudo systemctl restart apache2 명령어로 서비스를 재시작 하고 재대로 표시되는지 확인합니다.


두 서버에 apt install -y pacemaker pcs 명령어로 패키지를 설치합니다.


두 서버의 hostname를 수정해줍니다.

본 개시물에서는 node1,2 를 사용하겠습니다.

node1 서버

sudo hostnamectl set-hostname node1




node2 서버

sudo hostnamectl set-hostname node2



두 서버의 /etc/hosts 파일에 붉은 네모와 같이 내용을 추가해줍니다.

*기존에 127.0.1.1 부분이 활성화 되어 있으니 해당 부분은 주석처리합니다.


이후 아래의 명령어를 사용하여 corosync.service를 설정합니다.

sudo vi /usr/lib/systemd/system/corosync.service 이후 Type 를 simple로 수정합니다.


hacluster 패스워드 설정

sudo passwd hacluster 명령어로 hacluster 패스워드를 설정해줍니다.


패스워드 설정이 완료되면 pcsd를 시작, 적용해줍니다.


현재까지 설정 내용을 적용하기 위해 두 서버를 재부팅합니다.

sudo reboot 명령어를 사용해줍니다.


이후 master 서버에만 아래 명령어를 사용합니다.

클러스터에 노드를 등록합니다.

sudo pcs host auth node1 node2 -u hacluster


sudo pcs cluster setup FileCluster node1 node2 --force


아래 명령어를 node1, 2 서버에 작성하여 클러스터를 실행합니다.

sudo pcs cluster start

sudo pcs cluster enable


이후 sudo pcs status 를 사용하여 2개 서버가 정상적으로 등록되었는지 확인합니다.



노드가 올라온 것을 확인한 후 아래 설정 명령어를 master 서버에만 작성합니다.

sudo pcs property set stonith-enabled=false

sudo pcs property set no-quorum-policy=ignore

sudo pcs property set default-resource-stickiness="clutest" --force

*위에서 clutest로 작성하였지만 기억하기 쉬운 다른 단어로 등록하여도 좋습니다.


이후 아래 명령어를 master 서버에 작성하여 vip를 등록합니다.

sudo pcs resource create vip ocf:heartbeat:IPaddr2 ip="192.168.0.12" cidr_netmask="32" op monitor timeout="30s" interval="20s" role="Slave" op monitor timeout="30s" interval="10s" role="Master"

아파치에도 설정하기 위해 아래 명령어를 입력합니다.

sudo pcs resource create web_service systemd:apache2 op monitor timeout="30s" interval="20s" role="Slave" op monitor timeout="30s" interval="10s" role="Master"



이후 적용한 vip를 url 창에 입력하여 나오는 창을 확인해봅니다.

표시된 node1 서버를 reboot 시켜 접속을 끊었을 때 vip가 node2로 변경되는지 확인해봅니다.

재부팅과 동시에 node2로 vip가 이동한 것을 확인할 수 있습니다.

이와 같이 1 서버에 장애 발생 시 2서버를 통해 서비스를 유지할 수 있습니다.

감사합니다.






https://www.aiocp.co.kr/ ( 딥러닝,머신러닝 서버 판매 ,컨설팅) https://bigbangcloud.co.kr/ ( GPU 클라우드 서비스) ::: AI 서버의 모든것 ::: 인공지능의 시작~ (주)이호스트ICT
¿Í¿ì ~.~


Á¦¸ñPage 2733/28
°Ô½Ã¹°ÀÌ ¾ø½À´Ï´Ù.