# timedatectl # timedatectl list-timezones (列出所有的時區) # timedatectl set-timezone Asia/Shanghai (設置時區為 Asia/Shanghai)

2.時間時區概念理解:
GMT、UTC、CST、DST
UTC:
整個地球分為二十四時區,每個時區都有自己的本地時間,在國際無線電通信場合,為了統一起見,使用一個統一的時間,稱為通用協調時(UTC:Universal Time Coordinated)。
GMT:
格林威治標准時間 (Greenwich Mean Time)指位於英國倫敦郊區的皇家格林尼治天文台的標准時間,因為本初子午線被定義在通過那里的經線(UTC與GMT時間基本相同)。
CST:
中國標准時間 (China Standard Time)
GMT + 8 = UTC + 8 = CST
DST:
夏令時(Daylight Saving Time) 指在夏天太陽升起的比較早時,將時間撥快一小時,以提早日光的使用(中國不使用)。
2.使用 NTP 公共時間服務器池(NTP Public Pool Time Servers)http://www.pool.ntp.org 同步你的服務器時間。
查看是否安裝:
# rpm -q ntp ntp-4.2.6p5-25.el7.centos.2.x86_64
如已安裝請略過此步,否則請執行以下命令安裝:
# yum install ntpdate ntp -y

(一)確認ntp的安裝
1)確認是否已安裝ntp
【命令】rpm –qa | grep ntp
若只有ntpdate而未見ntp,則需刪除原有ntpdate。如:
ntpdate-4.2.6p5-22.el7_0.x86_64
fontpackages-filesystem-1.44-8.el7.noarch
python-ntplib-0.3.2-1.el7.noarch
2)刪除已安裝ntp
【命令】yum –y remove ntpdate-4.2.6p5-22.el7.x86_64
3)重新安裝ntp
【命令】yum –y install ntp
配置:vi
vim /etc/ntp.conf

“iburst” 選項作用是如果在一個標准的輪詢間隔內沒有應答,客戶端會發送一定數量的包(八個包而不是通常的一個)給 NTP 服務器。如果在短時間內呼叫 NTP 服務器幾次,沒有出現可辨識的應答,那么本地時間將不會變化。

3.設置系統開機自啟動:
# systemctl enable ntpd # systemctl enable ntpdate # systemctl is-enabled ntpd
在ntpd服務啟動時,先使用ntpdate命令同步時間:
# ntpdate -u 1.cn.pool.ntp.org
原因之一:當服務端與客戶端之間的時間誤差過大時,此時修改時間可能對系統或應用帶來不可預知問題,NTP會停止時間同步。若檢查NTP啟動后時間未同步時,應考慮可能是時間誤差過大所致,此時需要先手動進行時間同步。
啟動NTP服務器:
# systemctl start ntpdate # systemctl start ntpd
4.加入防火牆:
# firewall-cmd --permanent --add-service=ntp # firewall-cmd --reload
5.查看ntp連接狀態如果沒有問題,將正確時間寫入硬件:
# ss -tlunp | grep ntp # ntpq -p # hwclock -w
5.1.系統時間與硬件時間
硬件時間:
RTC(Real-Time Clock)或CMOS時間,一般在主板上靠電池供電,服務器斷電后也會繼續運行。僅保存日期時間數值,無法保存時區和夏令時設置。
系統時間:
一般在服務器啟動時復制RTC時間,之后獨立運行,保存了時間、時區和夏令時設置。
6.客戶端:
以服務進程方式實時同步(需安裝NTP):
# vim /etc/ntp.conf server 172.16.128.171
重要:修改任意節點服務器的NTP配置文件都需要重起ntpd服務:
# systemctl restart ntpd
以crontab任務計划同步時間(需安裝ntpdate,每天24點更新同步時間):
# crontab -e 0 0 * * * /usr/sbin/sntp -P no -r 172.16.128.171;hwclock -w
已部署完畢。這樣集群會自動定期進行服務的同步,如此以來集群的時間就保持一致了。
