web-dev-qa-db-ja.com

仮想マシンのドリフトクロックを解決するにはどうすればよいですか?

私の仮想マシンの時計はかなり大きくずれています。これに対処するためのドキュメントはありますが、うまく機能しているものはないようです。

誰もが何か提案、彼らのためにうまくいったこと、...

おそらく、ntpを介して定期的に更新することは良い解決策ではありません。

20
carrier

vmwareには この問題については本当に良いPDF doc があります。

基本的に、ホストはゲストに配信されたティックを可能な限り殺します。 実行しないでくださいNTPまたはそのような時間指定またはジャンク。vmware-guestdをインストールして、ホストにあなたを殺させてくださいそれでもティックが失われる場合は、他のソリューションにも大きなドリフトがあります。

可能であれば、ティックレートの低いゲストOSを使用してください。 Linuxの新しいバージョンには1000Hzのティックが付属していますが、以前は100Hzしかありませんでした。これは、ホストが配信するのが簡単なようです。通常、HZ値を変更するには、カーネルの再構築が必要です。

11
David Leonard
  1. 誰かの話を聞く前に、vmwareのドキュメントを注意深く読んでください。 ESX5を実行しています。

Linuxゲスト向けのタイムキーピングのベストプラクティスは次のとおりです。参照: http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1006427

NTPの推奨事項注:VMwareは、VMwareToolsの定期的な時刻同期の代わりにNTPを使用することをお勧めします。NTPは業界標準であり、ゲストの正確な時刻管理を保証します。 NTPトラフィックを許可するには、ファイアウォール(UDP 123)を開く必要がある場合があります。

これはサンプル/etc/ntp.confです:

tinker panic 0
restrict 127.0.0.1
restrict default kod nomodify notrap
server 0.vmware.pool.ntp.org
server 1.vmware.pool.ntp.org
server 2.vmware.pool.ntp.org
driftfile /var/lib/ntp/drift

これはサンプルです(RedHat固有)/ etc/ntp/step-tickers:

0.vmware.pool.ntp.org
1.vmware.pool.ntp.org

構成ディレクティブtinkerpanic 0は、NTP時間の大幅なジャンプが見られても、あきらめないように指示します。これは、大きな時間ドリフトに対処し、仮想マシンを一時停止状態から再開するために重要です。

注:ディレクティブtinker panic 0は、ntp.confファイルの先頭にある必要があります。

また、ローカルクロックをタイムソースとして使用しないことも重要です。これは、Undisciplined LocalClockと呼ばれることがよくあります。 NTPは、時間のずれが大きい場合、リモートサーバーよりも優先してこれにフォールバックする傾向があります。

このような構成の例は次のとおりです。

server 127.127.1.0
fudge 127.127.1.0 stratum 10

両方の行をコメントアウトします。

NTP構成に変更を加えた後、NTPデーモンを再起動する必要があります。オペレーティングシステムベンダーのドキュメントを参照してください。

17
user2143026

NTPDが適切なソリューションではない理由に関するデータを追加するだけです。 NTPDは、ローカルクロックドリフトを補正しようとするデーモンです。 「内部クロック」が1日にX秒ずれた場合、「ntpdate」のように強制コマンドのように前後にジャンプする代わりに、NTPDはクロックにいくつかのサイクルを追加/削除しようとします。 15分以内に、時計は十分に正確に動作し、補正は、サーバーが1日に増減するこのX秒数を超えます。これには、トランザクションシステムでは必須である、1日のどの時間も繰り返されないという利点があります。

しかし、これを可能にするために、NTPDはローカルクロックが適度に良い仕事をすることを要求します。これは通常、ローカルクロックが1日42秒以上離れないことを意味します(多かれ少なかれ;正確なことはわかりません数)。クロックはソフトウェアで制御されるため、これは通常、仮想マシンで問題になります。ホストの過負荷が大きすぎると、クライアントのクロックの実行速度が遅くなり、そうでない場合はクロックも実行される可能性があります。速い。ここでのNTPDの問題は、ローカルクロックの信頼性が低く、時間のドリフトが一定でないことです。ホストシステムの過負荷に応じて、多かれ少なかれ発生する可能性があります。

したがって、この場合、提案されているようにクライアントツールをインストールし、CLIENTクロックをホストのクロック(通常は「ウォールクロック」と呼ばれます)と同期することをお勧めします。

8

いくつかの方法があり、それぞれに長所と短所があるため、明確な答えはありません。どちらを選択するかは、タスク、サーバーの負荷、オペレーティングシステムなどによって異なります。

問題を完全に理解するには、 vmware_timekeeping.pdf をお読みください。

Linuxのクイックレシピは別の KB記事 にあります。

1
Linulin

まだインストールしていない場合は、NTP)をインストールします。

ntpdateは時計を正しく設定し、ntpdは時計を正確に保つことができます。

NTPプールプロジェクト は、選択するNTPサーバーの大きなプールを提供します。

編集 NTPは良い解決策ではないと思うと言ったことに気づきました-なぜですか?時計の変更の影響が心配な場合は、NTPが理想的です、ntpdは時計を前後にジャンプしないので、代わりに、正しい時刻に戻るまで時計をわずかに上下に速度を上げて「回転」させます。

0
David Precious

これは古い問題ですが、最近私たちに影響を与えていた問題です。私が見つけたのは、vmwareツールを実行しているVMのいずれかがこの問題の影響を受けているということでした。

最近、open-vm-toolsの使用を開始しましたが、それらのvmではオプションが設定されていませんでした。 open-vm-toolsはVmwareによって完全にサポートおよび推奨されているため、vmwareツールよりも使用することをお勧めします。 http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId= 20738

Open-vm-toolsが使用するリポジトリにある場合は、yum installまたはapt-get installなどを介して簡単にインストールできます。

0
sysadmiral

仮想マシンの追加(ツール)をインストールすると、ゲストOSとホストOSの間でクロックが同期されませんか?

0
Darren Kopp

おそらくntpを介して定期的に更新することは良い解決策ではありません

しかし、それが私がお勧めする解決策です。なぜあなたの場所では良くないと考えられているのですか?

0
Mike Elkins