この疑問に回答します。
CentOS7は、時刻同期サービスはNtpdがデフォルトで動作していました。
CentOS7でもChronyのパッケージは導入されていたので手動で変更することが可能でしたが、CentOS8はNtpdが廃止されてChronyのみがサポートされました。
Chronyとは?
chronyは、Network Time Protocol(NTP)を提供しているサービスの一つです。ntpdは古い仕組みなので、現在の用途に適応しなくなってきました。よって、Chronyは現在の用途に適した方法で効率的に時刻同期を提供します。
現在の用途に対応した一覧です
- ネットワークの頻繁に切断される
- 混雑したネットワーク
- 温度変化が大きい(一般的なコンピューターの時間は温度の影響を受けやすい)
- 連続して実行されないコンピューター
- 仮想マシンで実行されるシステム
- セキュリティ機能
- 同期の精度向上
- ダイヤルアップ接続に対するサポート
- 自動的にNTPサーバーを見つける
などで幅広い条件で適切に機能するように設計されています。
NTPDとChronyの違いは?
時刻同期ができれば事が足りるので、仕様の違いは何となく知っていれば大丈夫です。
サービス名 | NTPD | Chrony |
---|---|---|
バージョン | NTP Version 3(RFC 1305) | NTP Version 4(RFC 5905) |
ハードウェア クロック | 同期が不可 | 同期が可能 |
利用ポート | 固定(123/udp) | 可変(デフォルト:123/udp) |
NTP Ver.4は、Ver.3の改善版で完全に互換性があります。
Chronyの設定
chronyの設定ファイル は「/etc/chrony.conf」です。
chrony.confは、ntpdの設定ファイル 「ntp.conf」 とほぼ同じです。
サーバーの時刻同期を目的にしているのであれば、設定を変更する必要はありません。サービスさえ起動しておけば時刻同期が勝手に実施してくれます。
NTPサーバーとして設定
サーバーの時刻同期を目的にしているのであれば、設定を変更する必要はありません。手動で設定変更を行いたい場合は、時刻同期対象サーバーを指定します。。
# Use public servers from the pool.ntp.org project. # Please consider joining the pool (http://www.pool.ntp.org/join.html). #pool 2 server 0.jp.pool.ntp.org iburst server 1.jp.pool.ntp.org iburst server 2.jp.pool.ntp.org iburst server 3.jp.pool.ntp.org iburst
外部へのアクセスが不可な場合や、社内にNTPサーバーがある場合は変更します。
アクセス許可するNTPクライアントのIPアドレスを指定します。
# Allow NTP client access from local network. allow 192.168.0.0/16
NTPサーバーをして動作させないのであれば設定する必要はありません。
Chrony 関連コマンド
接続状態を確認するコマンド:chronyc sources
ntpdの「ntpq -p」コマンドと同じ意味で利用するコマンドです。
時刻同期が動作していることが確認できます。
# chronyc sources 210 Number of sources = 4 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^+ ipv4.ntp2.rbauman.com 2 10 377 244 -39us[ -56us] +/- 2358us ^- time.cloudflare.com 3 10 377 68 +6023us[+6023us] +/- 61ms ^- y.ns.gin.ntt.net 2 6 377 59 -4739us[-4739us] +/- 100ms ^* mx.execve.net 2 7 377 127 +31us[ +13us] +/- 1263us
コマンドの結果が表示される先頭の記号(^,*,+,-)が状態を表します。
「^」がNTPサーバーを意味しています。
先頭の記号 | 意味 |
---|---|
^+ | NTPサーバーの同期候補 |
^- | NTPサーバーの同期候補外 |
^* | 現在、同期しているNTPサーバー |
トラッキングを確認するコマンド:chronyc tracking
「chronyc sources」は接続先の状態を示すのに対して「chronyc tracking」は、Chronyが動作しているサーバーの状態を確認することができます。
# chronyc tracking Reference ID : 2D4C6F95 (mx.execve.net) Stratum : 3 Ref time (UTC) : Wed Jun 03 03:57:14 2020 System time : 0.000000144 seconds slow of NTP time Last offset : +0.000008267 seconds RMS offset : 0.000024920 seconds Frequency : 31.560 ppm slow Residual freq : +0.000 ppm Skew : 0.014 ppm Root delay : 0.001982081 seconds Root dispersion : 0.000339276 seconds Update interval : 128.7 seconds Leap status : Normal
手動による時刻同期コマンド:chronyc -a makestep
# chronyc -a makestep 200 OK
ハードウェアクロックとシステムクロックの同期コマンド:chronyc -a trimrtc
# chronyc -a trimrtc 200 OK
以上、「【CentOS8】NTP(chrony)の設定方法」という記事でした。