仮想環境のHAクラスタ製品 選定ポイント【第1回】
仮想化特有の課題がある、VMware環境の“従来型”HAクラスタ
仮想環境においても物理環境と同様のHAクラスタ構成を組めばよいと思われがちだが、実はそう簡単ではない。物理環境のHAクラスタ製品を仮想環境で使用した場合に起こる3つの課題について整理する。
本連載「仮想環境のHAクラスタ製品 選定ポイント」では、仮想環境の可用性を高めるためのHA(High Availability)クラスタ製品の選定ポイントについて記述する。
連載インデックス
第1回の今回は、従来の物理環境のHAクラスタ製品を仮想環境で使用した場合に生じる課題について整理する。仮想環境としてはVMware環境を想定して話を進めるが、今回の内容に関してはHyper-VやKVMなどその他のハイパーバイザーでもほぼ同等と考えて問題はないだろう。
2014年1月にTechTargetジャパンが「サーバ仮想化/デスクトップ仮想化の導入に関する読者調査」を行った。下記がその一部である「サーバ仮想化製品を導入するに当たって、どのような点を重視して製品を選びますか?」の結果だ。
上記によると、仮想環境で「導入/設定/運用管理のしやすさ」と「可用性/事業継続性」を重要視していることが分かる。
物理環境では、データベース(DB)サーバなどの重要なシステムは、単一サーバ内のNICやHBA(Host Bus Adapter)などハードウェアコンポーネントに加え、サーバをHAクラスタ製品によって冗長化し、サービスの可用性を高めていた。
仮想マシンにおいても物理環境と同様にHAクラスタを構成すればよいと思われがちであるが、実はそう簡単ではない。仮想マシン間で従来のHAクラスタ製品を使用することで、構成面、運用面、機能面の課題が出てくる。以下に、それぞれの課題について説明する。
仮想環境のHAクラスタの課題1(構成面)
HAクラスタの稼働系/待機系の仮想マシンが必要
仮想化によってサーバ統合することでサーバ台数を削減し、システムリソースを有効活用しているにもかかわらず、HAクラスタの稼働系/待機系用の仮想マシンをそれぞれ構築する必要がある(※1)。また、HAクラスタの待機系の仮想マシンはホットスタンバイでOSが起動した状態であるため、システムリソース(CPU、メモリ、ストレージなど)の消費に加え、OSライセンスが必要になる。
※1 第3回で説明する「vSphere HA」および「vSphere HA+アプリ監視」の方式を採用する場合は、待機系用の仮想マシンは不要となる。
Windows、Linuxの仮想マシンでHAクラスタ製品が異なる
WindowsとLinuxでは主要なHAクラスタ製品が異なる。そのため、それぞれのHAクラスタ製品の操作方法を習得する必要がある上、それぞれのGUIによる管理に手間が掛かる。
HAクラスタ製品のハートビート専用ネットワークが必要
HAクラスタ製品のハートビート専用ネットワークを用意する必要がある(※2)。ただし、VMwareの機能でネットワークを冗長化した場合、NICは二重障害になってはじめてハートビート全断を検知することになり、NICが二重化されていることの意味をなさない。そのため、HAクラスタ製品の機能で冗長化する必要がある。
※2 「vSphere HA」および「vSphere HA+アプリ監視」の方式を採用する場合は、VMwareの管理ネットワークがハートビートに使用されるため、個々のHAクラスタ製品のハートビートは不要になる。
サービス用ネットワークのNICはVMwareのハイパーバイザーの機能で冗長化し、ハートビート用のネットワークのNICはHAクラスタ製品の機能で冗長化することになり、設計が煩雑になる
仮想環境はシステムリソースが有効活用できるように設計されていることが多い。裏を返せば、仮想マシンの負荷が高いケースが多い。負荷が高い状況では、HAクラスタ製品のハートビート通信が遅延し、稼働系仮想マシンの障害を誤検知してしまう場合もある。
稼働系/待機系の仮想マシンから参照できる共有データ領域が必要
稼働系の仮想マシンから、待機系の仮想マシンへサービスを切り替えるには、データを引き継ぐための共有データ領域が必要になる。
通常のVMDK、RDM(Raw Device Mapping)領域は1台の仮想マシンからのみアクセスが可能で、複数の仮想マシンからのアクセスを許可するためには、それぞれの仮想マシンのSCSIコントローラーに「SCSIバス共有」を設定する必要がある。
SCSIバス共有をすることによって構成として複雑になる上に、仮想マシンのスナップショットが実行できなくなるという重大な弊害も出てくる。
HAクラスタ製品によってはRDMのクォーラムデバイス(※3)が必須のものもあり、それもまたSCSIバス共有の設定が必要になる。既存の仮想マシンのHAクラスタ化や、新規でHAクラスタ化された仮想マシンを追加する際に、ストレージの設計・設定が必要になるのは非常に手間が掛かる。
※3 HAクラスタのハートビートが全断した際に、両系が稼働状態にならないようにするための仕組み。
仮想環境のHAクラスタの課題2(運用面)
仮想マシンのスナップショットが取得できない
SCSIバス共有を設定することで、仮想マシンのスナップショットが不可となり、それに伴い、VADPバックアップも取得できなくなる。そのため、可能なバックアップ方法は、ストレージのコピー機能によるバックアップかネットワーク経由のバックアップになる。ストレージのコピー機能によって、バックアップを行う場合でも仮想マシンのスナップショットが取得できないため、仮想マシン内のデータの整合性が確保できない。結局、ネットワーク経由のバックアップになり、効率の悪いバックアップ運用をせざるを得なくなる(参考:【技術解説】仮想化特有の課題がある、VMware環境の“従来型”バックアップ)。
vMotion/DRS/vShpere HA/vSphere FTとの併用が保障されない
ほとんどのHAクラスタ製品は、物理環境用に開発されたもので、VMware環境上で動作していることを認識せず(意識せず)に動作する。そのため、「vSphere vMotion」などのVMwareの機能と併用した場合、想定外の動作が行われる可能性がある。中には、併用をサポートしているHAクラスタ製品がある。だが、それらの製品のほとんどで、vSphere vMotionなどを認識するためのロジックが組み込まれているのではなく、ただ「併用しても(ほぼ)問題ないでしょう」という意味で「サポート」と言ってるのである。よって、HAクラスタを構成している仮想マシンは、「vSphere DRS」や「vSphere HA」の対象外にすることを推奨する。
仮想環境のHAクラスタの課題3(機能面)
NIC、HBAを仮想マシン上のクラスタ製品で監視すると以下の課題が生じる。物理NIC、HBAはVMwareのハイパーバイザーの機能で冗長化され、仮想マシン上では単一のNIC、HBAに見える。それらの仮想NIC、HBAをHAクラスタ製品で監視することで、仮想化特有の問題が発生する。
NIC障害時の検知やフェイルオーバーが動作しない場合がある
NICに障害が起きたとき、その検知やフェイルオーバーが想定通りに動作しない場合がある。これは、ブレードサーバの筺体に搭載されているネットワークスイッチと、個々のブレードサーバとの関係を思い描くと分かりやすい。
筺体のネットワークスイッチの外部ポートに障害が発生した場合、個々のブレードサーバは外部と通信できなくなる。だが、ブレードサーバのNICはスイッチと接続できているので、リンクがアップしたままである。
これと同様にVMware ESXサーバのNICに障害が発生しても、仮想スイッチに接続されている仮想マシンの仮想NICは、リンクがアップしたままになる。
HAクラスタ製品によっては、NICの監視をリンクがアップしているか否かで判断している。その場合、外部との通信ができないにも関わらず、HAクラスタ製品はネットワークの障害を検知できない。また、ブロードキャストを実施し、その応答を監視している場合でも、同一ネットワーク上の別の仮想マシンが応答を返す可能性もある。しかし、デフォルトゲートウェイなどへのping監視を選択できる製品は障害を検知できる場合もある。
HBA障害時の検知やフェイルオーバーが動作しない場合がある
実はNICよりHBA(※4)の方が深刻である。
※4 VMwareのデータストアがNFSデータストアの場合は、HBAをそのデータストアに接続されているNICに読み変えていただきたい。
これは、SANブートしている物理サーバのHAクラスタ環境を考えてみると理解しやすいだろう。
共有データ領域への読み書きを監視しているHAクラスタ製品は、HBA障害を検知することができる。
障害検知後、まず行われることは、元の稼働系でのサービス停止である。しかし、サーバから見て障害が発生しているHBAの向こう側のストレージに、HAクラスタ製品がインストールされているOS領域がある。すなわちHBA障害時は、サーバのメモリ内のデータだけでOSが動作している非常に不安定な状態である。HAクラスタ製品はサービス停止のためのコマンドを実行しようとするのだが、結果は“コマンドが見つかりません”となる。メモリ上にそのコマンドが存在しないためだ。そのため、HAクラスタ製品としてサービス停止不可能となる。HAクラスタ製品によっては、その後OSの停止を試みるのだが、そのコマンドすら“コマンドが見つかりません”となってしまう。
HAクラスタ製品の役割は、障害を検知することだけではなく、障害を検知した後にサービスをフェイルオーバーさせることである。フェイルオーバーとは、元の稼働系でサービスを停止し、待機系でサービスを起動することである。大事なことは、「障害が発生した稼働系でサービスを停止した後」に、「待機系でサービスを起動する」ということである。停止できなければフェイルオーバーできない。停止しないまま起動すると両系稼働状態になり、共有データ破壊につながるため、通常のHAクラスタソフトはこれを許していない。
この状況を回避するために、OS領域と共有データ領域を、別のデータストアに配置することを推奨しているHAクラスタ製品もあるが、それは現実的ではない。
本連載の第1回では、物理環境用のHAクラスタ製品をVMware環境に使用した際に直面する課題について説明した。本課題を理解した上で、仮想環境でHAクラスタを設計・運用している方も、今回初めて課題を認識した方もいると思う。
今回は少しネガティブな内容だったが、次回以降では、課題が多い仮想環境のHAクラスタについてどのように方式および製品を選定していくべきかを整理していく。
第2~4回では、vSphere HAを含めた仮想環境の3つHAクラスタ方式に関して動作、特徴、製品選定のポイントについてまとめる。第5回ではHAクラスタ製品の機能比較を行う。最後までご覧いただけると幸いである。
Copyright © ITmedia, Inc. All Rights Reserved.
仮想環境のHAクラスタ製品 選定ポイント
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[LRM株式会社] 「標的型攻撃メール」事例・サンプル集 -
製品資料
[LRM株式会社] セキュリティ教育はなぜ「年間計画」を立てる必要があるのか? -
製品資料
[LRM株式会社] セキュリティの重要性が伝わらない…… 効果がない社員教育から脱却する方法 -
製品資料
[LRM株式会社] 「標的型攻撃メール訓練」導入ガイド 社員の意識を確実に高める仕組みの作り方 -
事例
[株式会社マクニカ] アイカ工業に学ぶ脆弱性対策 情シスが把握できずにいたアセットも正確に把握
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「VMware離れ」は本当か 3000社がVCF 9にかじを切った現実的な理由
-
2
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
3
「Microsoft 365」が乗っ取られる 跡形もなくMFAを破る手口
-
4
Oracle巨大ITプロジェクトはなぜつまずいたのか 8年で導入1割、追加で170億ドル
-
5
Microsoft製品でここまで自動化できる 情シスがやめられる手作業10選
-
6
AI全部入り「Microsoft 365 E7」に企業が二の足を踏む訳 移行意向はわずか4%
-
7
ISMSの“コンサル丸投げ”が招く数千万円の無駄 NTTドコモビジネスの脱出劇
-
8
エンジニアが選考を辞退する本当の理由 7割が隠す“面接の違和感”とは
-
9
Netflixのバックエンドは「ほぼJava」 3000超のアプリを支える開発基盤の裏側
-
10
なぜOpenAIやAnthropicのAIは「脱走」したのか 情シスが迫られるエージェント統制
ホワイトペーパーランキング PR
-
1
AIエージェントで多様な日常業務を効率化するための入門ガイド
-
2
AIが「わざわざ使うツール」になっていない? 業務で自然に使う導線にする秘訣
-
3
5回聞くだけじゃ足りない? トヨタ式「なぜなぜ分析」の正しい実践方法
-
4
JR西日本ITソリューションズが「監視業務の属人化」を解消した方法とは?
-
5
「脱Excel」か「Excel快適化」か? 現場にやさしい業務改善の進め方
-
6
インシデント対応工数を約3割削減、東京ガスの事例に学ぶ監視体制刷新のコツ
-
7
PostgreSQLの「機能」「性能」「運用」「拡張性」に関する悩みの解消法
-
8
5分で分かる「セキュア大容量ファイル転送サービス」の機能とメリット
-
9
Macの安全神話は崩壊? 最新の脅威動向から見えた攻撃のトレンドと有効な対策
-
10
情報セキュリティ対策早分かりガイド:25の自社診断で弱点と解決策を理解
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー