4

一連のサーバーの時刻同期を維持するためのNTPはどの程度正確ですか?

私は、第2レベルの粒度に同期された一連のサーバー(一部はクライアントとして機能し、一部はサーバーとして機能する)を必要とするサービスを作成しています。NTPを使用するのが最適なのか、それとももっと良いものがあるのか​​疑問に思います。

それらの1つでntpサーバーを実行し、他のサーバーにそれをソースとして使用させる必要がありますか?NTPに関するその他の推奨事項/ホラーストーリーはありますか?

すべてのサーバーはLinuxです。

更新:サービスレベル:

1台のサーバーを正確なUTC(マイクロ秒などではなく第2レベル)にし、他のすべてのサーバーを、正確なUTCかどうかに関係なく(イベント)、その1台のサーバーと同じtsにします。この1つのサーバーがさまざまな間隔で複数の場所から受信する場合、これらのイベントはすべて同じ「相対」tsである必要があります。いいえ、メインサーバーにイベントが発生したときにTSを設定することはできません。オフセットを保存する必要があり(イベントが実際に発生したときとログに記録されたとき、これには多くの追加作業が必要です)、それは問題を不必要に複雑にします。

私は現在、1つのサーバーをストラタム2タイムサーバーとして設定し、いくつかのstartum 1 GPSソースをntp.confのサーバーとして使用し、他のサーバーでは、このサーバーをntp.confの唯一のサーバーとして設定しました。

これで十分だと思います。ありがとうございました!

4

3 に答える 3

2

NTPは、ほとんどのアプリケーションで十分に1秒以内にあなたを保ちます。

より高い精度が必要で、すべてのサーバーが* nixを実行している場合は、PrecisionTimeProtocolの実装を調査します。これには、ネットワーク内の信頼できるソースを見つけるための複数の親クロックとネゴシエーションが含まれます。これは、電力業界でのタイムスタンプイベントに推奨される時間プロトコルです(たとえば、2003年の北東部停電の調査に役立つリレーアクションおよび計測アラームのログファイルでの正確なタイムスタンプ)。

于 2011-02-19T05:44:59.253 に答える
1

まず、ウィキペディアのNTPページをご覧ください。

基本的に、最初に(私はこれを定期的に説教します)あなたが望むサービスレベルが何であるかを述べます。正確なUTCが必要ですか?どの程度の許容範囲まで?つまり、本当に何時かを知る必要がありますか?

それとも、単にシステム間の正確な同期が必要ですか?

私たちが話しているマシンの数は、地理的に分散していますか?

いくつかのオプション:

  • 正確な時刻:少なくとも1台のサーバーをストラタム2としてセットアップし、少なくとも3台のストラタム1サーバーを参照するようにします。サーバーがたくさんある場合は、それを複数作成します。明らかに、単一障害点がないため、信頼性が向上します。

  • 正確な同期:NTPピアを設定します。

  • 正確な時間と地理的分布:上記のように、各クラスターの「近く」に1つずつある複数のストラタム2サーバー。彼らは投票を改善するために層2を覗き込むことができます。

NTPよりもよく知られているものはないと思います。

更新別の質問では、PTP高精度時間プロトコル(IEEE 1588)について言及しています。これは正確な同期には優れていますが、マルチキャストに依存します。

また、GPSタイムソースを取得することを検討する価値があります。

于 2011-02-19T05:45:14.097 に答える
0

はい、サーバーの1つを社内のNTPサーバーとして設定し、他のサーバーをそれに同期します。私が覚えているように、通常はミリ秒以内の精度が得られます。

サーバーのいずれかがかなり離れている場合、そして何が「離れている」のかを思い出せない場合、NTPはそれを修正しません。それを自動的に修正する方法はありますが、現時点では思い出せません。

于 2011-02-19T05:35:15.293 に答える