仮想マシンで仮想マシンを一時停止し、システムを再起動せずにインターネット接続を切断しました。再起動せずにスリープモードでシステムを起動すると、システムクロックが中断された部分から動作し続け、正確な時刻を表示できなくなります。この状況ではどうすればよいですか?
- 1時間の私の時間データ今後VMを一時停止しました(ホストに対してもライブです)。
% chronyc sourcestats
---------------------
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
==============================================================================
131.153.171.22 6 4 139 -46792.738 67288.219 -326ms 890ms
108.175.15.67 6 3 140 -44764.793 61909.766 -188ms 961ms
gopher.fart.website 6 3 140 -49022.652 84747.266 -217ms 1224ms
edge-iad.txryan.com 6 3 139 -45642.164 67798.562 -230ms 1032ms
% chronyc tracking
------------------
Reference ID : 8399AB16 (131.153.171.22)
Stratum : 3
Ref time (UTC) : Mon Dec 25 09:55:11 2023
System time : 0.000000000 seconds slow of NTP time
Last offset : -5.681410313 seconds
RMS offset : 1.796643019 seconds
Frequency : 5.307 ppm fast
Residual freq : -46792.738 ppm
Skew : 8.997 ppm
Root delay : 0.147369087 seconds
Root dispersion : 0.769112766 seconds
Update interval : 7.0 seconds
Leap status : Normal
% date
-----------------
Mon Dec 25 12:55:18 PM +03 2023
% hwclock
-----------------
2023-12-25 12:55:13.078474+03:00
- インターネットが切断されてからしばらく待ってから仮想マシンの電源を入れたとき、時計は正しい時刻を表示しませんでした。また、この出力を受け取ると、実際のマスター日付が表示されます。(2023年12月25日月曜日午後1時28分58分)
(とにかくネットワーク接続を切断してシステムを再起動すると、ホスト時間と同期して起動しません。)
% chronyc sourcestats
---------------------
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
==============================================================================
131.153.171.22 6 4 139 -46792.738 67288.219 -5592ms 890ms
108.175.15.67 6 3 140 -44764.793 61909.766 -5226ms 961ms
gopher.fart.website 6 3 140 -49022.652 84747.266 -5734ms 1224ms
edge-iad.txryan.com 6 3 139 -45642.164 67798.562 -5367ms 1032ms
% chronyc tracking
------------------
Reference ID : 8399AB16 (131.153.171.22)
Stratum : 3
Ref time (UTC) : Mon Dec 25 09:55:11 2023
System time : 0.000000000 seconds fast of NTP time
Last offset : -5.681410313 seconds
RMS offset : 1.796643019 seconds
Frequency : 5.307 ppm fast
Residual freq : -46792.738 ppm
Skew : 8.997 ppm
Root delay : 0.147369087 seconds
Root dispersion : 6.036798477 seconds
Update interval : 7.0 seconds
Leap status : Normal
% date
-----------------
Mon Dec 25 12:57:11 PM +03 2023
% hwclock
-----------------
2023-12-25 12:57:05.629692+03:00
- インターネットに接続した後
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
==============================================================================
131.153.171.22 6 4 343 -5616574 341926 -1958s 15.7s
108.175.15.67 6 4 343 -5631052 251508 -1960s 12.1s
gopher.fart.website 6 4 343 -5618134 301975 -1963s 14.2s
edge-iad.txryan.com 6 4 343 -5635317 275298 -1964s 13.2s
Reference ID : 8399AB16 (131.153.171.22)
Stratum : 3
Ref time (UTC) : Mon Dec 25 09:55:11 2023
System time : 0.000000001 seconds fast of NTP time
Last offset : -5.681410313 seconds
RMS offset : 1.796643019 seconds
Frequency : 5.307 ppm fast
Residual freq : -46792.738 ppm
Skew : 8.997 ppm
Root delay : 0.147369087 seconds
Root dispersion : 16.738962173 seconds
Update interval : 7.0 seconds
Leap status : Normal
Mon Dec 25 01:01:00 PM +03 2023
2023-12-25 13:01:00.293480+03:00
また、Chronyでシステム時間がどれだけ頻繁に更新されますか?システムはいつオンになるか、インターネットに接続されるたびにオンになりますか?どのように設定しますか?
ベストアンサー1
要約:VMゲストの時計は時間を維持するのに適していないので残念です。使用を中止してください。
ゲストオペレーティングシステムには時間を維持する2つの方法があります。
- インターネット
- ホストオペレーティングシステム
無効な方法:インターネットクライアント
仮想マシンゲストできるserver1b.meinberg.deや他のインターネットサーバー用のNTPクライアント。これをしないでください。
仮想マシンが長時間一時停止され、ゲストが再起動されるたびに、外部サーバーが急速に将来の時間に歪むように見えます。あなた持つバイアス修正を「10%速く実行」する代わりに、回復時に「ステップ」修正を実行します。通常、起動スクリプトは同様のコマンドを使用するか、一部のNTPサーバーからクロックステップをhwclock -s --utc
要求することによってこれを実行します。ntpdate
慢性文書セクション3.4makestep 1 -1
これは、しばしば数分または数時間停止する異常な状況にあるお客様に必要であることを指摘してください。
良い方法:ホストOSクロック
ゲストが時間を知りたい場合は、実行中のホストの時間を尋ねる必要があります。
ホストオペレーティングシステムには適切なクロックがあると推定され、ネットワークが利用可能なときにインターネットNTPサーバーで{オフセット、周波数}推定が行われることがあります。
仮想デバイス提案それは
しばしば、規制されていない地域時計と呼ばれる地域時計を時間源として使用しないことが重要です。
ハイパーバイザーについて教えてくれなかったので、調整すべきノブが何であるかは不明です。 Benjamin Bryanの記事を読むこともできます。 経験。
編集する
Chrony(または他のNTPデーモン)が{オフセット、周波数}を測定しようとしています。たとえば、4秒遅くなりますが、1%速く実行できます。いくつかの観察を行った後、それを推定して修正することができます。
それでは、ゲストが30分間しばらく停止しているとしましょう。私たち可能「1804秒遅いがまだ1%速い」と報告する機能。しかし、総オフセットは周波数誤差測定を妨げる。デーモンが実際に知っておくべきことは、t_0からt_1まで「4秒後、1%早い」と一致する複数のNTP応答を聞いたが、t_2まで私たちは死んで(一時停止)、t_3以降の観察は「1804秒遅れ、1 % 速くなる」。この時点で、私たちは確かに1804秒ずつ段階的に移動する必要があります。
OPは、chronydがsyslogではなく、「一時停止」および「再開」イベントについて知っていることを非常に明確に明らかにしました。したがって、ローカルの不規則な時計は時間ベースでの使用には適していません。
または、同期のために1時間インターネットNTP応答を受信すると、30分間一時停止し、インターネット接続を切断し、復元されたゲストが現在の時刻を知ることを期待し、その情報は本質的にマスターの時計に転送されます。 。 OPは、ホストクロックがhwclock
UDPポート123を介してアクセスされないため、ゲストが29分または31分の一時停止間隔を区別できるという証拠を提供しません。
回復後の時間を知りたい場合は、ハイパーバイザー+ゲスト構成で変更する必要がある構成の詳細です。
ATMは、復元中にゲストが時間を確実に知ることができる唯一の方法は、インターネット接続を維持し、復元スクリプトがchronydを再起動して徐々に更新を促すことです。 (しかし、iburst
構成の初期バーストは完全に一致します。)