Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

クラスターノードの編集

このトピックで提供される情報を使用して、動作中のParagon Automationクラスタノードを編集します。 repair コマンドを使用して、クラスター・ノードの追加、除去、または置換、および障害のあるノードの修復を行うことができます。修復プロセスでは、クラスター ノードが再構築され、ノード内のポッドが再起動されます。

マルチプライマリノードクラスタ内のプライマリノードおよびすべてのクラスタ内のワーカーノードの編集

複数のプライマリノードを持つクラスタでは、プライマリノードとワーカーノードを追加または削除することで、プライマリノードとワーカーノードの両方を編集できます。ただし、プライマリ ノードを追加または削除する場合は、プライマリ ノードの総数が奇数であることを確認する必要があります。また、コントロール プレーンの高可用性を実現するには、少なくとも 3 つのプライマリ ノードが必要です。次の手順を使用して、マルチプライマリノードクラスター内のノードを編集します。

同じ手順を使用して、単一プライマリノードクラスタ内のワーカーノードのみを編集することもできます。

  1. 新しいノードまたは交換用ノードを準備し、クラスター ノードの前提条件をすべて満たしていることを確認します。ベース OS に応じて 、「Ubuntu クラスター ノードの準備 」または「 RHEL クラスター ノードの準備」を参照してください。
  2. 追加または修復するノードにログインします。
  3. udevd デーモンを無効にします。
    1. udevdが実行されているかどうかを確認してください。

      # systemctl is-active systemd-udevd

    2. udevd がアクティブな場合は、無効にします。 # systemctl mask system-udevd --now
  4. 制御ホストにログインします。
  5. ノードを追加する場合は、インベントリ ファイルを編集して、新しいノードの IP アドレスを追加します。

    ノードを削除する場合は、インベントリ ファイルを編集して、削除するノードの IP アドレスを削除します。

    ノードを交換するときに、交換用ノードの IP アドレスが現在のノードと異なる場合は、インベントリ ファイルを更新して、古いノード アドレスを新しいノード アドレスに置き換えます。

    ノードを修復するときにIPアドレスが変更されていない場合は、インベントリ ファイルを編集する必要はありません。

  6. 次のいずれかのコマンドを実行します。

    ノード・アドレスが変更されていない場合、またはノードを追加または削除する場合は、

    ./run –c config-dir repair node-ip-address-or-hostname

    ノード・アドレスが変更された場合は、

    ./run -c config-dir repair old-node-ip-address-or-hostname,new-node-ip-address-or-hostname

  7. ノードが修復または交換されても、Ceph分散ファイルシステムは自動的に更新されません。修復プロセスの一環としてデータ・ディスクが破壊された場合は、それらのデータ・ディスクでホストされているオブジェクト・ストレージ・デーモン(OSD)をリカバリする必要があります。

    1. Cephツールボックスに接続し、OSDのステータスを表示します。 ceph-tools スクリプトは、プライマリ ノードにインストールされます。プライマリノードにログインし、kubectl インターフェイスを使用して ceph-toolsにアクセスできます。1 次ノード以外のノードを使用するには、(制御ホストの config-dir にある) admin.conf ファイルをコピーして kubeconfig 環境変数を設定するか、または export KUBECONFIG=config-dir/admin.conf コマンドを使用する必要があります。

      $ ceph-tools# ceph osd status

    2. すべてのOSDが exists,upとして表示されていることを確認します。OSDが破損している場合は、 CephとRookのトラブルシューティングで説明されているトラブルシューティング手順に従ってください。

  8. すべてのOSDが作成されたことを確認した後、追加または修復したノードにログインします。
  9. そのノードで udevd を再度有効にします。

    systemctl unmask system-udevd

単一プライマリノードクラスタのプライマリノードの編集

単一プライマリノードクラスタでは、プライマリノードとワーカーノードの両方を編集できます。ただし、プライマリノードを削除または追加することはできません。

手記:

プライマリノードを追加できるのは、既存のクラスターがすでにマルチプライマリクラスターである場合のみです。

ノードの修復中は、新しいポッドをスケジュールできず、既存のポッドは動作しないままになるため、サービスが低下します。

単一プライマリノードクラスタでプライマリノードを復元するには、最新バージョンの etcd-snapshot.db ファイルが必要です。

手記:

etcd-snapshot.dbファイルは、5 分ごとに /export/backup/etcd-snapshot.db にローカルにバックアップされます。このファイルは、定期的に別のリモートロケーションにコピーするか、/export/backup/ を外部ファイルサーバにマウントすることをお勧めします。

1 次ノードを交換または修復するには、 etcd-snapshot.db ファイルを使用可能にしておく必要があります。

  1. 交換または修復するノードにログインします。
  2. udevd プロセスを無効にします。
    1. udevdが実行されているかどうかを確認してください。

      # systemctl is-active systemd-udevd

    2. udevd がアクティブな場合は、無効にします。 # systemctl mask system-udevd --now
  3. 制御ホストにログインします。
  4. etcd-snapshot.dbファイルを制御ホストにコピーするか、外部の/export/backup/マウントをリストアします。
  5. 以下のいずれかのコマンドを実行して、ノードを交換または修復します。

    ノード・アドレスが変更されていない場合は、

    ./run –c config-dir repair node-ip-address-or-hostname –e etcd_backup=path-to-etcd-snapshot.db

    ノード・アドレスが変更された場合は、

    ./run –c config-dir repair old-node-ip-address-or-hostname,new-node-ip-address-or-hostname –e etcd_backup=path-to-etcd-snapshot.db

  6. ノードが修復または交換されても、Ceph分散ファイルシステムは自動的に更新されません。修復プロセスの一環としてデータ・ディスクが破壊された場合は、それらのデータ・ディスクでホストされているオブジェクト・ストレージ・デーモン(OSD)をリカバリする必要があります。

    1. Cephツールボックスに接続し、OSDのステータスを表示します。 ceph-tools スクリプトは、プライマリ ノードにインストールされます。プライマリノードにログインし、kubectl インターフェイスを使用して ceph-toolsにアクセスできます。1 次ノード以外のノードを使用するには、 admin.conf ファイルを ( 制御ホスト上の config-dir に) コピーして kubeconfig 環境変数を設定するか、または export KUBECONFIG=config-dir/admin.conf コマンドを使用する必要があります。

      $ ceph-tools# ceph osd status

    2. すべてのOSDが exists,upとして表示されていることを確認します。OSDが破損している場合は、 CephとRookのトラブルシューティングで説明されているトラブルシューティング手順に従ってください。

  7. すべてのOSDが作成されたことを確認した後、追加または修復したノードにログインします。
  8. そのノードで udevd を再度有効にします。

    systemctl unmask system-udevd