第2章 インスタンス HA の仕組み


OpenStack では、インスタンス HA を使用して、障害が発生したコンピュートノードからのインスタンス退避プロセスを自動化しています。コンピュートノードの障害がトリガーとなり実施されるイベントのシーケンスを、以下の手順で説明します。

  1. 障害が発生すると、IPMI エージェントが 第一レイヤーのフェンシング を実施し、確実に電源オフの状態にするためにノードを物理的にリセットします。オンライン状態のコンピュートノードからインスタンスを退避させると、データが破損したりオーバークラウド上で複数の同一インスタンスが実行されたりする場合があります。ノードの電源がオフである場合、フェンシング済み とみなされます。
  2. IPMI による物理的なフェンシングの後に、fence-nova エージェントが 第二レイヤーのフェンシング を実施し、フェンシング済みのノードを “evacuate=yes” 属性でマーキングします (この属性は、クラスターのノードごとに設定する必要があります)。そのために、エージェントは以下のコマンドを実行します。

    $ attrd_updater -n evacuate -A name="evacuate" host="FAILEDHOST" value="yes"

    ここで、FAILEDHOST は障害が発生したコンピュートノードのホスト名です。

  3. nova-evacuate エージェントは常にバックグラウンドで動作し、クラスターに “evacuate=yes” 属性のノードがないか定期的に確認します。この属性がフェンシング済みノードに含まれることを nova-evacuate が検出すると、エージェントはノードからの全インスタンスの退避を開始します (退避のプロセスについては「インスタンスの退避」を参照)。
  4. 障害が発生したノードが IPMI によるリセットから復帰する間、そのノードの nova-compute プロセスが自動的に開始されます。ノードは前のステップでフェンシングされているので、Pacemaker が フェンシングを解除する まで新しいインスタンスを実行しません。
  5. コンピュートノードが再びオンライン状態にあることを Pacemaker が把握すると、ノードの compute-unfence-trigger リソースの起動を試み、force-down API の呼び出しを取り消してノードを再び有効な状態に設定します。

2.1. 退避させる特定インスタンスの指定

デフォルトでは、すべてのインスタンスを退避させますが、退避用のイメージまたはフレーバーをタグ付けすることもできます。

イメージをタグ付けするには、以下のコマンドを実行します。

$ openstack image set --tag evacuable ID-OF-THE-IMAGE

フレーバーをタグ付けするには、以下のコマンドを実行します。

$ nova flavor-key ID-OF-THE-FLAVOR set evacuable=true
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat, Inc.