
의미
클러스터의 각 서버를 노드라고 합니다. 노드들은 끊임없이 서로 통신하며 작업을 나눕니다. 한 노드가 응답하지 않으면 나머지가 이를 알아채고 그 노드의 워크로드를 다른 노드에서 다시 시작합니다. 이를 고가용성이라고 합니다. 워크로드를 다시 시작하는 것이므로 그동안 사용자는 짧은 중단을 겪습니다.
고장 난 클러스터의 두 쪽이 각자 자신이 주도권을 가졌다고 믿는 일을 막기 위해 노드들은 쿼럼을 사용합니다. 쿼럼은 클러스터가 동작하기 전에 노드의 절반을 넘는 수가 동의해야 한다는 뜻이며, 그래서 보통 최소 노드 수가 세 개입니다.
워크로드는 모든 노드가 해당 데이터에 접근할 수 있을 때만 이동할 수 있습니다. 이를 위해서는 공유 스토리지나 노드 간에 복제된 스토리지가 필요합니다. 이 개념은 Proxmox VE, Ceph 스토리지, Kubernetes에 적용됩니다. 가상화에서 설명하듯 가상 머신을 서버 간에 옮길 수 있는 것도 이 덕분입니다.
기업에 중요한 이유
- 장애를 견딥니다: 서버 고장이나 전원 공급 장치 결함이 생겨도 하드웨어를 수리할 때까지 이어지는 장애 대신, 워크로드를 다시 시작하는 몇 분의 지연으로 끝납니다.
- 계획된 유지 관리: 나머지 노드가 계속 작동하는 동안 노드를 한 번에 하나씩 업데이트할 수 있습니다.
- 확장 여지: 노드를 추가하면 시스템 전체를 교체하지 않고도 용량이 늘어납니다.
- 비용: 클러스터에는 더 많은 하드웨어, 좋은 네트워크, 더 신중한 설계가 필요합니다. 실수나 공격은 모든 노드에 복사되므로 백업을 대체하지도 못합니다.
저희 업무에서는 이렇게 나타납니다
저희는 고가용성과 라이브 마이그레이션을 갖춘 Proxmox VE 클러스터와, 그 클러스터에 공유 스토리지를 제공하는 Ceph 클러스터를 구축합니다. Talos Linux 기반 Kubernetes도 구축합니다. 저희 자체 인프라는 Proxmox와 Ceph에서 실행됩니다. 저희가 구축하는 클러스터의 가상 머신은 Proxmox Backup Server로 백업하며 복원을 테스트합니다.
관련 서비스
Proxmox 컨설팅
고가용성과 라이브 마이그레이션을 갖춘 클러스터.
Ceph 스토리지
노드 전반에 걸친 공유 블록, 파일, 오브젝트 스토리지.
Linux 및 Kubernetes
Talos Linux 기반 Kubernetes 클러스터.
자세히 보기
- Wikipedia의 컴퓨터 클러스터클러스터를 구성하고 사용하는 방법을 중립적으로 개괄한 글로, 일반 독자에게 도움이 됩니다.
- Wikipedia의 고가용성 클러스터가동 시간 요구를 따져 보는 독자를 위해 페일오버와 이중화가 서비스를 유지하는 이유를 설명한 글.
- Proxmox VE 문서관리자를 위해 작성된 클러스터와 고가용성에 관한 공식 장.