【Chrony】Docker中的精准时间同步的高效解决方案

在分布式系统和微服务架构中,时间同步对于确保数据一致性和系统协调至关重要。网络时间协议(NTP)作为实现时间同步的标准协议,其重要性不言而喻。接下来将深入探索 Simon Rupf 开发的 chrony Docker 容器,这是一个专为时间同步设计的高效、可移植的解决方案。
之前也介绍过如何在Unbuntu系统中如何通过chrony来实现NTP服务器。

【Chrony】一个多功能的NTP实现

关于 chrony

chrony 是一个功能丰富的 NTP 实现,它能够与多种时间源同步系统时钟,包括 NTP 服务器、参考时钟(如 GPS 接收器),甚至手动输入。此外,chrony 还能作为一个 NTPv4 服务器,为网络中的其他计算机提供时间服务。

Docker 运行 chrony 容器

运行 chrony 容器非常简单,可以通过 Docker CLI、Docker Compose。

使用 Docker CLI

首先,从 Docker Hub 拉取容器:

docker pull simonrupf/chronyd

然后,运行 NTP 服务:

docker run --name=ntp --restart=always --detach --publish=123:123/udp simonrupf/chronyd

使用 Docker Compose

使用包含在仓库中的 docker-compose.yml 文件,可以自行构建容器:

docker compose up -d ntp

配置 NTP 服务器

默认情况下,容器使用 NTP 池的时间服务器。但是,可以通过设置 NTP_SERVERS 环境变量来配置不同的 NTP 服务器。例如,使用 Cloudflare 的时间服务:

NTP_SERVERS="time.cloudflare.com"

或者,使用阿里的时间服务:

NTP_SERVERS="ntp1.aliyun.com,ntp2.aliyun.com,ntp3.aliyun.com,ntp4.aliyun.com"

测试 NTP 容器

可以使用 ntpdate 命令来测试 NTP 容器是否正常工作:

ntpdate -q <DOCKER_HOST_IP>
root@knight:/home/knight# ntpdate -q 10.2.1.9
server 10.2.1.9, stratum 3, offset -1.558278, delay 0.02711
30 Apr 16:17:53 ntpdate[4000753]: step time server 10.2.1.9 offset -1.558278 sec

如果一切正常,您将看到同步的服务器信息和时钟偏移量。如上。

结论

通过docker来部署chrony,为需要精确时间同步的系统提供了一个轻量级且易于部署的解决方案。它支持广泛的架构,易于配置,并提供了多种运行和管理选项。无论是在本地开发环境还是在生产级云服务中,chrony 都是确保时间一致性的理想选择。

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-01 16:44:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-01 16:44:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-05-01 16:44:01       82 阅读
  4. Python语言-面向对象

    2024-05-01 16:44:01       91 阅读

热门阅读

  1. 「笔试刷题」:数组中的最长连续子序列

    2024-05-01 16:44:01       32 阅读
  2. 支持向量机——pytorch与paddle实现支持向量机

    2024-05-01 16:44:01       21 阅读
  3. 贪心-区间问题

    2024-05-01 16:44:01       32 阅读
  4. FreeRTOS

    FreeRTOS

    2024-05-01 16:44:01      32 阅读
  5. CSS 06

    CSS 06

    2024-05-01 16:44:01      27 阅读
  6. Docker依旧没有过时

    2024-05-01 16:44:01       33 阅读
  7. Python绝对路径及命令行执行路径的写法收录

    2024-05-01 16:44:01       32 阅读
  8. 三种滤波(EKF、UKF、CKF)的对比,含MATLAB源代码

    2024-05-01 16:44:01       29 阅读
  9. 商城数据库88张表结构

    2024-05-01 16:44:01       28 阅读
  10. 算法~本质

    2024-05-01 16:44:01       26 阅读