ESXi Windows仮想マシンの時刻を1秒以内に同期する方法は?


12

私は開発者であり、SQLバッキングストアを備えた広く使用されているスケジューリングライブラリであるQuartz.Netを使用して、ジョブサーバーのクラスター(ESXIクラスター上のVM)を実行しています。

Quartz.Net では、ジョブサーバーインスタンス間で時刻を同期する必要があるため、NTPを使用することをお勧めします。

クロックは互いに1秒以内でなければなりません。

Windows NTPを使用して時間をドメインコントローラーと同期するシステム管理者。VMとESXIホストの同期はオフです。

彼らは、「秒以内」は正しい要件ではなく、ハードウェアGPS同期デバイスなしでは満たされないと主張し続けています。SLAと監視レベルは「3分以内」です。

同期していない時間と一致する定期的な(2〜3か月に1回)Quartzインスタンスの非同期動作が発生しています。

  1. 「秒以内」を要求するのは正しいですか、それともクォーツを完全に捨てる必要がありますか?
  2. はいの場合、セットアップにはどのような変更が推奨されますか?

11
1秒に同期することは、仮想サーバー(それ自体で時間安定性が悪いことで有名です)でさえももありません。3分?!笑って。そのようにネットワークを実行することはできません。
モニカとの軽さのレース

回答:


20

これは2018年です。Windowsでは、MIFID II規則で要求されているように、2ミリ秒以内にサーバーの同期を維持できます。したがって、あなたの問題は問題ではありません。

Windows NTPを使用して時間をドメインコントローラーと同期するシステム管理者。VMとESXIホストの同期はオフです。

どうして?ホストはこれをよりよく処理でき(ハードウェアであるため)、はるかに少ないです。あなたのシステム管理者は自分の足を撃ち、出血していると訴えます。

彼らは、「秒以内」は正しい要件ではなく、ハードウェアGPS同期デバイスなしでは満たされないと主張し続けています。SLAと監視レベルは「3分以内」です。

OLD-古代-Kerberosチケットの有効性は5分間であったため、Windowsはその時間枠内で同期しました。

しかし、これは、私が言ったように、2018年です。金融業界は最近非常に残忍な要件を抱えており、MSはそれを2012年以来処理しています。2016年は完全に実施されました。インターネット上でのミリ秒の精度は解決済みの問題です-50年前に実際に解決されたのは、まともな接続です。NTPで処理できます。トラフィックを削減する(つまり、独自のティア3 NTPタイムソースを作成する)場合は、安価なハードウェアボックスを設置する必要がありますが、それでも高価ではありません。

「秒以内」を要求するのは正しいですか、それともクォーツを完全に捨てる必要がありますか?

時折発生する時間の問題のために、ハードウェアで行うようにプログラムする必要があります。しかし、「秒以内」は要件の冗談です-通常の状況では満たすのは簡単です。

いくつかの参照:

https://docs.microsoft.com/en-us/windows-server/networking/windows-time-service/accurate-time

次のような政府規制:米国のFINRAの精度は50ミリ秒、EUのESMA(MiFID II)は1ミリ秒。

多くの詳細と指示があります。この問題を解決する必要がある場合、これは実際に驚くべき読み物です。ハイパーバイザーをアップグレードする必要がある場合があります-彼らはすべてHyper-Vについて話します。VMWareは同じことを実行できるはずですが、バージョンがどれくらい古いかはわかりません。


FWIW、[UK]金融業界でのMiFID IIコンプライアンスは、驚くほど貧弱です(銀行は、それらのすべてのhoo-har に煩わされるよりも軽微罰金を支払う方が望ましいでしょう)が、もちろん技術的には正しいです。
ライトネスレース、モニカと

それはコンプライアンスに関するものではなく、コンプライアンスに関するものです。MSはずっと前に解決しました。そのため、OPがエリアジョークについて話す「3分正確」。
トムトム

同意する; これは余談です。
ライトネスレース、モニカと

2
NTPは十分に高速ですが、VMwareは統合サービスを使用して時刻を同期することを推奨していません。ほとんどの場合(すべてではありませんが)、通常のNTPの方がより高速で高速です。
HoD

懸念事項はサーバー間の相対的な時間であるため、NTPを使用してサーバーをネットワークスイッチと同期させることができます。ネットワークスイッチはISPと同期します。追加のハードウェアは不要です。
grahamj42

6

「秒以内」を要求するのは正しいですか、それともクォーツを完全に捨てる必要がありますか?

さまざまなアプリケーションスタックが厳密な時間制御を必要とする多くの非常に正当な理由があり、Quartzが求めていることは珍しいことではありません。

はいの場合、セットアップにはどのような変更が推奨されますか?

最善の策は、システムのすべての部分でNTPを使用し、同じNTPサーバーのペアを指すようにすることです。そのため、ESXiホストとその上で実行されているVMは、すべて同じNTPソースを使用しており、他のすべての関係についても同じです。この方法は、NTPサーバーが「オフタイム」である場合でも、システムの少なくともすべての部分が互いに最新の状態になっています。


4

https://docs.microsoft.com/en-us/windows-server/networking/windows-time-service/support-boundary

Windows 8.1および2012 R2(またはそれ以前)の高精度サポート

以前のバージョンのWindows(Windows 10 1607またはWindows Server 2016 1607より前)は、非常に正確な時間を保証できません。これらのシステム上のWindowsタイムサービス:

  • Kerberosバージョン5認証要件を満たすために必要な時間精度を提供しました

  • 共通のActive Directoryフォレストに参加しているWindowsクライアントとサーバーに大まかに正確な時間を提供しました

これらのオペレーティングシステムでは、より厳しい精度要件がWindowsタイムサービスの設計仕様の範囲外であり、サポートされていません。

Windows 10およびWindows Server 2016

Windows 10およびWindows Server 2016の時間精度は大幅に改善され、古いバージョンのWindowsとの完全な下位NTP互換性が維持されます。適切な動作条件下で、Windows 10またはWindows Server 2016以降のリリースを実行しているシステムは、1秒、50ミリ秒(ミリ秒)、または1ミリ秒の精度を実現できます。

ターゲット精度:1秒(1秒)

非常に正確なタイムソースと比較して、特定のターゲットマシンで1秒の精度を達成するには:

  • ターゲットシステムは、Windows 10、Windows Server 2016を実行する必要があります。

  • ターゲットシステムは、タイムサーバーのNTP階層から時間を同期する必要があり、その結果、非常に正確で、Windows互換のNTPタイムソースになります。

  • 上記のNTP階層内のすべてのWindowsオペレーティングシステムは、「高精度のためのシステムの構成」ドキュメントに記載されているとおりに構成する必要があります。

  • ターゲットとソース間の累積的な一方向のネットワーク遅延は、100msを超えてはなりません。累積ネットワーク遅延は、ターゲットで始まりソースで終わる階層内のNTPクライアント/サーバーノードのペア間に個別の一方向遅延を追加することで測定されます。詳細については、高精度の時刻同期ドキュメントをご覧ください。

https://docs.microsoft.com/en-us/windows-server/networking/windows-time-service/configuring-systems-for-high-accuracy


実際、Windows 2012R2を使用しています。(ESXIホストと同期していないことと共に)問題の根源のようです
-Leotsarev

1
@Leotsarev:これらがドメインメンバーである場合、VMホストと同期しないでください。
グレッグアスキュー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.