第二回では、VM Essentialsの「インスタンス」が単一の仮想マシン (virtual machine、VM) ではなく、関連する複数の仮想マシンをひとまとまりで管理する単位であると解説しました。
まだお読みでない方は、第一回の記事と合わせて、ぜひ以下のリンクからご覧ください。
▼ 第二回:VM Essentialsのインスタンスって何?~実際に触って分かったこと~
https://www.sysbiz.yrl.com/column/tech-brog-002-instance
▼ 第一回:技術ブログはじめました~HPE Morpheus VM Essentials Software とは~
https://www.sysbiz.yrl.com/column/tech-brog-001-vme
まずは、仮想化基盤におけるHA (High Availability、高可用性) の役割について簡単に整理します。
HAは、仮想化基盤のクラスターで稼働中のホストの一部が停止してしまった場合に働く機能です。クラスター内のホストが故障などで停止した際、HAは可能な限り別のホストで仮想マシンを再起動し、システムの継続性を保とうとします。
※上図の「VM」は仮想マシンをあらわしています。
HAが無効な環境では、ホストに障害が発生すると、その上で稼働していた仮想マシンも一緒に停止します。一方、HAが有効な環境では、停止した仮想マシンが別のホスト上で自動的に再起動されます。
VM EssentialsでHAを設定する場合は、HAを設定したいクラスターのデータストアを編集します。
具体的な操作手順は次の通りです。
仮想マシンが所属するデータストアのペンマークをクリックする
「HEARTBEAT TARGET」にチェックを入れる
「変更の保存」をクリックする
この3ステップで、データストア単位でHAの基本設定が完了します。
VM EssentialsでHAを使用するためには、先の設定に加えて以下の要件を満たす必要があります。
HAを設定したいホスト同士が同一のクラスターに所属すること
クラスターがGFS2またはNFS (v4) の共有データストアに所属すること
仮想マシンが共有データストア上に存在すること
故障などでホストが停止した際に、停止したホスト上で動作していた仮想マシン分の空きリソースがあること
仮想マシンの実体が共有データストア上にあることで、クラスター内のどのホストからでも起動できる状態になります。この前提が成り立つことで、一部のホストで障害が発生しても、別のホストで仮想マシンを動作させることが可能になります。
ここからは、本ブログのタイトルにもある「HA設定」の小技について説明します。
その前に、一つ問いかけです。HAの設定は必ずしなければならないものでしょうか?
HAは可用性を保つための便利な機能ではあるものの、すべての仮想化基盤環境で必ずしも設定が必要なわけではありません。仮想マシン上で稼働するソフトウエアの特性によっては、HAを無効にすることが推奨される場合もあります。
例えば、仮想マシンに可用性ソフトウエアを導入し、アクティブ/スタンバイ構成で別々のホスト上に起動しているケースを考えます。
このケースでは、ホストが停止した際に、スタンバイ側の仮想マシンがアクティブ側の処理を速やかに引き継ぎ、サービスを継続します。
このようなソフトウエアは迅速なフェイルオーバー (failover) を目的としているため、HAによって別ホスト上で仮想マシンが再起動されてしまうと、スプリットブレイン (split brain) やサービス不整合などが発生し、処理が正常に動作しなくなる可能性があります。
なお、仮想マシンレベルの可用性以外の仕組みとの兼ね合いや、リソースが厳しい環境、障害原因究明の複雑性を避けるためといった他の理由でも、HAを設定しない場合があります。
前述したような理由でHAを制御したい場合は、以下の設定を利用することで、クラスター単位でまとめてHAの動作を制御できます。
VM Essentialsでは、「クラウドの編集」と「クラスターの編集」の両方に、「VMの電源を自動投入」というチェック項目があります。
この項目名から、プロビジョニング後の仮想マシンの振る舞いを決めるものと思ってしまいがちですが、実際にはHAの動作を決める設定です。
実機で「VMの電源を自動投入」の組み合わせを変えて検証した結果は以下の通りです。
|
クラウド |
クラスター |
HAの動作 |
|
ON |
OFF |
HAが発動し、仮想マシンは他のホストで起動する |
|
OFF |
ON |
HAが発動し、仮想マシンは他のホストで起動する |
|
ON |
ON |
HAが発動し、仮想マシンは他のホストで起動する |
|
OFF |
OFF |
HAが発動せず、仮想マシンはそのまま停止する |
検証結果から、「ON」の値が優先されることが分かりました。
したがって、1つのクラウドに複数のクラスターが紐づいている環境で個別に制御したい場合は、クラウド側を「OFF」にした状態で、クラスターの「ON」/「OFF」によって制御すればよいということになります。
クラウドとクラスターの設定を変更する際には、注意点がありますので併せて確認してください。
本設定は即座に反映されません。設定後にクラウドとクラスターの画面から、以下のリフレッシュ操作が必要になります。
クラウド側:[リフレッシュ] → [短時間]
クラスター側:[アクション] → [リフレッシュ短時間]
上記を選択したあと、少し時間をおいてから設定の反映状況を確認しましょう。
今回は、VM EssentialsにおけるHA (High Availability) の役割と設定方法、利用要件、そしてクラスター単位での動作制御という小技について解説しました。
HAは可用性を高める便利な機能ですが、運用するソフトウエアの特性によっては無効化が望ましいケースもあります。VM Essentialsでは、クラウドとクラスターの2階層で「VMの電源を自動投入」を切り替えることで、柔軟にHAの動作を制御できます。
VMwareからの移行や共存を検討している方にとって、HAの設定可否は運用設計の重要な分岐点になります。本記事の検証結果が、移行検討時の判断材料となれば幸いです。
横河レンタ・リース株式会社は「実機検証で知りえた知見を皆さまへ」をキャッチフレーズに、今後もVM Essentialsをはじめとする仮想化基盤の技術情報を発信してまいります。VM Essentialsの導入検討やVMwareからの移行にお悩みの方は、お気軽にご相談ください。
ブログを読んでいただきありがとうございました。
次回は「VM EssentialsでOEMメディアは使えるのか?」について解説します。
次回もよろしくお願いいたします。
|
項目 |
内容 |
|
名前 |
永野 裕介 (ながの ゆうすけ) |
|
職種 |
製品の技術検証 |
|
得意分野 |
ストレージ製品、仮想化製品 |
|
趣味 |
ゲーム、動画視聴 |
デスクトップ製品のコールセンターからインフラエンジニアまで幅広く業務を経験、IT業界には21年以上携わってきたエンジニア。本ブログでは、可能な限り実機検証に基づいた情報をお届けします。
横河レンタ・リース株式会社は、最新のテクノロジーと当社独自の技術を融合させ、要件定義から構築、運用支援までお客さまのビジネスに最適な環境を、確かな品質で提供します。ランサムウエア対策を見据えた信頼性の高いバックアップ体制をお求めの際は、豊富なノウハウを持つ当社へぜひご相談ください。