Hyper-Vを実際に使ってみよう

最終更新日時:2011/06/02 03:52:04
(注意: 本記事で記載している内容は Hyper-V RC1 を利用したもので、実際の製品版とは異なる可能性があります)
← 1 2 3 4 5 6 

Hyper-V 上でのフェールオーバクラスタの作成

フェールオーバクラスタリングの構築

ネットワーク、ディスクの設定が完了後、フェールオーバクラスタリングを以下の手順で構築します。

  1. 各ノードにおいて「フェールオーバー クラスタリング」の機能を追加する
  2.  Win2008N1 において、管理ツールから「フェールオーバー クラスタ管理」を起動する
    (※ローカルアカウントで実行しようとすると、捜査に制限がある警告が表示されます。そのため、ドメインアカウントで実行する起動する必要がありますが、各ノードに対して管理者権限を保有しているアカウントで実行する必要があるので注意してください。なお、本手順では Domain Admins である Admintech\Administrator で実行しています)
  3.  左ペインにある[フェールオーバー クラスタ管理]の右クリックメニューから「構成の検証」を選択する
  4. 名前の入力欄に、Win2008N1およびWin2008N2を追加する
  5. 「すべてのテストを実行する(推奨)」を選択し、検証を実行する
  6. テスト結果を確認し、フェールオーバクラスタリングを構築するのに問題がないことを確認する
    (※今回の手順でテストを実行すると「IP 構成の検証」において、警告が発生します。これは、デフォルトゲートウェイが設定されていないためであり、今回の環境では問題はありません)
  7. 左ペインにある[フェールオーバー クラスタ管理]の右クリックメニューから「クラスタの作成」を選択する
  8. 名前の入力欄に、Win2008N1およびWin2008N2を追加する
  9. クラスタ名に「Win2008CL」を入力しする
  10. ネットワークについては監視ネットワークである[192.168.255.0/24]はチェックをはずす
  11. 管理用のネットワーク[192.168.250.0/24]に対するアドレスとして Win2008CL の IP アドレスである「192.168.250.45」を入力する
  12. 確認時に内容を確認し、正しく設定されていれば「次へ」を選択する
  13. クラスタ作成結果が表示されるので内容を確認する

各種設定の確認

クラスタの構築が完了すると、そのまま作成したクラスタを管理できる状態となるため、設定内容について確認していきます。

クォーラム構成の確認

今回の2ノードクラスタにおいて、クラスタを構築した場合は「ノードおよびディスク マジョリティ」が選択されており、ディスクマジョリティは「クラスタ ディスク1」が採用されていることが図xxから確認できます。この「クラスタ ディスク1」がどのディスクと対応付けられているかは、左ペインにある[記憶域]を選択することで確認でき、今回の場合は、図xxによると Q に割り当てたディスクが利用されていることがわかります。
なお、このクォーラムの設定は左ペインにある[Win2008CL]の右クリックメニュの[その他のアクション]-[クラスタ クォーラム設定の構成]から変更ができるようになっています。

ネットワーク構成の確認

今回の2ノードクラスタにおいて、クラスタの管理通信用とクライアントとの通信用の2つのネットワークを利用する予定ですが、それがどのように設定されているのかを確認しておきます。ディスクの確認と同様管理ツールにおいて、[ネットワーク]を選択すると、[クラスタ ネットワーク1]は内部、[クラスタネットワーク2]は有効となっています。この表現ではわかりにくい点もありますが、内部が管理通信専用、有効がクライアントからの通信を受け付けられる状態となっています。各プロパティを開くことで、図xxのように、接続しているセグメントおよび状態の詳細を把握することができます。なお、今回の場合は内部NWに接続している 192.168.255.0/24 がクラスタの監視用となっているので、想定通りとなっていることが確認できます。

ファイル共有のリソース作成

今までの作業により構築できたのは、フェールオーバクラスタリングだけであり、実際に提供するサービスはまだ何もありません。そこで、今回は、ファイル共有をクラスタリソースとして提供するようにしてみたいと思います。以下にその手順を示します。

  1. [Win2008CL]の右クリックメニュの[サービスまたはアプリケーションの構成]を選択する
  2. [サービスまたはアプリケーションの選択]において、「ファイル サーバー」を選択する
  3.  名前には「Win2008FS」を入力し、IP アドレスを「192.168.250.46」とする
  4. [記憶域の選択]では「クラスタ ディスク 2」を選択する
  5. 内容を確認し問題がなければ、構成を開始する
  6. 構成結果を確認する

ファイル共有のサービスがクラスタのリソースとして動作した後、必要なファイル共有の設定を行うことでクライアントからのアクセスを行うことが可能となります。

フェールオーバの動作確認

クラスタリソースをノード間でフェールオーバさせることができます。メンテナンスや通常時においては、以下の操作を行いノード間の移動を行います。

  1. [Win2008CL]-[サービスまたはアプリケーション]-[Win2008FS]の右クリックメニュを表示させる
  2. [このサービスまたはアプリケーションを別のノードに移動]-[1-Win2008N2に移動]を選択する
  3. 「動作の確認」ダイアログが表示されるので、「Win2008FSをWin2008N2に移動する」を選択する
  4. しばらくすると各リソースが Win2008N2 に移動しオンラインとり、サービスが再開される
仮想ディスクのイメージファイルに直接ファイルを追加する方法

Virtual Server 2005 R2 SP1 では VHDMount というツールが用意されているため、そのツールを利用することもできますが、Hyper-V では VHDMount ツールが用意されていないため WMI を利用します。この WMI を使っての Hyper-V の管理は COM を利用して管理する Virutal Server 2005 との相違点ともなります。例えば、C:\Hyper-V\VHDs\Sample.vhd を親パーティションでマウントするための VBScript のサンプルを以下に示します。このスクリプトを実行すると、ディスクの管理ツールにマウントしたディスクがオフラインディスクとして認識されます。

VHDPath = "C:\Hyper-V\VHDs\Sample.vhd"
Set WMIService = GetObject("winmgmts:\.\root\virtualization")
Set VHDService = WMIService.ExecQuery("SELECT * FROM 
Msvm_ImageManagementService").ItemIndex(0)
VHDService.Mount(VHDPath)

オンライン化した後ドライブレター等を割り当てることで、仮想ディスクの内部にアクセスできるようになります。
マウント後は、RC0のバイナリファイルを適当なパスに保存し、アンマウントを行います。アンマウントは上記サンプルスクリプトの最後の VHDServices.Mount を VHDService.UnMount に変更することで可能です。
なお、上記処理は PowerShell 上での実行することできます。以下にそのサンプルを示します。

$VHDPath = "C:\Hyper-V\VHDs\Sample.vhd"
$VHDSvc = Get-WmiObject -Class "Msvm_ImageManagementService" -Namespace
"root\virtualization"
$VHDSvc.Mount($VHDPath)

(ソフトウェアデザイン2008年7月号掲載記事元ネタ)

INDEX

▲このページのトップへ