第46章 Pacemaker の使用の開始
Pacemaker クラスターの作成に使用するツールとプロセスに慣れるために、次の手順を実行できます。ここで説明する内容は、クラスターソフトウェアの概要と、作業用のクラスターを設定せずに管理する方法に関心のあるユーザーを対象としています。
ここで説明する手順では、2 つ以上のノードとフェンシングデバイスの設定が必要となるサポート対象の Red Hat クラスターは作成されません。Red Hat のサポートポリシー、要件、および制限の詳細は、RHEL 高可用性クラスターのサポートポリシー を参照してください。
46.1. Pacemaker の使用方法 リンクのコピーリンクがクリップボードにコピーされました!
ここでは、Pacemaker を使用してクラスターを設定する方法、クラスターのステータスを表示する方法、およびクラスターサービスを設定する方法を学習します。この例では、Apache HTTP サーバーをクラスターリソースとして作成し、リソースに障害が発生した場合のクラスターの応答方法を表示します。
この例では、以下のように設定されています。
- 
							ノード: 
z1.example.com - Floating IP アドレス: 192.168.122.120
 
前提条件
- RHEL 8 を実行しているノード 1 つ
 - このノードで静的に割り当てられている IP アドレスの 1 つと同じネットワーク上にあるフローティング IP アドレス
 - 
							
/etc/hostsファイルに、実行中のノード名が含まれている 
手順
High Availability チャンネルから Red Hat High Availability Add-On ソフトウェアパッケージをインストールし、
pcsdサービスを起動して有効にします。yum install pcs pacemaker fence-agents-all systemctl start pcsd.service systemctl enable pcsd.service
# yum install pcs pacemaker fence-agents-all ... # systemctl start pcsd.service # systemctl enable pcsd.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow firewalldデーモンを実行している場合は、Red Hat High Availability Add-On で必要なポートを有効にします。firewall-cmd --permanent --add-service=high-availability firewall-cmd --reload
# firewall-cmd --permanent --add-service=high-availability # firewall-cmd --reloadCopy to Clipboard Copied! Toggle word wrap Toggle overflow クラスターの各ノードにユーザー
haclusterのパスワードを設定し、pcsコマンドを実行するノードにあるクラスターの各ノードに対して、haclusterユーザーの認証を行います。この例では、ノードを 1 つだけ使用し、そのノードからコマンドを実行していますが、このステップはサポート対象の Red Hat High Availability マルチノードクラスターを設定する際に必要となるため、この手順に含まれています。passwd hacluster pcs host auth z1.example.com
# passwd hacluster ... # pcs host auth z1.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow メンバーを 1 つ含む
my_clusterという名前のクラスターを作成し、クラスターのステータスを確認します。この 1 つのコマンドで、クラスターが作成され、起動します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat High Availability クラスターでは、クラスターのフェンシングを設定することが必要になります。この要件の理由については、Red Hat ナレッジベースソリューション Fencing in a Red Hat High Availability Cluster で説明されています。ただし、ここでは基本的な Pacemaker コマンドの使用方法を説明することを目的としているため、
stonith-enabledクラスターのオプションをfalseに設定し、フェンシングを無効にします。警告stonith-enabled=falseの使用は、実稼働クラスターには完全に適していません。これにより、障害が発生したノードが適切にフェンスされていることを装うようにクラスターに指示されます。pcs property set stonith-enabled=false
# pcs property set stonith-enabled=falseCopy to Clipboard Copied! Toggle word wrap Toggle overflow システムに Web ブラウザーを設定し、Web ページを作成して簡単なテキストメッセージを表示します。
firewalldデーモンを実行している場合は、httpdで必要なポートを有効にします。注記システムの起動時に使用する場合は、
systemctl enableで、クラスターが管理するサービスを有効にしないでください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Apache リソースエージェントが Apache のステータスを取得できるようにするため、既存の設定に以下の内容を追加して、ステータスサーバーの URL を有効にします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow クラスターが管理するリソース
IPaddr2およびapacheを作成します。IPaddr2リソースは、物理ノードにすでに関連付けられていない Floating IP アドレスです。IPaddr2リソースの NIC デバイスが指定されていない場合、Floating IP は、ノードで使用される静的に割り当てられた IP アドレスと同じネットワーク上に存在している必要があります。利用可能なリソースタイプのリストを表示する場合は、
pcs resource listコマンドを使用します。指定したリソースタイプに設定できるパラメーターを表示する場合は、pcs resource describe resourcetypeコマンドを使用します。たとえば、以下のコマンドは、apacheタイプのリソースに設定できるパラメーターを表示します。pcs resource describe apache
# pcs resource describe apache ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow この例では、IP アドレスリソースと apache リソースの両方が
apachegroupグループに含まれるように設定します。これにより、両リソースが一緒に保存され、作業用のマルチノードクラスターを設定する際に、同じノードで実行できます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow クラスターリソースを設定したら、
pcs resource configコマンドを使用して、そのリソースに設定したオプションを表示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - ブラウザーで、設定済みの Floating IP アドレスを使用して作成した Web サイトを開くように指定します。定義したテキストメッセージが表示されるはずです。
 Apache Web サービスを停止し、クラスターのステータスを確認します。
killall -9を使用して、アプリケーションレベルのクラッシュをシミュレートします。killall -9 httpd
# killall -9 httpdCopy to Clipboard Copied! Toggle word wrap Toggle overflow クラスターのステータスを確認します。Web サービスは停止したためアクションは失敗しますが、クラスターソフトウェアがサービスを再起動したため、Web サイトに引き続きアクセスできることが確認できるはずです。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow サービスが再開すると、障害が発生したリソースの障害 (failure) ステータスが削除されるため、クラスターステータスを確認する際に、障害が発生したアクションの通知が表示されなくなります。
pcs resource cleanup WebSite
# pcs resource cleanup WebSiteCopy to Clipboard Copied! Toggle word wrap Toggle overflow クラスターと、クラスターのステータスを確認したら、ノードでクラスターサービスを停止します。(この手順を試すために、実際にサービスを起動したノードが 1 つだけであっても)
--allパラメーターを追加してください。これにより実際のマルチノードクラスターの全ノードでクラスターサービスが停止します。pcs cluster stop --all
# pcs cluster stop --allCopy to Clipboard Copied! Toggle word wrap Toggle overflow