集群时钟同步问题

image.png

时钟不同步导致的问题

image.png
如图,并发的三个下单的请求,几乎同时被处理,由于服务器时钟不一致,导致入库的下单时间差别很大,造成数据混乱。

集群时钟同步配置

有两种场景

1、分布式集群中各个节点都可以连接互联网
image.png
操作方式:

       #使⽤ ntpdate ⽹络时间同步命令
       ntpdate -u ntp.api.bz #从⼀个时间服务器同步时间
复制代码

windows有计划任务
Linux也有定时任务,crond,可以使⽤linux的定时任务,每隔10分钟执⾏⼀次ntpdate命令

2、分布式集群中某⼀个服务器节点可以访问互联⽹或者所有节点都不能够访问互联⽹

image.png

操作⽅式:

1)选取集群中的⼀个服务器节点A(172.17.0.17)作为时间服务器(整个集群时间从这台服务
器同步,如果这台服务器能够访问互联⽹,可以让这台服务器和⽹络时间保持同步,如果不
能就⼿动设置⼀个时间)

  • ⾸先设置好A的时间
  • 把A配置为时间服务器(修改/etc/ntp.conf⽂件)
1、如果有 restrict default ignore,注释掉它
2、添加如下⼏⾏内容
 restrict 172.17.0.0 mask 255.255.255.0 nomodify notrap # 放开局
域⽹同步功能,172.17.0.0是你的局域⽹⽹段
 server 127.127.1.0 # local clock
 fudge 127.127.1.0 stratum 10
3、重启⽣效并配置ntpd服务开机⾃启动
service ntpd restart
 chkconfig ntpd on
复制代码
  • 集群中其他节点就可以从A服务器同步时间了
ntpdate 172.17.0.17
复制代码

image.png

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享