16.4. コントローラーノードの置き換え


コントローラーノードを置き換えるには、置き換えるノードのインデックスを特定します。

  • ノードが仮想ノードの場合には、障害の発生したディスクが含まれるノードを特定し、バックアップからそのディスクをリストアします。障害の発生したサーバー上での PXE ブートに使用する NIC の MAC アドレスは、ディスク置き換え後も同じアドレスにしてください。
  • ノードがベアメタルノードの場合には、ディスクを置き換え、オーバークラウド設定で新しいディスクを準備し、新しいハードウェア上でノードのイントロスペクションを実施します。
  • ノードがフェンシングの設定された高可用性クラスタの一部である場合、Galera ノードを個別に復元しなければならない場合があります。詳しくは、アーティクル「How Galera works and how to rescue Galera clusters in the context of Red Hat OpenStack Platform」を参照してください。

overcloud-controller-1 ノードを overcloud-controller-3 ノードに置き換えるには、以下の手順例を実施します。overcloud-controller-3 ノードの ID は 75b25e9a-948d-424a-9b3b-f0ef70a6eacf です。

重要

ノードを既存のベアメタルノードに置き換えるには、director がノードを自動的に再プロビジョニングしないように、削除するノードをメンテナンスモードに切り替えます。

重要

オーバークラウドのコントローラーノードを置き換えると、ノード間で swift リングの一貫性が失われる可能性があります。これにより、Object Storage サービスの可用性が低下する場合があります。これは既知の問題です。その場合には、SSH を使用してそれまで存在していたコントローラーノードにログインして更新されたリングをデプロイし、Object Storage コンテナーを再起動します。

(undercloud) [stack@undercloud-0 ~]$ source stackrc
(undercloud) [stack@undercloud-0 ~]$ nova list
...
| 3fab687e-99c2-4e66-805f-3106fb41d868 | controller-1 | ACTIVE | -          | Running     | ctlplane=192.168.24.17 |
| a87276ea-8682-4f27-9426-6b272955b486 | controller-2 | ACTIVE | -          | Running     | ctlplane=192.168.24.38 |
| a000b156-9adc-4d37-8169-c1af7800788b | controller-3 | ACTIVE | -          | Running     | ctlplane=192.168.24.35 |
...

(undercloud) [stack@undercloud-0 ~]$ for ip in 192.168.24.17 192.168.24.38 192.168.24.35; do ssh $ip 'sudo podman restart swift_copy_rings ; sudo podman restart $(sudo podman ps -a --format="{{.Names}}" --filter="name=swift_*")'; done

手順

  1. stackrc ファイルを取得します。

    $ source ~/stackrc
  2. overcloud-controller-1 ノードのインデックスを特定します。

    $ INSTANCE=$(openstack server list --name overcloud-controller-1 -f value -c ID)
  3. インスタンスに関連付けられたベアメタルノードを特定します。

    $ NODE=$(openstack baremetal node list -f csv --quote minimal | grep $INSTANCE | cut -f1 -d,)
  4. ノードをメンテナンスモードに切り替えます。

    $ openstack baremetal node maintenance set $NODE
  5. コントローラーノードが仮想ノードの場合には、コントローラーホストで以下のコマンドを実行し、障害の発生した仮想ディスクをバックアップからの仮想ディスクに置き換えます。

    $ cp <VIRTUAL_DISK_BACKUP> /var/lib/libvirt/images/<VIRTUAL_DISK>

    <VIRTUAL_DISK_BACKUP> を障害の発生した仮想ディスクのバックアップへのパスに、<VIRTUAL_DISK> を置き換える仮想ディスクの名前にそれぞれ置き換えます。

    削除するノードのバックアップがない場合には、新しい仮想ノードを使用する必要があります。

    コントローラーノードがベアメタルノードの場合には、以下の手順を実施してディスクを新しいベアメタルディスクに置き換えます。

    1. 物理ハードドライブまたはソリッドステートドライブを置き換えます。
    2. 障害が発生したノードと同じ設定のノードを準備します。
  6. 関連付けられていないノードの一覧を表示し、新規ノードの ID を特定します。

    $ openstack baremetal node list --unassociated
  7. 新規ノードを control プロファイルにタグ付けします。

    (undercloud) $ openstack baremetal node set --property capabilities='profile:control,boot_option:local' 75b25e9a-948d-424a-9b3b-f0ef70a6eacf
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.