Внесение изменений с помощью модулей Ansible

Мы хотим установить NTP - демон на сервере, чтобы время синхронизации было синхронизировано. Вместо запуска команды yum install -y ntp на каждом из серверов, мы будем использовать модуль Ansible "yum".

ansible multi -s -m yum -a "name=ntp state=present"

Вы должны увидеть три сообщения ‘success’, без сообщений об изменениях, поскольку NTP уже был установлен на трех компьютерах.

Параметр -s (аналог --sudo) указывает Ansible на выполнение команды с sudo. Этоn подход будет работать с нашими виртуальными машинами Vagrant, но если вы будете выполнять команды на сервере, где учетная запись пользователя требует sudo пароля, следует также передать параметр -K (аналог --ask-sudo-pass), чтобы вы могли ввести sudo пароль.

Теперь мы убедимся, что NTP работает и запускается при загрузке. Мы могли бы использовать две отдельные команды, service ntpd start и chkconfig ntpd on, но вместо этого мы используем модуль Ansible service.

ansible multi -s -m service -a "name=ntpd state=started enabled=yes"

Все три сервера должны показать сообщение об успехе:

Если снова выполнить ту же команду, Ansible сообщит, что ничего не изменилось, поэтому значение "changed" станет false.

Последнее, что нам следует сделать, это проверить, что наши серверы синхронизированы с официальным временем на сервере NTP:

ansible multi -s -a "service ntpd stop"
ansible multi -s -a "ntpdate -q 0.rhel.pool.ntp.org"
ansible multi -s -a "service ntpd start"

Для запуска сервиса ntpdate нам придется остановить сервис ntpd. После запуска ntpdate нужно заново запустить ntpd.

results matching ""

    No results matching ""