Поиск по сайту:

Настройка службы Chrony NTP в OpenShift 4.x/OKD 4.x |


В этом руководстве показаны простые шаги по настройке синхронизации времени Chrony с удаленным сервером по протоколу сетевого времени (NTP) в вашем кластере OpenShift/OKD 4.x. OpenShift 4.x основан на CoreOS – RHCOS/FCOS, а модификация сервера осуществляется через MachineConfig. Итак, давайте настроим синхронизацию времени Chrony на нашем кластере OpenShift/OKD.

Первым шагом является создание содержимого файла 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

Теперь Chrony настроен в кластере OpenShift.

Чтобы установить правильный часовой пояс, вы можете подключиться к узлу по SSH и использовать команду timedatectl:

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

Вывод команды timedatectl:

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

Курсы OpenShift:

Практический OpenShift для разработчиков — новый курс 2021 г.

Учебный курс Ultimate Openshift (2021) от School of Devops

Ознакомьтесь с соответствующими руководствами, доступными в нашем блоге.

Запустите набор инструментов Ceph для Rook в Kubernetes/OpenShift

Добавление секрета извлечения реестра образа Harbour в Kubernetes/OpenShift

Как установить статический IP-адрес на машине RHCOS/FCOS

Как разрешить небезопасные реестры в кластере OpenShift/OKD 4.x

Статьи по данной тематике: