时间同步
时间同步
(1)NTP(Network Time Protocol) 协议使网络中的各个计算机时间达到同步。
- 目前NTP协议属于 运维基础架构中必备的基本服务之一
- 时间同步:多主机协作工作时,各个主机的时间同步很重要,时间不一致会造成很多重要应用的故障,如:加密协议,日志,集群等
(2)时间同步的实现
- centos6:ntp(udp/123)
- centos7:ntp、chrony (udp/323) (udp/123) chrony兼容ntp
- ntp:http://www.ntp.org
- chrony官网:https://chrony.tuxfamily.org
chrony官方文档:https://chrony.tuxfamily.org/documentation.html
(3)chrony软件包
- 包:chrony
/etc/chrony.conf 配置文件
/usr/bin/chronyc client程序
/usr/lib/systemd/system/chronyd.service 服务程序
默认启动chronyd服务服务时监听端口udp - 127.0.0.1:323
只监听在本机端口,不能对外提供服务
(4)ntp软件包
/etc/ntp.conf 配置文件
/usr/lib/systemd/system/ntpd.service 服务程序
/usr/sbin/ntpd
(5)时间同步实现
- 构建一台时间同步服务器,与互联网时间同步
- 其余主机时间均与时间同步的服务器保持一致
/etc/chrony.conf 修改配置文件
server hostip iburst 与时间服务器实现时间同步
iburst可以让同步速度更快
一般禁用server 3.centos.pool.ntp.org iburst 几个国外的时间服务器
chronyc 客户端工具可以查看时间同步的情况: (可交互也可非交互)
~]# chronyc sources -v
^* * 表示时间已同步
^? 表示时间还未同步...
注意:
若时间差别太大,服务已经启动,可能服务也不会时间同步,因为时间跨度比较大,
因此构建ntp和chrony服务时,应该保持当前主机与同步的服务器主机的时间差距不是太大。
手动实现立即时间同步:~]# ntpdate hostip
5 Sep 20:28:15 ntpdate[12408]: adjust time server ... offset -0.000084 sec <---标准输出:表示时间同步成功--->
时间同步的另一种实现:计划任务结合ntpdate命令,每隔一段时间执行一次
做时间服务器对外提供服务时:需要修改配置文件:
#allow 192.168.0.0/16 允许某个地址段和实现时间同步
#local stratum 10 建议此项也开机,此项表示如果本机时间不能和互联网
实现时间同步,本机是否能对外提供时间服务
如果未打开,和远程主机不能时间同步,就不能对外提供服务。
stratum 10 时间同步10层
时间工具
(1)timedatectl
- 查看日期时间、时区及NTP状态:timedatectl
- 查看时区列表:timedatectl list-timezones
- 修改时区:timedatectl set-timezone Asia/Shanghai
- 修改日期时间:timedatectl set-time “2017-01-23 10:30:00”
- 开启NTP: timedatectl set-ntp true/flase
system-config-date:图形化配置chrony服务的工具