Hyper-V Server 2008 R2 で構築する仮想化基盤
6. クラスター環境構築
6.1 WSFCのインストール
各Hyper-V Serverにてsconfig のメニューから「11) フェールオーバー クラスタリング機能」を選択し、機能を有効化にします。
6.2 構成チェック
ノード1のコマンドプロンプトで、powershellと入力し実行します。起動したPowerShell上で以下のコマンドを順に実行してください。
Import-Module FailoverClusters Test-Cluster -Node hv01,hv02
このコマンドを実行することで、フェールオーバークラスターが構築可能かのチェックされ結果がmhtファイル(%temp%配下に出力されます)として格納されます。作成されたファイルを管理端末のブラウザから参照し内容に問題がないかを確認してください。
6.3 クラスターの作成
先ほどと起動した、PowerShell上で、以下のコマンドを実行します。
Import-Module FailoverClusters New-Cluster -Name hv00 -Node hv01,hv02 -StaticAddress 10.0.1.22
このコマンドの実行によりクラスターを管理するためのクラスターコアリソースが作成されます。コアリソースにはコンピューター名(今回はHV00)とIPアドレス(今回は10.0.1.22)を割り当てる必要があります。クラスターの作成が正常に終了するとエラーが発生せずに、クラスター名の hv00 という情報が表示され、構成チェック時と同様mhtファイルも生成されます。
6.4 リモートからの確認
クラスターの作成が正常に完了した後は、管理端末にインストールした「フェールオーバークラスターマネージャー」から管理が可能となります。(※7)
※7
フェールオーバークラスターマネージャーから構成チェック、作成を実施しようとしてもHyper-V Server 2008 R2の情報を正しく認識できないようで、正常に動作しないようです。
「記憶域」確認し共有ディスクのもう一つのディスクの所有ノードを確認します。
6.5 CSVの設定
先ほど確認したディスクの所有ノードにサーバーマネージャーで接続し、ディスク管理からNTFSでフォーマットします。この際、ドライブ文字は割り当てを実施しないようにしてください。
フォーマットが完了したら「フェールオーバークラスターマネージャー」でクラスターの管理ノード(hv00)を選択し、真ん中のペインにある「クラスター共有ボリュームの有効化」を選択します。CSVはHyper-V専用の機能である説明を読んだ上で、先に進んでください。処理が完了すると左ペインに「クラスター共有ボリューム」が追加されるので、右クリックメニューにある「記憶域の追加」を選択します。
リストにあるディスクにチェックを入れOKを選択すると、CSVにディスクが追加されます。この追加した領域は C:\ClusterStorage\Volume1 に割り当てられます。
6.6 クラスターネットワークの設定
クラスターネットワークは認識したネットワークを自動で追加し、「クラスターネットワーク#」割り当てられますが、どのネットワークに繋がっているのかが把握しづらくなっています。そこで、今回は管理端末からPowerShell V2.0のリモート接続を利用して名前を変更してみます。管理端末でPowerShellを起動し以下のコマンドを実行します。
New-PSSession hv01 Enter-PSSession -Id 1 Import-Module FailoverClusters $networks = Get-ClusterNetwork foreach ($network in $networks){ $network.Name = $network.Ipv4Addresses}
このコマンドを実行することでHV01にリモート接続を行い、ネットワーク名をネットワークセグメントに変更にすることができます。なお、ネットワークセグメント名では用途が把握しづらいので、用途の情報を付加するなどすると管理しやすくなります。
また、クラスター構築直後は全てのネットワークを利用してクラスターの内部通信(リダイレクトアクセスを含みます)が利用できるようになっていますが、どのネットワークは利用するかは自動設定となっています。今回の場合、iSCSIの経路にはクラスターの内部通信を通したくないために以下のコマンドを前回実行したPowerShell上で実行します。
(Get-ClusterNetwork "10.0.4.0").Role = 0
この設定は管理GUIでは「このネットワークでのクラスターネットワーク通信を許可しない」に相当します。さらに、Live Migration用のネットワークには内部通信を極力通したくないため、内部通信の優先度を自動ではなく手動で設定することとします。そのためには以下のコマンドを実行します。
(Get-ClusterNetwork "10.0.2.0").AutoMetric = 0 (Get-ClusterNetwork "10.0.3.0").AutoMetric = 0 (Get-ClusterNetwork "10.0.2.0").Metric = 100 (Get-ClusterNetwork "10.0.3.0").Metric = 9900
AutoMetric=0は自動設定を無効にし、Metric値が小さいほど優先的に内部通信に利用されます。また、Live Migration用のMetricを9900としたのはサービス用のネットワークのMetricより小さくして内部通信を極力通さない目的としました。
6.7 仮想マシンの構築
Hyper-V上に仮想マシンを構築する手順は通常のHyper-V上に構築する点とほとんど違いはありません。通常は「Hyper-V マネージャー」から実施しますが、「フェールオーバー クラスター マネージャー」から構築する点が異なります。また、「名前と場所の指定」において仮想マシンの格納場所をCSV(C:\ClusterdStorage\Volume#)配下に配置することがポイントなります。
仮想マシンの構築は管理ツールの以下のパスから開始します。
[サービスとアプリケーション]-[仮想マシン]-[仮想マシンの新規作成]-[1-HV01]
正常に終了すると、確認画面において仮想マシンのストア、スナップショットのパス、仮想ディスクのそれぞれがCSV上に格納されていることが確認できます。(図11)
仮想マシンそのもののセットアップについては、通常のHyper-Vと変わらないため省略します。
6.8 Live Migrationのネットワーク設定
Live Migration時に利用するネットワークを指定する方法を記載します。Live Migrationのネットワークの設定は、「フェールオーバー クラスター マネージャー」の真ん中のペインにある「仮想マシン」のプロパティから指定します。「仮想マシン構成」のプロパティではないので注意してください。
開いたプロパティの「ライブ マイグレーション用ネットワーク」タブを開き、利用するネットワークとその優先度を指定します。今回は、Live Migration用に用意したネットワーク(10.0.3.0)を最優先にし、その次にサービス用のネットワークを利用する設定しています。その他のネットワークはLive Migrationには利用しない設定としています。なお、この設定は仮想マシン単位ではなく、クラスター単位での設定となることに注意する必要があります。(図12)
6.9 Live Migrationの試験
ここまでの設定が完了しましたら、最後にLive Migrationの動作確認をします。Live Migrationの実行は管理ツールの左ペインにある仮想マシンの右クリックメニューの中にある「仮想マシンを別のノードにライブ マイグレーション」から実行します。
もし、Live
Migrationに失敗した場合、仮想マシンは移行元のノードで動作し続けるため、失敗により仮想マシンが停止することはありません。その時はログの確認などを行い、設定の見直してみてください。また、意図した動作となっているかなど、タスクマネージャーやパフォーマンスモニターなどを利用して確認してみてください。
- Hyper-V Server
- Hyper-V Server 2008 R2 で構築する仮想化基盤