들어가며: 드디어 '삼각 편대' 완성
안녕하세요. 13년 차 시스템 엔지니어 수누다입니다.
지난번까지 서버 2대로 "쿼럼이 깨지네 마네" 하며 고생했던 기억은 잊으십시오. 드디어 3번째 노드를 영입하여 완벽한 3노드 클러스터를 구축했습니다.
이제야 비로소 엔지니어들이 말하는 '클러스터링의 정석'이 갖춰졌습니다.
- 별도의 투표기(QDevice) 따위 필요 없음.
- 한 대가 죽어도 나머지 두 대가 과반수(66%)를 차지해 즉시 방어 가능.
오늘은 이 완벽한 환경에서 전원 코드를 뽑아도 서비스가 죽지 않는 HA(고가용성) 설정을 해보겠습니다.
1. 필수 준비물 (3노드라 편안하다)
HA 설정을 시작하기 전에 딱 2가지만 체크하면 됩니다.
① Quorum (정족수) 확인
서버가 3대면 과반수는 2대입니다. 즉, 한 대가 죽어도 아무 문제 없이 투표가 성립됩니다.
# 아무 노드에서나 확인
pvecm status
Total votes: 3, Quorum: 2라고 떠 있다면 준비 끝입니다. (라즈베리파이 같은 거 안 달아도 됩니다. 이게 돈 쓴 보람이죠.)
② 스토리지 동기화 (ZFS Replication) [핵심!]
서버가 3대라도 데이터가 없으면 옆 서버에서 VM을 켤 수 없습니다.
NAS(공유 스토리지)가 없다면, 각 서버의 로컬 디스크를 서로 복제해 줘야 합니다.
2. ZFS Replication: '이중 보험' 들기
2노드일 땐 선택지가 하나뿐이었지만, 3노드에서는 하나의 VM을 두 군데로 동시에 복제할 수 있습니다. 1번이 죽었을 때 2번으로 갈 수도, 3번으로 갈 수도 있는 거죠. (생존성 2배)
[설정 방법]
Web GUI에서 진행합니다.
- Datacenter 클릭 -> Replication 탭 이동.
- Add 클릭.
- Target:
pve-02(첫 번째 복제 타겟). - Schedule:
*/1(1분마다). - Create.
하나 더 추가!
- Add 클릭.
- Target:
pve-03(두 번째 복제 타겟). - Schedule:
*/1.
이제 1번 서버의 데이터는 1분마다 2번, 3번 서버로 쫙 뿌려집니다.
3. HA 그룹 만들기 (우선순위 정하기)
이제 3대의 서버에 역할을 분담해 줍니다. "평소엔 1번에서 놀고, 비상시엔 2번, 정 안되면 3번으로 가라"는 식입니다.
엔지니어라면 CLI로:
# ha-manager groupadd [그룹명] --nodes [우선순위]
# 예: pve-01(주인), pve-02(대기1), pve-03(대기2)
ha-manager groupadd my-ha-group --nodes pve-01:10,pve-02:5,pve-03:5
pve-01:10: 점수가 제일 높으니 여기서 우선 실행.pve-02:5,pve-03:5: 점수가 같으면 부하 적은 곳으로 자동 이동.
4. VM을 HA 리소스에 등록
이제 100번 VM을 HA 그룹에 넣습니다.
# ha-manager add [VMID] --group [그룹명]
ha-manager add 100 --group my-ha-group --max_restart 1 --state started
상태 확인:
root@pve-01:~# ha-manager status
quorum: OK
master: pve-01 (active, ...)
lrm:
pve-01 (active, ...)
pve-02 (active, ...)
pve-03 (active, ...)
service_status:
vm:100 (pve-01, started)
lrm(로컬 리소스 매니저)에 3대 모두 active로 떠 있다면 완벽합니다.
5. 실전 테스트: "플러그를 뽑아라"
가장 짜릿한 순간입니다. 1번 서버(pve-01, 192.168.20.151)의 전원을 강제로 내립니다.
예상 시나리오:
- pve-01 사망 (Offline).
- 약 2분(Deadtime) 후, 클러스터가 "1번 죽었네?" 판단.
- pve-02 또는 pve-03 중 하나에서 VM 100번이 자동으로 부팅됨.
만약 ZFS Replication을 양쪽 다 걸어놨다면, 2번이든 3번이든 가장 컨디션 좋은 녀석이 바로 이어받습니다. 이것이 3노드의 위엄입니다.
마무리: 홈랩의 완성은 3노드다
2노드에서 3노드로 넘어오니 쿼럼 걱정도 없고, 마음이 훨씬 편안해집니다.
"서버 한 대 더 살까 말까" 고민 중이시라면, 그냥 사세요. 정신 건강 값으로 충분합니다.
이제 HA 구성은 마스터했습니다. 다음 단계는 "Ceph(분산 스토리지)"를 도입해서 ZFS의 '1분 데이터 손실'조차 없는 '제로 다운타임'에 도전하는 것입니다. (물론 10G 네트워크 카드부터 사셔야 합니다. ㅎㅎ)
'IT > Proxmox' 카테고리의 다른 글
| [Proxmox] 드디어 나온 vCenter의 대항마? 'Proxmox Datacenter Manager(PDM)' 실전 도입기 및 삽질 방지 (0) | 2026.02.02 |
|---|---|
| [Infra] Broadcom이 쏘아 올린 공: VMware 버리고 Proxmox로 갈아타기 (feat. 네이티브 임포트 마법사) (2) | 2026.01.26 |
| [HomeLab] 10G 네트워크 구축, 아직도 비싸다고 생각하시나요? (3노드 풀메쉬 가성비 세팅법) (3) | 2026.01.22 |
| XCP-ng → Proxmox 마이그레이션 3편: 성능을 200% 끌어올리는 필수 최적화 가이드 (0) | 2026.01.21 |
| [Proxmox] 서버 2대로 클러스터 묶다가 피 보지 않으려면? (13년 차의 클러스터 구축 가이드) (5) | 2026.01.20 |
| XCP-ng → Proxmox 마이그레이션 2편: 서비스 중단을 최소화하는 '대량 VM' 자동화 전략 (5) | 2026.01.19 |