web-dev-qa-db-ja.com

複製されたHyper-VゲストがHyper-V 2016でのマージでスタックする

一部のホストサーバーをHyper-V Core 2016にアップグレードして以来、レプリケーションとチェックポイントの組み合わせに問題が発生しています。

現在の例では、複製されたHyper-Vゲスト(Gen2、V5.0)があります。レプリカのチェックポイントを取得する夜間バックアッププロセスを実行し、VHDXファイルをバックアップストアにコピーして、チェックポイントを削除します。

夜間、ゲストはレプリカの変更を適用することで行き詰まるようで、チェックポイントを削除することを許可しません。バックアッププロセスは、マシンが変更の適用を終了するまで待機しますが、この場合は決して発生せず、レプリカゲストはHyper-Vマネージャーの[ステータス]列に「登録済みデルタの適用中...」でスタックします。バックログが大きすぎるため、レプリケーションが重要になり、変更がレプリケートされなくなります。

ステータスとして「Apply Registered Delta ...」を使用してゲストを表示するHyper-Vマネージャーのスクリーンショット

フロントエンドでは、右クリックして[レプリカの変更の適用をキャンセル]を選択できますが、これを以前に使用したことがあり、メニューからオプションを削除する以外に効果はありません。これまでに発見した唯一の解決策は、ホストを完全に再起動することです。

これを実行した後、過去に同様の問題が解決したため、VMMSサービスを再起動しようとしましたが、この場合、サービスはステータス「停止中」でフリーズし、操作できなくなりました。ホストがソフトリブートを実行できなくなったため、コールドリブートを実行して回復する必要がありました。

この問題を解決できるまでアップグレード計画が中止され、Hyper-V 2016で同じ問題について投稿している人を見つけることができなくなったので、私は今、少し途方に暮れています。

その他の興味深いポイント:

  • これは、1つのホストまたは1つのゲストだけに固有のものではありません。
  • この問題は、ゲストがv5またはv8であるかどうかに関係なく発生します
  • この問題は、ソースホストがHyper-V 2012またはHyper-V 2016であるかどうかに関係なく発生します
  • この問題は、Hyper-Vコア2012R2では発生しませんでした。

  • 十分なディスク容量が残っています(> 600GB)

  • レプリケーションは24時間ごとのチェックポイントを維持するように設定され、変更は30秒ごとにレプリケートされます。
  • ホストには他のいくつかの実行中のゲストと複製されたゲストがありますが、複製されたゲストが1つしかないホストで問題が発生しました。
  • 最新のWindows更新が適用されています。
  • これはほとんどの場合、ほとんどの変更を複製している可能性のある大きなゲストで発生するようです。小さなゲストで発生したことがあります。

[〜#〜]更新[〜#〜]

この問題は、「Apply Registered Delta ...」ステータスではなく、「Applying Replica Changes ...」ステータスカラムでも発生しました。

UPDATE 16/06

Windows Defenderのせいだと思われる同様の問題がある1つまたは2つの記事を見つけました。これをサーバーからアンインストールしましたが、数日後に問題が再発しました。

更新20/06

私はフォーラムの投稿を見つけました [〜#〜]ここ[〜#〜] 非常に類似した問題を説明しています。この問題は、Windows Server 2016インストールでWindows Defenderが無効になっているときに発生していました。彼らは次のテストを実行しました:

  1. トレンドアンチウイルスがインストールされ、Windows Defenderがインストールされていないソースと宛先の最新の更新が適用されたWindows 2016 Datacenter>レプリケーションは、初期レプリケーションの後で中断し、Hyper-V管理サービスが応答しなくなります。

  2. トレンドとノーWindows Defenderなしでソースと宛先に最新の更新が適用されたWindows 2016 Datacenter-レプリケーションは最初のレプリケーション後に中断し、Hyper-V管理サービスが応答しなくなります。

  3. > Windows Defenderとトレンドなしのソースと宛先の最新の更新が適用されたWindows 2016 Datacenter-レプリケーションは正常に動作します.

  4. > Windows DefenderとTrendがインストールされたソースと宛先の最新の更新が適用されたWindows 2016 Datacenter> TrendはWindows Defenderを無効にします->最初のレプリケーション後にレプリケーションが中断し、Hyper-V管理>サービスが応答しなくなります。

私の問題はおそらくWindows Defenderの主要な機能が実行されていないか、Hyper-V Core 2016に存在しないことが原因であるのではないかと思っています。すぐに2016からダウングレードしなければならない段階に達しています2012。

7月4日更新

この全体的な状況は耐えられなかったので、Hyper-V Core 2012 R2にダウングレードするプロセスを開始しました。マイクロソフトがこの問題をアップデートまたは2016 R2リリースで解決することを願っています。

4
Kez Floyd

なんとか何度かこの状態から回復しました。これは、サービスを強制終了しようとした場合は機能しない可能性があります。

  • PSExecを MicrosoftのSysinternals Webサイトからダウンロードします
  • タスクマネージャ->サービスタブに移動します。
  • 「vmms」、「Winmgmt」、「WinRM」のPID番号をメモします。
  • 管理者アクセス権を持つコマンドウィンドウを使用して、コマンドpsexec.exe /i /s cmd.exeでPSExecを起動します。これにより、「SYSTEM」アカウントで実行される新しいコマンドウィンドウが作成されます。
  • 新しいコマンドウィンドウで、前の手順のPIDごとにtaskkill /f /pid ####コマンドを実行します。
  • タスクマネージャ-> [サービス]タブを使用して、3つすべてのサービスを再度開始します。自分自身を始めたものはスキップしてください。
  • [Applying Registered Delta]ステータスはVMから消え、構成可能になります。
1
Kez Floyd

私は同じ問題を抱えていますが、これは本当に大きなSQL Serverに関するものです。最初のシードレプリカはほぼ2日かかったので、失敗させるだけでは満足できません。 99%に達した後、「レプリカの変更を適用しています...」を開始しました。何も起きていないようで、一時停止していました。すぐに[再開]をクリックすると、ライブVMでマージが進行中と表示され、スタックが21%になりました。スタックが停止しました。マージをキャンセルした後、再び一時停止して再開しました。その1時間後、それが一時停止したときに再開します(「Resume-VMReplication *」をPowershellで15分ごとに実行するようにスケジュールしているので、スリープ状態にすることができます。

マージをキャンセルしましたが、その後、変更を複製し、再度マージを開始したようです。マージは22%に移動しました。これを10分間実行してから再びキャンセルすると、消滅するか、マージとレプリケーションが完了するまで、ライフサークルが続きます。

同じサイズのサーバーで何年もの間HyperV 2012R2レプリケーションを使用しており、問題なく動作します。私は避けられないことをしてHyperV 2016に移行する必要があり、Gdが私を元に戻して2016R2を待つ必要があるかもしれない:)

明日成功したら更新しますが、とりあえず甘い夢

1
user40944