none
Hyper-V2.0の環境でWindows2008の時刻が遅れる RRS feed

  • 質問

  • 1.環境
    ・ハードDELL PowerEdgeT310-新規購入4台
    ・物理OS:Windows2008R2sp1 Hyper-V2.0
    ・ゲストOSは、
    Windows2003sp2(32Bits)-本番のみ
    Windows2008R2sp1(64Bits)-テストのみ

    2.状況
    物理ホスト(Windows2008)の時計が1時間に90秒遅れるため、すべての仮想ゲスト(Windows2003)の時刻が同期されて全体が遅れている。
    昨年導入した物理ホスト(Windows2008)でも、遅れを確認したが、AD2003と時刻の同期しているため、気付かなかった。

    3.応急処置
    物理ホストと仮想ゲストの時刻の同期設定をOFFし、仮想ゲストの時計は正常になったが、物理ホストの時計は、1日で36分(想定18時間/月)も遅れ、Windowsサーバとしては使い物にならない。

    4.検証結果
    ・DELLサーバのBIOSレベルでの時計は正常
    ・物理ホストと仮想ゲストの時刻の同期設定をOFFすると、仮想ゲスト(Windows2003)の時計は正常になる
    以下は、時刻の同期設定をOFF状態
    ・仮想ゲスト(Windows2003)をすべて停止すると、物理ホスト(Windows2008)の時計は正常になる
    ・テストで仮想ゲスト(Windows2008)1台のみを起動しても、ホスト/ゲスト共、時計は正常
    ・仮想ゲスト(Windows2003)を1台でも起動すると、時計が遅れ始めた

    5.推定原因
    ハードやWindows2008単体では正常で、Windows2003の仮想ゲストを起動すると、物理ホストWindows2008(Hyper-V)の時計が遅れるようである。

    6.要望
    Windows2008(Hyper-V)の時刻の遅れの改善をお願いしたい

    2011年7月6日 1:33

すべての返信

  • ゲストOSが起動すると時刻が遅れるというのであれば負荷なのか、もしくはゲストOSがドメインコンコントローラーになっており、そもそもADの時刻がズレているのかなど考えられれます。

    Hyper-Vのホストがどこで時刻同期を行っているかによります。

    ADに属しているのであればドメインコントローラーと時刻同期を取ります。

    スタンドアローンの状態であれば「日付と時刻」に設定されているタイムサーバーと同期をとります。

    そもそもの原因究明のためにイベントログを見てもらい「W32Time」関連のエラーがでていないかの確認が必要です。

    一時的な対処としてはレジストリをいじることになりますが以下の方法で時刻同期の間隔を短くすることが可能です。

    デフォルトでは時刻同期が7日に一度となっているので適当な値を秒で設定します。

    http://support.microsoft.com/kb/297227/ja

     


    WIN1
    2011年7月6日 3:05
    モデレータ
  • 仮想環境(ゲスト)の時刻同期のデフォルト設定は、物理ホストとの時刻同期となっています。(したの資料参照)

    http://www.atmarkit.co.jp/fwin2k/win2ktips/1107hvsync/hvsync.html

     

    物理ホスト上でWindows-Timeイベントログがなにひとつ出ない場合はWidnows Timeサービスが停止していることも考えられますので。Widnows Timeサービスが(スタートアップの種類が「自動」で状態が「開始」となっているか確認してください。

     

    ご質問のようなケースではWindows2003の仮想ゲストを起動させている状態で物理ホストのW32timeのデバッグログを取ってみないと詳細なことは分からないでしょう。(したのMS KB参照。)

    Windows タイム サービスのデバッグ ログを有効にする方法

    http://support.microsoft.com/kb/816043/ja

    または物理ホストでコマンドプロンプトを立ち上げ

    >w32tm /debug /enable /file:C:\Windows\debug\w32time.log /size:10000000 /entries:0-116

    と叩くとC:\Windows\debug\w32time.log にログが保存されます。


    試験問題作成委員会(http://shikenmondai.blog.shinobi.jp/)
    2011年7月6日 12:01
  • 助言ありがとうございます。

    今回、問題にしているのは、Windows2003の仮想ゲストを起動すると、物理ホストWindows2008(Hyper-V)の時計が遅れ始める事です。
    Time-Service(900秒間毎)による、時刻修正方法が問題ではなく、時計が数秒間でみるみるうちに遅れて行く事です。

    ハードメーカとの検証活動や不具合の原因の切り分け等、かなりの工数を掛けて不具合の要因を絞りました。

    なぜ、物理ホストと仮想ゲストの時刻の同期設定をOFFすると、仮想ゲスト(Windows2003)の時計は正常になるのか?
    なぜ、物理ホストと仮想ゲストの時刻の同期設定をOFFしても、物理ホスト(Windows2008)の時計のみが遅れるのか?
    なぜ、仮想ゲスト(Windows2003)をすべて停止すると、物理ホスト(Windows2008)の時計は正常になるのか?
    なぜ、仮想ゲスト(Windows2008)1台のみを起動しても、ホスト/ゲスト共、時計は正常なのか?
    なぜ、仮想ゲスト(Windows2003)を1台でも起動すると、物理ホスト(Windows2008)の時計が遅れ始めるのか?

    弊社と同様に、Windows2008(Hyper-V)で仮想ゲスト(Windows2003)を導入しているユーザの皆様、同様の現象が出ていませんか?

    2011年7月7日 0:43
  • こんにちは、フォーラムオペレーターの三沢健二です。

    仮想マシンに Windows Server 2003 SP2 を新規インストールした場合(アプリやサービスなどを何もインストールしていない状態)でも、同様の現象は発生しますか?

    既に色々とお調べいただいたようですので、それでも原因が分からないという事であれば、弊社有償サポート へご相談される事も検討いただければと思います。


    あと、少し気になる情報もありましたので参考までに。
    (外れていたらすみません・・)

    - 参考情報
    Hyper-V R2 system clock drift when Guest or Host on CPU high load
    http://social.technet.microsoft.com/Forums/en-US/windowsserver2008r2virtualization/thread/f7234f21-0edd-4da8-9d79-cb1a5962f211/


    それでは、こちらの情報が少しでもお役にたてれば幸いです。

    ______________________________________
    日本マイクロソフト株式会社 フォーラム オペレーター 三沢健二

    2011年7月11日 9:00
    モデレータ
  • 助言ありがとうございます。

    「仮想ゲスト(Windows2003)を1台でも起動する」のWindows2003は、クリーンインストール+SysPrepし、ウイルスソフトすらインストールしていないクリーンな状態です。逆に、「仮想ゲスト(Windows2008)1台のみを起動しても」のWindows2008は、P2V変換したゲストですが、ホスト/ゲスト共、時計は正常です。

    その他情報のCPU負荷に関しても、仮想ゲスト(本番環境)4台起動しても、同期設定をOFFすれば、ゲストの時計は正常ですし、クリーンインストールしたWindows2003を1台起動するだけで物理ホスト(Windows2008)の時計が遅れ始めます。また、Windows2003より負荷の高いWindows2008を起動しても、ホスト/ゲスト共、時計は正常です。

    ユーザが採り得る暫定処置として、同期設定をOFFし、物理ホスト(Windows2008)の遅れは、時刻の同期で回避していますので、なぜ、ユーザがお金を払って有償サポートを利用しなくてはいけないのか、立場が反対のような気がしますが・・・

    私は、今回の不具合に関して、原因究明したいのではなく、今回の検証を基に改善して頂きたい事を希望しています。

    2011年7月13日 6:07
  • 仮想マシンの時刻同期に関しては、統合サービスの時刻同期をOFFにすることによって、ホストマシンとの同期はされません。この点に関しては仕様になりますね。

    また、仮想のWin2003が起動するとホストの時刻が遅れるというのはすべてのマシンに当てはまらないと考えます。よって、使われているハードに依存することが考えられます。

    もしかしたら、ハードのBIOSアップデートなどによって解消される可能性もありますね。

    http://search.dell.com/results.aspx?c=us&l=en&s=bsd&cat=sup&cs=04&k=T310+BIOS&rpp=12&p=1&subcat=dyd&rf=all&nk=f&ira=False&~srd=False&ipsys=False&advsrch=False

    またBIOSの設定にてACPI C2 ステートと ACPI C3 ステートを無効にすることができるならば試してみるのもいいかもしれません。

    それができない場合はレジストリによってHyper-VからACPI C2 状態と ACPI C3 ステートを無効にする方法もあります

    ホストに対して C3/C2-State を無効化する設定
    HKLM¥System¥CurrentControlSet¥Control¥Processor
    名: Capabilities
    型: DWORD
    値: 0x0007e666 (Hyper-V 1.0)
    値: 0x0007e066 (Hyper-V 2.0)

    An update rollup package for the Hyper-V role in Windows Server 2008 R2: August 24, 2010
    http://support.microsoft.com/kb/2264080/en-us

    以上参考になれば幸いです。


    MVP:Virtual Machine Blog:MCTの憂鬱 http://naonao71.wordpress.com/

    2011年7月14日 3:42
    モデレータ