chrony で NTP サーバを構築する
chrony は NTP のクライアント/サーバのミドルウェアです。
時刻を正確にするために導入します。
CentOS 7 からは ntpd に代わって chrony が標準となっています。
検証環境
- CentOS 7
- server01 (192.168.33.11)
- server02 (192.168.33.12)
- chrony 2.1.1
今回は2台の CentOS を使って検証します。
server01 をサーバ、server02 をクライアントとして用意します。
タイムゾーンの変更
Vagrant で作ったあとに時刻を確認したらイギリス夏時間だったので、
タイムゾーンも日本に設定します。 ※ 現在夜の23時台くらい
# timedatectl set-timezone Asia/Tokyo # timedatectl status Local time: Mon 2017-04-17 23:10:25 JST Universal time: Mon 2017-04-17 14:10:25 UTC RTC time: Mon 2017-04-17 23:10:25 Time zone: Asia/Tokyo (JST, +0900) NTP enabled: yes NTP synchronized: yes RTC in local TZ: yes DST active: n/a
chrony インストールと起動
# yum -y install chrony
パッケージ名とは異なり、デーモンの名前は chronyd です。
# systemctl start chronyd # systemctl status chronyd
サーバ側の設定
server01 のマシンで操作します。
NICT と同期
同期する時刻サーバの設定を追加します。
[root@server01 ~]# vi /etc/chrony.conf
server
の部分を NICT の時刻サーバと同期する設定に変更します。
また、後ほど設定する server02 がクライアントとして接続するため、
192.168.0.0 のネットワークも許可します。
server ntp.nict.jp iburst allow 192.168/16
同期の確認
chronyd を再起動し、同期を確認します。
[root@server01 ~]# systemctl restart chronyd [root@server01 ~]# chronyc sources 210 Number of sources = 1 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* ntp-a2.nict.go.jp 1 6 77 42 -148us[-2816us] +/- 3731us
左の項目 MS
に ^*
が表示されていればサーバと同期が出来ている状態です。
クライアント側の設定
server02 のマシンで操作します。
server01 と同期
今度は NICT ではなく先ほどの server01 をサーバとして同期します。
[root@server02 ~]# vi /etc/chrony.conf
server 192.168.33.11 iburst allow 192.168/16
同期の確認
chronyd を再起動し、server01 との同期を確認します。
[root@server02 ~]# systemctl restart chronyd [root@server02 ~]# chronyc sources 210 Number of sources = 1 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* 192.168.33.11 2 6 377 37 +396us[ +480us] +/- 3930us
server01 との同期が確認できました。