Loading...

We've detected that your browser language is Chinese. Would you like to visit our Chinese website? [ Dismiss ]
By: Dervish

仮想化環境は稼働時間とサービス継続性に大きく依存します。物理ホストに障害が発生すると、数十台の仮想マシンが瞬時に利用不可となる可能性があります。このため多くの管理者は基幹業務を保護するため、VMware HAクラスタ環境を構成することを選択します。

VMware高可用性(HA)はvSphere標準搭載機能で、ホスト障害発生時に仮想マシンを自動再起動する仕組みです。HAクラスタを構築することで、企業は停止時間を大幅に削減し、業務継続性を維持できます。

本ガイドでは下記の内容を解説します。

  • VMware HAの概要と動作原理
  • VMwareクラスタHAの導入要件
  • VMwareにHAクラスタを段階的に設定する手順
  • VMware HAクラスタ設定のベストプラクティス
  • i2Availabilityなど代替ソリューションを検討する場面

VMware HAとは何か

VMware高可用性(HA)はVMware vSphereのクラスタレベル機能で、ホスト障害時に仮想マシンの自動復旧を実現します。

HAを有効化すると以下の動作が行われます。

  • クラスタ内の各ESXiホストがハートビート信号で相互監視を実施
  • ホストが利用不可になるとHAが障害を検知
  • 障害の影響を受けたVMをクラスタ内の他の稼働ホスト上で自動再起動

この仕組みにより、人手を介さず迅速にサービスを復旧可能です。

VMware HAの主な特徴は以下の通りです。

  • ホスト障害後のVM自動再起動
  • クラスタ単位のリソース保護
  • DRS、vMotionと連携可能
  • 高可用性設定が簡素化されている

ただしVMware HAはVMを継続稼働させるのではなく再起動する方式のため、短時間のサービス停止が発生する点に注意が必要です。vmware-ha-architecture

VMware HAの動作原理

VMware HAはクラスタ内の分散監視機構によって動作します。

手順1. ホスト監視

各ESXiホスト上でHAエージェントが稼働し、ハートビート信号を通じて他ホストと通信します。

ハートビートが途絶えると、クラスタはホスト障害の可能性を検知します。

手順2. マスターホストとセカンダリホスト

VMware HAクラスタ内では以下の役割が割り当てられます。

  • 1台のホストがマスターとなる
  • 残りのホストはセカンダリノードとして動作

マスターホストは以下の業務を担います。

  • クラスタ全体の健全性監視
  • ホスト障害の検出
  • 稼働可能なホストへVMを再起動

手順3. VM再起動処理

ホスト障害発生時の流れは下記の通りです。

  1. HAがハートビートの消失を検知
  2. マスターホストが障害を確定
  3. クラスタのリソース空き状況を評価
  4. 障害VMを他のホスト上で再起動

復旧にかかる時間はVMのサイズやクラスタリソースによりますが、通常数分程度で完了します。

VMwareクラスタHAの導入要件

VMware HAクラスタを設定する前に、満たす必要のある基盤要件が存在します。

  • vCenter Server

HAの設定にはVMware vCenter Serverによる一元管理が必須です。

  • 複数台のESXiホスト

フェイルオーバー機能を実現するため、クラスタには最低2台のESXiホストが必要です。

  • 共有ストレージ

全ホストが下記の共有ストレージにアクセス可能である必要があります。

    • SAN
    • NAS
    • vSAN

これにより、一台のホストが故障してもVMファイルにアクセスできる状態を維持します。

  • 安定したネットワーク

ホスト間のハートビート通信のため、安定した管理用ネットワークが必須です。

  • 十分なリソース容量

障害発生時にVMを再起動するためのCPU・メモリリソースをクラスタに確保しておく必要があります。

上記のVMwareクラスタHA要件を満たすことで、ホスト停止時の業務復旧を正常に実行できます。

VMware HA、VMware FT、レプリケーション型HAの比較

高可用性環境を構築する際、多くのユーザーがVMware HA、フォールトトレランス(FT)、レプリケーションベースHAソリューションを混同しがちです。それぞれの主な違いは下表の通りです。

項目 VMware HA VMware Fault Tolerance レプリケーション型HA
保護方式 VM再起動 VMリアルタイムミラーリング 継続的データレプリケーション
停止時間 数分間 ほぼゼロ ほぼゼロ
基盤要件 クラスタ+共有ストレージ リソース消費量が大きい 導入構成が柔軟
保護範囲 ホスト障害 ホスト障害 アプリ・システム・サイト全体
代表的な利用シナリオ 汎用業務ワークロード 最重要仮想マシン 企業向け災害復旧・高可用性

VMware HAは基礎的な基盤可用性確保に適している一方、レプリケーション型HAソリューションは停止時間を最小限に抑えた継続的な保護を提供します。

手順解説:VMware HAクラスタの設定方法

本項ではvSphereクライアントを使用したVMware HAクラスタの段階的な設定手順を解説します。

データセンターを作成

vSphereクライアントを開き、基盤リソースを管理する論理コンテナを作成します。

手順1. vCenterを右クリックし、「新規データセンター」を選択します。

new-datacenter

手順2. データセンター名を入力します。

name-new-datacenter

クラスタを作成

次に、作成したデータセンター内に新規クラスタを作成します。

手順1. データセンターを右クリックします。

手順2. 「新規クラスタ」を選択します。

new-cluster

手順3. クラスタ名を入力します。

手順4. vSphere HAを有効化します。

enable-ha

ワークロードの自動負荷分散を実現するため、DRS(分散リソーススケジューラ)も併せて有効化可能です。

クラスタにESXiホストを追加

クラスタ作成後、ホストを登録します。

手順1. クラスタを右クリックします。

手順2. 「ホストの追加」をクリックします。

add-hosts

手順3. ESXiホストのログイン情報を入力します。

手順4. 設定内容を確定します。

手順5. すべてのホストがクラスタのリソースプールに参加します。

add-hosts-complete

VMware HAを有効化

高可用性機能を有効にする手順は以下の通りです。

手順1. 対象クラスタを選択します。

手順2. 「設定」タブに移動します。

手順3. 「vSphere可用性」を選択し、「編集」をクリックします。

choose-vsphere-availability-and-click-edit

手順5. 「vSphere HAをオンにする」にチェックを入れます。

turn-on-vsphere-ha

有効化後、各ホストにHAエージェントが自動的にインストールされます。

HA詳細設定を構成

HAを有効にした後、管理者は各種重要パラメータを設定する必要があります。

ホスト監視

本オプションはESXiホスト同士のハートビート監視を有効にします。

ホスト監視を無効にすると、障害の検知ができなくなります。

アドミッションコントロール

アドミッションコントロールは、障害発生後にVMを再起動するための十分なリソースが確保されていることを保証します。

一般的なポリシーは下記の3種類です。

  • クラスタが許容するホスト障害台数
  • 予約するクラスタリソースの割合
  • 専用フェイルオーバーホストの指定

VM再起動優先度

管理者は再起動の優先度を3段階で設定可能です。

  • 高優先度:基幹業務アプリケーション
  • 中優先度:標準業務ワークロード
  • 低優先度:非重要サービス

データストアハートビート

ネットワークのハートビートが途絶えた際、データストアハートビートが追加の障害検知機構として動作します。

VMware HAのベストプラクティス

HAの安定したパフォーマンスを確保するため、以下の運用ルールを遵守してください。

管理用ネットワークを専用回線に分離

管理トラフィックを分離することで、ネットワーク輻輳時のハートビート消失を防止します。

DRSを有効化

HAと分散リソーススケジューラ(DRS)を併用することで、リソースの負荷分散性能が向上します。

フェイルオーバー用リソース容量を事前計画

ホスト障害発生時にVM再起動に必要なリソースをクラスタに確保してください。

クラスタの健全性を監視

vCenterの監視ツールを活用し、下記項目を常時確認します。

  • HAエージェントの稼働状態
  • リソース使用状況
  • フェイルオーバー可能容量

VMware HAの制限事項

VMware HAは優れた保護機能を提供する一方、いくつかの制限が存在します。

制限項目 詳細説明
再起動時にVMの停止時間が発生 アプリケーションに一時的な通信遮断が発生する
共有ストレージが必須 追加の基盤導入コストが発生
サイト間保護機能が限定的 主に同一ローカルクラスタ向けに設計されている

これらの制限のため、多くの企業はレプリケーション型高可用性ソリューションを導入しています。

VMware HAの代替ソリューション:i2Availability

VMware HAはVM再起動により業務を保護しますが、ほぼゼロの停止時間と継続的な稼働を求める企業も存在します。

このようなケースでは、i2Availabilityのようなレプリケーション型HAソリューションが有力な代替手段となります。

i2Availabilityが提供する機能は以下の通りです。

  • リアルタイムデータレプリケーション
  • 自動フェイルオーバー・フェイルバック
  • サイト間災害復旧に対応
  • データベースや企業システム向けアプリケーションレベル保護
60日間無料トライアル

VMware HAと比較し、i2Availabilityは復旧時間をほぼゼロに抑え、業務を継続的に稼働させられるため、基幹業務ワークロードに適しています。

従来のVMware HAクラスタ設定以上の高い耐障害性を必要とする企業は、仮想化基盤と併せてレプリケーションソリューションを導入するケースが多いです。

VMware HAを活用する場面

VMware HAは基礎的な基盤保護を必要とする企業に適しています。

主な利用シナリオは下記の通りです。

  • 中小規模の仮想化環境
  • 開発・検証用クラスタ
  • 非基幹業務アプリケーション
  • DNSや内部システムなど基盤サービス

ただし、停止時間を極限まで抑えた継続稼働を求める場合は、レプリケーション型ソリューションの方が適切です。

VMware HAクラスタ設定に関するよくある質問

VMware HAクラスタとは何ですか?

VMware HAクラスタとはvCenterで管理される複数台のESXiホストのグループで、ホスト障害発生時に自動的に別ホスト上で仮想マシンを再起動する仕組みです。

VMwareにHAクラスタを設定する段階的な手順を教えてください。

基本的な手順は以下の5ステップです。

  1. vCenterにデータセンターを作成
  2. クラスタを作成しHAを有効化
  3. クラスタにESXiホストを追加
  4. アドミッションコントロールなどHA詳細設定を構成
  5. クラスタの健全性とフェイルオーバー容量を監視

以上の手順でVMware HAクラスタの設定が完了します。

VMwareクラスタHAの導入要件は何ですか?

主な要件は下記の通りです。

  • vCenter Serverの導入
  • 複数台のESXiホスト
  • 全ホストがアクセス可能な共有ストレージ
  • 安定した管理用ネットワーク
  • フェイルオーバーに十分なクラスタリソース

上記のVMwareクラスタHA要件を満たすことで、VMの正常な復旧が実現できます。

VMware HAは完全なゼロ停止時間を実現できますか?

いいえ、できません。VMware HAはホスト障害後にVMを再起動する方式のため、短時間のサービス停止が発生します。

ほぼゼロの停止時間を実現したい場合は、リアルタイムレプリケーションを活用したソリューションの導入が一般的です。

まとめ

VMware HAクラスタの設定方法を習得することは、仮想化管理者に必須のスキルです。VMware HAはホスト障害時の自動復旧を実現し、企業がサービス可用性を維持し停止時間を最小限に抑えることを支援します。

要点を整理すると以下の通りです。

  • VMware HAはクラスタ内のESXiホストを常時監視する
  • ホスト障害が発生するとVMが自動再起動される
  • 適切な設定により安定した復旧動作が保証される
  • i2Availabilityのような上位ソリューションは、より強力な継続可用性を提供可能

適切なクラスタ設計、リソース計画、監視体制を組み合わせることで、ITチームは予期せぬ障害時でもアプリケーションを稼働させ続ける耐障害性の高い基盤を構築できます。

概要は準備中です

関連記事

目次:
最新情報を購読
最新のインサイト、ニュース、限定コンテンツをお届けします。いつでも配信解除が可能です。
購読する
ビジネスデータのセキュリティ強化を始めませんか?
60日間の無料トライアルまたはデモで、Info2softが企業データをどのように保護するかをご確認ください。
フォームにご記入の上、送信してください。担当者より追ってご連絡いたします。
このフォームを送信することにより、 プライバシー通知を読み、同意したことを確認します。
{{ isSubmitting ? '送信中...' : '送信する' }}