XenServer Tips
XenServerのHA機能におけるホスト隔離機能の条件
XenServerのHAでは、ハートビート障害などが発生した際にプールの一貫性を維持するためにホストを隔離する。この機能を知らないと、実際に隔離が発生したときにホストが突然停止したように見えるだろう。
解説
XenServer HAのホスト監視とホストが動作し続ける条件について
XenServerの高可用性(HA)機能では、ネットワークとストレージを介してハートビートと呼ばれる通信を行うことで、各ホストが互いの健全性を確認している。また、XenServerの管理モジュールは、ここで得られた健全なホストの一覧を利用して、障害が発生した仮想マシン(VM)をフェイルオーバーさせることでVMの可用性を維持している。
ハートビートによるホスト監視における最悪のシナリオは、あるホストが外部との通信パスを切断されているにもかかわらず、そのホスト上で稼働中のVMが共有ストレージにデータを書き込み続ける事態である。この場合、そのホストは他のホストから障害が発生したと認識され、同一のVMが複数のホストで同時に稼働し、結果、共有ストレージのデータを破損させてしまう(いわゆる、ネットワークパーティション《分断》状態におけるスプリットブレインシンドローム)。
この事態が発生しないよう、XenServer HAでは、ハイパーバイザーレベルでのホスト隔離(フェンス、強制停止)機能などを活用し、プールが複数のパーティションに分割されて動作しないように維持している。隔離すべきホストの選択には完全な分散アルゴリズムが実装されており、各ホストが独立して自ホストの状況を見極め、必要な処理を行う。具体的には、次のような条件を満たさないホストをプールから隔離し強制停止する。
- 条件1
XenServer管理レイヤー(XAPI)が自ホスト上で稼働中かつ自ホストからハートビートSR(Storage Repository)へのアクセスが可能。自ホストがネットワーク上で最大ホスト数のパーティションに属している。
- 条件2
XAPIが自ホスト上で稼働中かつ全てのホストが稼働中であるが、どのホストからもハートビートSRへのアクセスができなくなっている。
また、このアルゴリズムは、単一のホストだけがネットワークから分断されることのみを想定したものではなく、複数のホストが複数のパーティションに複雑に分断されても最悪の事態を防げるよう設計されている。
なお、条件2で稼働しているときに一部のホストが停止すると、どのホストでも条件2を適用できなくなり、結果として全ホストが隔離される。これは、データ破損を避けるフェイルセーフ設計によるものである。現場での混乱を避けるために事前に理解しておきたい。ただし、多くのケースでは、ハートビートSRとVMデータを格納しているSRは同一の共有ストレージ上にあると考えるので、適切に設計されたシステムであれば、大きな問題にはならないだろう。
補足解説
実際のシステムでどうかはさておき、一般的に、ホスト間の通信パスは「きれいに」切断されるとは想定できない。例えば、[A→B]通信はできるが、[B→A]の通信はできない場合がある。この複雑さは、双方向通信ができるもののみを通信可能と判断することで比較的簡単に排除できる。
本当に難しい問題は次のような場合である。例えば、[A-B][A-C][A-D][B-C][C-D]の通信はできる(上記の通り片方向通信は排除してあるので通信パスの向きは無視している)が、[B-D]の通信はできないといった状況である。このような状況でホストDをプールに含めてしまうと、BとDは互いに通信できないため、さまざまな不都合が起こり得る。これを避けるために、ホストDを隔離したい。すなわち、全ホストと通信できるホスト集合のうち、ホスト数最大の集合を発見したい。この問題は、「最大クリーク問題」と呼ばれており、現実的な計算時間で最適解を発見するのは難しいことが知られている。詳しいアルゴリズムは割愛するが、XenServer HAでは、近似的な計算を行うことで現実的な時間で隔離すべきホストを選択している。
小山恵一(こやま けいいち)
マラソンテクノロジーズ所属
マラソンテクノロジーズにおいて日本の事業開発を担当し、主に国内パートナーとの関係を構築・維持している。事業開発を担当する以前は、everRunのコアコンポーネントの設計・コーディングを担当していた。Citrix SystemsとのXenServer HAの開発協業においても、HAコンポーネントの設計・コーディングを行った。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[NTTインテグレーション株式会社] 取引先のセキュリティをどう管理する? 「SCS評価制度」対応の勘所を解説 -
製品資料
[NTTインテグレーション株式会社] SCS評価制度「★4」取得のカギ 最大の壁を突破する方法とは? -
製品資料
[NTTインテグレーション株式会社] 2026年度末から運用開始 「SCS評価制度」に備えて製造業がやるべきことは? -
事例
[ネットワンパートナーズ株式会社, アイビーシー株式会社] ハイブリッド環境の一元管理と快適な無線LAN環境、三井ホームはどう実現した? -
市場調査・トレンド
[TD SYNNEX株式会社] 調査で学ぶセキュリティ運用の実態 人を増やさず品質を維持する方法とは?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
2
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
3
1200万円のSaaS導入を回避 スギ薬局「運用費10万円」のAIエージェント構築術
-
4
LINEヤフーはなぜ「社内の管理者」すら信用しないインフラを作ったのか
-
5
2027年電子帳簿保存法のさらなる改正 安易なシステム導入の落とし穴
-
6
AIインフラの理想形? 「5層のケーキ」を垂直統合するための近道とは
-
7
「世界一給与にハングリー」な日本のエンジニアが“雇用の安定”を求める理由
-
8
「Microsoft 365」が乗っ取られる 跡形もなくMFAを破る手口
-
9
【基本情報技術者試験】そもそもOSは何をしている? 「ジョブ管理」の仕組みを解説
-
10
「高収入エンジニア」になれる“大人気の副業”7選
ホワイトペーパーランキング PR
-
1
DX/AI投資の壁を突破、現代の最高財務責任者が直面する課題と克服のヒント
-
2
バックアップは“取っているから大丈夫”なのか? ランサムウェア時代の備え方
-
3
システムの保守がモダン化を阻む? 「変えない判断」から脱却する方法とは
-
4
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
5
5分で分かる Microsoft 365のデータ損失に備えるためのバックアップの仕組み
-
6
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
7
ネットワーク遅延の原因、「パケットロス」の基礎知識と効果的な解決策
-
8
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
9
ソフトウェア開発の属人化と手戻りをどう防ぐ? 速さと品質を両立させる方法
-
10
ランサムウェア攻撃“究極の対策”はこれだ
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー