在无法连接互联网的内网环境中,服务器之间的时间同步是一个需要解决的问题。使用 Chrony 可以很好地解决这个问题。下面是在内网中使用 Chrony 搭建时间服务器的步骤:
1. 服务端配置
在服务端上,你需要编辑 Chrony 的配置文件 /etc/chrony.conf
。以下是一个基本的配置示例:
|
|
2. 客户端配置
在客户端上,你可以使用类似的配置文件 /etc/chrony.conf
。以下是一个示例:
|
|
3. 防火墙配置
确保防火墙放行 Chrony 所需的端口(默认是 UDP 123 端口)。你可以使用以下命令:
|
|
4. 验证时间同步
-
查看时间同步源:
chronyc sources -v
-
查看时间信息:
date
-
查看详细的时间信息:
timedatectl
1 2
timedatectl status --- 时间同步状态, 输入timedatectl 默认为时间同步状态 timedatectl set-ntp true --- 开启网络时间同步
chronyc 的命令学习
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
# 查看 ntp_servers chronyc sources -v # 查看 ntp_servers 状态 chronyc sourcestats -v # 查看 ntp_servers 是否在线 chronyc activity -v # 查看 ntp 详细信息 chronyc tracking -v # 强制同步下系统时钟 chronyc -a makestep # 查看哪些ip连接我的ntp时间了 chronyc clients
chrony sources -v,查看时间的同步情况
1 2 3 4 5 6 7 8 9 10 11 12 13 14
[root@hdp103 ~]# chronyc sources -v 210 Number of sources = 1 .-- Source mode '^' = server, '=' = peer, '#' = local clock. / .- Source state '*' = current synced, '+' = combined , '-' = not combined, | / '?' = unreachable, 'x' = time may be in error, '~' = time too variable. || .- xxxx [ yyyy ] +/- zzzz || Reachability register (octal) -. | xxxx = adjusted offset, || Log2(Polling interval) --. | | yyyy = measured offset, || \ | | zzzz = estimated error. || | | \ MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* hdp104 11 10 377 764 +73us[ +45us] +/- 323ms
这样,你就可以在内网环境中搭建一个 Chrony 时间服务器,让其他节点同步服务端的时间了。12
希望这对你有所帮助!如果你需要进一步的帮助,请随时告诉我。