两个数据中心用一个ntp服务器进行时间同步有问题吗

两个数据中心用一个ntp服务器进行时间同步有问题吗,第1张

Linux自带了ntp服务 -- /etc/initd/ntpd,这个服务不仅可以设置让本机和某台/某些机器时间同步,他本身还可以扮演一个time server的角色,让其他机器和他同步时间。
配置文件就是/etc/ntpconf。
为了测试,设置让node2 -- 1921681102和node1 -- 1921681101做时间同步。
第一步,
node1做time server,node1本身不和其他机器时间同步,就是取本地时间。
所以,先把node1机器的时间调准了:
[root@node1 ~]date -s 08/03/2011 
[root@node1 ~]date -s 11:12:00
[root@node1 ~]clock -w
[root@node1 ~]hwclock --systohc
后两个命令是把设置的时间写到硬件时间中去(也就是CMOS里面的时间)。
第二步,
然后将node1配置成一个time server,修改/etc/ntpconf,
[root@node1 ~]vi /etc/ntpconf
其他的配置不怎么需要改,只需要关注restrict的配置:
1 注释掉原来的restrict default ignore这一行,这一行本身是不响应任何的ntp更新请求,其实也就是禁用了本机的ntp server的功能,所以需要注释掉。
2 加入:restrict 19216810 mask 2552552550 -- 让19216810/24网段上的机器能和本机做时间同步
3 这样就可以了,记得下面的:
server 12712710 # local clock
fudge 12712710 stratum 10
这两行需要,这是让本机的ntpd和本地硬件时间同步。
当然,我们也可以添加server xxxxxxxxxxxx,让他和其他的time server时间同步。
4 /etc/initd/ntpd restart
5 chkconfig ntpd on
6 修改iptables配置,将tcp和udp 123端口开放,这是ntp需要的端口,在/etc/services中可以查到这个端口。
第三步,
这样node1就成为一台time server了,现在我们配置node2这台机器,也是修改/etc/ntpconf ,
[root@node2 ~]vi /etc/ntpconf
1 restrict default ignore这行保留为注释状态,因为sales不需要做time server
2 注释掉server 12712710, fudge 12712710 stratum 10这两行,因为这台机器不需要和本地硬件时钟同步了。
3 加入server 1921681101这行,和node1机器同步。
这样就OK了。看看时间,已经和node1同步了。往后默认配置好像是5分钟和time server同步一次。ntpdate命令是显式的和某台机器做时间同步,以前将ntpdate放到crontab中定期同步也是可以的,但是既然ntpd本身就可以做这个时间
第四步,将ntpdate放到crontab中定期步也是可以的
[root@node2 ~]#vi ntpupdatesh
/usr/sbin/ntpdate 1921681101
[root@node2 ~]#chmod 755 ntpupdatesh
[root@node2 ~]#crontab -e
/1 /root/ntpupdatesh
[root@node2 ~]#/etc/initd/crond restart

NTP时间同步服务器 主要偏重于NTP时间同步功能

北斗时间同步服务器 主要偏重于北斗卫星时间来源

GPS时间服务器跟北斗时间同步服务器一样也偏重于时间来源是GPS卫星。

目前计算机网络中各主机和服务器等网络设备的时间基本处于无序的状态。随着计算机网络应用的不断涌现,计算机的时间同步问题成为愈来愈重要的事情。以Unix系统为例,时间的准确性几乎影响到所有的文件 *** 作。 如果一台机器时间不准确,例如在从时间超前的机器上建立一个文件,用ls查看一下,以当前时间减去所显示的文件修改时间会得一个负值,这一问题对于网络文件服务器是一场灾难,文件的可靠性将不复存在。为避免产生本机错误,可从网络上获取时间,这个命令就是rdate,这样系统时钟便可与公共源同步了。但是一旦这一公共时间源出现差错就将产生多米诺效应,与其同步的所有机器的时间因此全都错误。

另外当涉及到网络上的安全设备时,同步问题就更为重要了。这些设备所生成的日志必须要反映出准确的时间。尤其是在处理繁忙数据的时候,如果时间不同步,几乎不可能将来自不同源的日志关联起来。 一旦日志文件不相关连,安全相关工具就会毫无用处。不同步的网络意味着企业不得不花费大量时间手动跟踪安全事件。现在让我们来看看如何才能同步网络,并使得安全日志能呈现出准确地时间。

Internet的发展使得电子货币,网上购物,网上证券、金融交易成为可能,顾客可以坐在家里用个人电脑进行上述活动。要保证这些活动的正常进行就要有统一的时间。不能设想用户3点钟汇出一笔钱银行2点50分收到。个人电脑的时钟准确度很低,只有10-4、10-5,一天下来有可能差十几秒。

现在许多在线教学系统的许多功能都使用了时间记录,比如上网时间记录,递交作业时间和考试时间等等。通常在线教学系统记录的用户数据均以网站服务器时间为准。笔者以前就曾出现过因为应用服务器时间还在23点55分,而数据库服务器已跨过24点,导致正在进行的整个批处理日切或数据归档等重要处理失败或根本无法进行的情况,其实应用和数据库服务器时间也只是相差了几分钟而已。为了避免出现这种情况,系统管理员要经常关注服务器的时间,发现时间差距较大时可以手工调整,但由系统管理员手工调整既不准确、并且随着服务器数量的增加也会出现遗忘,因此有必要让系统自动完成同步多个服务器的时间。

上述问题的解决方法,就是需要一个能调整时钟抖动率,建立一个即时缓和、调整时间变化,并用一群受托服务器提供准确、稳定时间的时间管理协议,这就是网络时间协议(NTP)。如果你的局域网可以访问互联网,那么不必安装一台专门的NTP服务器,只需安装NTP的客户端软件到互联网上的公共NTP服务器自动修正时间即可,但是这样时间能同步但不精准还可能因为网络不稳定从而导致时间同步失败的结果,最佳方案则是在网络里安装一台属于自己的NTP服务器硬件设备,将各个计算机时间同步且统一起来,成本也不高即便高相对于大数据服务器来说孰轻孰重,作为网络工程师你更清楚。

总结:

随着网络规模、网上应用不断扩大,网络设备与服务器数量不断增加。网络管理员在查看众多网络设备日志时,往往发现时间不一,即使手工设置时间,也会出现因时区或夏令时等因素造成时间误差;有些二层交换机重启后,时钟会还原到初始值,需要重新设置时间。对于核心网络设备和重要应用服务器而言,它们之间有时需要协同工作,因此时间的准确可靠性显得尤为重要。

NTP服务的配置及使用都非常简单,并且占用的网络资料非常小。NTP时间服务器目前广泛应用于网络安全、在线教学、数据库备份等领域。企业采取措施同步网络和设备的时间非常重要,但确保安全设备所产生的日志能提供精确的时间更应当得到关注。

一、搭建时间服务器
1、在一台linux服务器安装ntp server
2、修改ntpconf配置文件
vi /etc/ntpconf
restrict default nomodify
(允许任何IP的客户机都可以进行时间同步,如果是只允许某个网段的客户机进行时间同步可以这样写restrict 1058260 mask 2552552550 nomodify)
3、以守护进程启动ntpd
#/etc/rcd/initd/ntpd -c /etc/ntpconf -p /tmp/ntpdpid
#/etc/rcd/initd/ntpd start
二、配置时间同步客户机
ntpdate 101281425
hwclock -w
使用cron 定时同步
vi /var/spool/cron/root(或crontab -e)
增加一行,在每天的1点10分、9点10分、17点10分与时间同步服务器进行同步并写入BIOS
10 1 ,9,17 root /usr/sbin/ntpdate 101281425; /sbin/hwclock -w

(知道不能发链接。)
1获取NTP服务器时间。在pypi找ntplib。有范例。
2设置windows系统时间。有很多方法。最简单的可以直接用date命令。也可以用win32API SetSystemTime,这个精度控制好一些,可以设置到ms。
如果要定期对时,设置计划任务即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13408318.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-30
下一篇 2023-07-30

发表评论

登录后才能评论

评论列表(0条)

保存