かつて山市良と呼ばれたおじさんのブログ

セイテクエンジニアのブログ  かつて山市良と呼ばれたおじさんのブログ  vol.83 Hyper-Vワークグループクラスターの構築|Windows Server 2025大特集(20)

 

 

vol.83 Hyper-Vワークグループクラスターの構築|Windows Server 2025大特集(20)

2025年02月13日配信
2025年04月22日更新
執筆者:山内 和朗

 前回(vol.82)は、Active Directoryを必要としないワークグループクラスターにおいて、Windows Server 2025で新たにHyper-V仮想マシン(VM)のライブマイグレーションがサポートされたことを紹介しました。今回は、Windows Server 2025の2台のサーバーを使用して、ワークグループ環境にHyper-Vのフェールオーバークラスター(Hyper-Vホストクラスター)を作成する手順を紹介します。

 

ワークグループクラスターの前提条件

 

 ワークグループクラスターの概要、前提条件、制限事項、ワークグループクラスターの作成方法については、以下の公式ドキュメントに詳しく説明されています。

ワークグループ クラスターを作成する|Windows Server(Microsoft Learn)

 

  • すべてのノードが同じバージョンのWindows Serverを実行していること。
  • すべてのノードがワークグループ(WORKGROUP)に存在し、Active Directoryドメインに参加していないこと。
  • 「記憶域スペースダイレクト(Storage Spaces Direct《S2D》)」または「SAN接続ストレージ(SAS、FC、またはiSCSI)」または「SMB 3.0以降のファイル共有」(アプリケーションデータ用のスケールアウトファイルサーバーを推奨)のクラスターストレージに、すべてのノードからアクセス可能なこと。各ノードに接続されたディスクを束ねるS2Dを使用する場合は、クラスター展開後に構成することになる。
    参考:
    アプリケーション データ用のスケールアウト ファイル サーバーの概要|Windows Server(Microsoft Learn)
  • クラスター構成に応じて、適切なクォーラム監視を構成すること。クラウド監視、ディスク監視、USB監視(ファイル共有監視の一種)がサポートされる。
  • 名前解決用のDNSサーバーを利用できること。すべてのノードと管理元(WACサーバーなど)、クライアントに共通のhostsファイル(%Windir%¥System32¥Drivers¥etc¥hosts)を配置することで代用可能。
  • すべてのノードに同じユーザー名とパスワードの管理者アカウントを準備すること。組み込みAdministratorのローカルアカウントを使用可。Administratorローカルアカウントを使用しない場合は、各ノードで以下のコマンドコマンドラインを実行し、リモートUACを有効化する必要がある。
C:¥> REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f
  • Windowsリモート管理(WinRM)の信頼されたホスト(TrustedHosts)を構成し、WinRMにNTLM認証を使用可能にすること。

 

今回構築する2ノードクラスターの構成

 

 図1に、今回展開する2ノードのワークグループクラスターの構成を示します。各ノードのシステム構成、IPアドレス、コンピューター名、DNSサフィックス、ワークグループクラスターのクラスター名、クラスターIPアドレスは図に示した通りです。今回はこの環境を、入れ子になった仮想化(Nested Virtualization)を有効にした2つのVMで用意しました(画面2)。

 

図1 2ノードのワークグループクラスターの構成。この環境を入れ子になった仮想化が有効な2つのHyper-V VMで構築する
図1 2ノードのワークグループクラスターの構成。この環境を入れ子になった仮想化が有効な2つのHyper-V VMで構築する

 クラスターストレージには、各ノードに3つのVHDXを割り当ててS2Dを構成することにします。各VMには、Windows Server 2025がインストール済みになっており、OSディスク用のVHDXとS2D用ディスクのVHDX(256GB×3)*1、2つのネットワークアダプター(1つは管理用、1つはHyper-V仮想スイッチ用)を割り当てています。入れ子になった仮想化の有効化については、以下の連載のスクリプトを参考にしてください。

vol.38 Hyper-V VMの管理に役立つスクリプト|ラボ環境 in オンプレを作る(6)

 

*1 S2Dで使用するVHDX(今回は6つのVHDX)は、1つ作成してコピーして割り当てることはしないでください。VHDXは個別に作成する必要があります。同じVHDXからコピーされたVHDXをVMに同時に割り当てると、記憶域スペース機能がディスクを識別できず、ディスクの一部(同じコピー元のディスク)がプールに使用可能なディスクとしてリストされない場合があります。


画面2 入れ子になった仮想化を有効にした2つのHyper-V VMを作成し、Windows Server 2025をインストールしてワークグループクラスターを展開する
画面2 入れ子になった仮想化を有効にした2つのHyper-V VMを作成し、Windows Server 2025をインストールしてワークグループクラスターを展開する

 ワークグループクラスターを導入する場合、名前解決手段としてDNS環境(動的更新が可能なこと)が推奨されますが、テストや評価目的の場合は、各ノード、管理元、およびクライアントのhostsファイルで代用できます。今回は、hostsファイルを使用して、「workgroup.test」のDNSサフィックスを持つ各ノードのコンピューター名、およびクラスター名を名前解決できるようにします。なお、「.test」はテスト用のトップレベルドメイン名(TLDs)として推奨されるものの1つです。

2. TLDs for Testing, & Documentation Examples|RFC 2606 - Reserved Top Level DNS Names(IETF)

 

前準備

 

 各ノードにWindows Server 2025をインストールしたら、Windows Updateを実行して最新状態に更新します。デスクトップエクスペリエンスとServer Coreのどちらでもかまいませんが、今回はデスクトップエクスペリエンスを前提に説明します。

 各ノードでは、「設定」アプリの「システム > バージョン情報 |関連リンク」にある「システムの詳細設定」をクリックするか、「sysdm.cpl」を実行して、「システムのプロパティ」を開き「コンピューター名」タブの「変更」をクリックしてコンピューター名(node01、node02)を設定します。さらに、さらに「詳細」をクリックすると、「DNSサフィックスとNetBIOSコンピューター名」ダイアログボックスが開くので、ここにDNSサフィックス(今回の例の場合は、workgroup.test)を設定します。

 Windowsファイアウォールの現在のプロファイルを確認します。「パブリックネットワーク」プロファイルになっている場合は、「設定」アプリの「ネットワークとインターネット > イーサネット」を開き、「プライベートネットワーク」プロファイルに変更します。また、DNSの代用となるhostsファイル(%Windir%¥System32¥Drivers¥etc¥hosts)に以下のエントリを追加して上書き保存します。

 

192.168.0.200    mycluster    mycluster.workgroup.test
192.168.0.201    node01        node01.workgroup.test
192.168.0.202    node02        node02.workgroup.test

 

 さらに、PowerShellで以下のコマンドラインを実行して、Windowsリモート管理(WinRM)の信頼されたホスト(TrustedHosts)を構成します(画面3)。

 

PS C:¥> winrm qc
PS C:¥> Set-Item WSMan:\localhost\Client\TrustedHosts -Value "node01,node01.workgroup.test,node02,node02.workgroup.test"

 

 画面3 各ノードのコンピューター名、DNSサフィックス、hostsファイル、TrustedHostsの構成、ファイアウォールプロファイルの変更を行い、pingコマンドを実行してコンピューター名やFQDNによるノード間の導通を確認しておく
画面3 各ノードのコンピューター名、DNSサフィックス、hostsファイル、TrustedHostsの構成、ファイアウォールプロファイルの変更を行い、pingコマンドを実行してコンピューター名やFQDNによるノード間の導通を確認しておく

 最後に、「役割と機能の追加ウィザード」を使用してサーバーの役割「Hyper-V」とサーバーの機能「フェールオーバークラスタリング」を有効にします。PowerShellで有効にするには、次のコマンドラインを実行します(画面4)。なお、Hyper-Vの役割の有効化には、OSの再起動が必要です。OSを再起動したら、各ノードのHyper-Vに、仮想スイッチ専用に用意しておいたネットワークアダプターを使用して、同じ名前(vSwitch)の外部タイプの仮想スイッチを作成しておきます。

 

PS C:¥> Install-WindowsFeature -Name Hyper-V -IncludeManagementTools
PS C:¥> Install-WindowsFeature -Name Failover-Clustering -IncludeManagementTools

 

 画面4 「役割と機能の追加ウィザード」またはInstall-WindowsFeatureコマンドレットを使用してHyper-Vの役割(Hyper-V)とフェールオーバークラスタリング(Failover-Clustering)の機能、および関連する管理ツールをインストールする
画面4 「役割と機能の追加ウィザード」またはInstall-WindowsFeatureコマンドレットを使用してHyper-Vの役割(Hyper-V)とフェールオーバークラスタリング(Failover-Clustering)の機能、および関連する管理ツールをインストールする

 

画面5 各ノードで「Hyper-Vマネージャー」を開き、仮想スイッチ専用にVMに追加したネットワークアダプターを使用して、同じ名前の仮想スイッチを作成する
画面5 各ノードで「Hyper-Vマネージャー」を開き、仮想スイッチ専用にVMに追加したネットワークアダプターを使用して、同じ名前の仮想スイッチを作成する

 

入れ子になった仮想化が有効なVMでHyper-Vを有効にできない場合ことがある

 Windows Server 2025は、必要なシステム要件を満たしている場合、「資格情報ガード(Credential Guard)」を既定で有効化します。資格情報ガードは「仮想化ベースのセキュリティ(Virtualization-Based Security《VBS》)」に依存するセキュリティ機能であり、VBSも有効化されます。この連載の以下の記事で書いたように、入れ子になった仮想化が有効なVMでは、VBSとHyper-Vを共存できないという不具合を確認しています。

メモ. 仮想化ベースのセキュリティ(VBS)の有効化方法(最新版)と最近気づいた問題、疑わしい犯人|Windowsトラブル解決

 入れ子になった仮想化が有効なVMでVBSが有効な場合、「役割と機能の追加ウィザード」やInstall-WindowsFeatureコマンドレットでHyper-Vを有効にしようとすると、次の画面のようなエラーで失敗します。

入れ子になった仮想化のVMではVBSを有効にすると、Hyper-Vを有効にできない

 この問題に遭遇した場合は、「ローカルグループポリシーエディター」(Gpedit.msc)を使用して、明示的にVBSを無効化してください。具体的には、「コンピューターの構成¥管理用テンプレート¥システム¥Device Guard¥仮想化ベースのセキュリティを有効にする」を無効にし、VMを再起動します。無効化後も「役割と機能の追加ウィザード」やInstall-WindowsFeatureコマンドレットでHyper-Vの役割を有効化できない場合は、以下のコマンドラインを実行することで有効化できます。

 

C:¥> DISM /Online /Enable-Feature /FeatureName:Microsoft-Hyper-V
C:¥> shutdown /r /t 0 

 

DISMコマンドでHyper-Vをインストール

 

ワークグループクラスターの作成

 

 前準備が完了したら、クラスターに参加させる一方のノードで「フェールオーバークラスターマネージャー」またはPowerShellを使用してワークグループクラスターを作成します。「フェールオーバークラスターマネージャー」を使用する場合は、「構成の検証ウィザード(クラスターの検証)」を実行し、クラスターに参加させるすべてのノード(node01.workgroup.test、node02.workgroup.test)を追加して、テストオプションとして「すべてのテストを実行する(推奨)」を選択してテストを実行し、テスト結果を確認します(画面6)。「Active Directory構成の検証」が「警告」となりますが、ワークグループクラスターを作成するので無視できます。それ以外の結果が問題なければ「検証されたノードを使用してクラスターを今すぐ作成する」をチェックし、「完了」をクリックします。

 

画面6 ノードを追加して、すべてのテストを実行する
画面6 ノードを追加して、すべてのテストを実行する

 「クラスターの作成ウィザード」が開始するので、クラスター管理用のアクセスポイントとなるクラスター名(mycluster)とIPアドレス(192.168.0.200)を入力します(画面7)。「確認」ページでは、「使用可能な記憶域をすべてクラスターに追加する」のチェックをオフにして(後でS2Dを構成するため)、クラスターを作成します(画面8)。

 

画面7 クラスター管理用アクセスポイントのクラスター名とIPアドレスを設定する
画面7 クラスター管理用アクセスポイントのクラスター名とIPアドレスを設定する

 

画面8 使用可能な記憶域をすべてクラスターに追加する」のチェックをオフにしてクラスターを作成する
画面8 使用可能な記憶域をすべてクラスターに追加する」のチェックをオフにしてクラスターを作成する

 上記の「フェールオーバークラスターマネージャー」で作成したワークグループクラスターと同じ構成のものは、PowerShellなら以下のたった2行のコマンドラインで作成できます(画面9)。

 

PS C:¥> Test-Cluster -Node node01, node02
PS C:¥> New-Cluster –Name mycluster -Node node01, node02 -AdministrativeAccessPoint DNS -NoStorage -StaticAddress 192.168.0.200


画面9 PowerShellでクラスターの検証と作成を行う場合
画面9 PowerShellでクラスターの検証と作成を行う場合

 

記憶域スペースダイレクト(S2D)とクォーラム監視の構成

 

 ワークグループクラスターが作成されました。今回の構成にDNSは存在しないため、DNS登録エラー(イベントID 1196)が記録されますが、それは無視できます。あとは、クラスター構成(ノード数)に応じて適切なクォーラム監視を構成し、S2D(または他の種類のクラスターストレージ)を構成して、VMの配置先となるクラスターの共有ボリューム(CSV)を構成します(画面10)。

 

 適切なクォーラム監視については、以下のドキュメントを参考にしてください。今回のような2ノードクラスターの場合は、追加のクォーラムを構成しない場合(監視なしの2ノード)、投票数が2票であるためクラスターが分割される場合があり、1つのサーバー障害に耐えることができる確率は50%になります(1つ以上の障害への耐性なし)。クォーラム監視を追加した場合(クォーラム監視ありの2ノード)、投票数が3票に増えるため、1つのサーバー障害に完全に耐えることができます。

クラスターとプール クォーラムの概要|Windows Server(Microsoft Learn)
クォーラムを構成および管理する|Windows Server(Microsoft Learn)

 

画面10 クラスターストレージとクォーラム監視を構成する
画面10 クラスターストレージとクォーラム監視を構成する

 

 S2Dの有効化からCSV追加までの手順は、以下の記事にビデオで確認することができます。ただし、ワークグループクラスターであることが理由かどうかわかりませんが、「仮想ディスクの新規作成ウィザード(記憶域スペースダイレクト)」の後に開始する「新しいボリュームウィザード」が仮想ディスクを検出せず、ボリュームの作成とその後のCSVへの追加ができないという問題に遭遇しました。

メモ. 必要な機能は標準装備で意外と簡単! Hyper-Vホストクラスターの構築

 この問題は、「記憶域¥ディスク」で問題の仮想ディスクを選択し、「他のアクション > メンテナンスモードの有効化」を実行したあと、「サーバーマネージャー」の「ファイルサービスと記憶域サービス > ボリューム > ディスク」または「ディスクの管理」スナップインを使用してディスクをReFSでフォーマット後、メンテナンスモードを終了することで、CSVに追加することができました。

 

 クラスターストレージとクォーラム監視を構成した後は、クラスター化された役割(高可用性リソース)としてHyper-V VMを作成して実行できるようになります(画面11)。なお、VMの作成は「Hyper-Vマネージャー」からではなく、「フェールオーバークラスターマネージャー」の「操作」ペインにある「仮想マシン > 新規作成」から行う必要があります。また、VMの構成とVHDXは、CSV(C:¥ClusterStorage¥仮想ディスク名)配下のパスに配置する必要があります。

 

画面11 クラスター化された役割(高可用性リソース)としてVMを作成する
画面11 クラスター化された役割(高可用性リソース)としてVMを作成する

 

新機能、ライブマイグレーションを検証

 

 ワークグループクラスターはWindows Server 2016以降でサポートされる機能です。Windows Server 2025の新機能は、VMのライブマイグレーションがサポートされたことです。なお、Active Directoryに依存する通常のクラスターでは、Windows Server 2012 R2以降でサポートされる機能です。

 

 現在、VMをホストしているノードからライブマイグレーションを使用してもう一方のノードに移動してみました。Hyper-Vのサーバーが変更されるため「仮想マシン接続」は切断されますが、再接続すればゲストOSが実行中のままであることを確認できます(画面12、画面13)。

 

画面12 node01で実行中のhavm01を、node02にライブマイグレーションで移動
画面12 node01で実行中のhavm01を、node02にライブマイグレーションで移動

 

画面13 「仮想マシン接続」ウィンドウはサーバーが変更されるため切断されるが、再接続すれば実行中の状態のまま移動したことを確認できる
画面13 「仮想マシン接続」ウィンドウはサーバーが変更されるため切断されるが、再接続すれば実行中の状態のまま移動したことを確認できる

 最後に、Windows Admin Center(WAC)からはワークグループクラスターの作成はできませんが、既に作成されたワークグループクラスターを、クラスター外部のWAC(v2)に追加して、リモート管理することは可能です(画面14)。その場合、WAC(v2)を実行するサーバーまたはWindows 10/11でTrustedHostsにクラスターの各ノードを追加する必要があります。ただし、WAC(v2)によるクラスター対応更新(Cluster-Aware Updating《CAU》)は利用できません。Active Directoryは、リモート更新モードのCAUの必須要件です。自己更新モードによるCAUは利用できるようです。

 

クラスター対応更新の概要|Windows Server(Microsoft Learn)

 

画面14 WAC(v2)でワークグループクラスターを新規作成することはできないが、作成済みのクラスターを追加してリモート管理することは可能

画面14 WAC(v2)でワークグループクラスターを新規作成することはできないが、作成済みのクラスターを追加してリモート管理することは可能

 

Windows Server 2025大特集(1)|...|(19)|(20)

 

blog_yamanxworld_subscribe

blog_yamanxworld_comment

blog_yamanxworld_WP_ws2025

最新記事