4.6. 計画メンテナンスのためのコンピュートノードの準備


host maintenance strategy で Optimize サービス (watcher) を使用して、Red Hat OpenStack Services on OpenShift (RHOSO) 環境のコンピュートノードからすべてのインスタンスを移行し、ユーザーへの影響なしにホストメンテナンスを実行します。バックアップノードが提供されていない場合、Optimize サービスは nova-scheduler に依存してすべてのインスタンスを移行します。どちらの使用例でも、コンピュートメンテナンスノードは無効になります。

注記

ワークロードへの影響を最小限に抑えるには、負荷の少ない時間帯にメンテナンス期間を計画し、host maintenance strategy を使用してください。監査を実行するときは、デフォルトの audit_typeONESHOT を変更しないようにしてください。

Expand
表4.6 目標とストラテジーの実証
目的ストラテジー

cluster_maintaining

host_maintenance

前提条件

  • RHOSO 18.0 が稼働しており、Optimize サービス (watcher) が実行されている。
  • コンピュートノードが 2 つ以上ある。

    • 少なくとも 1 つのインスタンスが実行されているコンピュートノード 1 つ。
    • バックアップノードとして機能する 2 番目のコンピュートノード。
  • ワークステーションに oc コマンドラインツールがインストール済みである。
  • cluster-admin 権限を持つユーザーとして、RHOSO コントロールプレーンにアクセスできるワークステーションにログオン済みである。

手順

  1. ワークステーションから OpenStackClient Pod のリモートシェルにアクセスします。

    $ oc rsh -n openstack openstackclient
  2. 少なくとも 2 つのコンピュートノードと少なくとも 1 つのインスタンスがあることを確認します。

    $ openstack server list --long

    出力例

    この例では、1 つのインスタンスが compute1 で実行され、1 つのインスタンスが compute2 で実行されています。compute1 ノードはメンテナンスがスケジュールされているため、host maintenance strategy で Optimize サービスを使用して、ユーザーへの影響なしにインスタンスを compute1 から compute2 に移行します。

    +--------+-------------------------------+
    | Name   | Host                          |
    +--------+-------------------------------+
    | test02 | compute2.ctlplane.localdomain |
    | test01 | compute1.ctlplane.localdomain |
    +--------+-------------------------------+
  3. ストラテジー host_maintenance と目標 cluster_maintaining を使用する監査テンプレートを作成します。

    この例では、監査テンプレートの名前は HostMaintenance です。

    $ openstack optimize audittemplate create -s host_maintenance \
    HostMaintenance cluster_maintaining

    出力例

    +-------------+--------------------------------------+
    | Field       | Value                                |
    +-------------+--------------------------------------+
    | UUID        | 96c46352-352d-43eb-97ef-4bf3235d9574 |
    | Created At  | 2025-07-04T14:52:19.919765+00:00     |
    | Updated At  | None                                 |
    | Deleted At  | None                                 |
    | Description | None                                 |
    | Name        | HostMaintenance                      |
    | Goal        | cluster_maintaining                  |
    | Strategy    | host_maintenance                     |
    | Audit Scope | []                                   |
    +-------------+--------------------------------------+
  4. 監査テンプレートが作成されたことを確認します。

    $ openstack optimize audittemplate list

    出力例

    +----------------------+------------------+
    | Goal                 | Strategy         |
    +----------------------+------------------+
    | cluster_maintaining  | host_maintenance |
    +----------------------+------------------+
  5. ストラテジー host_maintenance と目標 cluster_maintaining に基づいて監査テンプレートを使用する監査を実行します。環境に適した値でストラテジーパラメーターを更新します。

    この例では、HostMaintenance 監査テンプレートが使用され、compute1 ホストのメンテナンスがスケジュールされています。

    $ openstack optimize audit create -a HostMaintenance \
    -p maintenance_node=compute1.ctlplane.localdomain

    このストラテジーが使用するパラメーターの詳細は、ホストメンテナンスストラテジー を参照してください。

    出力例

    +---------------+-------------------------------------------------------+
    | Field         | Value                                                 |
    +---------------+-------------------------------------------------------+
    | UUID          | 8cfb4abe-3720-4af2-a8a9-fba8fff1f442                  |
    | Name          | host_maintenance-2025-07-04T14:54:58.410413           |
    | Created At    | 2025-07-04T14:54:58.419668+00:00                      |
    | Updated At    | None                                                  |
    | Deleted At    | None                                                  |
    | State         | PENDING                                               |
    | Audit Type    | ONESHOT                                               |
    | Parameters    | {'maintenance_node': 'compute1.ctlplane.localdomain'} |
    | Interval      | None                                                  |
    | Goal          | cluster_maintaining                                   |
    | Strategy      | host_maintenance                                      |
    | Audit Scope   | []                                                    |
    | Auto Trigger  | False                                                 |
    | Next Run Time | None                                                  |
    | Hostname      | None                                                  |
    | Start Time    | None                                                  |
    | End Time      | None                                                  |
    | Force         | False                                                 |
    +---------------+-------------------------------------------------------+
  6. Optimize サービスによって監査が作成されたことを確認します。

    $ openstack optimize audit list

    出力例

    State の値が SUCCEEDED の場合、監査が実行され、アクションプランが作成されています。

    +--------------------------------------+-----------+------------------+
    | UUID                                 | State     | Strategy         |
    +--------------------------------------+-----------+------------------+
    | 8cfb4abe-3720-4af2-a8a9-fba8fff1f442 | SUCCEEDED | host_maintenance |
    +--------------------------------------+-----------+------------------+
  7. アクションプランを確認します。

    $ openstack optimize actionplan list \
    --audit 8cfb4abe-3720-4af2-a8a9-fba8fff1f442

    出力例

    +--------------------------------------+-------------+-----------------+
    | UUID                                 | State       | Global efficacy |
    +--------------------------------------+-------------+-----------------+
    | 40017617-7698-4ce7-b5ce-2917ec522a08 | RECOMMENDED |                 |
    +--------------------------------------+-------------+-----------------+
  8. アクションプランに含まれるアクションをリストします。

    $ openstack optimize action list \
    --action-plan 40017617-7698-4ce7-b5ce-2917ec522a08

    出力例

    この例では、アクションプランに 2 つのアクションが含まれています。

    +--------------------------------------+---------+---------------------------+
    | UUID                                 | State   | Action                    |
    +--------------------------------------+---------+---------------------------+
    | 19afe53e-4cf4-4b67-b910-92bca5f40186 | PENDING | change_nova_service_state |
    | 6e3154ac-279a-4b26-b993-9a6eea70309b | PENDING | migrate                   |
    +--------------------------------------+---------+---------------------------+
  9. アクションの詳細を表示できます。

    $ openstack optimize action show \
    6e3154ac-279a-4b26-b993-9a6eea70309b

    出力例

    この例では、アクションプランによって、compute1 ノードで現在実行されている 1 つのインスタンスが compute2 ノードに移行されます。

    +-------------+--------------------------------------------------------+
    | Field       | Value                                                  |
    +-------------+--------------------------------------------------------+
    | UUID        | 6e3154ac-279a-4b26-b993-9a6eea70309b                   |
    | Created At  | 2025-07-04T14:54:58+00:00                              |
    | Updated At  | None                                                   |
    | Deleted At  | None                                                   |
    | Parents     | ['19afe53e-4cf4-4b67-b910-92bca5f40186']               |
    | State       | PENDING                                                |
    | Action Plan | 40017617-7698-4ce7-b5ce-2917ec522a08                   |
    | Action      | migrate                                                |
    | Parameters  | {'migration_type': 'live', 'source_node':              |
    |             | '87254b5a-257b-48ea-aee0-0d4189d84fc7',                |
    |             | 'resource_name': 'test01', 'resource_id':              |
    |             | '19bb7593-1b6d-43aa-a0a1-f88921fb4b42'}                |
    | Description | Moving a VM instance from source_node to               |
    |             | destination_node                                       |
    +-------------+--------------------------------------------------------+

    $ openstack optimize action show \
    19afe53e-4cf4-4b67-b910-92bca5f40186

    出力例

    この例では、アクションプランによって compute1 ノードの状態が disabled に変更されます。

    +-------------+--------------------------------------------------------+
    | Field       | Value                                                  |
    +-------------+--------------------------------------------------------+
    | UUID        | 19afe53e-4cf4-4b67-b910-92bca5f40186                   |
    | Created At  | 2025-07-04T14:54:58+00:00                              |
    | Updated At  | None                                                   |
    | Deleted At  | None                                                   |
    | Parents     | []                                                     |
    | State       | PENDING                                                |
    | Action Plan | 40017617-7698-4ce7-b5ce-2917ec522a08                   |
    | Action      | change_nova_service_state                              |
    | Parameters  | {'state': 'disabled', 'disabled_reason':               |
    |             | 'watcher_maintaining', 'resource_name':                |
    |             | 'compute1.ctlplane.localdomain', 'resource_id':        |
    |             | '87254b5a-257b-48ea-aee0-0d4189d84fc7'}                |
    | Description | Disables or enables the nova-compute service.A         |
    |             | disabled nova-compute service can not be selected by   |
    |             | the nova for future deployment of new server.          |
    +-------------+--------------------------------------------------------+
  10. アクションプランを実行します。

    $ openstack optimize actionplan start \
    40017617-7698-4ce7-b5ce-2917ec522a08

    出力例

    +---------------------+--------------------------------------+
    | Field               | Value                                |
    +---------------------+--------------------------------------+
    | UUID                | 40017617-7698-4ce7-b5ce-2917ec522a08 |
    | Created At          | 2025-07-04T14:54:58+00:00            |
    | Updated At          | 2025-07-04T15:04:47+00:00            |
    | Deleted At          | None                                 |
    | Audit               | 8cfb4abe-3720-4af2-a8a9-fba8fff1f442 |
    | Strategy            | host_maintenance                     |
    | State               | PENDING                              |
    | Efficacy indicators | []                                   |
    | Global efficacy     | []                                   |
    | Hostname            | None                                 |
    +---------------------+--------------------------------------+
  11. アクションが成功したことを確認します。

    $ openstack optimize action list \
    --action-plan 40017617-7698-4ce7-b5ce-2917ec522a08

    このストラテジーが使用するパラメーターの詳細は、ホストメンテナンスストラテジー を参照してください。

    出力例

    この例では、インスタンスは compute1 ノードから移行され、compute1 の状態は無効に設定されました。

    +--------------------------------------+-----------+---------------------------+
    | UUID                                 | State     | Action                    |
    +--------------------------------------+-----------+---------------------------+
    | 19afe53e-4cf4-4b67-b910-92bca5f40186 | SUCCEEDED | change_nova_service_state |
    | 6e3154ac-279a-4b26-b993-9a6eea70309b | SUCCEEDED | migrate                   |
    +--------------------------------------+-----------+---------------------------+
  12. メンテナンスノードで実行されているすべてのインスタンスが移行されたことを確認します。

    $ openstack server list --long

    出力例

    この例では、compute1 ノードで実行されていたインスタンス test01 が、compute2 ノードで実行されています。

    +--------+-------------------------------+
    | Name   | Host                          |
    +--------+-------------------------------+
    | test02 | compute2.ctlplane.localdomain |
    | test01 | compute2.ctlplane.localdomain |
    +--------+-------------------------------+
  13. メンテナンスノードが無効になっていることを確認します。

    $ openstack compute service list

    出力例

    この例では、compute1 ノードの Statusdisabled になっています。

    +-------------------------------+----------+
    | Host                          | Status   |
    +-------------------------------+----------+
    | nova-cell0-conductor-0        | enabled  |
    | nova-scheduler-0              | enabled  |
    | nova-cell1-conductor-0        | enabled  |
    | compute2.ctlplane.localdomain | enabled  |
    | compute1.ctlplane.localdomain | disabled |
    +-------------------------------+----------+
  14. openstackclient Pod を終了します。

    $ exit
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る