web-dev-qa-db-ja.com

public NTPサーバーを実行する際の考慮事項

だから、最近ネットワークに3つのGPSクロックがあるので、技術的には少し返して他の世界に時間を提供できることがわかってきました。これまでのところ、私はこのアイデアの欠点をまったく見ていませんが、次の質問があります。

  1. これを仮想化できますか?ハードウェアの立ち上げにお金と時間を費やすつもりはないので、仮想化は必須です。サーバーは3つのストラタム1ソースにアクセスできるため、ntpd構成が正しい場合、これがどのように問題になるかはわかりません。

  2. 公開するトラフィックの種類NTP server(pool.ntp.orgの一部)は通常、どのくらいの量のVMを必要としますか?ntpdは、リソース集中型である必要があります。集まることができるので、事前に知っておきたい。

  3. これにはどのようなセキュリティ面がありますか? DMZ内の2つのVMにntpdをインストールし、FWを介してntpのみを許可し、DMZから内部ntpサーバーにntpのみを送信することを許可します。 NTPプールページに従って推奨されるntp設定ですが、それで十分ですか? https://www.ntppool.org/join/configuration.html

  4. ローカルクロックドライバーを構成しないことをお勧めします。これは、構成ファイルからローカルタイムソース構成を削除することと同じですか。

  5. 他に考慮すべきことはありますか?

21
Stuggi

まず、あなたのために良いです。それは役立つ、公衆の精神に基づくことです。つまり、1つ以上のDMZ VMを作成して、3つのMeinberg GPS対応stratum-1(内部)サーバー:

  1. 編集:仮想化は プールリスト についての議論のために時々登場します;最近のものは2015年7月で、 このメール からフォローできます。プロジェクトリーダーのビョルンハンセンに質問 スレッドへの投稿 を行い、仮想化に反対する声はありませんでした。明らかに、多くのプールサーバーオペレーターが現在仮想化しているため、誰もあなたを狙うことはないと思います。1人の投稿者が明らかにしているように、サーバーが信頼できない場合、プール監視システムはそれらを単に削除しますプール。 KVMは、推奨される仮想化テクノロジーのようです。VMWareを具体的に使用している人を見つけられなかったため、仮想化がいかに「正直」であるかについてコメントすることはできません。 おそらく、主題 言った

    私のプールサーバーはKVM on my own own KVM hosts。on監視です。サーバーはかなり正確で、最後の2-3の安定した時間を提供しますしかし、私は別のプロバイダーからリースされた仮想サーバー上にプールサーバーをセットアップしませんでした。

  2. これは、過去1年間にプールサーバー(英国、ヨーロッパ、およびグローバルゾーンにある)で1秒間に表示される個別のクライアントの1日あたりの平均数です。

    ntp client count

    これにより、検出可能なシステム負荷はほとんど発生しません(ほとんどの場合、ntpdはCPUの1%から2%を使用しているようです)。年間のある時点で、負荷は1秒あたり1,000クライアント近くに一時的にピークに達したことに注意してください(最大:849.27)。私は過度の負荷を監視していますが、アラームがすべて鳴るわけではなかったので、一時的ではありますが、そのレベルの負荷でも問題が発生しなかったことにのみ注意できます。

  3. プロジェクト推奨の構成はベストプラクティスであり、私にとってはうまくいきます。また、iptablesを使用して、10秒のローリングウィンドウでクライアントを2つのインバウンドパケットにレート制限します(これは驚くべきそこにある失礼なクライアントの数です。自分のクロックをすばやく設定するために、バーストを自由に行えるようにする必要があると考えています)。

  4. または、127.127で始まるサーバーアドレスを参照する行を削除します。

  5. ベストプラクティスのガイドラインでは、3クロック以上を推奨しているため、3つのstratum-1サーバーに加えて、他のいくつかのパブリックサーバーまたは特定のプールサーバーを選択することもできます。

    これら両方のVMを同じホストハードウェアに配置する場合は、おそらく1つだけを実行する必要がありますが、プールに宣言された帯域幅を2倍にします(つまり、他の方法で2倍のクエリを受け入れます)。 )。

22
MadHatter

まず、NTP質問です。おめでとうございます。問題のVMは、プールのコントロールパネルで100 Mbpsに設定されており、英国、ヨーロッパ、およびグローバルプールにあります。

  1. MadHatterはこれをうまくカバーしていたと思います-仮想化は問題ないでしょうあなたが言うように、彼らがあなたのGPS接続された層1から供給しているならば、それらは適度にしっかりしているはずです。私の経験では、VMは周波数の点でベアメタルよりも少しジャンプする傾向がありますが(下のグラフを参照)、それはあなたが期待することです-それらはクロックエミュレーションレイヤー(うまくいけばかなり効率的)を扱い、潜在的にノイズが多いです隣人。このようなジャンプが見られない場合は、代わりに古いサーバーまたは未使用のデスクトップをDMZ stratum 2sとして使用してください。

  2. これはVMは1コア、2 GB RAM、Ubuntu 16.04 LTSを実行し、OpenStack(KVMハイパーバイザー)で仮想化されています。ご覧のように、RAMは少し上に。

  3. ローカルドライバーが構成されていないことを含む推奨設定は、Ubuntu 16.04のデフォルトです。ピアリスト以外は、ストック構成の非常に近くで実行しています。

  4. (上記を参照)

  5. 帯域幅をローサイドから開始し、少し監視した後で帯域幅を増やします。 VMがすべてネットワークレイテンシの点で互いに近く、ストラタム1の近くにある場合、おそらくすべてのVMがすべてのストラタム1と通信し、それらを互いにピアリングして、オーファンモードもオンにするでしょう。

グラフは次のとおりです。バックアップによっていくつかのスパイクが発生したネットワークの場合を除いて、すべてがほぼ3週間の同じ期間をカバーしています。ネットワークが急上昇しているときは、通常のNTPトラフィックも確認できなかったため、少し拡大して通常の背景を表示しました。

CPU - CPU メモリ Memory ネットワーク Network 頻度 Frequency システムオフセット System Offset

12
Paul Gear

NTPで考慮すべき事項

ここには、すでに良い答えがあります。私は自分自身の経験に基づいて、完全を期すためにいくつかの考えを追加しています。

NTPロギングを有効にし、ベアメタルとVMのグラフのクロックスキューと修正を有効にすることをお勧めします。ハードウェアと構成は実装によって異なるため、これは簡単に一般化できるとは思えません。その上で独自の番号を取得するのが最善の場合があります。

私は常に、CPU時間がほぼ一定で、ティックレスカーネルではない、または省電力モードが有効になっているサーバーまたはネットワークデバイスのシステムの役割を選択することをお勧めします。特に、ファーム内のstratum 2のみであっても、デーモンラインのcpuspeed、speed govenors、またはNTPサーバーでの高度な省電力は避けてください。 C-State 1より深くならないことである程度の安定性を得ることができますが、電力消費は増加します。

また、ネットワークのエッジから40ミリ秒未満のストラタム1サーバーをいくつか選択し、エッジNTPサーバー間でそれらを分割して、背後に2台のサーバーがないこと)を確認することも試みます。ネットワーク内の同じSNATが同じストラタム1サーバーと通信しています。 burstと同じように、同じアップストリームサーバーを使用して同じSNATの背後に複数のサーバーを配置することは賢明ではありません。

アップストリームサーバーからのkodパケットを常に尊重し、監視ツールでアップストリームサーバーの時間オフセットと到達可能性をチェックする必要があります。

あなたかもしれませんがいくつかのデータセンターに正確なタイムソースを用意して、GPSをピアリングするか、万が一の場合にフォールバックすることを検討したいと考えていますSAは軍によって有効にされます。特にこれのための費用効果が大きい電気器具があります。 「ケージ」環境にいて、独自のデータセンターがない場合でも、一部のホスティング施設はこれに対応している場合があります。

3
Aaron

http://www.vmware.com/pdf/vmware_timekeeping.pdf にあるVMwareタイムキーピングドキュメントを参照してください

NTPデーモンをVMで実行することは、特に信頼できる時間を必要とする場合は、おそらく良い考えではありません。

2

Linuxのさまざまなディストリビューションの実際の構成パラメーターを含むVMwareの優れたKBを以下に示します。

https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1006427

0
Stuggi