Предыдущий урок: Ansible практика – урок №16: loop – циклы в плейбуке.
За эту серию уроков мы прошли долгий путь. Мы рассмотрели и на практике изучили базовые принципы Ansible. Собрали свой плейбук, который близок к реальным задачам, для которых и применяется Ansible.
Есть что-то, чего мы не изучили?
Да, есть еще сотни разных модулей, особенностей и нюансов, которые мы не успели охватить в наших уроках. Мы изучили основы основ и закрепили их на практике, но дальше – дело за вами.
Что дальше
- Шаг 1: Используйте реальные задачи
- Шаг 2: Используйте официальную документацию
- Шаг 3: Используйте git
- Шаг 4: Используйте тестовую ноду
Наша серия практических уроков подошла к концу, не из-за того что больше не о чем рассказывать, а наоборот, еще осталось столько тем, что практика никогда не закончится. А это значит, что ваша реальная работа с Ansible только начинается.
Шаг 1: Используйте реальные задачи
В Ansible сотни модулей, рассчитанных на разнообразные ситуации. Однако, изучение отдельных модулей в вакууме не имеет особого смысла, вы забудете о них без реального применения. То же самое касается использования тегов, организации инвентори и прочих аспектов Ansible.
Подумайте, какие рутинные задачи в своей повседневной работе вы можете выделить в плейбук. Вы уже знаете, как это делается, и вам не составит труда, составить простой плейбук для автоматизации простых задач.
Далее продолжайте дополнять этот плейбук или создавайте отдельные плейбуки для решения дополнительных задач. Это поможет закреплять новые знания на практике, а ваше самообучение будет иметь вполне осязаемый полезный результат.
Шаг 2: Используйте официальную документацию
Когда вам нужно добавить небольшую таску, чтобы выполнить какое-нибудь простое действие, велик соблазн загуглить и взять первый же ответ. Скорее всего, это будет правильный ответ, но не поленитесь заглянуть в официальную документацию, найдите там описание использованного модуля.
Там будут объяснены все возможные параметры и приведены примеры использования. Это поможет не только лучше понять предложенное решение, но и узнать, для каких еще задач подойдет данный модуль.
Шаг 3: Используйте git
Работая в команде использовать систему контроля версий фактически обязательно. Это позволит согласовано совместно работать над плейбуком. Все изменения кода будут доступны команде, что позволяет своевременно на них реагировать в своей работе.
Даже если это ваш личный плейбук, держать его копию в репозитории где-нибудь на GitHub – хорошая практика. Вы всегда сможете восстановить прежнюю версию кода, если последние изменения окажутся неудачными. Или полностью восстановить плейбук, в случае утраты его на контрольной ноде.
Шаг 4: Используйте тестовую ноду
Когда вы работаете с обширной системой и у вас большой плейбук, ошибки при его редактирование неизбежны. Но если плейбук выполняет много изменений на хосте, особенно необратимые, цена ошибки может быть очень высока.
Раскатывать обновленный плейбук сразу на все продуктивное окружение – рисковая идея. Чтобы обезопасить себя, имейте под рукой тестовую машину, которая максимально близка к тем, на которые вы собираетесь выкатывать изменения.
Так вы соберете все ошибки на тестовом сервере, без последствий для реальных нод. Работая с тестовым хостом, вы отладите плейбук и будете готовы к работе с реальным окружением.
Итоги:
Мы закончили серию практических уроков по Ansible. Полученных знаний достаточно, для его использования на базовом уровне и дальнейшего внедрения Ansible в свою работу.