1.4. ハイアベイラビリティサービス管理

ハイアベイラビリティサービス管理は、Red Hat クラスタ内にハイアベイラビリティ クラスタサービス を作成し管理する能力を提供します。Red Hat クラスタ内でハイアベイラビリティサービス管理用の基幹となる コンポーネント、rgmanager は、新規状態の アプリケーションでコールドフェイルオーバーを実装します。Red Hat クラスタ内では、アプリケーションは 他のクラスタリソースと一緒に設定されて、ハイアベイラビリティクラスタサービスを構成します。 ハイアベイラビリティクラスタサービスは、クラスタクライアントに表面的な邪魔をせずに1つのノードから 別のノードにフェイルオーバーをすることが出来ます。クラスタサービスフェイルオーバーは、クラスタ ノードが失敗したり、又はクラスタシステム管理者がサービスを1つのクラスタから別のクラスタに移動 した場合に発動します。(例えば、クラスタノードの計画停止など)
ハイアベイラビリティサービスを作成するには、それをクラスタ設定ファイル内で設定する 必要があります。クラスタサービスは、クラスタ リソースで構成 されています。クラスタリソースとは、クラスタ設定ファイル内で作成し、管理する組み立て土台と なる要素です。 — 例えば、 IP アドレス、アプリケーションの初期化スクリプト、あるいは、 Red Hat GFS 共有パーティションなど。
You can associate a cluster service with a failover domain. A failover domain is a subset of cluster nodes that are eligible to run a particular cluster service (refer to 図1.9「フェイルオーバードメイン」).

注記

フェイルオーバードメインは、運用には必要ありません
クラスタサービスはデータの統合性を維持するために、一度に1つのクラスタノード上だけで実行 できます。フェイルオーバードメイン内ではフェイルオーバーの優先度を指定することができます。 フェイルオーバー優先度の指定は、フェイルオーバードメイン内の各ノードに優先度を割り当てる ことで構成されます。この優先度のレベルがフェイルオーバーの順番 — クラスタがフェイル オーバーをするノードの順 — を決めます。フェイルオーバー優先度を指定しないと、クラスタは フェイルオーバードメイン内のどのノードにでもフェイルオーバーをすることになります。また、 クラスタサービスがその関連したフェイルオーバードメインのノードでのみ実行するように制限を 指定することも出来ます。(無制限のフェイルオーバードメインと関連付けがある場合、クラスタサービスは フェイスオーバードメインのメンバーが利用できない場合に、どのクラスタノード上でも開始できるように なります。)
In 図1.9「フェイルオーバードメイン」, Failover Domain 1 is configured to restrict failover within that domain; therefore, Cluster Service X can only fail over between Node A and Node B. Failover Domain 2 is also configured to restrict failover with its domain; additionally, it is configured for failover priority. Failover Domain 2 priority is configured with Node C as priority 1, Node B as priority 2, and Node D as priority 3. If Node C fails, Cluster Service Y fails over to Node B next. If it cannot fail over to Node B, it tries failing over to Node D. Failover Domain 3 is configured with no priority and no restrictions. If the node that Cluster Service Z is running on fails, Cluster Service Z tries failing over to one of the nodes in Failover Domain 3. However, if none of those nodes is available, Cluster Service Z can fail over to any node in the cluster.
フェイルオーバードメイン

図1.9 フェイルオーバードメイン

図1.10「Web Server Cluster Service Example」 shows an example of a high-availability cluster service that is a web server named "content-webserver". It is running in cluster node B and is in a failover domain that consists of nodes A, B, and D. In addition, the failover domain is configured with a failover priority to fail over to node D before node A and to restrict failover to nodes only in that failover domain. The cluster service comprises these cluster resources:
  • IP アドレスリソース — IP アドレス 10.10.10.201.
  • An application resource named "httpd-content" — a web server application init script /etc/init.d/httpd (specifying httpd).
  • A file system resource — Red Hat GFS named "gfs-content-webserver".
Web Server Cluster Service Example

図1.10 Web Server Cluster Service Example

クライアントは、IP アドレス 10.10.10.201 を通じてクラスタサービスにアクセスし、 ウェブサービスアプリケーションや httpd-content との相互交流を可能にします。 httpd-content アプリケーションは gfs-content-webserver ファイルシステムを使用します。 ノード B が故障状態になれば content-webserver クラスタサービスはノード D に フェイルオーバーすることになります。ノード D が利用できない状態か、あるいはそれが 故障した場合は、サービスはノード A にフェイルオーバーします。フェイルオーバーは、 クラスタクライアントに目に見えた妨害なしに達成されます。クラスタサービスは、フェイルオーバー 以前と同じように、同じ IP アドレスを通じて別のクラスタノードからアクセスすることができます。