Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

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.comclusternode-02.example.com、および clusternode-03.example.com です。新しいノードは newnode.example.com になります。
クラスターに追加する新しいノードで、以下の作業を行います。
  1. クラスターパッケージをインストールします。クラスターが SBD、Booth チケットマネージャー、またはクォーラムデバイスを使用する場合、新しいノードにそれぞれのパッケージ(sbd、ブートサイト、corosync-qdevice )も手動でインストールする必要があります。
    [root@newnode ~]# yum install -y pcs fence-agents-all
  2. firewalld デーモンを実行している場合は、以下のコマンドを実行して Red Hat High Availability Add-On で必要なポートを有効にします。
    # firewall-cmd --permanent --add-service=high-availability
    # firewall-cmd --add-service=high-availability
  3. ユーザー ID hacluster のパスワードを設定します。クラスターの各ノードで、同じパスワードを使用することが推奨されます。
    [root@newnode ~]# passwd hacluster
    Changing password for user hacluster.
    New password:
    Retype new password:
    passwd: all authentication tokens updated successfully.
    
  4. 以下のコマンドを実行して pcsd サービスを開始し、システムの起動時に pcsd を有効にします。
    # systemctl start pcsd.service
    # systemctl enable pcsd.service
既存クラスターのノードの 1 つで、以下の作業を行います。
  1. 新しいクラスターノードで hacluster ユーザーを認証します。
    [root@clusternode-01 ~]# pcs cluster auth newnode.example.com
    Username: hacluster
    Password:
    newnode.example.com: Authorized
    
  2. 新しいノードを既存のクラスターに追加します。また、このコマンドは corosync.conf クラスター設定ファイルをクラスター内のすべてのノード(追加する新しいノードを含む)に同期します。
    [root@clusternode-01 ~]# pcs cluster node add newnode.example.com
クラスターに追加する新しいノードで、以下の作業を行います。
  1. 新しいノードで、クラスターサービスを開始して有効にします。
    [root@newnode ~]# pcs cluster start
    Starting Cluster...
    [root@newnode ~]# pcs cluster enable
  2. 新しいクラスターノードに対して、フェンシングデバイスを設定してテストします。フェンスデバイスの設定は 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章リソースの制約 を参照してください。