Настройка и запуск NTP сервера =============================== Порядок загрузки данных и программ ------------------------------------- Администратор УВ осуществляет развёртывание, запуск и настройку NTP сервиса с помощью данного руководства. .. _ntp_without_docker: Настройка и запуск NTP сервиса БЕЗ использования docker ---------------------------------------------------------- .. _distr_without_docker: Состав и содержание дистрибутивного пакета ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ``/distr/chrony/chrony.rpm`` – установочный пакет для ОС CentOS 7.x; - ``/distr/common/einfahrt-chrony.service`` — unit для systemd; - ``/distr/config/prodConfig.conf`` – конфигурационный файл для использования в ПРОД среде; - ``/distr/config/testConfig.conf`` – конфигурационный файл для использования в ТЕСТ среде. Путь ``/distr/`` указан в качестве примера. Есть возможность использовать любой другой путь, скорректировав соответствующим образом упоминаемые ниже команды. .. _pre_ntp_without_docker: Предварительные операции (установка «пре-реквизитов») ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Перед запуском NTP сервиса выполнить следующие действия: 1. Установить пакет с сервисом chrony: .. code-block:: bash sudo cd /distr/chrony sudo yum install chrony.rpm 2. Скопировать конфигурационный файл в /etc/chrony.conf: .. code-block:: bash sudo cp /distr/config/{{ stand }}Config.conf /etc/einfahrt-chrony.conf где ``{{ stand }}`` – название среды, к которой подключается агент (prod/test) .. _ntp_start_without_docker: Запуск NTP сервиса ~~~~~~~~~~~~~~~~~~~~~ Файл системного сервиса ``/distr/common/einfahrt-chrony.service`` необходимо положить в каталог ``/etc/systemd/system/`` (потребуются root права) Далее выполнить команды по включению, запуску сервиса и проверке его статуса: .. code-block:: bash sudo systemctl daemon-reload sudo systemctl enable einfahrt-chrony sudo systemctl start einfahrt-chrony sudo systemctl -l status einfahrt-chrony .. _ntp_with_docker: Настройка и запуск NTP сервиса с использованием docker -------------------------------------------------------- .. _pre_conditions: Предварительные условия ~~~~~~~~~~~~~~~~~~~~~~~~ 1. На сервере должен быть установлен docker версии не ниже 20.10.12. 2. Создан пользователь, который будет запускать NTP сервис. 3. Этот пользователь должен иметь права на загрузку докер-образов и запуск/остановку контейнеров (т.е. добавлен в группу docker). .. _disr_with_docker: Состав и содержание дистрибутивного пакета ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Ниже приведён состав дистрибутива NTP сервиса для docker. - ``/distr/chrony/chrony.tgz`` – docker image для загрузки в систему; - ``/distr/scripts/run_chrony.sh`` – скрипт для запуска и перезапуска ntp сервиса; - ``/distr/scripts/stop.sh`` – скрипт для остановки ntp сервиса; Путь ``/distr/chrony`` использован для примера, не является фиксированным и может быть изменен на любой другой по желанию пользователя, с соответствующим внесением корректировок при его упоминаниях ниже. Ниже, в качестве примера, будет использоваться данный путь. .. _pre_start_with_docker: Подготовка к запуску ~~~~~~~~~~~~~~~~~~~~~ Для запуска NTP сервиса под docker полученный docker образ необходимо загрузить в локально установленный docker на машине, где будет работать NTP. Для этого необходимо выложить архив с образом на локальный диск этой машины и выполнить команду: .. code-block:: bash cd /distr/chrony docker load < chrony.tgz где ``chrony.tgz`` – имя полученного архива с docker image Агента ПОДД из пакета поставки. Загрузка должна завершиться без ошибок. Проверить успешность загрузки можно командой: .. code-block:: bash docker images | grep einfahrt-chrony Вывод будет содержать информацию вида: .. code-block:: bash einfahrt-chrony latest c7511824117e 5 days ago 13MB .. _start_ntp_with_docker: Запуск NTP ~~~~~~~~~~ Для запуска NTP сервиса используется ``скрипт run_chrony.sh`` (предварительно раскомментировать нужную строку с NTP серверами для используемой среды ``prod/test``), входящий в пакет поставки. Скрипт не требует указания параметров. При выполнении всех шагов, перечисленных в :numref:`pre_start_with_docker`, NTP сервис будет успешно запущен, с сообщением о доступных портах. При повторном выполнении скрипта контейнер будет остановлен и запущен заново. Остановка контейнера осуществляется скриптом ``stop.sh``.