CentOS7搭建NTP服务器及客户端同步时间

一、服务器配置

1、查看服务器、客户端操作系统版本

[root@hadoop101 ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core) 

2、查看服务器是否安装ntp,系统默认安装ntpdate;

[root@hadoop101 ~]# rpm -qa | grep ntp
fontpackages-filesystem-1.44-8.el7.noarch
ntpdate-4.2.6p5-28.el7.centos.x86_64
python-ntplib-0.3.2-1.el7.noarch
ntp-4.2.6p5-28.el7.centos.x86_64

3、安装ntp ntpdate,其中ntpdate默认安装,可以只安装ntp;

yum install ntp ntpdate -y

4、查看是否已安装完成,与第2步对比

[root@hadoop101 mysql-libs]# rpm -qa | grep ntp
fontpackages-filesystem-1.44-8.el7.noarch
ntpdate-4.2.6p5-28.el7.centos.x86_64
ntp-4.2.6p5-28.el7.centos.x86_64
python-ntplib-0.3.2-1.el7.noarch

5、查看ntp服务器状态,两条命令效果一样

[root@hadoop101 ~]# systemctl status ntpd
● ntpd.service - Network Time Service
Loaded: loaded (/usr/lib/systemd/system/ntpd.service; disabled; vendor preset: disabled)
Active: inactive (dead)

[root@hadoop101 ~]# service ntpd status
Redirecting to /bin/systemctl status ntpd.service
● ntpd.service - Network Time Service
Loaded: loaded (/usr/lib/systemd/system/ntpd.service; disabled; vendor preset: disabled)
Active: inactive (dead)

6、修改配置文件,使该NTP服务器在不联网的情况下,使用本服务器的时间作为同步时间

vim /etc/ntp.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

在下面再添加两行

server 127.127.1.0 
fudge  127.127.1.0 stratum 0

配置后:

[root@hadoop101 ~]# vim /etc/ntp.conf
# For more information about this file, see the man pages
# ntp.conf(5), ntp_acc(5), ntp_auth(5), ntp_clock(5), ntp_misc(5), ntp_mon(5).

driftfile /var/lib/ntp/drift

# Permit time synchronization with our time source, but do not
# permit the source to query or modify the service on this system.
restrict default nomodify notrap nopeer noquery

# Permit all access over the loopback interface.  This could
# be tightened as well, but to do so would effect some of
# the administrative functions.
restrict 127.0.0.1
restrict ::1

# Hosts on local network are less restricted.
#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#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 127.127.1.0
fudge  127.127.1.0 stratum 0

#broadcast 192.168.1.255 autokey        # broadcast server
#broadcastclient                        # broadcast client
#broadcast 224.0.1.1 autokey            # multicast server
#multicastclient 224.0.1.1              # multicast client
#manycastserver 239.255.254.254         # manycast server
#manycastclient 239.255.254.254 autokey # manycast client

# Enable public key cryptography.
#crypto

includefile /etc/ntp/crypto/pw

# Key file containing the keys and key identifiers used when operating
# with symmetric key cryptography.
keys /etc/ntp/keys

# Specify the key identifiers which are trusted.
#trustedkey 4 8 42

# Specify the key identifier to use with the ntpdc utility.
#requestkey 8

# Specify the key identifier to use with the ntpq utility.
#controlkey 8

# Enable writing of statistics records.

7、启动ntp服务

systemctl start ntpd

service ntpd start

8、再次查看服务器状态是否配置成功

[root@hadoop101 mysql-libs]# systemctl status ntpd
● ntpd.service - Network Time Service
   Loaded: loaded (/usr/lib/systemd/system/ntpd.service; disabled; vendor preset: disabled)
   Active: active (running) since Fri 2019-08-16 18:33:01 CST; 13s ago
  Process: 8792 ExecStart=/usr/sbin/ntpd -u ntp:ntp $OPTIONS (code=exited, status=0/SUCCESS)
 Main PID: 8794 (ntpd)
    Tasks: 1
   CGroup: /system.slice/ntpd.service
           └─8794 /usr/sbin/ntpd -u ntp:ntp -g

Aug 16 18:33:01 hadoop101 ntpd[8794]: Listen normally on 3 ...
Aug 16 18:33:01 hadoop101 ntpd[8794]: Listen normally on 4 ...
Aug 16 18:33:01 hadoop101 ntpd[8794]: Listen normally on 5 ...
Aug 16 18:33:01 hadoop101 ntpd[8794]: Listen normally on 6 ...
Aug 16 18:33:01 hadoop101 ntpd[8794]: Listening on routing ...
Aug 16 18:33:01 hadoop101 ntpd[8794]: 0.0.0.0 c016 06 restart
Aug 16 18:33:01 hadoop101 ntpd[8794]: 0.0.0.0 c012 02 freq_...
Aug 16 18:33:01 hadoop101 ntpd[8794]: 0.0.0.0 c011 01 freq_...
Aug 16 18:33:01 hadoop101 systemd[1]: Started Network Time ...
Aug 16 18:33:02 hadoop101 ntpd[8794]: 0.0.0.0 c514 04 freq_...
Hint: Some lines were ellipsized, use -l to show in full.

或 

[root@hadoop101 ~]# service ntpd status

9、查看是否同步

[root@hadoop101 ~]# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
*LOCAL(0) .LOCL. 5 l 20 64 7 0.000 0.000 0.000

10、设置开机启动

[root@hadoop101 ~]# systemctl enable ntpd
Created symlink from /etc/systemd/system/multi-user.target.wants/ntpd.service to /usr/lib/systemd/system/ntpd.service.

11、设置防火墙,打开udp123端口(如果防火墙关了就不用设置了)

[root@hadoop101 ~]# firewall-cmd --permanent --add-port=123/udp
success
[root@hadoop101 ~]# firewall-cmd --reload
success

12、查看防火墙已打开端口

iptables -L -n

二、客户端配置(其他节点)

前5步与服务器一致

6、修改配置文件,将刚刚搭建好的NTP服务器作为客户端上游时间服务器

vim /etc/ntp.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
#配置上游时间服务器为本地的ntpd Server服务器
server hadoop101.com
fudge hadoop101.com stratum 0

#配置允许上游时间服务器主动修改本机的时间
restrict hadoop101.com nomodify notrap noquery

配置后:

[root@hadoop103 ~]# vi /etc/ntp.conf 
# For more information about this file, see the man pages
# ntp.conf(5), ntp_acc(5), ntp_auth(5), ntp_clock(5), ntp_misc(5), ntp_mon(5).

driftfile /var/lib/ntp/drift

# Permit time synchronization with our time source, but do not
# permit the source to query or modify the service on this system.
#restrict default nomodify notrap nopeer noquery

# Permit all access over the loopback interface.  This could
# be tightened as well, but to do so would effect some of
# the administrative functions.
#restrict 127.0.0.1
#restrict ::1

# Hosts on local network are less restricted.
#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

restrict hadoop101.com nomodify notrap noquery

# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#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 hadoop101.com
fudge hadoop101.com stratum 0

#broadcast 192.168.1.255 autokey        # broadcast server
#broadcastclient                        # broadcast client
#broadcast 224.0.1.1 autokey            # multicast server
#multicastclient 224.0.1.1              # multicast client
#manycastserver 239.255.254.254         # manycast server
#manycastclient 239.255.254.254 autokey # manycast client

# Enable public key cryptography.
#crypto

includefile /etc/ntp/crypto/pw

# Key file containing the keys and key identifiers used when operating
# with symmetric key cryptography.
keys /etc/ntp/keys

# Specify the key identifiers which are trusted.
#trustedkey 4 8 42

# Specify the key identifier to use with the ntpdc utility.
#requestkey 8

# Specify the key identifier to use with the ntpq utility.

7、与本地ntpd Server同步一下

[root@hadoop102 ~]# ntpdate -u hadoop101.com
15 Aug 11:33:35 ntpdate[8768]: adjust time server 192.168.1.101 offset 0.004621 sec

8、启动ntp服务

systemctl start ntpd

service ntpd start

9、设置开机启动

[root@hadoop102 ~]# systemctl enable ntpd
Created symlink from /etc/systemd/system/multi-user.target.wants/ntpd.service to /usr/lib/systemd/system/ntpd.service.

10、查看状态

[root@hadoop103 ~]# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 hadoop101.com   .LOCL.           1 u   13   64    1    8.148   -2.581   0.000
原文地址:https://www.cnblogs.com/uestc2007/p/14271760.html