CentOS时间同步

2016-01-20 Tec

简介

一般地,如果不进行同步,服务器的时间会越来越慢。
举例:

  1. 多台服务器上的多个程序记录同一事件的时间不一致,导致事件无法正确关联
  2. 排查bug时,客户提供的本机时间点和服务器日志时间点有偏差,导致排查困难
  3. 与标准时间判断时,例如根据服务器时间判断上下班时间

原理

不仅要让服务器时间与标准时间靠近,而且要调整服务器时钟的频率(时间变化的的快慢程序,即对时间的导数),即使偶尔无法与标准时间同步,也可以保证在一段时间内服务器时间不会偏差太大

使用ntpd与时间服务器同步

修改/etc/ntp.conf,增加一行

server 时间服务器ip/域名

如果配置了DNS,那么使用/etc/ntp.conf中centos自带的几个时间服务器也是可以的。
注意CentOS6添加DNS需要修改/etc/sysconfig/network-scripts/ifcfg-eth0,如果直接在/etc/resolve中添加,重启后会消失,这个是系统自带、默认启动的networkmanager导致的。
然后设置开机启动和开启服务

chkconfig ntpd on;service ntpd start

使用htpdate通过网页代理与知名网站同步

知道这个工具是因为最近有客户的服务器在内网,而诺大的公司里居然没有内网的时间服务器,于是客户随手发给我一个http代理,我在网上一顿乱翻,试了几个工具,最后发现yum就可以安装这个htpdate工具,其原理是通过获得网页的头部里的时间字段来得到标准时间,而知名网站的主页基本是与标准时间同步的。htpdate可以检测15个以内的网页地址,可以自动排除那些与平均时间相差较大的时间。

安装htpdate的rpm或者直接编译一份,然后在/etc/rc.d/rc.local设置开机启动、后台运行

if [ -f /var/run/htpdate.pid ]; then
        /bin/rm -f /var/run/htpdate.pid
fi
/usr/bin/htpdate -D -P 192.216.20.78:808 www.baidu.com www.qq.com www.163.com www.taobao.com www.jd.com www.hao123.com z.cn www.tmall.com www.gov. cn www.beijing.gov.cn www.moe.gov.cn g.cn www.tsinghua.edu.cn
  1. 把192.216.20.78:808换成你的http代理地址
  2. 上面的网址是我自己试出来的,新浪、搜狐、商务部网站的时间不对(可能被黑客利用?)

从/var/log/message里看到程序运行的日志,日志会打出来哪些网站的时间不对,然后你可以调整网站。

Comments
Write a Comment