Подписка на курсы Слёрма: 21 курс в полном доступе
Блог Слёрм

Как ускорить Ansible: 10 способов оптимизации. Часть 2

Читать первую часть статьи по ссылке.

Продолжаем говорить про то, как ускорить работу с Ansible. Держите следующие 5 способов:
1. Используйте strategy: free
Позволяет хостам не ждать друг друга:
- hosts: all
strategy: free
2. Ускорение работы с шаблонами (Jinja2)
✅ Избегайте сложных вычислений в шаблонах
❌ Медленно:
{{ lookup('file', '/large/file') | to_json }}
✅ Быстрее:
{{ precomputed_variable }}
3. Локальный режим (--connection=local)
Если играетесь с localhost:
ansible-playbook playbook.yml --connection=local
4. Профилирование плейбуков
✅ Включите тайминг (callback_plugins)
В ansible.cfg:
[defaults]
callback_whitelist = timer, profile_tasks
Вывод покажет самые долгие задачи!
5. Используйте mitogen (экспериментально)
Ускоряет Ansible в 2-5 раз:
pip install mitogen
В ansible.cfg:
[defaults]
strategy_plugins = /path/to/mitogen/ansible_mitogen/plugins/strategy
strategy = mitogen_linear
Какие выводы? Максимальный прирост скорости в Ansible дают:
◼️ SSH pipelining + ControlMaster (+30-50%);
◼️ параллельный запуск (-f N);
◼️ отключение gather_facts;
◼️ оптимизация инвентаря.
Подробнее ускорение Ansible раскрываем в рамках темы «Использование Ansible в продакшене» на курсе «Ansible: Infrastructure as Code».
После обучения вы сможете с помощью Ansible легко:
  • настраивать автоматизацию управления инфраструктурой;
  • автоматизировать конфигурацию серверов и развёртывание приложений;
  • писать, тестировать и оптимизировать плейбуки для автоматизации задач;
  • внедрять интеграции Ansible с другими инструментами и платформами;
  • интегрировать Ansible с Docker для автоматизации установки, управления и развёртывания контейнеризованных приложений;
  • использовать роли и переменные для структурирования и управления конфигурациями и др.
Стоимость обучения на курсе вырастет 21 апреля. Вы ещё успеваете занять место с выгодой и уже в мае внедрить Ansible в рабочие проекты. Прочитать отзывы студентов и выбрать формат обучения — по ссылке.

Ansible