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

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

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

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

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

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

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

  • UpdatesHyper-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

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ターゲットとして共有ストレージを利用しているとはいえ、仮想マシンを格納するストレージがHyper-V上で正しく設定されていることを確認する必要があります clustered shared volumeクラスタ化された共有ボリューム(CSV)は、Hyper-V ロールと併用するために Windows Server 2008 R2 で導入され、これにより仮想マシン(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クラスタ共有ボリュームをVMの保存先としてデフォルトに設定できます。

内の 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日間無料です。機能や容量の制限は一切ありません。クレジットカードも不要です。

People also read