harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

[NTP]StepモードとSlewモード

   


NTP StepモードとSlewモード

DBサーバの時間同期の修正にあたって、どのくらいゆっくり修正できるのか調べたら、もともとSlewモードという"ゆっくり修正オプション(?)"があったので備忘録としてメモ。

オプションは、linuxサーバで"man ntpd"しても詳細が表示される。

  • Stepモード
    時刻を一気に修正
  • Slewモード
    1秒間に0.0005秒ずつ修正
    データベースやログホストなど、一気に変更すると不具合のでるホストはSlewモードを使用するのが推奨。

ただし上記の計算で行くと、24時間で43秒しか補正されない。
むしろ『43秒以上ズレたまま運用してるのか!?』とツッコミの予感が~w あるんです、時々(泣)もちろんDBAもいないしw

それはさておき、時間同期のずれは、遅れている状態を戻す分にはさほど問題にならないが、進んでしまっている状態を戻すのは少々大変。
その場合はSlewモードでの地道な時間戻しが現実的な解答といえそう。

参考:SlewモードでのNTPDの実行例

オプション"-x"でslewモードでの実行が可能。

# /usr/sbin/ntpd -c /etc/ntp/ntp.conf -x &	

redhatなどではinitスクリプトでは、当然"-x"オプションは無いので、slewモードで実行したい場合はコマンドラインからデーモンとして実行する。
またはntpdのinitスクリプトはただのシェルスクリプトなので、ささっとカスタマイズしても可。
ひとまずこれで2日かけて時間同期をしましたw (つまり90秒近く遅れていた、と(汗))



 - GNU/Linux, infra, 運用