Выпуск системы управления конфигурацией Ansible 2.0

12 января 2016 года

Спустя три месяца с момента перехода проекта в руки компании Red Hat состоялся релиз инструментария Ansible 2.0, предоставляющего средства для управления конфигурацией, оркестровки, централизованной установки приложений и параллельного выполнения типовых задач на группе систем. Код Ansible написан на языке Python и распространяется под лицензией GPLv3.

Из особенностей Ansible можно отметить простой и читаемый язык управления конфигурацией, поддержку распараллеливания работ, отсутствие необходимости установки на удалённые системы специальных программ-агентов (все операции инициируются централизованно по SSH), возможность работы без прав root. Система Ansible не так усложнена, как cfengine, puppet и Chef, но при этом предоставляет достаточно широкие возможности и высокую гибкость управления.

Ключевые новшества:

  • Проведён большой рефакторинг кодовой базы, многие подсистемы переписаны с целью унификации и усовершенствования архитектуры проекта. Полностью переписан код разбора формата YAML для упрощения добавления новых языковых возможностей и получения более подробной информации о сути выявляемых при разборе ошибках синтаксиса YAML. При этом основной задачей при проведении рефакторинга было сохранение обратной совместимости и возможность продолжения использования уже имеющихся конфигураций;
  • Добавлена поддержка блоков задач (Task Blocks), которые предоставляют пользователям средства группировки задач друг с другом, используя теги, условные выражения и различные атрибуты задач. Блоки также представляют новую концепцию привязки обработки исключений к плану конфигурации ( playbooks (Архивная копия от 16 июля 2017 на Wayback Machine)), которые реализованы по аналогии с применением try/except/finally в Python и влияют только на текущий playbook;
  • Расширены средства диагностики ошибок в файлах YAML. Текст ошибки теперь более точно идентифицирует проблему и предлагает возможные способы исправления;
  • Операция include теперь приводит к динамическому разбору подключаемых файлов вместо ранее применяемого метода подстановки текста перед разбором, который вызывал проблемы, если включение производится внутри цикла;
  • Поддержка плагинов для определения стратегии выполнения, позволяющих изменить способ запуска задач на внешних хостах. Классический линейный способ заключается в поочерёдном разборе задач, с выполнением каждой задачи на всех хостах. В Ansible 2.0 дополнительно реализован плагин со стратегией "free", при которой задачи выполняются на хостах в соответствии с инидивидуальным списком, что позволяет переходить на хосте к новым задачам, не дожидаясь завершения выполнения задачи другими хостами;
  • Представлено около 200 новых модулей, среди которых отдельно выделяются модули управления OpenStack, конфигурирования и управления окружениями VMware и Docker, поддержки Amazon Web Services и Microsoft Windows.

Источники править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Выпуск системы управления конфигурацией Ansible 2.0», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.