NTP服務(wù)器和NTP客戶端可以讓我們通過(guò)網(wǎng)絡(luò)來(lái)同步時(shí)鐘。之前,我們已經(jīng)撰寫(xiě)了一篇關(guān)于NTP服務(wù)器和NTP客戶端的安裝與配置的文章。
Chrony客戶端:
Chrony是NTP客戶端的替代品。它能以更精確的時(shí)間和更快的速度同步時(shí)鐘,并且它對(duì)于那些不是全天候在線的系統(tǒng)非常有用。chronyd更小、更節(jié)能,它占用更少的內(nèi)存且僅當(dāng)需要時(shí)它才喚醒 CPU。即使網(wǎng)絡(luò)擁塞較長(zhǎng)時(shí)間,它也能很好地運(yùn)行。它支持Linux上的硬件時(shí)間戳,允許在本地網(wǎng)絡(luò)進(jìn)行極其準(zhǔn)確的同步。
同步時(shí)鐘
它提供下列兩個(gè)服務(wù):
chronyc:Chrony 的命令行接口。
chronyd:Chrony 守護(hù)進(jìn)程服務(wù)。
如何在 Linux 上安裝和配置 Chrony?
由于安裝包在大多數(shù)發(fā)行版的官方倉(cāng)庫(kù)中可用,因此直接使用包管理器去安裝它。對(duì)于 Fedora 系統(tǒng),使用 DNF 命令 去安裝 chrony。
$ sudo dnf install chrony
對(duì)于 Debian/Ubuntu 系統(tǒng),使用 APT-GET 命令 或者 APT 命令 去安裝 chrony。
$ sudo apt install chrony
對(duì)基于 Arch Linux 的系統(tǒng),使用 Pacman 命令 去安裝 chrony。
$ sudo pacman -S chrony
對(duì)于 RHEL/CentOS 系統(tǒng),使用 YUM 命令 去安裝 chrony。
$ sudo yum install chrony
對(duì)于 openSUSE Leap 系統(tǒng),使用 Zypper 命令 去安裝 chrony。
$ sudo zypper install chrony
在這篇文章中,我們將使用下列設(shè)置去測(cè)試。
NTP 服務(wù)器:主機(jī)名:CentOS7.2daygeek.com,IP:192.168.1.5,OS:CentOS 7
Chrony 客戶端:主機(jī)名:Ubuntu18.2daygeek.com,IP:192.168.1.3,OS:Ubuntu 18.04
服務(wù)器的安裝請(qǐng)?jiān)L問(wèn) 在 Linux 上安裝和配置 NTP 服務(wù)器 的 URL。
我已經(jīng)在 CentOS7.2daygeek.com 這臺(tái)主機(jī)上安裝和配置了NTP服務(wù)器,因此,將其附加到所有的客戶端機(jī)器上。此外,還包括其他所需信息。chrony.conf 文件的位置根據(jù)你的發(fā)行版不同而不同。
對(duì)基于 RHEL 的系統(tǒng),它位于 /etc/chrony.conf。
對(duì)基于 Debian 的系統(tǒng),它位于 /etc/chrony/chrony.conf。
# vi /etc/chrony/chrony.conf
server CentOS7.2daygeek.com prefer iburst
keyfile /etc/chrony/chrony.keys
driftfile /var/lib/chrony/chrony.drift
logdir /var/log/chrony
maxupdateskew 100.0
makestep 1 3
cmdallow 192.168.1.0/24
更新配置后需要重啟 Chrony 服務(wù)。
對(duì)于 sysvinit 系統(tǒng)?;?RHEL 的系統(tǒng)需要去運(yùn)行 chronyd 而不是 chrony。
# service chronyd restart
# chkconfig chronyd on
對(duì)于 systemctl 系統(tǒng)。 基于 RHEL 的系統(tǒng)需要去運(yùn)行 chronyd 而不是 chrony。
# systemctl restart chronyd
# systemctl enable chronyd
使用像 tacking、sources 和 sourcestats 這樣的子命令去檢查 chrony 的同步細(xì)節(jié)。
去檢查 chrony 的追蹤狀態(tài)。
# chronyc tracking
Reference ID : C0A80105 (CentOS7.2daygeek.com)
Stratum : 3
Ref time (UTC) : Thu Mar 28 05:57:27 2019
System time : 0.000002545 seconds slow of NTP time
Last offset : +0.001194361 seconds
RMS offset : 0.001194361 seconds
Frequency : 1.650 ppm fast
Residual freq : +184.101 ppm
Skew : 2.962 ppm
Root delay : 0.107966967 seconds
Root dispersion : 1.060455322 seconds
Update interval : 2.0 seconds
Leap status : Normal
運(yùn)行 sources 命令去顯示當(dāng)前時(shí)間源的信息。
# chronyc sources
210 Number of sources = 1
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* CentOS7.2daygeek.com 2 6 17 62 +36us[+1230us] +/- 1111ms
sourcestats 命令顯示有關(guān) chronyd 當(dāng)前正在檢查的每個(gè)源的漂移率和偏移估計(jì)過(guò)程的信息。
# chronyc sourcestats
210 Number of sources = 1
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
==============================================================================
CentOS7.2daygeek.com 5 3 71 -97.314 78.754 -469us 441us
當(dāng) chronyd 配置為 NTP 客戶端或?qū)Φ榷藭r(shí),你就能通過(guò) chronyc ntpdata 命令向每一個(gè) NTP 源發(fā)送/接收時(shí)間戳模式和交錯(cuò)模式的報(bào)告。
# chronyc ntpdata
Remote address : 192.168.1.5 (C0A80105)
Remote port : 123
Local address : 192.168.1.3 (C0A80103)
Leap status : Normal
Version : 4
Mode : Server
Stratum : 2
Poll interval : 6 (64 seconds)
Precision : -23 (0.000000119 seconds)
Root delay : 0.108994 seconds
Root dispersion : 0.076523 seconds
Reference ID : 85F3EEF4 ()
Reference time : Thu Mar 28 06:43:35 2019
Offset : +0.000160221 seconds
Peer delay : 0.000664478 seconds
Peer dispersion : 0.000000178 seconds
Response time : 0.000243252 seconds
Jitter asymmetry: +0.00
NTP tests : 111 111 1111
Interleaved : No
Authenticated : No
TX timestamping : Kernel
RX timestamping : Kernel
Total TX : 46
Total RX : 46
Total valid RX : 46
最后運(yùn)行 date 命令。
# date
Thu Mar 28 03:08:11 CDT 2019
為了立即跟進(jìn)系統(tǒng)時(shí)鐘,繞過(guò)任何正在進(jìn)行的緩步調(diào)整,請(qǐng)以 root 身份運(yùn)行以下命令(以手動(dòng)調(diào)整系統(tǒng)時(shí)鐘)。
# chronyc makestep
咨詢電話:
掃一掃咨詢微信客服