- Создайте свой собственный (или используйте старый) публичный репозиторий на github с произвольным именем.
- Скачайте playbook из репозитория с домашним заданием и перенесите его в свой репозиторий.
- Подготовьте хосты в соотвтествии с группами из предподготовленного playbook.
- Скачайте дистрибутив java и положите его в директорию
playbook/files/
.
- Приготовьте свой собственный inventory файл
prod.yml
. - Допишите playbook: нужно сделать ещё один play, который устанавливает и настраивает kibana.
- При создании tasks рекомендую использовать модули:
get_url
,template
,unarchive
,file
. - Tasks должны: скачать нужной версии дистрибутив, выполнить распаковку в выбранную директорию, сгенерировать конфигурацию с параметрами.
- Запустите
ansible-lint site.yml
и исправьте ошибки, если они есть. - Попробуйте запустить playbook на этом окружении с флагом
--check
. - Запустите playbook на
prod.yml
окружении с флагом--diff
. Убедитесь, что изменения на системе произведены. - Повторно запустите playbook с флагом
--diff
и убедитесь, что playbook идемпотентен. - Подготовьте README.md файл по своему playbook. В нём должно быть описано: что делает playbook, какие у него есть параметры и теги.
- Готовый playbook выложите в свой репозиторий, в ответ предоставьте ссылку на него.
- Приготовьте дополнительный хост для установки logstash.
- Пропишите данный хост в
prod.yml
в новую группуlogstash
. - Дополните playbook ещё одним play, который будет исполнять установку logstash только на выделенный для него хост.
- Все переменные для нового play определите в отдельный файл
group_vars/logstash/vars.yml
. - Logstash конфиг должен конфигурироваться в части ссылки на elasticsearch (можно взять, например его IP из facts или определить через vars).
- Дополните README.md, протестируйте playbook, выложите новую версию в github. В ответ предоставьте ссылку на репозиторий.
Выполненное домашнее задание пришлите ссылкой на .md-файл в вашем репозитории.