Как установить Chrony сервер Linux.

Введение.

В предыдущей статье блога рассматривалась работа клиента NTP, установленного по умолчанию на дистрибутив ALT Linux рабочая станция. Автору предложили продолжить тему chrony и рассказать, как переключиться с режима chronyd клиент на chronyd сервер точного времени.

  • Стенд:
    • ALT Linux сервер, имя lin-ntp; ip-10.0.2.11;

Установка.

В качестве базового, выберем сервер минимальной конфигурации ALT Linux, как отдельного узла в виртуальном облаке организации. С помощью командной строки установим программу chrony.

# apt-get update
# apt-get install chrony

Запуск и управление chronyd.

Команды для управления chronyd приводятся ниже.

# systemctl start|enable|status|restart|is-enabled|stop chronyd

Настройка chronyd.

Перевести chrony в режим сервера можно двумя способами: консольным или графическим.

Консольный режим предполагает убрать комментарий в строке файла конфигурации /etc/chrony.conf, после чего необходимо перегрузить службу.

# /etc/chrony.conf
....
# Allow NTP client access from local network.
allow all
...
# systemctl restart chronyd

Графический способ, потребует запустить acc и отметить нужные позиции, как показано ниже. Проверить установку acc и модуля времени можно, используя команды приведённые ниже.

# apt-get update
# apt-get install acc
# apt-get install alterator-datetime
# acc
Вид: перевод chronyd режим ntp.
Вид: перевод chronyd режим ntp.

acc — ALT Linux control center — центр управления ALT Linux

Проверка работы chronyd.

timedatectl

Команда оценивает работу сервера синхронизации NTP. Для chronyd, может служить в качестве быстрого «взгляда» на работу NTP.

# timedatectl
          Local time: Чт 2022-03-03 21:16:15 MSK
          Universal time: Чт 2022-03-03 18:16:15 UTC
          RTC time: Чт 2022-03-03 18:16:16    
          Time zone: Europe/Moscow (MSK, +0300)
System clock synchronized: yes                       
              NTP service: active                    
          RTC in local TZ: no   
  • Local time — местное время
  • Universal time — UTC всемирное время
  • RTC time — аппаратное время
  • Time Zone — часовой пояс
  • NTP synchronized — синхронизация с ntp сервером
  • RTC in local TZ — аппаратные часы: если no показывает локальное время , если yes показывает всемирное время

Основную проверку работу сервера chronyd можно осуществить несколькими популярными командами, из набора утилиты chronyc, подробности читай здесь.

tracking

Показывает производительность системных часов на сервере.

# chronyc tracking
Reference ID    : 59DDCF71 (89.221.207.113)
Stratum         : 3
Ref time (UTC)  : Mon Feb 28 14:24:52 2022
System time     : 0.000478345 seconds slow of NTP time
Last offset     : +0.000350668 seconds
RMS offset      : 0.002563184 seconds
Frequency       : 27.618 ppm slow
Residual freq   : -0.026 ppm
Skew            : 0.673 ppm
Root delay      : 0.039620969 seconds
Root dispersion : 0.000692389 seconds
Update interval : 64.8 seconds
Leap status     : Normal
  • Reference ID — идентификатор и имя NTP сервера синхронизации
  • Stratum — количество переходов к NTP серверу
  • Ref time — время, UTC, последнего измерения от эталонного источника
  • System time — скорость задержки системных часов от NTP сервера
  • Last offset — локальное смещение при последнем обновлении часов от NTP
  • RMS offset — долгосрочное среднее значение смещения времени
  • Frequency — частота скорости ошибки, без исправления chronyd, в ppm — ч/м частей на миллион
  • Residual freq — разница частоты между NTP и локальным источником времени
  • Skew — предполагаемая ошибка, связанная с частотой
  • Root delay — общая задержка сетевого пути к NTP серверу синхронизации
  • Update interval — интервал между двумя последними обновлениями часов
  • Leap status — статус скачка, «нормальный», «вставить секунду», «удалить секунду», «не синхронизировано»

sources

Проверяет источники опорного времени сервера NTP, ключ -v, вывод подробно.

# chronyc sources 
210 Number of sources = 5
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^? _gateway                      0   8     0     -     +0ns[   +0ns] +/-    0ns
^+ fizdlganet.ru                 2   6   377     6  +2120us[+2120us] +/-   51ms
^* 89.221.207.113                2   7   377    73  -3526us[-3527us] +/-   22ms
^+ ftpshare1.corbina.net         2   6   377    11  +2081us[+2081us] +/-   26ms
^+ cello.corbina.net  
  • + источники, которые комбинируются с выбранным источником
  • * источник синхронизируется с chronyd
  • ? связь потеряна или если пакеты не проходят тесты в течении 3 раз

sourcestats

Скорость дрейфа серверов опорного смещения.

# chronyc sourcestats 
210 Number of sources = 5
Name/IP Address            NP  NR  Span  Frequency  Freq Skew  Offset  Std Dev
==============================================================================
_gateway                    0   0     0     +0.000   2000.000     +0ns  4000ms
fizdlganet.ru              24  11   30m     +0.069      0.294  +2180us   179us
89.221.207.113             25  15   31m     +0.290      0.585  -4180us   437us
ftpshare1.corbina.net      15  10   21m     -0.233      0.425  +1803us   153us
cello.corbina.net          16   9   969     +0.192      0.673  +1825us   192us

reselect

Повторно выбирает лучший источник синхронизации для cronyd.

chronyc> reselect
200 OK

add server/delete

Добавляет/удаляет NTP сервер в перечне опорных серверов времени.

chronyc add server lin-ntp1
200 OK
chronyc delete  lin-ntp1
200 OK

burst

Выполняет набор измерений, chronyd, для каждого источника опорного NTP указанного в списке, аргументы команды см. ниже

  • good — количество хороших измерений от каждого источника
  • max — максимальное количество измерений
  • mask — IP-адреса источников опорных NTP
  • masked-address — IP-адрес источника для обработки пакетной команды
  • address — IP-адрес или имя хоста одного источника опорного NTP

Пример: провести три хороших измерения от каждого источника в списке, не более 15 попыток

chronyc> burst 3/15

makestep

Имеет две формы: без параметров и с параметрами. Первый режим приводит к немедленной коррекции времени при больших временных отставаниях. Второй режим производит пошагово-пороговую коррекцию в сек, для которого порог активен.

chronyc> makestep
200 OK
chronyc> makestep 0.1 2
200 OK

manual

Управляет режимом ручной установки для команды settime.

  • on — включает settime
  • off — выключает settime
  • list — история изменений settime
  • delete index — удаляет из истории строку
  • reset — удаляет из истории все образцы (samples)
chronyc> manual list
210 n_samples = 5
#    Date     Time(UTC)    Slewed   Original   Residual
=======================================================
 0 2022-03-02 10:08:48     -71.08     -37.49     -71.08
 1 2022-03-02 10:09:00       0.00      71.47       0.00
 2 2022-03-02 10:12:08       8.41     -82.48       8.41
 3 2022-03-02 10:14:56      -8.21     -83.72      -8.21
 4 2022-03-02 10:18:05       0.00      12.54       0.00

settime

Позволяет ввести текущее время вручную используя команду manual или директиву manual в файле /etc/chrony.conf. Точность показаний часов будет зависеть от нажатия кнопки enter. Перед выполнением необходимо убедится, что часовой пояс ПК настроен правильно. Сказанное выше закрепим несколькими примерами на лабораторном стенде.

chronyc> manual on
200 OK
chronyc> settime 13:12
200 OK
Clock was -82.47 seconds fast.  Frequency change = -162095.64ppm, new frequency = 418952.16ppm
chronyc> settime 13:15:05
200 OK
Clock was -83.72 seconds fast.  Frequency change = -700702.19ppm, new frequency = 11810.69ppm
chronyc> settime Mar 02, 2022 13:18:05
200 OK
Clock was 12.54 seconds fast.  Frequency change = 22489.20ppm, new frequency = 34034.28ppm
chronyc> manual off

clients

Выводит количество клиентов NTP подключённых к серверу синхронизации.

chronyc> clients
Hostname   NTP   Drop Int IntL Last     Cmd   Drop Int  Last
==============================================================
10.0.2.33  60      0   9   -   216       0      0   -     -
  • hostname — имя хоста клиента
  • NTP — пакеты NTP, полученные от клиента
  • Drop — отклонённые пакеты для ограничения скорости отклика
  • Int — средний интервал между пакетами
  • IntL — средний интервал между пакетами, когда скорость ограничена
  • Last — время получения последнего пакета NTP
  • Cmd — количество команд полученных от клиента
  • Drop — отклонённые команд для ограничения скорости отклика
  • Int — средний интервал между пакетами команд
  • Last — время с момента получения последнего командного пакета

Заключение.

При планировании корпоративной системы предприятия, необходимо учитывать выбор NTP сервера. Наверное будет правильно, оставить в системе, тот NTP который «исторически» использовался в организации. Как правило, большинство организаций «выросли» из продукции компании Microsoft — служба NTPD. В силу известных обстоятельств, многие компании планируют переход на продукцию OC Linux из Российских дистрибутивов. Планирование и миграция на Linux ставит перед администратором многие вопросы, одним из которых является, выбор сервера NTP. Дистрибутив ALT Linux зарекомендовал себя, как надёжный, устойчивый, перспективный продукт с хорошей историей эксплуатации.. Из статьи видно, основным «коробочным» NTP сервером для ALT Linux является OpenNTPD. Его можно оставит, как бальзовый, при планировании новой структуры корпоративной ИТ. Изменить выбор сервера NTP можно по разным причинам. Серия статей о NTP поможет администратору сделать этот шаг более уверенно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Copyright © 2020-2024
Все права защищены.
При перепечатке указать источник: kabtim-t.ru
Контакты