加入收藏 | 设为首页 | 会员中心 | 我要投稿 佛山站长网 (https://www.0757zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux下ntp服务器的部署实战理论

发布时间:2016-11-05 09:42:24 所属栏目:Linux 来源:网络整理
导读:在上文Linux系统安装后的基础优化-基于CentOS(5.8/6.4)中,我们提到了如何定时自动更新服务器时间。同时也提到了,当内网机器数量巨大时,如果都去公网ntp服
副标题[/!--empirenews.page--]

在上文Linux系统安装后的基础优化-基于CentOS(5.8/6.4)中,我们提到了如何定时自动更新服务器时间。同时也提到了,当内网机器数量巨大时,如果都去公网ntp服务器同步时间是会有延时的。当然,这也不是仅仅是部署ntp服务器的唯一意义。

随着网络规模和网络应用不断扩大,网络设备和服务器数量不断增加。运维人员在查看众多服务器日志时,往往发现时间不一,即使手工设置了时间,也会出现因时区或夏令时等因素造成时间误差;对于部署了集群的生产环境而言它们之间需要协同工作,因此时间的准确可靠性显得尤为重要。

NTP服务的配置及使用都非常简单,并且占用的网络资源也非常小。NTP时间服务器目前广泛应用于网络安全、在线教学、数据库备份等领域。企业采取措施同步网络设备和服务器的时间非常重要,并且确保服务器产生的日志能提供精确的时间定位更应当得到关注。本系列博文将带领大家了解NTP的相关知识以及如何在企业生产环境中部署简易架构的实现负载均衡和高可用的NTP服务器。希望能对大家的学习和运维工作有帮助!

本篇将带领大家先了解一下时间的相关概念和ntp的一些常识。

一、时间和时区

地球是自西向东自转,东边比西边先看到太阳,东边的时间也比西边的早。东边时刻与西边时刻的差值不仅要以时计,而且还要以分和秒来计算,这给人们带来不便。因此,为了克服时间上的混乱,在1884年华盛顿的一次国际经度会议上,把全球划为了24个时区(东、西各12个时区),规定了格林威治时间(GMT)为0时区时间。而我国首都北京则为东8区,并且我国也将此时间作为全国统一时间,即为北京时间。因此,也就有了我们日常所说的时间的标准了。我们可以理解为,时间是基于时区给出的定义。

然而,我们在计算机中经常看到的是(UTC+08:00)。UTC是英文Coordinated Universal Time的缩写,翻译为协调世界时。而UTC+08:00则代表北京为东8区。因此可想而知UTC +00:00即为格林威治时间。

为什么要提这些呢?

第一,不论我们通过哪种渠道来更新系统的时间,通常公共ntp服务器只会给我们UTC +00:00的时间值,而不是我们当前时区的时间值,因为它也不知道我们在呢啊,所以当我们在安装系统的时候,选择时区那一步非常重要。

第二,我国是有夏令时的,也许哪天就会拨快1小时,让你从东8区变成东9区。当然,到时候还会再拨慢回来的。此时,如果我们设置了正确的时区,当需要改变时间的时候,系统就会自动替我们做出调整。

二、linux的时区

在安装linux的时候,有一步是让你选择时区的,还记得吧。那么如果我们想更改时区,或者说安装的时候设置错了,怎么办呢?不用担心!因为在linux下glibc已经提供给我们了许多编译好的timezone文件,并且把他们存放在了/usr/share/zoneinfo目录下,这里面基本涵盖了大部分的国家和城市。

[root@c64ntp ~]# ls /usr/share/zoneinfo/
Africa      Canada   GB         Indian     Mexico    ROC        Zulu
America     Chile    GB-Eire    Iran       Mideast   ROK        iso3166.tab
Antarctica  Cuba     GMT        Israel     NZ        Singapore  posix
Arctic      EET      GMT+0      Jamaica    NZ-CHAT   Turkey     posixrules
Asia        EST      GMT-0      Japan      Navajo    UCT        right
Atlantic    EST5EDT  GMT0       Kwajalein  PRC       US         zone.tab
Australia   Egypt    Greenwich  Libya      PST8PDT   UTC
Brazil      Eire     HST        MET        Pacific   Universal
CET         Etc      Hongkong   MST        Poland    W-SU
CST6CDT     Europe   Iceland    MST7MDT    Portugal  WET

当我们想查看某个时区的时间时,我们可以用zdump命令

[root@c64-client ~]# zdump Cuba
Sat Nov  2 08:42:13 CDT 2013    #古巴的时间已经出来了

可是当我们想更改时区的时候怎么办呢?

1、修改/etc/localtime文件

/etc/localtime文件定义了我们所在的本地时区,我们可以通过从/usr/share/zoneinfo/下复制我们需要的时区文件去替换/etc/localtime来达到更改时区的目的,例如,这里我们将时区更改为Cuba的时区

[root@c64-client ~]# /bin/cp /usr/share/zoneinfo/Cuba /etc/localtime
[root@c64-client ~]# date
Sat Nov  2 08:44:49 CDT 2013           #时区已经更改为了Cuba时区

当然,我们也可以用软连接的方法来进行时区更换,这次我们更换为Canada的时区

[root@c64-client ~]# ln -sf /usr/share/zoneinfo/Canada /etc/localtime
[root@c64-client ~]# date
Sat Nov  2 12:46:54 UTC 2013    #这样刚才Cuba的时区就又变成了Canada的时区了。

(编辑:佛山站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读