wordpress 内容 管理,郑州百度网站快速优化,免费建设淘客网站,微信开放文档实现【Linux--NTP 时间同步服务搭建】 #x1f53b; 前言#x1f53b; 一、NTP 校时#x1f530; 1.1 NTP 服务校时与 ntpdate 校时的区别#x1f530; 1.2 NTP 校时服务搭建#x1f530; 1.2.1 确认 ntp 的安装#x1f530; 1.2.2 配置 ntp 服务#x1f530; 1.2.3 启动… 实现【Linux--NTP 时间同步服务搭建】 前言 一、NTP 校时 1.1 NTP 服务校时与 ntpdate 校时的区别 1.2 NTP 校时服务搭建 1.2.1 确认 ntp 的安装 1.2.2 配置 ntp 服务 1.2.3 启动 ntp 服务、查看状态 1.2.4 ntp 服务设置开机自启动 1.2.5 解决设置 ntp 开机自启动失败 1.2.6 查看 ntp 服务器与上层 ntp 连通性 1.2.8 查看 ntp 服务器与上层 ntp 的状态 1.3 分节点测试时间同步 总结—温故知新 【上一篇】 The Begin 点点关注收藏不迷路 【下一篇】 前言
当应用系统走向多节点、高并发、高可用部署需求时不同节点时间不一致不仅仅会导致业务报错还会出现将硬件时间直接频繁同步导致硬件故障。
为解决以上问题-----引入NTP 校时服务。 一、NTP 校时 1.1 NTP 服务校时与 ntpdate 校时的区别
ntp 服务校时不仅仅是时间同步服务器它还可以做客户端与标准时间服务器进行同步时间而且是平滑同步并非 ntpdate 立即同步在生产环境中慎用 ntpdatentp 与 ntpdate不可同时运行。
简单来讲 NTP 服务本身是为了搭建校时服务器对外提供授时服务的。但是这个服务本 身有个功能就是可以从这个服务工作的机器配置一个外网的时间服务器将本机的时间 校时成网络时间。自己时间不对咋给别人校时 1.2 NTP 校时服务搭建
主节点本身可以上网配置校时服务的时候配置上游国家授时中心服务地址并对内网提供授时服务—这里环境均采用内网手动设置主节点为标准时间分节点同步。 分节点本身属于内网运行上游地址是主节点。 1.2.1 确认 ntp 的安装
###1、这里已安装了ntp和ntpdate为了方便演示先移除
[rootpg-node01 ~]# rpm -qa | grep ntp
fontpackages-filesystem-1.44-8.el7.noarch
ntp-4.2.6p5-29.el7_8.2.x86_64
ntpdate-4.2.6p5-29.el7_8.2.x86_64
[rootpg-node01 ~]####2、先卸载移除ntp 与 ntpdate
yum -y remove ntp-4.2.6p5-29.el7_8.2.x86_64
yum -y remove ntpdate-4.2.6p5-29.el7_8.2.x86_64###3、重新安装 ntp
yum -y install ntpdate
yum -y install ntp
###4、安装检查
[rootpg-node01 ~]# rpm -qa | grep ntp
fontpackages-filesystem-1.44-8.el7.noarch
ntp-4.2.6p5-29.el7_8.2.x86_64
ntpdate-4.2.6p5-29.el7_8.2.x86_64
[rootpg-node01 ~]# 1.2.2 配置 ntp 服务
1、选择主节点pg-node01修改其/etc/ntp.conf。
210.72.145.44 (国家授时中心服务器IP地址)。
### 在 server 部分添加如下内容并注释掉 server 0 ~ n
server 210.72.145.44 prefer
server 127.127.1.0 iburst说明 server 210.72.145.44 prefer 这是国家新的授时服务器地址prefer 是优先使用的意思还有更多可以直接百度国内的NTP Server基本都属于科研教育机构所有普通社会组织发布的NTP Server并不多。 server 127.127.1.0 iburst 指定本地NTP服务地址这个 ip 不要改意思是如果网络授时服务器源访问不到了则直接使用本机作为授时服务器源。 2、主节点以外的节点pg-node02继续修改/etc/ntp.conf。
在 server 部分添加如下语句将 server 指向主节点。
server 主节点 ip 地址如
server 192.168.181.113、操作系统防火墙开放 123 端口 由于 NTP 服务需要使用到 UDP 端口号 123所以当系统的防火墙Iptables启动的情况下必须开放 UDP 端口号 123。
###开放 UDP 端口号 123
firewall-cmd --zonepublic --add-port123/udp --permanent
###查看所有已经开放的端口
#临时端口默认为空
firewall-cmd --list-ports#永久开放端口默认为空
[rootpg-node01 ~]# firewall-cmd --list-ports --permanent
123/udp
[rootpg-node01 ~]# 1.2.3 启动 ntp 服务、查看状态
### 启动 ntp 服务
[rootpg-node01 ~]# systemctl start ntpd.service### ntp 服务管理命令#查看 ntpd 服务状态
service ntpd status
#启动 ntpd 服务
service ntpd start
#停止 ntpd 服务
service ntpd stop
#重启 ntpd 服务
service ntpd restart 1.2.4 ntp 服务设置开机自启动
检查 ntp 服务是否开机启动将其设置为开机启动。
### 启动服务
systemctl start ntpd.service
### 停止服务
systemctl stop ntpd.service
### 将服务设置为自启动
systemctl enable ntpd.service
### 将服务自启动关闭
systemctl disable ntpd.service1.2.5 解决设置 ntp 开机自启动失败
重启后用 service ntpd status 命令查看服务是否启动从给出的信息可知 ntp 已被设置为开机启动但是开机启动并未成功。
[rootpg-node02 ~]# service ntpd status
Redirecting to /bin/systemctl status ntpd.service
● ntpd.service - Network Time ServiceLoaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled; vendor preset: disabled)Active: inactive (dead)
[rootpg-node02 ~]#
通过命令 chkconfig ntpd on 设置开机自启动发现会将此命令转发到 systemctl enable ntpd.service 命令也就是说最好使用后面的命令设置开机自启动。
[rootpg-node02 ~]# chkconfig ntpd on
Note: Forwarding request to systemctl enable ntpd.service.
[rootpg-node02 ~]# 原因是系统上安装了一个与 NTP 相冲突的工具chrony。使用 systemctl is-enabled chronyd 来查看 chrony 被设置为enabled。
[rootpg-node02 ~]# systemctl is-enabled chronyd
enabled
[rootpg-node02 ~]# 将 chronyd 设置为 disable 后再重启即可实现NTP自启动。
[rootpg-node02 ~]# systemctl disable chronyd
Removed symlink /etc/systemd/system/multi-user.target.wants/chronyd.service.
[rootpg-node02 ~]# 1.2.6 查看 ntp 服务器与上层 ntp 连通性
### 查看命令
ntpstatpg-node01 pg-node02
ntpstat 命令查看时间同步状态这个一般需要5-10分钟后才能成功连接和同步。所以服务器启动后需要稍等下。
等一段时间之后再次使用 ntpstat 命令查看状态就会变成如下正常结果
[rootpg-node02 ~]# ntpstat
synchronised to NTP server (192.168.181.11) at stratum 7time correct to within 21 mspolling server every 64 s
[rootpg-node02 ~]# 1.2.8 查看 ntp 服务器与上层 ntp 的状态
### 命令
ntpq -ppg-node01
[rootpg-node01 ~]# ntpq -premote refid st t when poll reach delay offset jitter
210.72.145.44 .INIT. 16 u - 1024 0 0.000 0.000 0.000
*LOCAL(0) .LOCL. 5 l 23 64 377 0.000 0.000 0.000
[rootpg-node01 ~]#pg-node02
[rootpg-node02 ~]# ntpq -premote refid st t when poll reach delay offset jitter
pg-node01 LOCAL(0) 6 u 26 64 1 2.346 -679.68 0.000
[rootpg-node02 ~]# 说明 remote本机和上层 ntp 的 ip 或主机名“”表示优先“*”表示次优先 refid参考上一层 ntp 主机地址 ststratum 阶层 when多少秒前曾经同步过时间 poll下次更新在多少秒后 reach已经向上层 ntp 服务器要求更新的次数 delay网络延迟 offset时间补偿 jitter系统时间与 bios 时间差 1.3 分节点测试时间同步
分节点不能上网属于内网服务器从主节点获取时间本身支持对内网提供授时服务 但是不再对内网提供服务仅仅满足自己的时间与主节点保持一致。
设置分节点时间与主节点相差3h
####修改pg-node02分节点时间与主节点相差3h主节点-now time :13:00:00
date -s 10:00:00####写入BIOS
clock -w ###显示bios时间
hwclock -r####date查看---会自动同步pg-node01的时间
[rootpg-node02 ~]# date
Fri Jul 7 13:42:17 CST 2023
[rootpg-node02 ~]# 总结—温故知新
❓ 该章详细介绍和实现了Linux--NTP 时间同步服务搭建。【上一篇】 The End 点点关注收藏不迷路 【下一篇】