作用:
在linux中,有些服務必須依靠準確的時間,才能夠在運行的時候不出差錯,例如DNS,LVS,HTTPS等,都需要後臺的服務器之間保持時間的同步。而Centos系統中自帶的有安裝對應的同步時間的服務。centos7中默認安裝的是chrony,而Centos6相比在時間服務有所不同,使用了ntp服務來同步時間,而在Centos7上則使用的是chrony服務來同步時間,相較與ntp服務。chrony服務有如下幾點優勢:
1,更快的同步只需要數分鐘而非數小時時間,從而最大程度減少了時間和頻率誤差,對於並非全天 24 小時運行
的虛擬計算機而言非常有用
2,能夠更好地響應時鐘頻率的快速變化,對於具備不穩定時鐘的虛擬機或導致時鐘頻率發生變化的節能技術而言
非常有用
3,在初始同步後,它不會停止時鐘,以防對需要系統時間保持單調的應用程序造成影響
4,在應對臨時非對稱延遲時(例如,在大規模下載造成鏈接飽和時)提供了更好的穩定性
5,無需對服務器進行定期輪詢,因此具備間歇性網絡連接的系統仍然可以快速同步時鐘
監聽端口:
323/udp,123/udp
配置文件:
/etc/chrony.conf
安裝與使用:
1,安裝chrony
yum -y install chrony #系統默認已經安裝,如未安裝,請執行以下命令安裝
2,啓動並加入開機自啓動
systemctl enable chronyd.service
systemctl restart chronyd.service
systemctl status chronyd.service
3,關閉SElinux與防火牆
systemctl stop firewalld
systemctl disable firewalld
setenforce 0 #臨時關閉SElinux
4,配置chrony
cat /etc/chrony.conf
#下方是默認的四個同步時間的服務器,不過該服務器同步時間略慢,可以按照格式修改成本地的時間服務器
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
......
# 指定一臺主機、子網,或者網絡以允許或拒絕NTP連接到扮演時鐘服務器的機器
#allow 192.168.0.0/16
#deny 192.168/16
......
# 指定日誌文件的目錄
logdir /var/log/chrony
......
5,設置時區
timedatectl #查看系統的當前的時區
Local time: 日 2019-05-26 10:42:00 CST
Universal time: 日 2019-05-26 02:42:00 UTC
RTC time: 日 2019-05-26 02:42:00
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: yes
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
如果當前時區不是亞洲/上海時區,可以用如下命令設置
timedatectl set-timezone Asia/Shanghai
6,服務器集羣之間的系統時間同步
服務器端:
註釋掉默認的時間服務器
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
並添加以下內容:(內網的時間同步器或互聯網中的時間同步器)
server 172.22.0.1 iburst
配置完成後重啓服務,這樣我們需求的一臺內網時間服務器已經配置完畢。
客戶端:
同樣註釋掉其他server,並在客戶端(192.168.1.10)添加剛配置的時間服務器的IP地址:
server 192.168.1.9 iburst
#將這一行取消註釋,當無法從時間服務器中獲得正確的時間時,可以讓本服務器充當網絡內的時間服務器
# Allow NTP client access from local network.
allow 192.168.0.0/24
到此已經完成系統時間的同步。如有多臺機器,操作亦是如此
7,常用命令
查看時間同步源:
chronyc sources -v
查看時間同步源狀態:
chronyc sourcestats -v
設置硬件時間
硬件時間默認爲UTC:
timedatectl set-local-rtc 1
啓用NTP時間同步:
timedatectl set-ntp yes
校準時間服務器:
chronyc tracking