4.4. クラスターノードの管理
次のセクションではクラスターサービスの起動や停止、クラスターノードの追加や削除などクラスターノードの管理で使用するコマンドについて説明します。
4.4.1. クラスターサービスの停止
次のコマンドで、指定ノード (複数指定可) のクラスターサービスを停止します。pcs cluster start と同様に、
--all
オプションを指定すると全ノードのクラスターサービスが停止され、ノードを指定しないとローカルノードでのみクラスターサービスが停止します。
pcs cluster stop [--all] [node] [...]
次のコマンドで、ローカルノードでクラスターサービスを強制的に停止できます。このコマンドは、kill -9 コマンドを実行します。
pcs cluster kill
4.4.2. クラスターサービスの有効化および無効化
指定ノード (複数指定可) の起動時にクラスターサービスが実行されるよう設定する場合は次のコマンドを使用します。
--all
オプションを使用すると、全ノードでクラスターサービスが有効になります。- ノードを指定しないと、ローカルノードでのみクラスターサービスが有効になります。
pcs cluster enable [--all] [node] [...]
指定した 1 つまたは複数のノードの起動時に、クラスターサービスが実行されないよう設定する場合は、次のコマンドを使用します。
--all
オプションを使用すると、全ノードのクラスターサービスが無効になります。- ノードを指定しないと、ローカルノードでのみクラスターサービスが無効になります。
pcs cluster disable [--all] [node] [...]
4.4.3. クラスターノードの追加
注記
運用保守期間中に、既存のクラスターにノードを追加することが強く推奨されます。これにより、新しいノードとそのフェンシング設定に対して、適切なリソースとデプロイメントのテストを実行できます。
既存クラスターに新しいノードを追加する場合は、以下の手順に従ってください。この例では、既存のクラスターノードは
clusternode-01.example.com
、clusternode-02.example.com
、および clusternode-03.example.com
です。新しいノードは newnode.example.com
になります。
クラスターに追加する新しいノードで、以下の作業を行います。
- クラスターパッケージをインストールします。クラスターが SBD、Booth チケットマネージャー、またはクォーラムデバイスを使用する場合、新しいノードにそれぞれのパッケージ(
sbd
、ブートサイト、
)も手動でインストールする必要があります。corosync-
qdevice[root@newnode ~]#
yum install -y pcs fence-agents-all
- firewalld デーモンを実行している場合は、以下のコマンドを実行して Red Hat High Availability Add-On で必要なポートを有効にします。
#
firewall-cmd --permanent --add-service=high-availability
#firewall-cmd --add-service=high-availability
- ユーザー ID
hacluster
のパスワードを設定します。クラスターの各ノードで、同じパスワードを使用することが推奨されます。[root@newnode ~]#
passwd hacluster
Changing password for user hacluster. New password: Retype new password: passwd: all authentication tokens updated successfully. - 以下のコマンドを実行して
pcsd
サービスを開始し、システムの起動時にpcsd
を有効にします。#
systemctl start pcsd.service
#systemctl enable pcsd.service
既存クラスターのノードの 1 つで、以下の作業を行います。
- 新しいクラスターノードで
hacluster
ユーザーを認証します。[root@clusternode-01 ~]#
pcs cluster auth newnode.example.com
Username: hacluster Password: newnode.example.com: Authorized - 新しいノードを既存のクラスターに追加します。また、このコマンドは
corosync.conf
クラスター設定ファイルをクラスター内のすべてのノード(追加する新しいノードを含む)に同期します。[root@clusternode-01 ~]#
pcs cluster node add newnode.example.com
クラスターに追加する新しいノードで、以下の作業を行います。
- 新しいノードで、クラスターサービスを開始して有効にします。
[root@newnode ~]#
pcs cluster start
Starting Cluster... [root@newnode ~]#pcs cluster enable
- 新しいクラスターノードに対して、フェンシングデバイスを設定してテストします。フェンスデバイスの設定は 5章フェンス機能: STONITH の設定 を参照してください。
4.4.4. クラスターノードの削除
次のコマンドは、指定したノードをシャットダウンし、クラスター内の他のすべてのノードで、クラスター設定ファイル
corosync.conf
からそのノードを削除します。クラスターに関するすべての情報をクラスターノード全体で削除し、クラスターを完全に破棄する方法については、「クラスター設定の削除」 を参照してください。
pcs cluster node remove node
4.4.5. スタンバイモード
以下のコマンドは、指定ノードをスタンバイモードにします。指定ノードはリソースのホストが行えなくなります。ノードで現在アクティブなリソースは、すべて別のノードに移行されます。
--all
を指定すると、このコマンドはすべてのノードをスタンバイモードにします。
リソースのパッケージを更新する場合にこのコマンドを使用します。また、設定をテストして、ノードを実際にシャットダウンせずに復元のシュミレーションを行う場合にも、このコマンドを使用できます。
pcs cluster standby node | --all
次のコマンドは、指定したノードをスタンバイモードから外します。このコマンドを実行すると、指定ノードはリソースをホストできるようになります。
--all
を指定すると、このコマンドはすべてのノードをスタンバイモードから外します。
pcs cluster unstandby node | --all
pcs cluster standby コマンドを実行すると、指定したノードでのリソースが実行されないことに注意してください。pcs cluster unstandby コマンドを実行すると、指定したノードでリソースを実行できます。このコマンドを実行しても、リソースが必ずしも指定のノードに戻る訳ではありません。その時点でリソースが実行できる場所は、リソースを最初に設定した方法によって異なります。リソース制約の詳細は 7章リソースの制約 を参照してください。