适用场景
- 产品:ZCF
- 组件:ZCE-X
- ZCE-X 版本:5.2.110
- 对接云平台版本:4.x
- 部署形态:单管理节点
- 触发条件:云平台时间与浏览器侧显示的参考时间不一致,且当前没有外部时间源。
问题现象
- 云平台显示时间与浏览器侧时间不一致。
- 集群没有外部标准时间源可直接校正。
- 需要通过手工校准服务端时间,再同步到其他节点。
判断方法
- 检查当前时间服务器的 Chrony 配置。
- 检查集群时间同步状态。
- 确认环境当前没有可用的外部时间源。
原因说明
环境无法使用外部标准时间源自动校正时间时,需要先手动校准时间服务器,再由其他节点通过 chronyd 与该服务器重新同步。
解决方案
1. 执行前准备
- 先确认当前时间服务器节点。
- 先检查集群内时间同步情况。
- 变更前备份
chrony配置,并记录当前原始时间。
2. 处理步骤
- 查看当前时间服务器:
cat /etc/chrony.conf
- 预期结果:确认当前 Chrony 时间服务器配置。
- 检查当前时间同步状态:
chronyc -n sources -v
- 预期结果:了解各节点当前同步情况。
- 在时间服务器节点停止时间服务:
systemctl stop chronyd
- 预期结果:允许手动校时。
- 手动设置时间服务器节点时间:
date -s "<YYYY-MM-DD HH:MM:SS>"
- 将
<YYYY-MM-DD HH:MM:SS>替换为经确认的正确时间。 - 确认时间服务器的 Chrony 配置未将自身作为上游时间源。
- 预期结果:时间服务器节点时间被人工校正。
- 重启并启用时间服务器节点的
chronyd:
systemctl restart chronyd
systemctl enable --now chronyd
- 预期结果:时间服务器节点开始以正确时间提供同步。
- 待时间服务器节点时间正常后,在其他服务器执行:
systemctl restart chronyd
systemctl enable --now chronyd
- 预期结果:其他节点从正确的时间服务器节点重新同步时间。
- 再次检查集群内时间同步:
chronyc -n sources -v
date
- 预期结果:所有节点时间同步完成。
- 将当前系统时间写入硬件时钟:
hwclock -w
- 预期结果:硬件时钟与系统时间保持一致。
验证方法
- 检查
chronyc -n sources -v输出同步关系正常。 - 检查各节点
date输出一致。 - 检查硬件时钟已同步写入。
风险与回滚
- 风险:重启
chronyd服务会短暂影响时间同步稳定性。 - 回滚:恢复变更前备份的 Chrony 配置并重启
chronyd,然后重新检查chronyc -n sources -v与各节点时间;必要时根据变更前记录的时间重新校准。
