服务公告
服务器时间同步:chrony 配置与漂移排查
发布时间:2026-10-13 13:53
## 为什么时间必须准 服务器的时间不只是显示问题。数据库主从复制依赖时间戳排序,时钟漂移会让事件顺序错乱;TLS 证书的有效期校验依赖本机时间,偏差过大直接握手失败;定时任务在错误的时间点醒来,备份撞上业务高峰;分布式锁与限流窗口也都建立在时间共识上。一台机器的时间偏几秒可能无感,偏几分钟就开始出各种灵异问题,跨机偏移更是排查地狱:两台机器时间差两分钟,日志对齐全靠人肉加减,故障时间线根本拼不出来。时间同步是基础设施里的隐形地基。 ## chrony 部署与配置 chrony 是当前主流的 NTP 实现,对间歇性网络与虚拟化环境适应性好。安装后主配置在 /etc/chrony.conf 或 chrony.conf 目录,核心是 server 指定上游: ``` server ntp.aliyun.com iburst server ntp.tencent.com iburst driftfile /var/lib/chrony/drift makestep 1.0 3 ``` iburst 加快首次同步;makestep 允许启动初期偏差超过一秒时直接跳步校正,避免慢慢爬。国内服务器选国内公共 NTP 源延迟更低。重启服务并设自启: ```bash systemctl enable --now chronyd ``` ## 验证方法 两条命令看状态: ```bash timedatectl chronyc tracking ``` timedatectl 的 NTP synchronized 为 yes 即已同步;chronyc tracking 显示上游源、层级别、当前偏差与估计精度,Leap status 正常应为 Normal。chronyc sources -v 列出各上游的可达性与延迟,星号标记当前选中的源。验证要点:偏差应在毫秒级;所有上游都无回应说明出网被防火墙拦了 NTP 端口。多台服务器逐台检查,内网也可以自建一台时间源,其余机器向它同步,出网受限的环境尤其需要。 ## 漂移排查与注意 时间持续跑偏的排查顺序:先看上游质量,换源对比;再看虚拟化环境,宿主机时钟抖动会传导进来,云服务器看到的小幅漂移多属此类,chrony 会自动驯服;最后看硬件与驱动,频繁大幅跳变才需要深挖。注意 makestep 只在启动阶段跳步,运行中 chrony 默认渐进调整,避免应用被时间跳变吓到;确实需要立即校准用 chronyc makestep 手动触发。云服务器重启后时间跳变的排查还要包含一条:时间同步服务设了自启没有,装了没启用等于没装。把时间状态纳入巡检脚本,配合顺云控制台的监控,时间这门地基就稳了。下一篇: 数据导出指引发布