作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。
Linux进阶部分又分了很多小的部分,我们刚讲完了Linux日常运维。讲的那些东西都算是系统自带的,但是Linux作为一个服务器操作系统,肯定是要安装运行软件来满足我们的业务需要,本章基础软件部分,将从下面几个部分来讲解:
Linux基础软件-软件安装
Linux基础软件-yum(一)
Linux基础软件-yum(二)
Linux基础软件-ntp(本章节)
Linux基础软件-chrony
Linux基础软件-dns(一)
Linux基础软件-dns(二)
Linux基础软件-nfs
Linux基础软件-lvm
Linux基础软件-Selinux&库文件&swap
我们知道,任何一台电脑都会有一个本地时间的,由于CPU物理特性,它会越走越慢,如果我们管理着很多的服务器,但是他们的服务器时间不一样,这样会给我们业务带来问题的,现在很多业务对时间都非常敏感,所以我们必须保证我们的服务器的时间是一致的。
NTP,全称是Network Time Protocol,即网络时间协议。它是用来同步网络中各个计算机的时钟的协议,使得网络中的计算机可以有一个一致的时间。它能够提供精确到亚秒级的时间同步,并且可以在计算机之间自动进行时间校对,以消除时钟漂移。
NTP常用于银行、股票交易、航空、电信等需要精确时间的领域,也是网络服务如email、数据库等应用的重要组成部分。
进行NTP配置是为了保证网络中的所有设备能够同步到准确的时间,这对于许多应用和服务来说是非常重要的。
配置NTP
1.安装ntp软件
yum -y install ntp
2.配置ntp
#默认是centos官方的ntp服务器,可以根据需要更换
vi /etc/ntp.conf
#启动ntp
systemctl start ntpd
systemctl enable ntpd
3.检查ntp同步状态
有*号代表客户端正常工作,刚启动会稍微等会才有*号,在正常情况下。该状态查询依赖本地的ntpd服务,如果服务未启动则会报错。
NTP说明
在没有安装ntp软件包的时候,我们如果要修改时间,只能通过date命令,直接来设置时间,但是这个时间设置随意性太强,不是很严谨。
通过yum安装ntp包以后,会安装出来2个命令,一个就是上图用到的ntpq,主要用于ntpd状态查询;另外一个就是ntpdate,它可以用户同步其他ntp服务器的时间。
[root@localhost ~]# ntpdate ntp.aliyun.com
29 Jul 23:12:25 ntpdate[1202]: adjust time server 203.107.6.88 offset 0.008099 sec
总结下来,安装ntp软件包以后,我们有2种方式可以去同步时间,一个是使用ntpdate命令去同步,一个是通过ntpd服务方式去同步。
如果是使用ntpdate去同步,则需要配合我们前面讲到的任务计划(crontab),因为ntpdate执行同步,执行的是一次性任务。而使用的ntpd是以服务方式,是自动同步的。
NTP服务端
上面我们讲的ntpd也好,还是ntpdate也好,实际上都是作为ntp客户端的,但是我们有很多服务器,都处于内网,并且是不能上网的,他们是无法连接到公网的,所以我们就需要给这些内网的服务器搭建一个内网的ntp服务器,作为服务端给下游其他机器提供ntp服务。
如果我们选择作为ntp服务器的服务器,是可以通公网的,那么他只要按照服务方式启动ntp服务就可以作为ntp服务器,ntp服务是一个特殊服务,他既可作为服务端,也可以作为客户端。其他ntp客户端机器只要把ntp.conf里面的ntp服务器地址换成我们选定的服务器就可以。
[root@localhost ~]# ntpq -pn
remote refid st t when poll reach delay offset jitter
==============================================================================
*192.168.31.104 202.112.29.82 2 u 7 64 1 0.262 -16.569 0.161
如果我们选择的ntp服务器是没有上网能力,就只能以自己的时间作为标准,向下游提供服务。
server 127.127.1.0 iburst
#注释其他server,添加上面这样,重启服务
#这个配置就是以自己为标准时间
2.服务端检查ntp服务状态
[root@localhost ~]# ntpq -pn
remote refid st t when poll reach delay offset jitter
==============================================================================
*127.127.1.0 .LOCL. 5 l 2 64 1 0.000 0.000 0.000
3.客户端检查ntp服务状态
[root@localhost ~]# ntpq -pn
remote refid st t when poll reach delay offset jitter
==============================================================================
*192.168.31.104 LOCAL(0) 6 u 2 64 1 0.275 -4.114 0.018
总结