目录
前言
大数据产生与处理系统是各种计算设备集群的,计算设备将统一、同步的标准时间用于记录各种事件发生时序,如E-MAIL信息、文件创建和访问时间、数据库处理时间等。
大数据系统内不同计算设备之间控制、计算、处理、应用等数据或操作都具有时序性,若计算机时间不同步,这些应用或操作或将无法正常进行。
大数据系统是对时间敏感的计算处理系统,时间同步是大数据能够得到正确处理的基础保障,是大数据得以发挥作用的技术支撑。
大数据时代,整个处理计算系统内的大数据通信都是通过网络进行。
时间同步也是如此,利用大数据的互联网络传送标准时间信息,实现大数据系统内时间同步。
网络时间同步协议(NTP)是时间同步的技术基础。
安装
# 安装
yum –y install ntp
# 启动nptd服务
systemctl start ntpd.service
# 设置开机启动
chkconfig ntpd on
# 检查是否正常运行
ps -ef|grep ntpd
# 查看ntp服务器有无和上层ntp连通
ntpstat
-
查看ntp状态时,可能会出现如下所示情况
① unsynchronised time server re-starting polling server every 8 s
② unsynchronised polling server every 8 s
这种情况属于正常,ntp服务器配置完毕后,需要等待5-10分钟才能与/etc/ntp.conf中配置的标准时间进行同步。
等一段时间之后,再次使用ntpstat命令查看状态,就会变成如下正常结果:
-
查看ntp服务器与上层ntp的状态
ntpq -p
remote:本机和上层ntp的ip或主机名,“+”表示优先,“*”表示次优先
refid:参考上一层ntp主机地址
st:stratum阶层
when:多少秒前曾经同步过时间
poll:下次更新在多少秒后
reach:已经向上层ntp服务器要求更新的次数
delay:网络延迟
offset:时间补偿
jitter:系统时间与bios时间差
配置方式一
- ntp服务端节点配置
driftfile /var/lib/ntp/drift
restrict default nomodify notrap nopeer noquery
restrict 192.168.8.137 nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict ::1
# 配置同步网段
restrict 192.168.8.138 mask 255.255.255.0 nomodify notrap
# 以自己的时间为准
server 127.127.1.0
Fudge 127.127.1.0 stratum 10
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
disable monitor
- ntp客户端节点配置
driftfile /var/lib/ntp/drift
restrict default nomodify notrap nopeer noquery
restrict 192.168.8.139 nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict ::1
# 配置同步网段
restrict 192.168.8.137 mask 255.255.255.0 nomodify notrap
# 以ntp时间服务端的时间为准
server 192.168.8.137
Fudge 192.168.8.137 stratum 10
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
disable monitor
配置方式二
- 配置
10.2.111.152
当NTP时间服务端节点。
10.2.111.157
当NTP客户端节点。
设置配置文件/etc/ntp.conf
, 按标红的地方修改就行别怀疑。
- 验证ntp服务器是否成功
打开并编辑crontab
定时器, 命令:crontab -e
把下面一行加入:
意思是每隔1分钟,157(NTP客户端节点节点)就会去152(NTP服务端节点)上去同步时间。
*/1 * * * * /usr/sbin/ntpdate -u 10.2.111.152 > /dev/null
把157(客户端)上的时间故意改错,命令: date -s "20180712 18:30:50"
然后等一分钟,执行date 看时间是否已经变成和152(服务端)一样的时间了。搞定。
其它
- 查看系统时间:
timedatectl
- 设置中国时区:
timedatectl set-timezone Asia/Shanghai
- 修改系统时间:
#方式1
date -s "20220828 12:00:00"
#方式2
timedatectl set-time "2022-08-28 12:00:00"
#关闭时钟同步
timedatectl set-ntp no
#友情提示:(NTP enabled: yes) 该状态说明时钟同步已开启,这种状态修改时间后重启系统,修改后的时间会失效
- 修改硬件时间
- 查看硬件时间:
hwclock --show
- 修改硬件时间:
hwclock --set --date "2022-7-11 18:20:30"
- 同步系统时间和硬件时间:
hwclock --hctosys
- 将时间写入BIOS硬件:
clock -w
- 查看硬件时间:
GMT、UTC、CST、DST 时间
-
UTC
整个地球分为二十四时区,每个时区都有自己的本地时间。在国际无线电通信场合,为了统一起见,使用一个统一的时间,称为通用协调时(UTC, Universal Time Coordinated)。 -
GMT
格林威治标准时间 (Greenwich Mean Time)指位于英国伦敦郊区的皇家格林尼治天文台的标准时间,因为本初子午线被定义在通过那里的经线。(UTC与GMT时间基本相同,本文中不做区分) -
CST
中国标准时间 (China Standard Time) -
DST
(中国不使用)
夏令时(Daylight Saving Time) 指在夏天太阳升起的比较早时,将时钟拨快一小时,以提早日光的使用。
友情提示:GMT + 8 = UTC + 8 = CST
参考
Linux配置ntp时间服务器(全):https://www.cnblogs.com/quchunhui/p/7658853.html
局域网内构建自己的ntp校时服务器并验证成功与否:https://www.likecs.com/show-203907543.html
CentOS7修改时区和时间:https://blog.csdn.net/wykqh/article/details/126519332
CentOS 7 修改系统时间或时区:https://www.cnblogs.com/zhaijiahui/p/16468416.html