我遇到了一个问题,我不知道为什么或如何解决它。我有一台 Centos 6.2 服务器,这是我的辅助 DNS(bind 8)和 DHCP(ISC 的 dhcp 服务器)。
我需要保持准确的日期,因为如果日期差异太大,dhcp 主服务器会抱怨甚至停止与辅助服务器同步,这就是问题所在。
在我的辅助服务器中我有一个 cron 脚本,每天同步两次日期和时间(或至少应该这样做)。
问题:机器有点挂了 - 有点挂了,因为我可以 ping 它,甚至可以 ssh 到它,但登录后,我只是停留在提示符中,无法执行任何其他操作...我解决了这个问题,转到物理机器,登录并使用 ntpdate(或其他方法,如 rdate)手动同步日期和时间。只要日期和时间正确,机器就会再次正常工作,直到日期和时间再次不同步...
有人知道会发生什么吗?这可能是硬件问题,主板电池还是其他问题?
編輯:这是 DHCP 问题。自从我关闭了 DHCPD 服务后,机器就响应正常,运行正常。这确实是 DHCP 负载平衡配置的问题。我需要深入调查这个问题,因为配置是标准的。感谢大家的回复...
答案1
不要ntpdate
按计划使用以保持时钟同步。它不是为此而设计的,它会导致问题,并且会滥用您从中获取时间的服务器。不要这样做。
如果您需要保持服务器的时间同步,请使用ntpd
。设置起来真的不难,没有理由在 *nix 上使用其他任何东西(我ntpd
也在 Windows 上运行)。
如果您现场有多台机器需要同步时钟。请选择一台作为“ntp 服务器”(从外部源获取时间的服务器)。如果您有很多服务器并且需要一定程度的可靠性/可用性,您可以选择两台甚至三台。
将其弹出到选定的服务器/etc/ntpd.conf
server 0.us.pool.ntp.org minpoll 7 maxpoll 12 iburst
server 1.us.pool.ntp.org minpoll 8 maxpoll 14
server 2.us.pool.ntp.org minpoll 8 maxpoll 14
server 3.us.pool.ntp.org minpoll 9 maxpoll 15
driftfile /var/db/drift.ntp
logfile /var/log/ntp.log
logconfig +sysall +syncall
关于日志的最后两行完全是可选的。启用ntpd
、如何启用将取决于您的系统。
现在,您站点中的其余服务器:使用与此类似的文件对它们进行配置:
server 192.168.1.1
driftfile /var/db/drift.ntp
logfile /var/log/ntp.log
logconfig +sysall +syncall
同样,日志位是可选的。将 IP 更改为您“选定”的服务器的 IP。如果您选择了多个服务器,请为每个服务器复制第一行。因此,如果您选择了两个服务器作为计时员:
server 192.168.1.1
server 192.168.1.2
没什么特别的。您可以设置数百万种更高级的配置。我强烈建议从简单的配置开始。只需让一台服务器同步到外部源即可。完成之后,设置其他服务器以与其同步。如果您发现需要更高的准确性或更高的可用性,只需提出要求,我们就可以制作配置。
错误配置时间同步是我最讨厌的事情。这个东西已经存在很多年了,而且真的不复杂。运行公共 NTP 池服务器甚至没有那么糟糕……
答案2
您如何设置日期?您是否也设置了硬件时钟?这是我必须添加到 CentOS 6 的启动和构建过程中的内容。
运行ntpdate
命令后,使用 将硬件时钟设置为新的系统时间hwclock -w
。
您没有详细说明这种情况持续了多长时间,或者这是新版本、新硬件、旧硬件还是您在其间重新启动。这可能会有所帮助。如果您在重新启动时开始丢失 BIOS 设置并且系统较旧,我会查看主板电池。
答案3
我正在解决我的问题。我知道现在发生了什么。DHCP 负载平衡解决方案(根据 DHCP 文档)是导致这一切的原因。自从我停止服务后,服务器运行顺畅。
我将深入研究它并检查我可以做什么来“按部就班”地获得负载平衡解决方案。
谢谢大家的提示和答案。
编辑:事实证明,问题确实出在机器上...出了点问题,它挂了...DHCP 已经关闭了一段时间,我发现机器“崩溃”了...感谢大家的回答。