在OpenShift 4.x/OKD 4.x上配置Chrony NTP服务

时间:2020-02-23 14:30:16  来源:igfitidea点击:

本教程将向我们展示一些简单的步骤,以通过OpenShift/OKD 4.x群集上的网络时间协议(NTP)与远程服务器配置定时时间同步。 OpenShift 4.x基于CoreOS RHCOS/FCOS,服务器修改是通过MachineConfig进行的。因此,让我们在我们的OpenShift/OKD集群上配置Chrony时间同步。

第一步是创建chrony.conf文件的base64编码内容。

cat >chrony.conf<<EOF
server 0.africa.pool.ntp.org iburst
server 1.africa.pool.ntp.org iburst
server 2.africa.pool.ntp.org iburst
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
logdir /var/log/chrony
keyfile /etc/chrony.keys
EOF

如果我们拥有自己的NTP服务器,请编辑文件并更新服务器部分。

$vi chrony.conf

然后将其编码为base64

$base64 -w0 chrony.conf

-- Saving to file --
base64 -w0 chrony.conf> chrony.64

我们可以将base64值保存到变量中:

chrony_base64=`base64 -w0 chrony.conf`

为主节点/工作节点创建MachineConfig文件。

for i in master worker; do
cat << EOF > ./${i}-chrony-configuration.yml
apiVersion: machineconfiguration.openshift.io/v1
kind: MachineConfig
metadata:
  labels:
    machineconfiguration.openshift.io/role: ${i}
  name: ${i}-chrony-configuration
spec:
  config:
    ignition:
      config: {}
      security:
        tls: {}
      timeouts: {}
      version: 2.2.0
    networkd: {}
    passwd: {}
    storage:
      files:
      - contents:
          source: data:text/plain;charset=utf-8;base64,${chrony_base64}
          verification: {}
        filesystem: root
        mode: 420
        path: /etc/chrony.conf
  osImageURL: ""
EOF
done

应用配置文件。

oc apply -f ./master-chrony-configuration.yml
oc apply -f ./worker-chrony-configuration.yml

MachineConfig操作员将在所有主节点和工作节点上应用Chrony配置,然后重新启动它们。

等待他们出现,确认设置。

$oc adm debug node/<node-name>
  chroot /host

sh-4.4# cat /etc/chrony.conf 
server 0.africa.pool.ntp.org iburst
server 1.africa.pool.ntp.org iburst
server 2.africa.pool.ntp.org iburst
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
logdir /var/log/chrony
keyfile /etc/chrony.keys

现在已在OpenShift群集上配置了Chrony。

要设置正确的时区,我们可以使用ssh到该节点并使用timedatectl命令:

$sudo timedatectl set-timezone Africa/Nairobi
$date
Sat Oct 31 19:57:23 EAT 2017

timedatectl命令的输出:

$timedatectl 
               Local time: Sat 2017-10-31 20:02:12 EAT
           Universal time: Sat 2017-10-31 17:02:12 UTC
                 RTC time: Sat 2017-10-31 17:02:13
                Time zone: Africa/Nairobi (EAT, +0300)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no