NTP是用于同步网络中计算机时间的协议,全称为网络时间协议(Network Time Protocol)。
主要特点和功能:
- 时钟同步:ntpd 通过与其他 NTP 服务器通信,以协商和调整系统时钟,确保系统时钟与全球标准时间保持同步。
- 精确度和稳定性:ntpd 致力于提供高精度和稳定性,通过使用时钟漂移校正和时钟同步算法来实现这一目标。
- 服务端和客户端功能:ntpd 可以作为 NTP 服务器(提供时钟服务)或 NTP 客户端(同步到其他 NTP 服务器)运行。
ntpd与chronyd 的区别:
实现和设计:
ntpd:ntpd 是 NTP 协议的传统实现,采用较为保守的时钟同步算法,以追求高度的稳定性和精确度。
- chronyd:chronyd 是相对较新的实现,它采用了一些新的时钟同步算法,例如,使用替代性的渐进性时钟漂移调整,旨在更快地适应时钟变化。
2.时钟调整策略:
- ntpd:ntpd 在调整系统时钟时可能采用较为保守的方法,以防止系统时钟发生剧烈变化。
- chronyd:chronyd 可能更愿意进行较小的、但更频繁的时钟调整,以更快地适应时钟漂移。
3.启动和初始化:
- ntpd:ntpd 启动时需要相对较长的初始化时间,以建立稳定的时钟同步。
- chronyd:chronyd 可以更快地初始化和适应时钟变化,特别适用于系统启动时的快速时钟同步。
4.配置文件语法:
- ntpd:ntpd 使用较为复杂的配置文件语法。
- chronyd:chronyd 使用较为简洁和直观的配置文件语法,更容易理解和配置。
5.实时时钟支持:
- ntpd:ntpd 对实时时钟(RTC)的支持可能相对较弱。
- chronyd:chronyd 在对 RTC 的支持上更为灵活。
总之,选择使用 ntpd 还是 chronyd 取决于具体的使用场景和对时钟同步性能的要求。在大多数情况下,两者都能够提供有效的时钟同步服务。有些业务是例外,例如国内大数据公司神策的服务只支持ntpd服务,这个时候就必须使用ntpd服务。
ntpd服务器端安装与配置
#安装ntpd服务
yum install ntp -y -q
#配置ntp.conf
vim /etc/ntp.conf
#指定 drift 文件的路径,用于存储时钟漂移的数据
driftfile /var/lib/ntp/drift
#默认配置,限制不允许修改、不允许作为时间源、不允许查询
restrict default nomodify notrap nopeer noquery
#限制仅允许本地访问
restrict 127.0.0.1
restrict ::1
#Apple NTP 服务器配置,使用 iburst 加速初始化
server time1.apple.com iburst
server time2.apple.com iburst
server time3.apple.com iburst
server time4.apple.com iburst
server time5.apple.com iburst
#Google NTP 服务器配置,使用 iburst 加速初始化
server time1.google.com iburst
server time2.google.com iburst
server time3.google.com iburst
server time4.google.com iburst
#全球 NTP 服务器池配置,使用 iburst 加速初始化
server pool.ntp.org iburst
#中国 NTP 服务器池配置,使用 iburst 加速初始化
server cn.pool.ntp.org iburst
#阿里云 NTP 服务器配置,使用 iburst 加速初始化
server ntp1.aliyun.com iburst
server ntp2.aliyun.com iburst
server time1.aliyun.com iburst
server time2.aliyun.com iburst
#包含其他配置文件
includefile /etc/ntp/crypto/pw
#指定密钥文件的路径
keys /etc/ntp/keys
#禁用监控功能
disable monitor
#启动
systemctl restart ntpd
systemctl enable ntpd
ntpd客户端安装
#安装ntpd服务
yum install ntp -y -q
#配置ntp.conf
vim /etc/ntp.conf
#指定 drift 文件的路径,用于存储时钟漂移的数据
driftfile /var/lib/ntp/drift
#默认配置,限制不允许修改、不允许作为时间源、不允许查询
restrict default nomodify notrap nopeer noquery
#限制仅允许本地访问
restrict 127.0.0.1
restrict ::1
#NTP 服务器配置,使用 iburst 加速初始化
server ntp1.xxx.com iburst #配置成自己的ntp服务器端节点域名,高可用需要两个ntp服务器节点
server ntp2.xxx.com iburst #配置成自己的ntp服务器端节点域名,高可用需要两个ntp服务器节点
#包含其他配置文件
includefile /etc/ntp/crypto/pw
#指定密钥文件的路径
keys /etc/ntp/keys
#禁用监控功能
disable monitor
#启动;
systemctl restart ntpd;
systemctl enable ntpd
ntpd常用命令
# 查看当前系统时间和 NTP 同步状态
ntpq -p
# 使用 ntpdate 手动同步时间
ntpdate time.server.com
#查看 ntpd 版本信息
ntpd --version
windows ntp配置服务可参考:如何配置Windows实例NTP服务?_云服务器 ECS(ECS)-阿里云帮助中心 (aliyun.com)
配置Linux实例Chrony服务可参考:如何配置Linux实例Chrony服务?_云服务器 ECS(ECS)-阿里云帮助中心 (aliyun.com)
配置Linux实例NTP服务可参考:如何配置Linux实例NTP服务?_云服务器 ECS(ECS)-阿里云帮助中心 (aliyun.com)