chronyのslewモード、うるう秒対策など時刻同期に関して

コンピュータ
スポンサーリンク

RHEL7時代からLinux上の時刻同期(ntp)は、ntpdからchronydが標準となりました。ntpd、chronyd、うるう秒の詳細に関しては、以下のマニュアルをご参照ください。

RHELオフィシャル:第18章 CHRONY スイートを使用した NTP 設定

RHLEオフィシャル:Red Hat Enterprise Linux で「うるう秒」問題を解決する

簡単にchronyのデフォルトの挙動であるstep ⇒ slew、うるう秒対策の設定についてまとめておきます。

スポンサーリンク

デフォルトconfに時刻同期先だけ設定して動作確認

RedHatのchrony.confに、時刻同期先サーバを指定し有効にしてみる。修正箇所は★の1か所だけ。

# vi chrony.conf

//以下、confを一部修正、国内の信頼できる時刻同期サーバへ向ける
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#pool 2.rhel.pool.ntp.org iburst
server ntp.nict.jp iburst  ★nictやmfeedを指定 iburst

# Record the rate at which the system clock gains/losses time.
driftfile /var/lib/chrony/drift

# Allow the system clock to be stepped in the first three updates
# if its offset is larger than 1 second.
makestep 1.0 3

# Enable kernel synchronization of the real-time clock (RTC).
rtcsync

# Enable hardware timestamping on all interfaces that support it.
#hwtimestamp *

# Increase the minimum number of selectable sources required to adjust
# the system clock.
#minsources 2

# Allow NTP client access from local network.
#allow 192.168.0.0/16

# Serve time even if not synchronized to a time source.
#local stratum 10

# Specify file containing keys for NTP authentication.
keyfile /etc/chrony.keys

# Get TAI-UTC offset and leap seconds from the system tz database.
leapsectz right/UTC

# Specify directory for log files.
logdir /var/log/chrony

# Select which information is logged.
#log measurements statistics tracking

設定を反映し、同期できているか確認

// ntpサービスを自動起動にする
# systemctl enalbe chronyd.service

// chronydサービスを起動する
# systemctl start chronyd.service


// 同期できているか確認 *アスタリスクが付与されていると同期されている
# chronyc sources
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^* ntp-b2.nict.go.jp             1   6   377    35    -54us[  -74us] +/- 2787us

stepモード解除、slewモード有効、うるう秒対策

confの修正は、★の2か所のみ。

chronydは標準でslewで動作しているが、うるう秒が挿入された際の挙動を指定できる。デフォルト(標準)は「none」で無視ではあるが、他の機器などは明示的にslewにしていることが多いため合わせておく。

# vi chrony.conf

// 2か所修正
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#pool 2.rhel.pool.ntp.org iburst
server ntp.nict.jp iburst

# Record the rate at which the system clock gains/losses time.
driftfile /var/lib/chrony/drift

# Allow the system clock to be stepped in the first three updates
# if its offset is larger than 1 second.
#makestep 1.0 3   ★起動時の話。コメントアウトすれば上限の1分を超えた時、stepモードを解除し、slewモード補正。有効の場合、1分超えていればstep、1分以内のずれであればslewモード補正
leapsecmode slew  ★chronyd がうるう秒が挿入された際に、徐々に調整することでシステム時計を修正。

# Enable kernel synchronization of the real-time clock (RTC).
rtcsync

# Enable hardware timestamping on all interfaces that support it.
#hwtimestamp *

# Increase the minimum number of selectable sources required to adjust
# the system clock.
#minsources 2

# Allow NTP client access from local network.
#allow 192.168.0.0/16

# Serve time even if not synchronized to a time source.
#local stratum 10

# Specify file containing keys for NTP authentication.
keyfile /etc/chrony.keys

# Get TAI-UTC offset and leap seconds from the system tz database.
leapsectz right/UTC

# Specify directory for log files.
logdir /var/log/chrony

# Select which information is logged.
#log measurements statistics tracking

設定を反映し、同期できているか確認

// ntpサービスを自動起動にする
# systemctl enalbe chronyd.service

// chronydサービスを起動する
# systemctl start chronyd.service


// 同期できている確認 *アスタリスクが付与されていると同期されている
# chronyc sources
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^* ntp-b2.nict.go.jp             1   6    17    19    -63us[ -253us] +/- 1907us
タイトルとURLをコピーしました