在 EC2 实例上实现精确时钟和时间同步
对于许多服务器任务和进程来说,Amazon EC2 实例上准确一致的时间参考是非常重要的。系统日志中的时间戳在识别问题发生的时间和事件的时间顺序方面起着至关重要的作用。使用 AWS CLI 或 AWS SDK 从您的实例发送请求时,这些工具会以您的名义签署请求。如果实例的日期和时间设置不准确,可能会导致签名中的日期和请求的日期之间存在差异,进而导致 AWS 拒绝请求。
为解决这一重要问题,Amazon 提供了 Amazon Time Sync Service,该服务可从所有 EC2 实例访问,并由各种 AWS 服务 使用。该服务在每个 AWS 区域 中使用一组与卫星连接的原子参考时钟,以提供准确的协调世界时(UTC)全球标准的当前时间读数。
为了获得最佳性能,建议在 EC2 实例上使用本地 Amazon Time Sync Service。要备份到实例上的本地 Amazon Time Sync Service,或者将 Amazon EC2 之外的资源连接到 Amazon Time Sync Service,您可以使用位于 time.aws.com
的公共 Amazon Time Sync Service。与本地 Amazon Time Sync Service 一样,公共 Amazon Time Sync Service 会自动涂抹添加到 UTC 中的任何闰秒。公共 Amazon Time Sync Service 由每个 AWS 区域 中一组与卫星连接的原子参考时钟在全球范围内提供支持。
闰秒
闰秒的概念于 1972 年引入,是偶尔对 UTC 时间进行一秒钟的调整,将地球自转中的不规则性考虑在内,以适应国际原子时间(TAI)和太阳时(Ut1)之间的差异。为了代表客户管理闰秒,我们在 Amazon Time Sync Service 中设计了闰秒涂抹。有关更多信息,请参阅 Look Before You Leap – The Coming Leap Second and AWS
闰秒即将消失,我们完全支持在第 27 届国际计量大会上做出的在 2035 年或之前取消闰秒
为了支持这种过渡,当通过本地 NTP 连接或我们的公共 NTP 池(time.aws.com
)访问 Amazon Time Sync Service 时,我们仍计划在闰秒事件期间涂抹时间。但是,PTP 硬件时钟不提供涂抹时间选项。如果出现闰秒,PTP 硬件时钟将按照 UTC 标准添加闰秒。在大多数情况下,闰秒涂抹和闰秒时间源是相同的。但是,由于其在闰秒事件中有所不同,因此我们不建议在闰秒事件期间在时间客户端配置中同时使用已涂抹和未涂抹的时间源。
主题
相关资源
-
AWS 计算博客:It’s About Time: Microsecond-Accurate Clocks on Amazon EC2 Instances
-
AWS Cloud Operations & Migrations Blog:使用 Amazon Time Sync Service 和 Amazon CloudWatch 管理 Amazon EC2 实例时钟精度 – 第 1 部分
-
(Linux)https://chrony-project.org/