Внесение изменений с помощью модулей 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.