Linux基础学习-chrony时间同步服务

Chrony时间同步

NTP(Network Time Protocol,网络时间协议)是用来使网络中的各个计算机时间同步的一种协议.它的用于是把计算机的时钟同步到世界协调时UTC,其精度在局域网内可达0.1ms,在网络网上绝大多数的地方其精度可以达到1-50ms.

1.chrony服务部署

//查看一下由哪个包提供的
[root@ntp-server ~]# yum provides chronyd
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
chrony-3.1-2.el7.x86_64 : An NTP client/server
Repo        : dvd
Matched from:
Filename    : /usr/sbin/chronyd


//安装chrony服务
[root@ntp-server ~]# yum install chrony
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
dvd                                                                | 4.1 kB  00:00:00     
Resolving Dependencies
--> Running transaction check
---> Package chrony.x86_64 0:3.1-2.el7 will be installed
--> Processing Dependency: libseccomp.so.2()(64bit) for package: chrony-3.1-2.el7.x86_64
--> Running transaction check
---> Package libseccomp.x86_64 0:2.3.1-3.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==========================================================================================
 Package                Arch               Version                  Repository       Size
==========================================================================================
Installing:
 chrony                 x86_64             3.1-2.el7                dvd             237 k
Installing for dependencies:
 libseccomp             x86_64             2.3.1-3.el7              dvd              56 k

Transaction Summary
==========================================================================================
Install  1 Package (+1 Dependent package)

Total download size: 293 k
Installed size: 761 k
Is this ok [y/d/N]: y
Downloading packages:
------------------------------------------------------------------------------------------
Total                                                     1.6 MB/s | 293 kB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : libseccomp-2.3.1-3.el7.x86_64                                          1/2 
  Installing : chrony-3.1-2.el7.x86_64                                                2/2 
  Verifying  : chrony-3.1-2.el7.x86_64                                                1/2 
  Verifying  : libseccomp-2.3.1-3.el7.x86_64                                          2/2 

Installed:
  chrony.x86_64 0:3.1-2.el7                                                               

Dependency Installed:
  libseccomp.x86_64 0:2.3.1-3.el7                                                         

Complete!

//启动服务
[root@ntp-server ~]# systemctl start chrony
chrony-dnssrv@       chronyd.service      chrony-wait.service  
[root@ntp-server ~]# systemctl start chronyd

chrony服务相关命令

参数 解释
list-timezones 列出可用时区信息
set-timezone 设置时区
set-ntp 启用NTP
status 查看状态
[root@ntp-server ~]# timedatectl 
      Local time: Tue 2018-08-21 14:02:35 CST
  Universal time: Tue 2018-08-21 06:02:35 UTC
        RTC time: Tue 2018-08-21 06:02:33
       Time zone: Asia/Shanghai (CST, +0800)
     NTP enabled: n/a
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a
[root@ntp-server ~]# timedatectl 
list-timezones  set-ntp         set-timezone    
set-local-rtc   set-time        status 
[root@ntp-server ~]# timedatectl list-timezones | grep -i shanghai
Asia/Shanghai

//关闭NTP
[root@ntp-server ~]# timedatectl set-ntp false 
[root@ntp-server ~]# timedatectl 
      Local time: Tue 2018-08-21 14:15:36 CST
  Universal time: Tue 2018-08-21 06:15:36 UTC
        RTC time: Tue 2018-08-21 06:15:36
       Time zone: Asia/Shanghai (CST, +0800)
     NTP enabled: no
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a

//启用NTP
[root@ntp-server ~]# timedatectl set-ntp true 
[root@ntp-server ~]# timedatectl 
      Local time: Tue 2018-08-21 14:16:02 CST
  Universal time: Tue 2018-08-21 06:16:02 UTC
        RTC time: Tue 2018-08-21 06:16:02
       Time zone: Asia/Shanghai (CST, +0800)
     NTP enabled: yes
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a

//查看一下ntpdate由哪个包提供的
[root@ntp-server ~]# yum provides ntpdate
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
ntpdate-4.2.6p5-25.el7_3.2.x86_64 : Utility to set the date and time via NTP
Repo        : dvd

//如果没有请安装ntpdate
[root@ntp-server ~]# yum install ntpdate.x86_64 
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
Resolving Dependencies
--> Running transaction check
---> Package ntpdate.x86_64 0:4.2.6p5-25.el7_3.2 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==========================================================================================
 Package            Arch              Version                        Repository      Size
==========================================================================================
Installing:
 ntpdate            x86_64            4.2.6p5-25.el7_3.2             dvd             86 k

Transaction Summary
==========================================================================================
Install  1 Package

Total download size: 86 k
Installed size: 121 k
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : ntpdate-4.2.6p5-25.el7_3.2.x86_64                                      1/1 
  Verifying  : ntpdate-4.2.6p5-25.el7_3.2.x86_64                                      1/1 

Installed:
  ntpdate.x86_64 0:4.2.6p5-25.el7_3.2                                                     

Complete!

2.配置时间同步服务器

[root@ntp-server ~]# vim /etc/chrony.conf
server ntp1.aliyun.com iburst
server ntp2.aliyun.com iburst
server ntp3.aliyun.com iburst
server ntp4.aliyun.com iburst
server ntp5.aliyun.com iburst
server ntp6.aliyun.com iburst
server ntp7.aliyun.com iburst

allow 172.16.10.0/24

//验证服务端是否能同步时间
[root@ntp-server ~]# chronyc sources -v
210 Number of sources = 1

  .-- Source mode  '^' = server, '=' = peer, '#' = local clock.
 / .- Source state '*' = current synced, '+' = combined , '-' = not combined,
| /   '?' = unreachable, 'x' = time may be in error, '~' = time too variable.
||                                                 .- xxxx [ yyyy ] +/- zzzz
||      Reachability register (octal) -.           |  xxxx = adjusted offset,
||      Log2(Polling interval) --.      |          |  yyyy = measured offset,
||                                     |          |  zzzz = estimated error.
||                                 |    |           
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^* 120.25.115.20                 2   6    17    22   -117us[ -948us] +/-   24ms

//看一下服务器时间
[root@ntp-server ~]# date
Tue Aug 21 15:31:29 CST 2018

//看一下客户端时间 时间不对需要同步
[root@ntp-client ~]# date
Fri Aug 20 14:10:28 CST 2010

//ntp服务器地址
ens35: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.16.10.20  netmask 255.255.255.0  broadcast 172.16.10.255
        inet6 fe80::da6c:394e:1ef7:c236  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:6e:66:65  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 480 (480.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 21  bytes 1614 (1.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

//客户端同步,时间已经同步正确
[root@ntp-client ~]# ntpdate 172.16.10.20
21 Aug 15:35:10 ntpdate[2421]: step time server 172.16.10.20 offset 252552056.617240 sec
You have new mail in /var/spool/mail/root
[root@ntp-client ~]# date
Tue Aug 21 15:35:15 CST 2018

//第一种方式设置定时任务
[root@ntp-client ~]# which ntpdate
/usr/sbin/ntpdate
[root@ntp-client ~]# crontab -e
*/2 * * * * /usr/sbin/ntpdate 172.16.10.20 &>/dev/null


//第二种方式客户端编辑配置文件服务器指向172.168.10.20
[root@ntp-client ~]# vim /etc/chrony.conf 
server 172.16.10.20 iburst

//启动服务查看服务运行状态
[root@ntp-client ~]# systemctl restart chronyd
[root@ntp-client ~]# systemctl status chronyd
● chronyd.service - NTP client/server
   Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2018-08-21 15:52:11 CST; 6s ago
     Docs: man:chronyd(8)
           man:chrony.conf(5)
  Process: 3012 ExecStartPost=/usr/libexec/chrony-helper update-daemon (code=exited, status=0/SUCCESS)
  Process: 3009 ExecStart=/usr/sbin/chronyd $OPTIONS (code=exited, status=0/SUCCESS)
 Main PID: 3011 (chronyd)
    Tasks: 1
   CGroup: /system.slice/chronyd.service
           └─3011 /usr/sbin/chronyd

Aug 21 15:52:10 ntp-client systemd[1]: Starting NTP client/server...
Aug 21 15:52:11 ntp-client chronyd[3011]: chronyd version 3.2 starting (+CMDMON +NTP ...G)
Aug 21 15:52:11 ntp-client chronyd[3011]: Frequency -37.840 +/- 1000000.000 ppm read ...ft
Aug 21 15:52:11 ntp-client systemd[1]: Started NTP client/server.
Aug 21 15:52:15 ntp-client chronyd[3011]: Selected source 172.16.10.20
Hint: Some lines were ellipsized, use -l to show in full.

//差不多一分钟同步了
[root@ntp-client ~]# date
Tue Aug 10 08:32:32 CST 2010
[root@ntp-client ~]# date
Tue Aug 10 08:32:33 CST 2010
[root@ntp-client ~]# date
Tue Aug 21 16:04:24 CST 2018
[root@ntp-client ~]# date
Tue Aug 21 16:04:25 CST 2018
原文地址:https://www.cnblogs.com/qdlinux/p/9636573.html