[CS] Cluster의 개념과 구조적 차이

Cookie·2025년 10월 13일

ComputerScience

목록 보기
10/10
post-thumbnail

Proxmox에 클러스터링을 진행하기 전에 기본적인 클러스터의 개념과 일반적인 클러스터와 하이퍼바이저 위에서의 클러스터의 차이에 대한 설명을 완료하고자 함



Cluster의 개념

클러스터는 여러 대의 독립적인 컴퓨터 시스템(노드)를 하나의 논리적 집합으로 구성하여, 단일 시스템처럼 동작하는 구조를 말함


핵심 목적

  • 가용성(Availability) 향상
    : 일부 노드 장애 시에도 서비스 지속

  • 성능 확장성(Scalability) 확보
    : 노드 추가를 통한 처리 능력 향상

  • 부하 분산 (Load Balancing)
    : 요청을 여러 노드에 분배하여 효율 극대화

  • 장애 대응 자동화 (Fault Tolerance)
    : 장애 감지 및 복구 자동화



아키텍처 유형

HA(High Availability) 클러스터

: 하나의 노드가 장애를 일으켜도 다른 노드가 즉시 서비스를 이어받아 무중단운영을 보장하며 주로 은행, 공공기관 등 서비스 연속성이 중요한 환경에서 사용됨


Load Balancing 클러스터

: 사용자 요청을 여러 노드에 분산해 성능 처리 효율을 높이며 웹 서버, API 서버, 프록시 서버 구조 등에 주로 사용됨


Storage 클러스터

: 여러 저장 장치를 묶어 하나의 논리적 스토리지로 구성하고, 데이터 복제와 확장을 통해 안정성과 확장성을 확보함. 대표적으로 Ceph, GlusterFS 등이 있음




일반 클러스터의 구조

일반적인 클러스터는 물리 서버 간 진적 연결된 환경에서, 운영 체제(OS) 또는 애플리케이션 수준에서 클러스터링 기능을 구성함

각 노드는 네트워크를 통해 서로 통신하며, 특정 자원이나 서비스를 공동으로 운영함


예시

  • Kubernetes 클러스터
    : 컨테이너 기반 워크로드를 여러 노드에 분산

  • MySQL cluster / Oracle RAC
    : 데이터베이스 복제 및 동기화를 통해 가용성 확보

  • Hadoop Cluster
    : 데이터 연산을 여러 서버에 병렬 분산



구조적 특징

노드 계층

  • 물리 서버(노드)로 구성됨
  • 각 노드는 CPU, 메모리, 스토리지 등 자체 자원을 가짐
  • 노드 간 고속 네트워크로 연결되어 통신 및 데이터 교환 수행

클러스터 계층

  • 여러 노드를 논리적으로 묶는 관리 계층
  • 노드 상태 감시(Heartbeat), 장애 감지, 자원 스케줄링 등의 역할 수행
  • 대표 구성 요소: 클러스터 매니저 (Pacemaker, kubernetes, Controller 등)

서비스 계층

  • 실제 사용자 서비스 또는 애플리케이션이 동작하는 영역
  • 클러스터 매니저가 서비스의 배포, 상태 모니터링, 장애 복구를 자동화
  • 예: 웹서버, DB 서비스, 컨테이너 워크로드 등




하이퍼바이저 기반 클러스터의 구조

하이퍼바이저 기반 클러스터는 가상화 기술을 이용해, 여러 하이퍼바이저 호스트를 하나의 관리 단위로 묶은 구조

주 목적은 가상머신(VM) 단위의 자원 관리, 가용성 확보, 자동화된 복구 및 확장성 제공에 있음


구조적 특징

물리 계층

  • 실제 하드웨어 자원(CPU, RAM, NIC, Storage 등)으로 구성됨
  • 각 하이퍼바이저 호스트는 동일하거나 유사한 스펙으로 구성되어야 함
  • 네트워크와 공유 스토리지를 통해 상호 연결됨

가상화 계층

  • 하이퍼바이저(VMware ESXi, KVM, Hyper-V 등)가 물리 자원을 가상화
  • VM 생성, 스냅샷, 자원 할당 등 가상화 수행
  • 각 VM은 독립된 OS와 애플리케이션을 운영

클러스터 계층

  • 여러 하이퍼바이저 호스트를 중앙에서 관리하는 계층
  • 자원 풀(Resource Pool) 형성 및 자동 부하 분산 수행
  • 대표 도구: VMware vCenter, Proxmox Cluster Manager, SCVMM 등

VM 계층

  • 클러스터 상에 배포된 가상머신들이 실제 서비스 수행
  • 관리자는 VM 단위로 배포, 백업, 복구, 마이그레이션 가능
  • OS, 애플리케이션, 네트워크 설정이 VM 단위로 독립



주요 기능

Live Migration

  • 실행 중인 VM을 서비스 중단 없이 다른 호스트로 이동
  • 호스트 점검, 부하 분산, 자원 재배치 시 활용

HA 기능

  • 호스트 장애 감지 시 해당 VM을 다른 호스트에서 자동 재시작
  • 서비스 중단 시간을 최소화하여 가용성 확보

공유 스토리지 통합

  • 모든 노드가 동일한 스토리지에 접근 가능
  • VM 이미지와 스냅샷이 중앙 저장소에 위치애 Live Migration 및 HA 기능을 지원
  • Ex : NFS, iSCSI, vSAN, Ceph Storage 등




구조적 비교


구분일반 클러스터하이퍼바이저 기반 클러스터
구성 계층OS 또는 애플리케이션가상화 관리 계층
관리 대상서비스, 애플리케이션가상머신(VM)
물리 구성실제 서버 간 클러스터가상화 호스트 간 클러스터
장애 복구 단위서비스 또는 프로세스VM 단위
스토리지 구조독립적 또는 선택적 공유공유 스토리지 필수
주요 목적애플리케이션 가용성 및 분산 처리가상 인프라 가용성 및 자원 통합
대표 기술Kubernetes, Hadoop, MySQL ClusterVMware vSphere, Proxmox, Hyper-V
profile
나만의 공부 일지... [임시 休]

0개의 댓글