实现【Linux--NTP 时间同步服务搭建】

实现【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 立即同步,在生产环境中慎用 ntpdate,ntp 与 ntpdate不可同时运行

简单来讲 NTP 服务本身是为了搭建校时服务器对外提供授时服务的。但是这个服务本
身有个功能,就是可以从这个服务工作的机器,配置一个外网的时间服务器,将本机的时间
校时成网络时间。自己时间不对,咋给别人校时?

🔰 1.2 NTP 校时服务搭建

主节点:本身可以上网,配置校时服务的时候配置上游国家授时中心服务地址,并对内网提供授时服务—这里环境均采用内网,手动设置主节点为标准时间,分节点同步
分节点:本身属于内网运行,上游地址是主节点。

🔰 1.2.1 确认 ntp 的安装

###1、这里已安装了ntp和ntpdate,为了方便演示,先移除
[root@pg-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
[root@pg-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、安装检查
[root@pg-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
[root@pg-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.11

在这里插入图片描述

3、操作系统防火墙开放 123 端口
由于 NTP 服务需要使用到 UDP 端口号 123,所以当系统的防火墙(Iptables)启动的情况下,必须开放 UDP 端口号 123

###开放 `UDP` 端口号 `123`
firewall-cmd --zone=public --add-port=123/udp --permanent
###查看所有已经开放的端口
#临时端口(默认为空)
firewall-cmd --list-ports

#永久开放端口(默认为空)
[root@pg-node01 ~]# firewall-cmd --list-ports --permanent
123/udp
[root@pg-node01 ~]# 

🔰 1.2.3 启动 ntp 服务、查看状态

### 启动 ntp 服务
[root@pg-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.service

🔰 1.2.5 解决设置 ntp 开机自启动失败

重启后用 service ntpd status 命令查看服务是否启动,从给出的信息可知 ntp 已被设置为开机启动,但是开机启动并未成功。

[root@pg-node02 ~]# service ntpd status
Redirecting to /bin/systemctl status ntpd.service
● ntpd.service - Network Time Service
   Loaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled; vendor preset: disabled)
   Active: inactive (dead)
[root@pg-node02 ~]# 

通过命令 chkconfig ntpd on 设置开机自启动,发现会将此命令转发到 systemctl enable ntpd.service 命令,也就是说最好使用后面的命令设置开机自启动。

[root@pg-node02 ~]# chkconfig ntpd on
Note: Forwarding request to 'systemctl enable ntpd.service'.
[root@pg-node02 ~]# 

原因是系统上安装了一个与 NTP 相冲突的工具:chrony。使用 systemctl is-enabled chronyd 来查看, chrony 被设置为enabled

[root@pg-node02 ~]# systemctl is-enabled chronyd
enabled
[root@pg-node02 ~]# 

将 chronyd 设置为 disable 后,再重启即可实现NTP自启动。

[root@pg-node02 ~]# systemctl disable chronyd
Removed symlink /etc/systemd/system/multi-user.target.wants/chronyd.service.
[root@pg-node02 ~]# 

🔰 1.2.6 查看 ntp 服务器与上层 ntp 连通性

### 查看命令
ntpstat
  • pg-node01

在这里插入图片描述

  • pg-node02
    在这里插入图片描述

ntpstat 命令查看时间同步状态,这个一般需要5-10分钟后才能成功连接和同步。所以,服务器启动后需要稍等下。

等一段时间之后,再次使用 ntpstat 命令查看状态,就会变成如下正常结果:

[root@pg-node02 ~]# ntpstat
synchronised to NTP server (192.168.181.11) at stratum 7
   time correct to within 21 ms
   polling server every 64 s
[root@pg-node02 ~]# 

在这里插入图片描述

🔰 1.2.8 查看 ntp 服务器与上层 ntp 的状态

### 命令
ntpq -p
  • pg-node01
[root@pg-node01 ~]#  ntpq -p
     remote           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
[root@pg-node01 ~]#
  • pg-node02
[root@pg-node02 ~]# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 pg-node01       LOCAL(0)         6 u   26   64    1    2.346  -679.68   0.000
[root@pg-node02 ~]# 

📖 说明:

remote:本机和上层 ntp 的 ip 或主机名,“+”表示优先,“*”表示次优先
refid:参考上一层 ntp 主机地址
st:stratum 阶层
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的时间
[root@pg-node02 ~]# date
Fri Jul  7 13:42:17 CST 2023
[root@pg-node02 ~]# 

🔻 总结—温故知新

❓ 该章详细介绍和实现了Linux--NTP 时间同步服务搭建。

👈【上一篇】
💖The End💖 点点关注,收藏不迷路💖
【下一篇】👉

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/35453.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

QNAP威联通NAS搭建SFTP服务,并内网穿透实现公网远程访问

文章目录 前言1. 威联通NAS启用SFTP2. 测试局域网访问3. 内网穿透3.1 威联通安装cpolar内网穿透3.2 创建隧道3.3 测试公网远程访问 4. 配置固定公网TCP端口地址4.1 保留一个固定TCP端口地址4.2 配置固定TCP端口地址4.3 测试使用固定TCP端口地址远程连接威联通SFTP 转载自远程内…

优化|一阶方法:求解不具有凸性和lipschitz连续性的复合问题

论文解读者:陈康明,赵田田,李朋 编者按:​ 对于大多数一阶算法,我们会在收敛性分析时假设函数是凸的,且梯度满足全局 Lipschitz 条件。而本文中,对于某一类特殊函数。我们不仅不要求函数是凸的…

一次源码编译安装PostgreSql失败

需要perl;之前博文已提到;之前有一种编程语言叫perl,此perl应该不是那个;可到其官网下载,Perl Download - www.perl.org 安装时添加到环境变量; 可能是一个东西;有编程语言和工具;大…

html实现多种风格的时间轴(附源码)

文章目录 1.设计来源1.1 对称风格时间轴1.2 横向风格时间轴1.3 回忆风格时间轴1.4 记事风格时间轴1.5 简易风格时间轴1.6 科技风格时间轴1.7 列表风格时间轴1.8 跑道风格时间轴1.9 人物风格时间轴1.10 容器风格时间轴1.11 沙滩风格时间轴1.12 双边风格时间轴1.13 图文风格时间轴…

CRM系统中AI如何进行销售线索评分?有什么好处(上)

每个公司的TOP销售都是精明的猎手。他们善于从大量潜在客户中挑出最可能购买的,把最好的时间、精力和资源给到高意向客户。意向度差一些的排在后面,在资源分配上也会降低。现在,您可以通过AI来进行线索评分,可以说CRM销售线索评分…

【Linux】 Linus世界,WIndows VS Linux

文章目录 前言WindowsLinux操作系统Windows VS Linux收费情况技术支持安全性开源 区别 前言 在电脑世界有两种十分常见的电脑操作系统——Linux与和Windows,相信对电脑有一定了解的人对它们一定并不陌生!但是在我们的使用过程中,是否有什么事…

MySQL用户管理

目录 用户管理 用户 用户信息 创建用户 删除用户 修改用户密码 数据库的权限 给用户授权 回收权限 用户管理 如果我们只能使用root用户,这样存在安全隐患。这时,就需要使用MySQL的用户管理。 用户 用户信息 MySQL中的用户,都存储…

3 springboot更改tomcat的端口和启动时的banner

3.1 更改tomcat端口 点击resources下的application.properties。 然后,添加以下信息,即可把端口号更改为8081。 # 更改项目的端口号 server.port80813.2 更改启动时的banner 首先,进入网站:https://www.bootschool.net/ascii-art…

STL源码刨析 string实现

目录 一. string 类介绍 二. string 的简单实现 1. 类内成员变量 2. Member functions string ~string operator string(const string& str) 3. Capacity size capacity empty clear reserve resize 4.Modifiers push_back append operator insert era…

微服务:Springboot集成Hystrix实现熔断、降级、隔离

文章目录 前言知识积累Springboot集成Hystrix1、maven依赖引入2、application开启feign的hystrix支持(客户端配置限流降级熔断)3、入口类增加EnableFeignClients EnableHystrix 开启feign与hystrix4、feign调用增加降级方法服务端配置限流降级熔断(选择使…

MySQL基础篇第1章(数据库概述)

文章目录 1、为什么要使用数据库2、数据库与数据库管理系统2.1 数据库的相关概念2.2 数据库与数据库管理系统的关系2.3 常见的数据库管理系统排名2.4 常见的数据库介绍 3、MySQL介绍3.1 概述3.2 MySQL发展史重大事件3.3 关于MySQL 8.03.4 Oracle VS MySQL 4、RDBMS 与 非RDBMS4…

基于Python热门旅游景点数据分析系统设计与实现

博主介绍: ✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、java优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战 ✌ 🍅 文末获取源码联系 🍅 👇🏻 精彩专…

管理执行系统-亿发MES智能制造系统赋能制造企业信息化,实现工业现代化

在制造技术领域,质量控制信息集成建设需要健全的管理体系,加强全过程管理。虽然管理执行系统 (MES) 背后的理论思维已经取得了重大进展,但在软件应用集成和分析能力方面仍有改进的空间。本文将探讨MES系统如何赋能制造企业信息化,…

Camera API1 使用说明

Camera API2 使用说明 目录 一、开启相机 1.1创建项目 1.2注册权限 1.3配置相机特性要求 1.4 获取摄像头的个数 1.5 根据 ID 获取 CameraInfo facing 1.6 开启相机 1.7 关闭相机 二、预览 2.1认识 Parameters 2.2 设置预览尺寸 2.3添加预览 Surface 2.4 开启和关…

指针的进阶(1)

指针的回顾 在C语言中,指针是一个变量,与其他数据不同的是,它的作用是用来存储其它变量的内存地址。指针可以指向不同类型的数据,包括整数、浮点数 、字符、数组等。通过使用指针,我们可以直接访问和修改存储在内存中…

Zabbix 的使用

Zabbix 的使用 一、添加 zabbix 客户端主机1.1 环境准备1.2 服务端和客户端都配置时间同步1.3 服务端和客户端都设置 hosts 解析1.4 设置 zabbix 的下载源,安装 zabbix-agent21.5 修改 agent2 配置文件1.6 启动 zabbix-agent21.7 在服务端验证 zabbix-agent2 的连通…

Android Studio实现内容丰富的安卓校园新闻浏览平台

如需源码可以添加q-------3290510686,也有演示视频演示具体功能,源码不免费,尊重创作,尊重劳动。 项目编号070 1.开发环境 android stuido jdk1.8 eclipse mysql tomcat 2.功能介绍 安卓端: 1.注册登录 2.查看新闻列表…

【爬虫】百度FengXiangBiao(完全爬虫卡住了,是爬虫+文本提取方式)

学习使用。爬虫有风险。使用需谨慎。切记切记。 参考链接:学习python爬虫—爬虫实践:爬取B站排行榜 都是排行榜反正 网页细节 按F12,打开控制台。前端就是这点好,非常直观。 找到排行的具体位置,如下图,这…

【如何成功加载 HuggingFace 数据集】不使用Colab,以ChnSentiCorp数据集为例

【如何成功加载 HuggingFace 数据集】不使用Colab,以ChnSentiCorp数据集为例 前置加载数据集尝试一:标准加载数据库代码尝试二:科学上网尝试三:把 Huggingface 的数据库下载到本地尝试3.5 创建 state.json彩蛋 前置 Huggingface …

找不到 配置管理器。sql server 2008 r2 在win10下

win10 打开sqlserver2008r2的SQL Server 配置管理器 ,通过开始程序中找不到“SQL Server 配置管理器”。去自己电脑上此目录找,“C:\Windows\SysWOW64\SQLServerManager10.msc”,直接运行此文件就可以调出“SQL Server 配置管理器”。 在win1…