chrony简介

Chrony是一个开源的自由软件,它能保持系统时钟与时钟服务器(NTP)同步,让时间保持精确。

  它由两个程序组成:chronyd和chronyc。

  chronyd是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步。它确定计算机增减时间的比率,并对此进行补偿。

   chrony是CentOS7.x上自带的时间同步软件

chrony的操作

# yum install -y chrony     -->安装服务
# systemctl start chronyd.service -->启动服务
# systemctl enable chronyd.service -->设置开机自启动,默认是enable的

chrony配置文件

chrony服务使用的配置文件为/etc/chrony.conf

其配置内容格式和ntpd服务基本相似

[root@localhost ~]# cat /etc/chrony.conf
# 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      #注释这4行server
server 192.168.1.220 iburst          #表示与本机同步时间

local stratum 10            #该行注释取消掉不然NTP synchronized: 为no 取消掉后变为 NTP synchronized:yes    

allow 192.168.1.0/24    #允许哪些服务器或客户端到这台时间服务器来同步时间。必须配置

# Record the rate at which the system clock gains/losses time.
driftfile /var/lib/chrony/drift

# Allow the system clock to be stepped in the first three updates
# if its offset is larger than 1 second.
makestep 1.0 3

# Enable kernel synchronization of the real-time clock (RTC).
rtcsync

# Enable hardware timestamping on all interfaces that support it.
#hwtimestamp *

# Increase the minimum number of selectable sources required to adjust
# the system clock.
#minsources 2

# Allow NTP client access from local network.
#allow 192.168.0.0/16

# Serve time even if not synchronized to a time source.
#local stratum 10

# Specify file containing keys for NTP authentication.
#keyfile /etc/chrony.keys

# Specify directory for log files.
logdir /var/log/chrony

# Select which information is logged.
#log measurements statistics tracking

[root@localhost ~]# systemctl restart chronyd.service

[root@localhost ~]# netstat -antulp|grep chronyd
udp 0 0 127.0.0.1:323 0.0.0.0:* 27405/chronyd
udp 0 0 0.0.0.0:123 0.0.0.0:* 27405/chronyd
udp6 0 0 ::1:323 :::* 27405/chronyd

配置参数说明

参数          参数说明
server 该参数可以多次用于添加时钟服务器,必须以"server "格式使用。一般而言,你想添加多少服务器,就可以添加多少服务器
stratumweight stratumweight指令设置当chronyd从可用源中选择同步源时,每个层应该添加多少距离到同步距离。默认情况下,CentOS中设置为0,让chronyd在选择源时忽略源的层级
driftfile chronyd程序的主要行为之一,就是根据实际时间计算出计算机增减时间的比率,将它记录到一个文件中是最合理的,它会在重启后为系统时钟作出补偿,甚至可能的话,会从时钟服务器获得较好的估值
rtcsync rtcsync指令将启用一个内核模式,在该模式中,系统时间每11分钟会拷贝到实时时钟(RTC)
allow/deny 这里你可以指定一台主机、子网,或者网络以允许或拒绝NTP连接到扮演时钟服务器的机器
cmdallow/cmddeny 跟上面相类似,只是你可以指定哪个IP地址或哪台主机可以通过chronyd使用控制命令
bindcmdaddress 该指令允许你限制chronyd监听哪个网络接口的命令包(由chronyc执行)。该指令通过cmddeny机制提供了一个除上述限制以外可用的额外的访问控制等级
makestep 通常,chronyd将根据需求通过减慢或加速时钟,使得系统逐步纠正所有时间偏差。在某些特定情况下,系统时钟可能会漂移过快,导致该调整过程消耗很长的时间来纠正系统时钟。该指令强制chronyd在调整期大于某个阀值时步进调整系统时钟,但只有在因为chronyd启动时间超过指定限制(可使用负值来禁用限制),没有更多时钟更新时才生效

检查ntp源服务器状态1.1.5 查看同步状态

[root@localhost ~]# chronyc sourcestats
210 Number of sources = 4
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
==============================================================================
162.159.200.1 0 0 0 +0.000 2000.000 +0ns 4000ms
ntp8.flashdance.cx 0 0 0 +0.000 2000.000 +0ns 4000ms
120.25.115.20 6 4 25m -23.121 50.893 -1565us 7650us
electabuzz.felixc.at 0 0 0 +0.000 2000.000 +0ns 4000ms

查看ntp详细的同步状态

[root@localhost ~]# chronyc sources -v
210 Number of sources = 4

.-- 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
===============================================================================
^? 162.159.200.1 0 10 0 - +0ns[ +0ns] +/- 0ns
^? ntp8.flashdance.cx 0 10 0 - +0ns[ +0ns] +/- 0ns
^* 120.25.115.20 2 8 377 118 +14ms[+5878us] +/- 32ms
^? electabuzz.felixc.at 0 10 0 - +0ns[ +0ns] +/- 0ns

chronyc命令参数说明:

参数 参数说明
accheck 检查NTP访问是否对特定主机可用
activity 该命令会显示有多少NTP源在线/离线
add server 手动添加一台新的NTP服务器。
clients  在客户端报告已访问到服务器
delete    手动移除NTP服务器或对等服务器
settime   手动设置守护进程时间
tracking  显示系统时间信息

查看日期时间、时区及NTP状态:# timedatectl1.1.6 其他时间设置相关指令

查看日期时间、时区及NTP状态:# timedatectl
查看时区列表:# timedatectl list-timezones
修改时区# timedatectl set-timezone Asia/Shanghai
修改日期时间:# timedatectl set-time "2015-01-21 11:50:00"(可以只修改其中一个)
开启NTP:# timedatectl set-ntp true/flase

1.1.7 chrony的优势

   更快的同步只需要数分钟而非数小时时间,从而最大程度减少了时间和频率误差,这对于并非全天 24 小时运行的台式计算机或系统而言非常有用。

  能够更好地响应时钟频率的快速变化,这对于具备不稳定时钟的虚拟机或导致时钟频率发生变化的节能技术而言非常有用。

  在初始同步后,它不会停止时钟,以防对需要系统时间保持单调的应用程序造成影响。

  在应对临时非对称延迟时(例如,在大规模下载造成链接饱和时)提供了更好的稳定性。

   无需对服务器进行定期轮询,因此具备间歇性网络连接的系统仍然可以快速同步时钟。

chrony与ntp都是时间同步软件

  两个软件不能够同时开启,会出现时间冲突。

显示系统当前日期和时间

[root@localhost ~]# timedatectl
Local time: 三 2019-11-13 19:01:21 CST
Universal time: 三 2019-11-13 11:01:21 UTC
RTC time: 三 2019-11-13 11:01:21
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: n/a

注意NTP synchronized值,只有时间服务器自己同步完成时间后,才能为其他服务器提供时间同步。

 

chrony软件的更多相关文章

  1. chrony软件使用说明

    1.1.1 chrony简介 Chrony是一个开源的自由软件,它能保持系统时钟与时钟服务器(NTP)同步,让时间保持精确. 它由两个程序组成:chronyd和chronyc. chronyd是一个后 ...

  2. 网络时间服务和chrony

    ⽹络时间服务和chrony 实验练习: 准备实验环境: 可用的centos6.7系统. centos6 :192.168.37.6 centos7 :192.168.37.7 关闭selinux 关闭 ...

  3. chrony服务配置

    chrony软件使用说明 chrony简介 chrony是一个开源的自由软件,它能保持系统时钟与时间服务器(ntp)同步,让时间保持精确. 它由两个程序组成:chrongd和chronyc. chro ...

  4. CentOS7搭建时间服务器-chrony

      系统:centos7防火墙:关闭防火墙和selinux软件:chrony centos6我们一直用的ntp时间服务器,虽然到CentOS7上也可以装ntp.但是各种问题.所以建议centos7使用 ...

  5. Chrony时间同步服务

    概:  网络时间协议(Network Time Protocol,NTP)是用于网络时间同步的协议.提供NTP时间同步服务的软件有很多,这里采用Chrony软件来实现时间同步 chrony 的优势:  ...

  6. nginx+keeplived+tomcat

    1,宣告操作系统版本,nginx,java,tomcat,keeplived版本 操作系统 用途 VIP IP地址 软件版本 CentOS 7.3 mini NTP服务器 无 192.168.197. ...

  7. Linux NTP时间服务器

    NTP 时间服务器 ntp也是一种协议 ntp软件(支持ntp协议)  CentOS6自带 CentOS7需要安装 chrony软件(支持ntp协议)   CentOS7自带 安装ntp CentOS ...

  8. Linux 之 利用Google Authenticator实现用户双因素认证

    一.介绍:什么是双因素认证 双因素身份认证就是通过你所知道再加上你所能拥有的这二个要素组合到一起才能发挥作用的身份认证系统.双因素认证是一种采用时间同步技术的系统,采用了基于时间.事件和密钥三变量而产 ...

  9. Linux访问权限控制及时间同步实践

    1.编写脚本/root/bin/checkip.sh,每5分钟检查一次,如果发现通过ssh登录失败 次数超过10次,自动将此远程IP放入Tcp Wrapper的黑名单中予以禁止防问 方式一:脚本+定时 ...

随机推荐

  1. 洛谷 P4710 「物理」平抛运动

    洛谷 P4710 「物理」平抛运动 洛谷传送门 题目描述 小 F 回到班上,面对自己 28 / 110 的物理,感觉非常凉凉.他准备从最基础的力学学起. 如图,一个可以视为质点的小球在点 A(x_0, ...

  2. CF-1238 C.Standard Free2play

    题目大意: 有一个墙,高度为h,在每一个高度处都有一个踏板,有的踏板是隐藏着的,有的是伸出来的,小人站在h高度处(题目保证h高度处的踏板一定是伸出来的),这个小人每站到一个踏板上,就可以点一个开关,将 ...

  3. 实验1c语言的开发环境使用和数据类型,运算符,表达式

    #include<stdio.h> int main() { printf("); ; } /*求两个整数的乘积*/ #include<stdio.h> int pr ...

  4. LeetCode 232:用栈实现队列 Implement Queue using Stacks

    题目: 使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部. pop() -- 从队列首部移除元素. peek() -- 返回队列首部的元素. empty() -- 返回队列是 ...

  5. Image-transpose

    import Image im=Image.open('test.jpg') #out = im.resize((128, 128),Image.BILINEAR) #改变大小 #out = im.r ...

  6. python 中in 的 用法

    1.   作用为 成员运算符   在字符串内操作,如果字符串包含相关字符 则返回True,如果不包含则返回False   当然处理不单单是只有单个字符,多个连续的字符也是可以处理的 # 单个字符 a= ...

  7. 用 PHP 函数变量数组改变代码结构

    项目越做越大,代码越来越乱,维护困难.原因很多吧.起初为了实现功能,并没有注重代码的结构,外包公司嘛.虽然公司的项目负责人一直考虑复用.封装,但是我觉得基本上没有达到想要的效果.因为整个代码中没有用到 ...

  8. mysql百万级数据分页查询缓慢优化-实战

    作为后端攻城狮,在接到分页list需求的时候,内心是这样的 画面是这样的 代码大概是这样的 select count(id) from …       查出总数 select * from …. li ...

  9. Navicat Premium 12.0.22 安装与破解

    一.安装 Navicat Premium 12.0.22的下载链接:https://pan.baidu.com/s/1swRY_fwIZfufdxDZj3hDyw 密码:09k8 安装步骤就是一路向下 ...

  10. 【机器学习】PCA

    目录 PCA 1. PCA最大可分性的思想 2. 基变换(线性变换) 3. 方差 4. 协方差 5. 协方差矩阵 6. 协方差矩阵对角化 7. PCA算法流程 8. PCA算法总结 PCA PCA 就 ...