부록 C. HA 리소스 동작
다음에서는 HA 리소스의 일반적인 동작을 설명합니다. 이는 HA 서비스 설정에 대해 부수적인 정보를 제공하기 위함입니다. luci를 사용하거나
/etc/cluster/cluster.conf
를 편집하여 매개 변수를 설정할 수 있습니다. HA 리소스 매개 변수에 대한 설명은 부록 B. HA 리소스 매개 변수 에서 참조하십시오. 리소스 에이전트에 대한 자세한 내용은 클러스터 노드의 /usr/share/cluster
에서 참조하십시오.
참고
이 부분의 내용을 완전하게 이해하려면, 리소스 에이전트와 클러스터 설정 파일
/etc/cluster/cluster.conf
을 세부적으로 이해할 필요가 있을 수 도 있습니다.
HA 서비스는 일관된 엔티티로 구성된 클러스터 리소스 그룹으로 클라이언트에 전문화된 서비스를 제공합니다. HA 서비스는 클러스터 구성 파일
/etc/cluster/cluster.conf
(각 클러스터 노드)에서 리소스 트리로 표시됩니다. 클러스터 구성 파일에서 각 리소스 트리는 각 리소스와 리소스의 특성 그리고 리소스 트리에서 다른 리소스와의 관계 (부모, 자식, 형제 관계)를 지정하는 XML 표현입니다.
참고
HA 서비스는 계층 트리 형식으로 조직화된 리소스로 구성되어 있기 때문에 서비스는 리소스 트리 또는 리소스 그룹이라고 부릅니다. 두가지 모두 HA 서비스와 동의어입니다.
각 리소스 트리의 root에는 특수한 리소스 유형 — 서비스 리소스가 있습니다. 다른 유형의 리소스는 서비스의 나머지 부분을 구성하고 그 특성을 결정합니다. HA 서비스 설정은 서비스 리소스 생성, 종속적 클러스터 리소스 생성 및 서비스의 계층적 제한에 따라 일관된 엔티티로 조직화하는 것으로 이루어져 있습니다.
이는 다음과 같은 부분으로 구성되어 있습니다:
참고
클러스터 설정 파일
/etc/cluster/cluster.conf
의 다음에 나타나는 예시는 설명 목적으로만 사용됩니다.
C.1. 리소스 간의 부모, 자식, 형제 관계
클러스터 서비스는
rgmanager
의 제어 하에 실행되는 통합된 엔티티입니다. 서비스에 있는 모든 리소스는 동일한 노드에서 실행됩니다. rgmanager
의 관점에서 클러스터 서비스는 시작, 중지 또는 재배치할 수 있는 하나의 엔티티입니다. 클러스터 서비스에서 리소스의 계층에 따라 리소스를 시작하거나 중지되는 순서가 결정됩니다. 계층 레벨은 부모, 자식, 형제로 구성되어 있습니다.
예 C.1. “foo 서비스 리소스 계층 ”에서는 foo 서비스 리소스 트리의 예시를 보여주고 있습니다. 예에서 리소스 간의 관계는 다음과 같습니다:
fs:myfs
(<fs name="myfs" ...>) 와ip:10.1.1.2
(<ip address="10.1.1.2 .../>)는 형제입니다.fs:myfs
(<fs name="myfs" ...>)는script:script_child
(<script name="script_child"/>)의 부모입니다.script:script_child
(<script name="script_child"/>)는fs:myfs
(<fs name="myfs" ...>)의 자식입니다.
예 C.1. foo 서비스 리소스 계층
<service name="foo" ...> <fs name="myfs" ...> <script name="script_child"/> </fs> <ip address="10.1.1.2" .../> </service>
리소스 트리에서 다음 규칙이 부모/자식 관계에 적용됩니다:
- 부모는 자식 전에 시작됩니다.
- 부모가 멈추기 전에 먼저 자식을 완전히 중지해야 합니다.
- 양호한 상태에 있다고 간주되는 리소스의 경우, 리소스의 모든 자식은 양호한 상태여야 합니다.