CentOS Stream 8 での NTP(Chrony)のインストール手順およびNTPクライアントおよびサーバの設定を紹介します。
Chronyとは
CentOS6まではNTPでの時刻同期のデーモンとしてntpdが採用されていましたが、CentOS7以降からはChronyが採用されています。ntpdと異なる時刻同期アルゴリズムが採用されより正確な時刻同期を実現しています。
Chrony公式ページ
Chronyのインストール、起動、動作確認方法
Chrony インストール
下記コマンドインストールされます。
1 |
dnf -y install chrony |
Chronyインストールログ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
[root@test01-cent-st8 ~]# dnf -y install chrony メタデータの期限切れの最終確認: 0:49:29 時間前の 2021年02月24日 20時32分24秒 に実施しました。 依存関係が解決しました。 ============================================================================================================================================================== パッケージ アーキテクチャー バージョン リポジトリー サイズ ============================================================================================================================================================== インストール: chrony x86_64 3.5-1.el8 baseos 271 k 弱い依存関係のインストール: timedatex x86_64 0.5-3.el8 baseos 32 k トランザクションの概要 ============================================================================================================================================================== インストール 2 パッケージ ダウンロードサイズの合計: 303 k インストール後のサイズ: 731 k パッケージのダウンロード: (1/2): timedatex-0.5-3.el8.x86_64.rpm 118 kB/s | 32 kB 00:00 (2/2): chrony-3.5-1.el8.x86_64.rpm 508 kB/s | 271 kB 00:00 -------------------------------------------------------------------------------------------------------------------------------------------------------------- 合計 275 kB/s | 303 kB 00:01 トランザクションの確認を実行中 トランザクションの確認に成功しました。 トランザクションのテストを実行中 トランザクションのテストに成功しました。 トランザクションを実行中 準備 : 1/1 インストール中 : timedatex-0.5-3.el8.x86_64 1/2 scriptletの実行中: timedatex-0.5-3.el8.x86_64 1/2 scriptletの実行中: chrony-3.5-1.el8.x86_64 2/2 インストール中 : chrony-3.5-1.el8.x86_64 2/2 scriptletの実行中: chrony-3.5-1.el8.x86_64 2/2 検証 : chrony-3.5-1.el8.x86_64 1/2 検証 : timedatex-0.5-3.el8.x86_64 2/2 インストール済み: chrony-3.5-1.el8.x86_64 timedatex-0.5-3.el8.x86_64 完了しました! [root@test01-cent-st8 ~]# |
Chrony 起動
下記コマンドでChronydの起動および自動起動の設定をします。
1 |
systemctl enable --now chronyd |
Chrony 動作確認
デーモンの起動状態の確認コマンド
1 |
systemctl status chronyd |
Actice: active (running) が表示されている場合はchronydが起動している状態です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
[root@test01-cent-st8 ~]# systemctl status chronyd ● chronyd.service - NTP client/server Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2021-02-24 21:26:00 JST; 1min 56s ago Docs: man:chronyd(8) man:chrony.conf(5) Process: 2108 ExecStartPost=/usr/libexec/chrony-helper update-daemon (code=exited, status=0/SUCCESS) Process: 2104 ExecStart=/usr/sbin/chronyd $OPTIONS (code=exited, status=0/SUCCESS) Main PID: 2106 (chronyd) Tasks: 1 (limit: 23670) Memory: 508.0K CGroup: /system.slice/chronyd.service └─2106 /usr/sbin/chronyd 2月 24 21:26:00 test01-cent-st8.test.server-network-note.net systemd[1]: Starting NTP client/server... 2月 24 21:26:00 test01-cent-st8.test.server-network-note.net chronyd[2106]: chronyd version 3.5 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +S> 2月 24 21:26:00 test01-cent-st8.test.server-network-note.net chronyd[2106]: Using right/UTC timezone to obtain leap second data 2月 24 21:26:00 test01-cent-st8.test.server-network-note.net systemd[1]: Started NTP client/server. 2月 24 21:26:05 test01-cent-st8.test.server-network-note.net chronyd[2106]: Selected source 133.243.238.243 2月 24 21:26:05 test01-cent-st8.test.server-network-note.net chronyd[2106]: System clock TAI offset set to 37 seconds [root@test01-cent-st8 ~]# |
下記コマンドで時刻同期の状況を確認できます。
1 |
chronyc sources |
実行例:デフォルトで 2.centos.pool.ntp.org と同期する設定が入っています。
1 2 3 4 5 6 7 8 9 |
[root@test01-cent-st8 ~]# chronyc sources 210 Number of sources = 4 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^- 2601:603:b7f:fec0:fec0:b> 2 6 377 23 -8961us[-8908us] +/- 78ms ^* ntp-a2.nict.go.jp 1 6 337 23 +14us[ +67us] +/- 3187us ^- sh03.paina.net 1 6 377 25 -18ms[ -18ms] +/- 26ms ^- x.ns.gin.ntt.net 2 6 377 26 +1363us[+1416us] +/- 75ms [root@test01-cent-st8 ~]# |
スポンサーリンク
NTPサーバーの設定
NTPサーバーの設定手順になります。
下記ファイルが設定ファイルになります。
1 |
vi /etc/chrony.conf |
デフォルトではNTPクライアントのリクエストを受け付けません。NTPクライアントから許可するネットワークを記載します。今回の例は172.22.0.0/24を許可しています。
1 2 3 4 |
# Allow NTP client access from local network. #allow 192.168.0.0/16 # 24行目に追加 NTPクライアントから許可するネットワークを追記します。 allow 172.22.0.0/24 |
設定を反映させるために、下記コマンドでChronydを再起動します。
1 |
systemctl restart chronyd |
Firewalldを有効にしている場合は、下記コマンドでNTPのサービスを追加します。
1 2 |
firewall-cmd --add-service=ntp --permanent firewall-cmd --reload |
NTPクライントの設定(同期先の設定)
NTPクライントしてNTPとの同期先の設定を変更します。
下記ファイルが設定ファイルになります。
1 |
vi /etc/chrony.conf |
デフォルトでは、 2.centos.pool.ntp.org と同期する設定が入っています。今回は先ほど設定したサーバー( test01-cent-st8 )と同期する設定を実施します。
1 2 3 4 5 6 |
# Use public servers from the pool.ntp.org project. # Please consider joining the pool (http://www.pool.ntp.org/join.html). # 3行目のデフォルトの同期先の設定をコメント # 4行目として test01-cent-st8 にNTPの同期先を設定 #pool 2.centos.pool.ntp.org iburst pool test01-cent-st8.test.server-network-note.net iburst |
設定を反映させるために、下記コマンドでChronydを再起動します。
1 |
systemctl restart chronyd |
下記コマンドで時刻同期の状況を確認できます。
1 |
systemctl status chronyd |
同期結果
1 2 3 4 5 6 |
[root@test02-cent-st8 ~]# chronyc sources 210 Number of sources = 1 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* test01-cent-st08.test.se> 2 6 17 19 -15us[ -51us] +/- 23ms [root@test02-cent-st8 ~]# |