Hyper-V レプリカは、Windows Server を実行しているホスト間で仮想マシン (VM) をレプリケート Hyper-V ワークロードを保護するのに役立ちます。 この記事では、Hyper-V Manager、PowerShell、または Windows Admin Center - 仮想化モードを使用して、1 つのホストで Hyper-V レプリカを有効にする方法について説明します。
クラスター間、単一ホスト間、または両方の組み合わせでレプリケートできます。 認証に証明書を使用する場合、ホスト間に Active Directory の依存関係はありません。 単一ホストは、ドメイン メンバーにすることも、ワークグループ内に存在することもできます。
フェールオーバー クラスターで Hyper-V レプリカを有効にする方法については、「フェールオーバー クラスターで レプリカ Hyper-V 有効にする」を参照してください。 Hyper-V レプリカとそのしくみの詳細については、「 Hyper-V レプリカの概要」を参照してください。
[前提条件]
開始する前に、以下の前提条件を満たしていることを確認してください。
レプリケートされた VM を受信する 1 つの Hyper-V ホストがあります。 また、レプリケートする VM を実行する別のクラスターまたは単一のホストもあります。
認証方法を決定します。
ホストが同じ Active Directory ドメインまたは信頼された Active Directory ドメインに参加している場合は、Kerberos (HTTP) 認証を使用できます。
ホストがドメインに参加していない場合、または信頼されていないドメインにある場合、または暗号化も使用する場合は、証明書ベース (HTTPS) 認証を使用する必要があります。 送受信の両方で、各ホストに有効な証明書がインストールされている必要があります。 証明書は、次の要件を満たす必要があります。
- 有効期限が切れていない
- クライアント認証とサーバー認証拡張キー使用法 (EKU) 属性と関連付けられた秘密キーの両方を持ちます。
- 有効なルート証明書で終了します。
- サブジェクト共通名 (CN) またはサブジェクト代替名 (SAN) は、ホストの完全修飾ドメイン名 (FQDN) と一致する必要があります。 クラスターから VM を送信する場合は、各プライマリ ホストの Hyper-V Replica Broker ロール FQDN の証明書も必要です。
ホスト間のネットワーク接続。 既定では、Kerberos 認証を使用する場合、レプリケーションではポート 80 経由の HTTP が使用されます。 証明書ベースの認証を使用する場合、レプリケーションではポート 443 経由の HTTPS が使用されます。
レプリケートされた VM を格納する受信側ホスト上のストレージの場所。
プライマリ クラスターとレプリカ クラスターまたはホストの両方に対する管理者特権を持つユーザー アカウント。
Hyper-V レプリカを有効にする
VM を 1 つの Hyper-V ホストにレプリケートする前に、Hyper-V レプリカを有効にする必要があります。 プライマリ クラスターまたはホストではなく、受信ホストを構成します。
フェールオーバー イベントの後に VM を元のプライマリ ホストまたはクラスターにフェールバックできるようにするには、レプリケーション用にプライマリ ホストとレプリカ ホストとクラスターの両方を構成します。
Hyper-V Manager、PowerShell、または Windows Admin Center - 仮想化モードを使用して、Hyper-V レプリカを有効にして構成します。 手順に関連するタブを選択します。
Hyper-V Manager を使用してレプリカ Hyper-V 有効にして構成するには:
レプリケート先のホストの管理に使用するデバイス、または Windows Server with Desktop Experience がインストールされているホスト自体で、 Hyper-V Manager を開きます。
左側のウィンドウで、レプリカ サーバーとして構成するホストを選択します。
右側のウィンドウの [ アクション] で、[ Hyper-V 設定] を選択します。
[ サーバー ] セクションで、左側のウィンドウで [レプリケーションの構成 ] を選択し、次の変更を行います。
[ このコンピューターをレプリカ サーバーとして有効にする] チェック ボックスをオンにします。
[認証とポート] で、[Kerberos (HTTP) を使用する] または [証明書ベースの認証を使用する (HTTPS)] から使用する認証方法のチェック ボックスをオンにします。 既定のポートを使用しない場合は、ポートを変更します。 証明書ベースの認証を使用している場合は、[ 証明書の選択] を選択すると、要件に一致する証明書を選択するように求められます。
[承認とストレージ] で、[認証されたサーバーからのレプリケーションを許可して、レプリカ サーバーが正常に認証されたプライマリ サーバーからの VM レプリケーション トラフィックを受け入れることを許可する] を選択するか、指定したサーバーからのレプリケーションで、具体的に選択したプライマリ サーバーからのトラフィックのみを受け入れるようにします。 どちらのオプションでも、レプリケートされた VHD をレプリカ ホストに格納する場所を指定する必要があります。
[指定したサーバーからのレプリケーションを許可する] を選択した場合は、[追加] を選択します。 [ 承認エントリの追加] で、プライマリ ホストの FQDN、レプリカ ファイルを格納する場所、信頼グループを指定します。 信頼グループは、プライマリ サーバーをグループ化するために使用できる自由形式のテキスト フィールドです。 [OK] を選択.
[ OK] を 選択して設定を保存します。
Hyper-V レプリカの Windows ファイアウォール規則を有効にする
プライマリ クラスターとレプリカ クラスターとホスト間のレプリケーションを許可するには、トラフィックが Windows ファイアウォール (またはその他のサード パーティ製ファイアウォール) を通過する必要があります。 各ホストに Hyper-V ロールをインストールすると、Windows ファイアウォールによって HTTP (80) と HTTPS (443) の例外が作成されますが、既定では有効になりません。 すべての受信ホストに対して適切な規則を有効にする必要があります。
ルールを有効にするには、グループ ポリシーを一元的に使用する方法や、セキュリティが強化された Windows ファイアウォール コンソールまたは PowerShell を使用して各ノードでローカルに行うなど、Windows ファイアウォールを管理する任意の方法を使用できます。 Windows ファイアウォールの管理とハウツー ガイドの詳細については、「 Windows ファイアウォール ツール」を参照してください。
有効にする必要がある規則は、Hyper-V Replica Broker ロールを構成したときに選択した認証方法によって異なります。
- Kerberos (HTTP) 認証の
Hyper-V Replica HTTP Listener (TCP-In)を有効にします。 - 証明書ベース (HTTPS) 認証の
Hyper-V Replica HTTPS Listener (TCP-In)を有効にします。
レプリケーションの構成をテストする
Hyper-V レプリカを有効にして構成し、適切な Windows ファイアウォール規則を有効にしたら、構成をテストして、プライマリ クラスターまたはホストが想定どおりにレプリカ ホストに接続できることを確認します。
次の例に示すように、PowerShell コマンドレット Test-VMReplicationConnection を使用して接続をテストできます。 プレースホルダーの <values> は必ず独自のものに置き換えてください。
レプリケートするホストの 1 つで管理者として PowerShell セッションを開くか、クラスターまたはホストの管理に使用するデバイスで Enter-PSSession コマンドレットを使用してリモート接続します。
次のいずれかのコマンド例を使用します。
Kerberos 認証を使用してレプリカ クラスターへの接続をテストするには、次のコマンドを実行します。
Test-VMReplicationConnection -ReplicaServerName '<Replica host FQDN>' -ReplicaServerPort 80 -AuthenticationType Kerberos証明書ベースの認証を使用してレプリカ クラスターへの接続をテストするには、次のコマンドを実行します。 プライマリ ホストまたはクラスター上の Hyper-V レプリカの有効な証明書の拇印が必要です。
Test-VMReplicationConnection -ReplicaServerName '<Replica host FQDN>' -ReplicaServerPort 443 -AuthenticationType Certificate -CertificateThumbprint AA11BB22CC33DD44EE55FF66AA77BB88CC99DD00
これらのコマンドの例のいずれかで、テストが成功したかどうかを確認する出力を次に示します。
The connection to the specified Replica server with the specified parameters was successful.