集群时钟同步

情景一:集群中所有的服务器都可以连接互联网

可以是有ntp(网络时间协议)与时间服务器(如:国家授时中心)同步

在linux上执行命令:ntpdate -u ntp.api.bz  (-u参数是 跳过防护墙与时间服务器通信,同步时间)

因为我用的是云服务器,默认是做了时间同步的,可以使用rpm命令查看(安装包查看命令)

 

 安装完成之后,我们可以使用命令测试下

 可以手动每天每台服务器手动执行,当然也可以写成shell脚本,使用crond设置成服务器定时任务

情景二,集群中部分服务器可以连接互联网  &  情景三,集群中的所有服务器都不能连接互联网

这两种情况都可以通过配置内部的时间服务器来实现时间同步

1、首先选中一台服务器作为时间服务器(如果可以联网,可以对此服务器做情景一的操作,使其与公共时间服务器保持时间同步)

2、将选中的服务器配置成时间服务器  --->>  修改/etc/ntp.conf

  1)如果有 restrict default ignore,注释掉它(这个对ntp协议数据包的设置,默认忽略)

  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)重启服务,设置开机自启动

    service ntpd restart
    chkconfig ntpd on
3、其他同集群同网段的应用向该服务器同步时间
    ntpdate 172.17.0.17

-----------------------------   完成!!!!

原文地址:https://www.cnblogs.com/tianhaichao/p/12785603.html