Windows Server マシンでの Hyper-V クラスターの設定:ステップバイステップガイド

仮想インフラストラクチャ、特に大規模なデータセンターにおいて、極めて重要な要件の一つは、単一障害点を排除し、サービスやアプリケーションの高可用性を確保することです。 Hyper-V 環境では、Microsoft のフェイルオーバー クラスタリング テクノロジーを利用することで、1 台のホストに障害が発生した場合でも、他の複数の Hyper-V ホスト(またはノード)が負荷を引き継げるように構成できます。

このステップバイステップ ガイドでは、初期のホストおよびネットワーク構成、Hyper-V ロールのインストール、クラスタの作成など、Hyper-V フェイルオーバー クラスタリング構成の実践的な側面について学びます。

Hyper-V レプリケーション向け NAKIVO

Hyper-V レプリケーション向け NAKIVO

Hyper-V 仮想マシン向けの堅牢なレプリケーションにより、あらゆる障害シナリオにおいても事業継続性を確保します。レプリカを数秒で検証し、仮想マシンのフェイルオーバーを自動化することで、ダウンタイムを最小限に抑えます。

Hyper-V ホストの構成

フェイルオーバー・クラスタリングに対応できるようホストを準備するには、特定のクラスタで使用されるすべてのホストにインストールするオペレーティングシステムを選択する必要があります。次に、Hyper-V クラスタの設定に備えて、すべてのホストを含む環境の基本設定を行う必要があります。

インストールするオペレーティングシステムの選択

この構成では、可動部分を最小限に抑え、セキュリティを向上させるために、2台のWindows Server 2016 Server Coreを使用しています。Windows Server 2016 Server Coreを使用することで、不要なコンポーネントを大幅に排除し、システムのリソース消費を削減できます。Server Coreでは管理がやや難しくなりますが、そのデメリットは効率性とセキュリティの向上というメリットによって相殺されます。また、Hyper-Vクラスターの構築には、Windows Server 2019などの新しいバージョンのWindows Serverを使用することも可能です。

注: Windows Server 2016 Server Core の管理および構成には、PowerShell を使用します。技術的には、デスクトップ エクスペリエンスを備えた Windows Server を使用して、Hyper-V フェールオーバー クラスタリングを構成することも可能です。

環境の初期設定

Hyper-V ホストをクラスターとして考える前に、ホストの初期設定を行う必要があります。これには、Windows サーバーの準備を行う際とほぼ同様の手順(名前付け、ネットワーク設定、パッチ適用など)が含まれます。特にネットワークの計画は、Windows クラスターにおいて極めて重要です。これは、クラスター内の適切な通信だけでなく、共有ストレージとの通信も可能にするためです。

  • Naming. 両方のサーバーには名前が付けられ、lab ドメインに参加しました。なお、Windows Server 2016 以降では、 ドメインへの参加は、もはや前提条件ではありません. 以下のスクリーンショットには、最初のサーバーの設定が表示されています H1. 2台目のサーバーの設定 H2 似ている。

Initial server configuration required for building a cluster

  • Updates. Hyper-V クラスタリングのベストプラクティスに従い、Hyper-V クラスタの候補となるノードをすべて、利用可能な最新のパッチレベルに更新する必要があります。Hyper-V ホストに更新プログラムをインストールすることで、システムのセキュリティが向上します。更新プログラムのインストールを完了するには、Windows を再起動する必要がある場合があります。

Installing Windows updates is one of Hyper V clustering best practices

  • Consistency. ベストプラクティスとして、コンピュータ名とIPアドレスを除き、すべてのクラスタノード候補を同一の構成にすることを推奨します。これにより、パッチレベルやネットワーク設定など、ホスト間のすべての設定が標準化されます。

ネットワーク計画

適切な環境計画を立てることで、将来発生しうる多くのリスクを軽減することができます。このシナリオにおけるラボネットワークについては、4つの ネットワークアダプタ 各ホストごとに設定されています。簡便さを考慮し、両方のラボ用ホストではNICのチーム構成は行っていません。ただし、本番環境では、いずれかのネットワークに単一障害点が生じるのを防ぐために、アダプタのチーム構成を行うことが推奨されます。

当ラボのセットアップでは、以下の通りです:

  • 管理およびVMトラフィック
  • iSCSI
  • プライベート・クラスタのトラフィック
  • ライブマイグレーション

上記のネットワーク構成を踏まえ、各サーバーに希望するサブネット範囲内のIPアドレスを割り当てます。また、ここではVLANについても考慮する必要があります。なぜなら、サブネットをプロビジョニングされたVLANと整合させたい場合がほとんどだからです。この点については、事前に十分に検討しておく必要があります。

iSCSI ストレージターゲットの設定

Hyper-V クラスターのストレージは、クラスターを構築する上で極めて重要なポイントです。本例では、ラボ環境における iSCSI ストレージとして、FreeNAS を使用して iSCSI ターゲットを作成し、これを Hyper-V クラスターに提供しています。もちろん、お好みのベンダー製ハードウェアやソフトウェア iSCSI での設定方法はベンダーによって異なる場合がありますので、必ず各ベンダーが定めた手順に従ってください。

注: FreeNASは、FreeBSDをベースとした汎用的で柔軟性の高いオペレーティングシステムであり、コンピュータにインストールしてNASとして利用することができます。Hyper-Vクラスタの共有ストレージを作成したり、バックアップアプライアンスを構築したりすることが可能です。 FreeNAS と NAKIVO のソリューション.

以下に、FreeNAS を使用して Hyper-V フェールオーバー クラスタリング用のストレージを設定する方法の概要を簡単に紹介します。iSCSI 用の FreeNAS の設定方法について、詳細には立ち入りません。ただし、Hyper-V ホストにいくつかの iSCSI ターゲットを提供するための基本的な設定については、以下に示します。

  1. FreeNAS で iSCSI サービスを起動し、Hyper-V ホストで使用する予定のネットワーク設定に合わせて、ストレージネットワークのネットワーク構成を設定してください。
  2. これから作成するターゲットの基本となる IQN 設定を確認してください。

Creating an iSCSI share for Hyper-V cluster storage

  1. FreeNAS に、iSCSI トラフィックをリッスンするためのポータルを設定します。

Creating an iSCSI Portal on FreeNAS

  1. iSCSIターゲット名を設定します。このFreeNASアプライアンスでは、以下を設定します:
  • a quorum ディスクウィットネスとして使用するボリューム
  • Hyper-Vクラスター共有ボリュームとして使用し、仮想マシンを格納するためのボリューム

注: クォーラムとは、Windows クラスタにおけるメカニズムの一種であり、クラスタ内の構成要素のいずれかに障害が発生した場合でも、クラスタが機能するために必要なクラスタリソースの過半数が常に利用可能であることを保証するために使用されます。

  • Starting with Windows Server 2012、デフォルトでは、クラスター内の各ノードは1票のクォーラム投票権を持っています。Windows Server 2016でファイル共有、ディスク、または新しいクラウドストレージアカウントを追加して投票権を増やすことで、クラスターの一部が、その共有、ディスク、またはクラウドストレージアカウントの投票権を主張することにより、常にクォーラム投票の50%以上を確保できるようになります。
  • With Windows Server 2012 R2, 推奨事項が変更され、ディスクまたはファイル共有のウィットネスを常に設定するようになりました。投票権は、ノード数が偶数の場合に限り、追加のウィットネス(ファイル共有、ディスク、またはクラウドストレージアカウント)にも付与されます。ノード数が奇数の場合、そのウィットネスには投票権が与えられず、使用されません。

以下のスクリーンショットでは、2つのターゲット名を作成しています。1つはディスクウィットネスとして使用するクォーラムボリューム、もう1つはクラスター共有ボリュームとして使用するボリュームです。

Configuring iSCSI targets for a witness and Hyper-V cluster shared volume

  1. エクステントを追加します。以下の例では、これらはFreeNASアプライアンスで物理的に割り当てた個々のディスクにマッピングされています。

Adding Extents in FreeNAS

  1. ターゲットをエクステントに関連付けます。ターゲットは、FreeNAS内のストレージにマッピングされます。

Associating iSCSI targets with Extents in FreeNAS

Hyper-V ロールのインストール

Hyper-V ロールをインストールする サービスについては、ターミナルで次のコマンドを実行してください。 PowerShell コマンド プロンプト:

Install-WindowsFeature -Name Hyper-V -IncludeAllSubFeature -IncludeManagementTools -Restart

Installing a Hyper-V role is a requirement for Hyper-V cluster configuration

ストレージの設定:iSCSI ポータルアドレスの追加

iSCSI ポータルアドレスを追加する前に、以下のように Microsoft iSCSI サービスを設定して起動する必要があります。

  1. サービスを”自動”に設定してください。

Set-Service -Name msiscsi -StartupType Automatic

  1. サービスを起動してください。

Start-Service msiscsi

  1. PowerShell を使用して、プロビジョニングされた iSCSI ポータルアドレスを追加します:

New-iscsitargetportal -targetportaladdress

Configuring Hyper-V cluster storage – adding the iSCSI portal address

  1. 特定のiSCSIターゲット(この場合は、FreeNASアプライアンス上で作成されたもの)を接続します。以下に、クラスター用にプロビジョニングされたHyper-VホストにFreeNASターゲットを追加する際に使用した例を示します。
  • Connect-IscsiTarget -nodeaddress iqn.2005-10.org.freenas.ctl:quorum -IsPersistent $true -IsMultipathEnabled $true -InitiatorPortalAddress 10.0.0.70 -TargetPortalAddress 10.0.0.1
  • Connect-IscsiTarget -nodeaddress iqn.2005-10.org.freenas.ctl:hvvol1 -IsPersistent $true -IsMultipathEnabled $true -InitiatorPortalAddress 10.0.0.70 -TargetPortalAddress 10.0.0.1

以下のコマンドを実行することで、追加されたターゲットを確認できます。 Get-iSCSItarget コマンド。

Verifying whether iSCSI targets have been added for Hyper-V cluster storage

注: 以下の get-disk ディスク情報を表示するコマンドを実行し、Hyper-V クラスターの共有ストレージがオンライン状態で正常に動作していることを確認してください。

Checking configuration of Hyper-V cluster shared storage

仮想スイッチの設定

設定 仮想スイッチ Hyper-V フェイルオーバー クラスターのネットワーク設定を適切に行うには、これが必要です。PowerShell または Hyper-V マネージャー Hyper-V用の仮想スイッチを設定するには。

PowerShellで仮想スイッチを作成するコマンドの例:

New-VMSwitch "ExternalSwitch01" -NetAdapterName "Public" -AllowManagementOS 1

注: 特にライブマイグレーションを実行する際は、仮想スイッチが一致していることを確認する必要があるため、両方のホストで仮想スイッチの名前を同じに設定してください。

Network configuration for Hyper-V failover clustering

試してみてください NAKIVO Backup & Replication Hyper-V用

試してみてください NAKIVO Backup & Replication Hyper-V用

15日間の無料トライアルを開始して、エージェント不要でアプリケーションを認識するHyper-Vバックアップを実行しましょう。即時フルリカバリやきめ細かなリカバリ、組み込みのランサムウェア対策機能も利用できます。

Hyper-V クラスターの作成

PowerShell を使えば、クラスターの作成はたった 1 行のコマンドレットで簡単に行えます。

  1. クラスターを作成する前に、次のコマンドを実行して、クラスター構成が Hyper-V クラスタリングのベストプラクティスに準拠していることを確認してください。

Test-Cluster H1,H2

  1. “”を使用してください。 new-cluster クラスタを作成し、そのクラスタに名前、ノード、および静的IPアドレスを割り当てるためのコマンドレット。

New-Cluster -Name HVCluster -node H1,H2 -staticAddress 192.168.85.75

How to create Hyper-V cluster in PowerShell

  1. クラスタの作成処理が完了すると、コマンドラインにクラスタ名が表示された出力が表示されます。

Hyper-V cluster setup in PowerShell

Hyper-V クラスタ化された共有ボリューム

iSCSIターゲットの観点からは共有ストレージを利用しているとはいえ、VMを格納するストレージがHyper-V上で正しく設定されていることを確認する必要があります。 clustered shared volume. クラスタ化された共有ボリューム(CSV)は、Windows Server 2008 R2でHyper-Vロールと併用するために導入され、これにより仮想マシン(VM)は VHDファイル クラスタ内のどのノードからもアクセス可能です。また、CSVには耐障害性が組み込まれており、I/O障害の検出機能により、通信障害が発生した場合に代替の通信経路が使用できるようになっています。

それでは、VM用のクラスタ化された共有ボリュームを段階的に作成する手順を見ていきましょう。

  1. VMのストレージとして使用するクラスタディスクリソースの名前を変更します(任意)。このラボ環境では、これは クラスタディスク 1:

(Get-ClusterResource | ?{$_.Name -eq "Cluster Disk 1"}).name = "VMs"

  1. これで、このボリュームをクラスタ共有ボリュームに追加できます:

Get-ClusterResource -Name "VMs"| Add-ClusterSharedVolume

注: また、フェイルオーバー クラスター マネージャーを使用して、CSV にディスクを追加することもできます:

Configuring Hyper-V cluster shared storage

  1. クラスタ共有ボリュームの状態を、以下のコマンドで確認してください。 get-clustersharedvolume コマンドレット。

Checking a state of a Hyper V cluster shared volume in PowerShell

注: もし、以下の方法で接続する管理用ワークステーションをお持ちの場合は、 Failover Cluster Manager, に接続することで、グラフィカルユーザーインターフェース(GUI)を使ってストレージを確認できます。 Windows フェイルオーバー クラスター。ここでは、その様子がはっきりと見て取れます。 ディスク 利用可能なリソースと、それらに割り当てられた役割です。以下には、クォーラムディスクと、クラスタ共有ボリュームとして指定されたVMのディスクの両方が表示されています。

Hyper-V cluster storage is configured

Hyper-V のストレージ設定の変更

クラスタ化された共有ボリュームの設定が完了したので、Hyper-V の設定を変更して、Hyper-V クラスタ共有ボリュームを仮想マシンの保存先としてデフォルトに設定することができます。

Hyper-V Settings 各ホストについて、次の設定を変更してください。 Virtual Hard Disks 場所と Virtual Machines クラスター共有ボリュームへのパスは、次のとおりです。 C:ClusterStoragevolume(x) Hyper-V ホスト上で。

Selecting Hyper-V cluster storage to store VM data

高可用性VMの作成

これで、フェイルオーバー・クラスター・マネージャーを起動し、高可用性VMの作成を開始できます。

  1. を右クリックして Roles そして、以下を作成することを選択します。 New Virtual Machine.

Creating a HA VM to finish the Hyper-V cluster setup

  1. 仮想マシンを実行するHyper-Vホスト(クラスタノードのいずれか)を選択してください。

Selecting a cluster node to create a new Hyper-V VM

  1. 以下の手順に従って進めてください。 New Virtual Machine Wizard 新しい仮想マシンのプロビジョニングを促すメッセージ。

Entering a VM name and using Hyper-V cluster storage

  • その Connect Virtual Hard Disk ウィザードのこのステップでは、仮想マシンがHyper-Vのクラスタ化された共有ボリューム上に作成されることを確認してください。

Creating a new virtual disk on the Hyper-V cluster shared volume

  • その Summary このステップでは、選択したオプションが表示されます。

Finishing the VM creation in a Hyper-V Failover cluster

  1. [完了]をクリックすると、 High Availability Wizard ロールおよび仮想マシンでの高可用性の有効化に関する概要が表示されます。ご覧のとおり、正常に有効化されています。

Checking High Availability for Hyper-V failover clustering

  1. 高可用性レポートをご覧になりたい場合は、以下のリンクをクリックしてください。 View Report このボタンをクリックすると、高可用性テストの結果がより詳細に表示されます。

Viewing the high availability report for Hyper-V clustering

Hyper-V フェイルオーバー クラスターの設定が完了し、クラスター内で高可用性を備えた仮想マシンが稼働しています。クラスター内にさらに仮想マシンを作成して、Hyper-V の高可用性機能を利用することができます。

Hyper-V cluster setup has been finished

まとめ

Hyper-V フェイルオーバー クラスタリングを利用すれば、障害発生時の仮想マシンのダウンタイムを短縮できます。ただし、Hyper-V クラスタのバックアップを頻繁に行わない限り、仮想マシンのデータは保護されません。Hyper-V フェイルオーバー クラスタ内では、仮想マシンがホスト間で移行される可能性があるため、仮想マシンのバックアップは困難な作業になりがちです。NAKIVO のソリューションを利用すれば、クラスタ内で実行中の仮想マシンであっても、簡単にバックアップを行うことができます。

試してみてください NAKIVO Backup & Replication

試してみてください NAKIVO Backup & Replication

無料トライアルを利用して、本ソリューションのデータ保護機能をすべてお試しください。15日間無料。機能や容量の制限は一切ありません。クレジットカードも不要です。

関連記事