2.6. HA 서비스 설정 시 고려 사항

HA (high-availability) 서비스를 설정하여 필요에 따라 고가용성 클러스터를 생성할 수 있습니다. Red Hat 고가용성 추가 기능의 HA 서비스 관리의 핵심 구성 요소인 rgmanager는 상용 어플리케이션에 대해 콜드 페일 오버 (cold failover)를 구현합니다. Red Hat 고가용성 추가 기능에서 어플리케이션은 클러스터 클라이언트에 방해하지 않고 하나의 클러스터 노드에서 다른 노드로 장애 조치할 수 있도록 HA 서비스를 구축하기 위해 다른 클러스트 리소스와 함께 설정됩니다. 클러스터 노드에 문제가 발생한 경우 또는 클러스터 시스템 관리자가 서비스를 하나의 클러스터 노드에서 다른 노드로 이전 (예: 정기적 클러스터 노드 정비)할 경우 HA 서비스 장애 조치가 실행될 수 있습니다.
HA 서비스를 생성하려면, 클러스터 설정 파일에서 이를 설정해야 합니다. HA 서비스는 클러스터 리소스 (resources)로 구성되어 있습니다. 클러스터 리소스에서는 클러스터 설정 파일에서 생성하고 관리할 요소를 구축합니다. — 예: IP 주소, 어플리케이션 초기화 스크립트, Red Hat GFS2 공유 파티션
HA 서비스는 데이터 무결성을 유지하기 위해 한 번에 하나의 클러스터 노드에서만 실행될 수 있습니다. 장애 조치 도메인에서 장애 조치 우선 순위를 지정할 수 있습니다. 장애 조치 우선 순위 지정은 장애 조치 도메인에 있는 각 노드에 우선 순위 수준을 할당하여 이루어 집니다. 우선 순위로 장애 조치 순서 즉, HA 서비스가 장애 조치해야 하는 노드의 순서를 결정합니다. 장애 조치 우선 순위를 지정하지 않으셨을 경우, HA 서비스는 장애 조치 도메인에 있는 아무 노드에 장애 조치를 실행할 수 있습니다. 또한, HA 서비스가 관련 장애 조치 도메인의 노드에서만 실행하도록 제한할 지의 여부도 지정할 수 있습니다. (제한되지 않는 장애 조치 도메인과 관련될 경우, HA 서비스는 장애 조치 도메인의 구성원이 사용할 수 없는 상황에서 아무 클러스터 노드에서 시작될 수 있습니다.)
그림 2.1. “웹 서버 클러스터 서비스 예시 ”에서는 "content-webserver"라는 웹서버인 HA 서비스의 예를 보여주고 있습니다. 이는 클러스터 노드 B에서 실행되고 있으며 노드 A, B 및 D로 구성된 장애 조치 도메인에 존재합니다. 또한, 장애 조치 도메인은 노드 A 전에 노드 D로 장애 조치하고 이 장애 조치 도메인에 있는 노드에만 장애 조치를 제한하는 장애 조치 우선 순위로 설정되어 있습니다. HA 서비스는 다음과 같은 클러스터 리소스로 구성됩니다:
  • IP 주소 리소스 — IP 주소 10.10.10.201.
  • "httpd-content"라는 어플리케이션 리소스 — 웹 서버 어플리케이션 init 스크립트 /etc/init.d/httpd (httpd를 지정).
  • 파일 시스템 리소스 — "gfs2-content-webserver"라는 Red Hat GFS2
웹 서버 클러스터 서비스 예시

그림 2.1. 웹 서버 클러스터 서비스 예시

클라이언트는 IP 주소 10.10.10.201을 통해 HA 서비스에 액세스하여 웹 서버 어플리케이션, httpd-content와 통신할 수 있습니다. httpd-content 어플리케이션은 gfs2-content-webserver 파일 시스템을 사용합니다. 노드 B가 실패했을 경우, content-webserver HA 서비스는 노드 D로 장애 조치하게 됩니다. 노드 D를 사용할 수 없거나 실패한 경우, 서비스는 노드 A로 장애 조치하게 됩니다. 장애 조치는 클러스터 클라이언트에 대해 방해를 최소화하면서 발생합니다. 예를 들어, HTTP 서비스에서 특정 상태 정보 (세션 데이터 등)가 손실될 수 있습니다. HA 서비스는 장애 조치 이전에 가능했던 동일한 IP 주소를 통해 다른 클러스터 노드에서 액세스할 수 있습니다.

참고

HA 서비스 및 장애 복구 도메인에 대한 자세한 내용은 고가용성 추가 기능 개요에서 참조하십시오. 장애 복구 도메인 설정에 대한 자세한 내용은 3장. Conga를 사용하여 Red Hat 고가용성 추가 기능 설정 (Conga 사용) 또는 7장. 명령행 도구로 Red Hat 고가용성 추가 기능 설정 (명령행 유틸리티 사용)에서 참조하십시오.
HA 서비스는 일관된 엔티티로 구성된 클러스터 리소스 그룹으로 클라이언트에 전문화된 서비스를 제공합니다. HA 서비스는 클러스터 구성 파일 /etc/cluster/cluster.conf (각 클러스터 노드)에서 리소스 트리로 표시됩니다. 클러스터 구성 파일에서 각 리소스 트리는 각 리소스와 리소스의 특성 그리고 리소스 트리에서 다른 리소스와의 관계 (부모, 자식, 형제 관계)를 지정하는 XML 표현입니다.

참고

HA 서비스는 계층 트리 형식으로 조직화된 리소스로 구성되어 있기 때문에 서비스는 리소스 트리 또는 리소스 그룹이라고 부릅니다. 두가지 모두 HA 서비스와 동의어입니다.
각 리소스 트리의 root에는 특수한 리소스 유형 — 서비스 리소스가 있습니다. 다른 유형의 리소스는 서비스의 나머지 부분을 구성하고 그 특성을 결정합니다. HA 서비스 설정은 서비스 리소스 생성, 종속적 클러스터 리소스 생성 및 서비스의 계층적 제한에 따라 일관된 엔티티로 조직화하는 것으로 이루어져 있습니다.
HA 서비스를 설정할 때 두 가지 주요 사항을 고려해야 합니다:
  • 서비스 생성에 필요한 리소스 유형
  • 리소스 간의 부모, 자식, 형제 관계
리소스 유형 및 리소스 계급은 설정되는 서비스 유형에 따라 다릅니다.
클러스터 리소스 유형은 부록 B. HA 리소스 매개 변수 에 열거되어 있습니다. 리소스 사이의 부모, 자식, 형제 관계는 부록 C. HA 리소스 동작 에 설명되어 있습니다.