对于服务器运维,我们要特别关注几个问题
1,对电商平台来说,首要的是时间问题,因此,我们首先要服务器时间的定期同步
NTP服务器的搭建
NTP (network time protocol 时间网络协议)
目前使用的NTP几乎都是NTPv3 由RFC1305文档描述
秒级精度SNTP(Simple network time protocol 简单网络时间协议)由RFC2030描述
NTP属于应用层协议,使用UDP 123端口
NTP除了可以估算数据包在网络上的往返延迟时间外,还可独立地估算计算机的时间偏差,从而实现网络上高精度的计算机校时,NTP可提供1~50ms的可信赖时间源和网络工作路径。
NTP工作原理
描述
T1 client端发送数据包的时刻,来自客户端的时钟
T2 服务器收到数据包的时刻,来自服务器的时钟
T3 服务器发送应答数据包的时刻,来自服务器的时钟
T4 client端收到数据包的时刻,来自client端的时钟
在NTP中发送数据包,可采用单播,组播,或广播,同时还支持访问控制和MD5验证功能
NTP的两种报文
1, 时钟同步报文
该报文是NTP协议的核心内容
可以从wireshark的人性化提示上看到这是client端发往server端的
Leap indicator 跳跃计时器,值为11时表示时钟未同步3bit
Mode长度3bit表示NTP的工作模式,
3 客户模式
4 服务器模式
5 广播或组播模式
6 此报文为NTP控制报文
1, 控制报文
该报文主要为用户提供一些有关网络管理的附加功能,对时钟同步来说不是必须的
Stratum 系统时钟的层数,取值范围“1~16”,它决定了时钟的准确度。层数为1的时钟准确度最高,依次递减,16,表示时钟未同步,不能作为参考时钟
安装
重要文件
Ntp.conf 服务器的主配置文件
Keys 存放密钥的文件
Step-tickers 存放时钟源主机的地址
NTP服务端配置
ntp.conf配置文件详解
我们来看下driftfile 是做什么用的
每一个system clock的频率都有小小的误差,造成了机器运行一段时间后时间不精准,NTP会自动来监测我们的时钟误差值并予以调整,driftfile就是记录机器运行过程中的误差,使得重启后也不会丢失计算结果。该时间偏移文件记录了本地时钟与权威时钟的频率偏移,根据同步结果,每小时更新一次
从注解上可以得到,允许client端把该NTP服务器当作同步的时钟源,但不能改变和查询NTP服务器配置
环回接口允许所有访问,这样做会影响一些管理功能,也就是说通过环回接口可做访问控制
本地子网上的计算机做的一些限制,默认是不提供修改和远程登录功能
该项首先指定了4台上层服务器
Iburst参数指定,当初始同步请求时,采用突发方式连接发送8个报文,间隔2s
Broadcast参数指定了工作模式为广播,定时发送广播报文,并在报文中使用加密
Broadcastclient则表示,使本地服务器成为其它以广播模式工作的NTP服务器的客户端
Broadcast 使用多播方式发送报文,并使用加密
Multicastclient 使本地服务器成为其它以多播模式工作的NTP服务器的客户端
Manycastserver 该选项是NTPV4中使用的功能,它试图使用多播客户端漫游到其它子网,并与该选项指定的服务器联系
Keys 指定保护密钥的文件位置。该文件包含了采用对称加密算法的密钥,每个密钥对应一个编号
Trustedkey 指定可信任密钥
Requestkey 指定用于与ntpdc工具通信的密钥
Controlkey 指定用于与ntpq工具通信的密钥
NTP服务器测试
以上显示内容表明,本地NTP服务器与上层服务器进行了同步
本地服务器层数3,本地时钟校正的偏差小于223ms,每256s要查询一次上层服务器的时间
将时间写入到CMOS时钟,coms时钟由电池维持,即使计算机关机也能运转