vSphere HA & DRS:仮想化基盤で「枕を高くして眠る」ための救世主コンビ

VMware tutorial - IT technology blog
VMware tutorial - IT technology blog

深夜の「システムダウン」という悪夢

想像してみてください。50台の仮想マシン(VM)で会社の会計システムやERPの全機能を運用しているシナリオを。午前2時、1台の物理サーバー(ESXiホスト)のコンデンサが破裂し、突然シャットダウンしました。もし冗長化の仕組みがなければ、数十のサービスが道連れに停止します。翌朝、オフィスは大混乱に陥り、あなたは苦情のチケットの山に直面することになるでしょう。

この課題を解決するために、VMwareは強力なコンビを提供しています。それが vSphere HA (High Availability)vSphere DRS (Distributed Resource Scheduler) です。HAが緊急救助隊の役割を果たすのに対し、DRSは優れたリソース調整の建築家のような存在です。私が実際に構築してきたシステムでは、HAを適切に構成することで、復旧時間(RTO)を数時間からわずか3分未満に短縮できました。

HAとDRSの解剖:何が違うのか?

1. vSphere HA – 仮想マシンの自動再起動

HAのメカニズムは、予備の発電機のように機能します。クラスタ内のホストにハードウェア障害が発生すると、vCenterは即座に残りのホストに対して、影響を受けた仮想マシンの再起動を命じます。注意点として、HAはOSの再起動時間を必要とするため、短時間のダウンタイムが発生します。これはFault Tolerance(FT)のような完全な無停止(並列実行)メカニズムではありません。

2. vSphere DRS – インテリジェントな負荷分散

HAが「生存」を担うなら、DRSは仮想マシンが常に「健全」であることを保証します。DRSはCPUとRAMの使用率を継続的に監視します。例えば、ホストAが90%の負荷を抱えている一方でホストBが20%しか使用していない場合、DRSはvMotionを実行して、ダウンタイムなしで仮想マシンをホストBに移動させます。これにより、局所的な「ボトルネック」を解消します。

よくProxmoxのHA機能と比較されることがありますが、検証環境には優れているものの、リソース閾値の予測能力やvMotion実行時の滑らかさにおいて、VMware DRSは依然としてエンタープライズ環境で一線を画すレベルにあります。

導入を成功させるための条件

以下の4つの重要な要素を確認する前に、機能を有効にしないでください:

  • vCenter Server: クラスタを制御するために必須の司令塔です.
  • 共有ストレージ(Shared Storage): これがシステムの魂です。すべてのホストが同じストレージ領域(SAN、iSCSI、またはvSAN)に接続されている必要があります。VMがローカルHDDにある場合、HAは全く機能しません。
  • Network vMotion: VMの移動を迅速に行うため、高速なネットワークカード(最低1Gbps、推奨10Gbps)を使用してください。
  • ライセンス: DRSは通常Enterprise Plusエディションを必要とするため、ライセンスを再確認してください。

実践的な設定手順

ステップ1:クラスタの作成

データセンターを右クリックし、[新規クラスタ] を選択します。管理基準に従って名前を付けます(例:PRD-Cluster-01)。ここが物理リソースを一つの論理的な塊にまとめる場所です。

ステップ2:vSphere HAの有効化

[設定] -> [vSphereの可用性] -> [編集] に進みます。

  • vSphere HA: [オン] に切り替えます。
  • ホスト監視: vCenterがサーバーの「ハートビート(Heartbeat)」信号を監視できるよう、常にオンにします。
  • アドミッションコントロール: この項目を無視しないでください。ホストが2台なら50%、4台なら25%の予備リソースを設定します。これにより、1台のホストがダウンしても、残りのホストが負荷を引き受ける余力を確保できます。

ステップ3:vSphere DRSの最適化

[vSphere DRS] -> [編集] セクションで:

  • 自動化レベル: [完全自動] を選択します。システムが自動的に計算し、手動の承認なしでVMを移動させます。
  • 移行の閾値: レベル3(中央値)が「スイートスポット」です。このレベルでは、DRSは本当に必要な時だけVMを移動させ、頻繁なvMotionによるネットワーク帯域の浪費を防ぎます。

PowerCLIによるクイックチェック

各メニューをクリックする代わりに、このスクリプトを使用してクラスタ全体のステータスを5秒で確認できます:

Connect-VIServer -Server vcenter.yourdomain.com # vCenterサーバーに接続
Get-Cluster | Select-Object Name, 
    @{N="HA_Status"; E={$_.ExtensionData.Configuration.DasConfig.Enabled}}, # HAが有効かどうか
    @{N="DRS_Automation"; E={$_.ExtensionData.Configuration.DrsConfig.DefaultVmBehavior}} # DRSの自動化レベル
Disconnect-VIServer -Confirm:$false # 接続を解除

運用における3つの「鉄則」

  1. ポートグループ名の一致: すべてのホストでネットワーク名が完全に一致していることを確認してください(大文字・小文字も区別されます)。わずかなタイポでも、HA発動後にVMがネットワーク接続を失う原因になります。
  2. データストアハートビート: HAがホストの状態を確認するための予備チャネルとして、少なくとも2つのデータストアを選択してください。これにより、管理ネットワーク障害時の「スプリットブレイン」状態を防げます。
  3. アンチアフィニティルール(Anti-Affinity Rules): 2台のドメインコントローラーを実行している場合、このルールを使用して異なる物理ホストに配置されるように強制してください。「すべての卵を一つのカゴに入れない」ことが重要です。

結び

HAとDRSの導入は、単に機能をオンにすることではなく、持続可能なインフラ設計の考え方そのものです。このコンビを使いこなすことで、データだけでなく、あなた自身の休息時間も守ることができます。今日、アドミッションコントロールの設定を再確認し、最悪のシナリオに備えができているかチェックしてみてください。

Share: