内网外网服务器时间同步解决方案

简介:
一.时间服务器(NTP)相关解释
     网络时间协议NTP(Network Time Protocol)是用于互联网中时间同步的标准互联网协议。NTP的用途是把计算机的时间同步到某些时间标准。目前采用的时间标准是世界协调时UTC(Universal Time Coordinated)
二.时间服务器的重要性
 
      在互联网上进行时间同步具有重要意义。随着互联网的发展和延伸到社会的各个方面,在其他的领域对时间同步也提出了多种要求,例如各种实时的网上交易、通信网络的时间配置、网络安全性设计、分布性的网络计算和处理、交通航班航路管理以及数据库文件管理和呼叫记录等多种涉及时间戳的应用,都需要精确、可靠和公认的时间。如果系统内某个服务器的时间有误差会造成交互失败有歧义,严重的将导致交易失败。由此可以看出NTP服务器的存在是不容置疑的。
三.内外网服务器时间同步方案
 
    说明了时间同步的重要性后,需要根据实际情况来调整服务器的时间同步策略:

1.       如果每个服务器都可以有公网IP地址与外界通信,那简单的方式就是:每个服务器都可以配置与互联网上的时间服务器进行同步,达到每个内外网服务器系统时间的一致性。

2.       但是通常的情况是:在IDC托管的服务器只有前端WEB服务器对外通信,数据库,文件等服务器只是通过私网地址与前端WEB通信,形成整体的架构。

这个时候就需要整体系统内部有一台服务器来担当中介,具体是:将某台服务器配置成时间服务器(注:此服务器能直接同步互联网上的时间服务器),其他所有服务器都定时与这台服务器在内部进行时间同步,达到每个服务器的时间一致性。
 
四.方案图示

  

五.时间服务器配置      
   

1.       安装NTP软件

因为系统所用系统是CentOS就可以使用YUM方便的安装系统软件。
#yum  install  ntp

2.       编辑配置文件

备份一下原始配置文件:mv /etc/ntp.conf    /etc/ntp.conf-bk

vi  /etc/ntp.conf
添加如下内容

允许192.168.100.0 网段服务器进行同步,拒绝其他服务器的同步

restrict 192.168.100.0 mask 255.255.255.0 nomodify
restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap noquery notrust
restrict 127.0.0.1
restrict -6 ::1
 
外网时间服务器定义
server 0.centos.pool.ntp.org
server 1.centos.pool.ntp.org
server 2.centos.pool.ntp.org
server pool.ntp.org
 
fudge   127.127.1.0 stratum 10
driftfile /var/lib/ntp/drift    
      

3.       启动NTP服务

service  ntpd s tart
 

4.       客户端配置

添加到计划任务中,每三十分钟同步一次
crontab  –e

 30 * * * *   /usr/sbin/ntpdate  192.168.100.5

开机启动时的时间同步设置
echo  “/usr/sbin/ntpdate  192.168.100.5;/sbin/hwclock -w ”>> /etc/rc.d/rc.local
 

5.       手动在其他服务器上同步时钟

root@xen100 vm_backup_script]# /usr/sbin/ntpdate  192.168.100.5

28 Jul 17:30:59 ntpdate[19081]: adjust time server 192.168.100.5 offset -0.019476 sec

[root@xen100 vm_backup_script]# date
Sat Jul 28 17:31:02 CST 2012
#######################################################
今天同事给了一个关于ntpd和ntpdate 的区别说明连接,内容如下:
 
ntpd不仅仅是时间同步服务器,他还可以做客户端与标准时间服务器进行同步时间,而且是平滑同步,并非ntpdate立即同步,在生产环境中应慎用ntpdate。
  由于ntpdate是立即同步,在获得一个时间之后,ntpdate使用settimeofday(2)设置系统时间,就会产生时钟的跃变。
  用ntpdate调整时间的方式,会有几个非常明显的问题:
  第一,这样做不安全。ntpdate的设置依赖于ntp服务器的安全性,攻击者可以利用一些软件设计上的缺陷,拿下ntp服务器并令与其同步的服务器执行某些消耗性的任务。由于ntpdate采用的方式是跳变,跟随它的服务器无法知道是否发生了异常(时间不一样的时候,唯一的办法是以服务器为准)。
  第二,这样做不精确。一旦ntp服务器宕机,跟随它的服务器也就会无法同步时间。与此不同,ntpd不仅能够校准计算机的时间,而且能够校准计算机的时钟。
  第三,这样做不够优雅。由于ntpdate是跳变,而不是使时间变快或变慢,依赖时序的程序会出错。例如,如果ntpdate发现你的时间快了,则可能会经历两个相同的时刻,对某些应用而言,这是致命的。
  许多应用程序依赖连续的时钟,取得的时间是线性的。例如数据库事务,通常会地依赖这样的事实:时间不会往回跳跃。
  我们可以想象以下,假如Oracle服务器的时间是01:00 AM,标准时间是00:30 AM,很明显Oracle服务器经过他自己的时间00:40 AM。假若此时直接使用ntpdate将服务器与标准时间同步,那么意味着Oracle服务器将在同一天经过两个00:40 AM,这对于某些计划任务来说可能是致命的。
  因而,唯一一个可以令时间发生跳变的点,是计算机刚刚启动,但还没有启动很多服务的那个时候。其余的时候,理想的做法是使用ntpd来校准时钟,而不是调整计算机时钟上的时间
#######################################################
按照上面的说法,那我们就可以改变客户端的配置取消ntpdate 的计划任务同步时间
将所有客户端配置成时间服务器,只是配置文件中的 :
外网时间服务器定义指向与外网同步的时间服务器即可
server 192.168.100.5





     本文转自andylhz 51CTO博客,原文链接:http://blog.51cto.com/andylhz2009/946380 ,如需转载请自行联系原作者
相关文章
|
2月前
|
监控 网络安全 调度
Quartz.Net整合NetCore3.1,部署到IIS服务器上后台定时Job不被调度的解决方案
解决Quartz.NET在.NET Core 3.1应用中部署到IIS服务器上不被调度的问题,通常需要综合考虑应用配置、IIS设置、日志分析等多个方面。采用上述策略,结合细致的测试和监控,可以有效地提高定时任务的稳定性和可靠性。在实施任何更改后,务必进行充分的测试,以验证问题是否得到解决,并监控生产环境的表现,确保长期稳定性。
72 1
|
2月前
|
编解码 弹性计算 运维
AWS无服务器直播解决方案
AWS无服务器直播解决方案
|
2月前
|
SQL 数据库
SQL-serve数据库不能连接本地服务器的解决方案
SQL-serve数据库不能连接本地服务器的解决方案
242 0
|
4月前
|
PHP
PHP遍历文件并同步上传到服务器
在进行网站迁移时,由于原网站的图片文件过多,采用打包下载再上传的方式耗时过长,且尝试使用FTP工具从旧服务器传输至新服务器时失败。为解决此问题,特使用PHP编写了一款工具,该工具能扫描指定目录下的所有`.webp`图像文件,并将其上传至新的服务器,极大地提高了迁移效率。
105 16
|
4月前
|
存储 Ubuntu Linux
如何在服务器之间同步文件?
如何在服务器之间同步文件?
105 3
|
5月前
|
SQL 弹性计算 关系型数据库
PolarDB产品使用问题之如何和ECS实例实现内网互通
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
4月前
|
Linux
Linux——服务器时间不同步
Linux——服务器时间不同步
47 0
|
5月前
|
存储 安全 网络安全
服务器设置了端口映射之后外网还是访问不了服务器
服务器设置了端口映射之后外网还是访问不了服务器
|
5月前
|
NoSQL 关系型数据库 MySQL
多机部署:打造内网服务器集群
在多机部署教程中,了解如何配置分布式应用如Laravel以使用Redis同步用户状态。关键步骤包括:修改MySQL的`bind-address`至内网IP,重启服务;同样修改Redis的`bind`,重启服务;以及调整Elasticsearch的`network.host`和`discovery.seed_hosts`,并重启。通过这些步骤,确保服务间能内网通信,实现多服务器状态同步。
157 2
|
5月前
|
存储 弹性计算 大数据
阿里云ECS以其强大的弹性计算与存储能力,为大数据处理提供了灵活、高效、成本优化的解决方案
阿里云ECS在大数据处理中发挥关键作用,提供多样化实例规格适应不同需求,如大数据型实例适合离线计算。ECS与OSS集成实现大规模存储,通过Auto Scaling动态调整资源,确保高效运算。案例显示,使用ECS处理TB级数据,速度提升3倍,成本降低40%,展现其在弹性、效率和成本优化方面的优势。结合阿里云生态系统,ECS助力企业数据驱动创新。
106 1