NTP網絡授時服務器部署及網絡時鍾同步設置說明
NTP網絡授時服務器部署及網絡時鍾同步設置說明
本文由安徽京准科技提供@請勿轉載。
一、前言
1、NTP簡介
NTP是網絡時間協議(Network Time Protocol),它是用來同步網絡中各個計算機的時間的協議。它的用途是把計算機的時鍾同步到世界協調時UTC,其精度在局域網內可達0.1ms,在互聯網上絕大多數的地方其精度可以達到1-50ms。
2、為什么需要NTP服務器?
時間保持同步對於服務器集群來說尤為重要,比如說電商的秒殺,以及火車票的搶購等等,如果服務器時間不同步,那么不同的用戶可能不是在同一時間點進行搶購的,就會出現不公平的問題。 對於集群化部署的應用,例如數據庫集群,只有時間同步了,同一時間到達不同數據庫節點的數據才會有相同的時間戳。集群時間的一致性影響了分布式系統的一致性。
二、准備工作
1、服務器規划
機器名 |
IP |
節點應用 |
---|---|---|
ntp01 |
192.168.88.88 |
NTP時間服務器 |
2、軟件環境說明
項 |
說明 |
---|---|
Linux Server |
CentOS 7 |
NTP |
4.2.6 |
三、部署過程
1、安裝NTP
yum install -y ntp
2、修改NTP配置
#修改配置文件
vi /etc/ntp.conf #在配置中增加以下配置: #允許上層時間服務器主動修改本機時間 restrict 0.centos.pool.ntp.org nomodify notrap noquery restrict 1.centos.pool.ntp.org nomodify notrap noquery restrict 2.centos.pool.ntp.org nomodify notrap noquery restrict 3.centos.pool.ntp.org nomodify notrap noquery #外部時間服務器不可用時,以本地時間作為時間服務 server 127.0.0.1 fudge 127.0.0.1 stratum 10
3、與公共NTP服務器預先同步
為了保證本地NTP服務器能正常與公共NTP服務器進行同步,先跟公共NTP服務器同步一次。 再啟動NTP服務
[root@ntp01 ~]# ntpdate cn.pool.ntp.org 27 Feb 19:27:02 ntpdate[2632]: adjust time server 85.199.214.100 offset -0.007263 sec
4、啟動NTP服務&開機啟動設置
#啟動NTP服務 systemctl start ntpd #將NTP服務設置為開機啟動 systemctl enable ntpd
5、查看NTP服務信息
[root@ntp01 ~]# ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== +118.122.35.10 223.255.185.2 2 u 30 64 3 48.062 -17.829 2 u 29 64 3 34.870 2.672 2.617 -ntp1.ams1.nl.le 130.133.1.10 2 u 27 64 3 238.254 21.513 1.854 +ntp5.flashdance 194.58.202.148 2 u 26 64 3 312.940 4.263 1.237
NTP服務信息說明:
列 |
說明 |
---|---|
remote |
當前遠程NTP服務器,+表示可用,-表示不可用,*表示推薦 |
refid |
用於和本地時鍾同步的遠程服務器的 IP 地址 |
st |
Stratum(階層),表示經過n=2次NTP同步到當前服務器 |
t |
類型,u表示單播(unicast)。其它值包括本地(local)、多播(multicast)、廣播(broadcast)。 |
when |
自從上次和服務器交互后經過的時間(以秒數計)。 |
poll |
和服務器的輪詢間隔,以秒數計。 |
reach |
表示和服務器交互是否有任何錯誤的八進制數。值 337 表示 * *(即十進制的255)。 |
delay |
服務器和遠程服務器來回的時間。 |
offset |
我們服務器和遠程服務器的時間差異,以毫秒數計。 |
jitter |
兩次取樣之間平均時差,以毫秒數計。 |
6、防火牆配置
#開放NTP端口
firewall-cmd --add-port=123/udp --permanent #重載防火牆規則 firewall-cmd --reload
四、客戶端同步設置
1、Linux客戶端
Linux主機需要 ntpdate 軟件包來和NTP服務器同步時間 這里ken.io 以CentOS客戶端為例說明,由於CentOS7已經內置了ntpdate,所以無需安裝
1.1、方式1:單次同步
ntpdate 192.168.88.88
1.2、方式2:安裝ntp服務進行自動同步(推薦)
主要思路就是講客戶端作為NTP服務的一個層級自動從已經配置好的本地NTP服務器同步時間
相當於通過NTP服務以以下順序傳播時間: 公共NTP服務器->本地NTP服務器->客戶端(NTP服務)
- 安裝NTP
yum install -y ntp
- 修改配置
#修改配置文件
vi /etc/ntp.conf #修改server節點 server 192.168.88.88 #在配置中增加以下配置: #允許上層時間服務器主動修改本機時間 restrict 192.168.88.88 nomodify notrap noquery #外部時間服務器不可用時,以本地時間作為時間服務 server 127.0.0.1 fudge 127.0.0.1 stratum 10
- 啟動NTP服務&開機啟動設置
#啟動NTP服務 systemctl start ntpd #將NTP服務設置為開機啟動 systemctl enable ntpd
2、Windows客戶端
控制面板->日期和時間->設置日期和時間->Internet時間->更改設置
輸入對應的NTP服務器IP,然后確定即可,如下圖:
