1 NTP定义
NTP 是用于同步网络中计算机时间的协议,全称为网络时间协议(Network Time Protocol)。时区和时间一致性对于服务器运行非常重要,有时会直接影响到任务执行的结果。例如,在更新数据库或者分析日志时,时间顺序对结果有很大影响。为避免在节点上运行业务时出现逻辑混乱和网络请求错误等问题,我们需要统一相关 ECS 实例的时区设置,所以需要安装一个 NTP 服务用于同步各个节点之间的时间。(尤其环境各类节点比较多的时候,更需要做时间同步)
2 安装(Centos)
2.1 安装chrony服务
yum install chrony -y
2.2 设置为国内时区
timedatectl set-timezone Asia/Shanghai
2.3 配置chrony -y文件
vi /etc/chrony.conf
# 中科院国家授时中心 NTP 服务器
server ntp.ntsc.ac.cn iburst
# 阿里云公共 NTP 服务器
server ntp.aliyun.com iburst# 举例
#allow 192.168.1.0/24 (主机集群的实际IP地址段)
2.4 重启chrony并开启时间同步
systemctl restart chronyd
systemctl enable chronyd //开启开机自启
timedatectl set-ntp yes //开启时间同步
2.5 验证时间同步,查看同步源以及字段解析
chronyc sources
systemctl status chronyd
systemctl status chronyd |grep Active
2.6 查看时钟同步源状态
chronyc sourcestats -v
timedatectl status
2.7 查看配置文件中的时间服务器
cat /etc/chrony.conf |grep server
2.8 手动进行同步操作
chronyc -a makestep
3 服务端
3.1 修改配置文件
vi /etc/chrony.conf
如果不同步外网ntp,需要将四个server直接注释掉
server ntp.ntsc.ac.cn iburst
allow 10.59.21.0/24
添加允许同步的ip段 0/24
注意:上图中的service,为ntp服务器。如果需要同步外网地址,建议使用国内的地址。
3.2 重启服务,查看同步源
systemctl restart chronyd
chronyc sources
4 客户端配置
4.1 修改配置文件
vim /etc/chrocy.conf
注释掉四行server 0 1 2 3
然后添加服务器ip地址
server 10.59.21.131 iburst
4.2 重启服务,查看同步源
systemctl restart chronyd
chronyc sources
5.可能的问题
防火墙和selinux设置
时区未同步