使用chrony完成集群时间同步

在RHEL 8+中,你可以使用Chrony来在集群中进行时间同步。

集群时间同步配置步骤

已知集群的ip和主机映射配置文件/etc/hosts的内容如下所示:

以下是步骤:

安装chrony到集群中

确保所有服务器上都已经安装了chrony。如果没有安装,可以使用以下命令进行安装(三台机器都需要):

在niit01服务器上

编辑Chrony配置文件。使用文本编辑器打开/etc/chrony.conf文件:

在配置文件中找到pool部分,并注释掉原有的服务器地址(如果有的话)。因为我们将使用niit01作为时间同步服务器,所以不需要从外部服务器获取时间同步。

在配置文件中添加以下行,以允许其他服务器从niit01同步时间:

这将允许子网中的所有服务器从niit01同步时间。根据你的网络设置,可能需要修改子网地址。

保存并关闭配置文件/etc/chrony.conf

启动chronyd服务,并确保其在系统启动时自动启动:

niit02niit03服务器上

编辑chrony配置文件/etc/chrony.conf

在配置文件中找到pool部分,并注释掉原有的服务器地址(如果有的话)。这是因为我们将使用niit01作为时间同步服务器。

在配置文件中添加以下行,以指定从niit01同步时间:

这将指定niit01作为时间同步服务器,并使用iburst选项以更快地同步时间。

保存并关闭配置文件。

启动chronyd服务,并确保其在系统启动时自动启动:

现在,niit02和niit03服务器将开始从niit01服务器同步时间。你可以使用以下命令来检查时间同步状态:

image-20230918133709762

这将显示时间同步状态,包括偏差、延迟等信息。如果一切正常,你应该看到niit02niit03服务器的时间与niit01服务器同步。

如果要查看不同的授时服务器的详情, 也可以使用这个命令

image-20230918134014631

集群时间同步测试步骤

首先,在niit01服务器上修改时间。你可以使用以下命令来更改时间:

'YYYY-MM-DD HH:MM:SS' 替换为你想要设置的时间。例如,要将时间设置为2023年7月19日下午3点30分,你可以使用以下命令:

确保niit01服务器上的Chrony服务正在运行。如果服务未运行,请使用以下命令启动它:

在niit02和niit03服务器上执行以下命令,以检查它们是否能够与niit01服务器同步时间:

这将显示时间同步状态。你应该能够看到niit02和niit03服务器的时间与niit01服务器同步。

如果时间同步状态正常,你可以使用以下命令检查服务器上的当前时间:

确保niit02和niit03服务器上的时间与niit01服务器上的时间相同。

这样,你就可以测试niit02和niit03服务器是否能够与niit01服务器同步时间了。

集群时间同步脚本编写

由于我们接下来的项目中需要生成从指定日期开始, 例如2023年6月30日开始的连续7日数据. 需要使用一个集群时间同步脚本来更改并同步时间, 文件名为:

由于ntp同步只能用于微小的时间调整, 大幅度的时间调整前需要先关闭ntp时间同步, 调整后再开启. 开启后大约需要1秒的时间完成同步过程.

用法: 比如需要将集群的时间同步至2023-06-30 06:00:00, 可以这样

Views: 181

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注