Jump to content

Анзибль (программное обеспечение)

Анзибль
Оригинальный автор(ы) Майкл ДеХаан
Разработчик(и) Сообщество Ansible / Ansible Inc. / Red Hat Inc.
Первоначальный выпуск 20 февраля 2012 г .; 12 лет назад ( 20 февраля 2012 г. ) [ нужна ссылка ]
Стабильная версия
2.17.2 [1]  Отредактируйте это в Викиданных / 15 июля 2024 г.
Репозиторий
Написано в Питон , PowerShell , оболочка
Операционная система Linux , Unix-подобные , MacOS , Windows
Доступно в Английский
Тип Управление конфигурацией , инфраструктура как код (IaC), механизм оркестрации
Лицензия Стандартная общественная лицензия GNU версии 3.
Веб-сайт www .ансибль  Edit this on Wikidata

Ansible — это набор программных инструментов, которые позволяют использовать инфраструктуру в виде кода . Это открытым исходным кодом пакет с , который включает в себя предоставление программного обеспечения , управление конфигурацией и развертывания приложений . функции [2]

Первоначально написанный Майклом ДеХааном в 2012 году и приобретенный Red Hat в 2015 году, Ansible предназначен для настройки как Unix-подобных систем, так и Microsoft Windows . Ansible не требует агентов и полагается на временные удаленные подключения через SSH или удаленное управление Windows , что позволяет выполнять PowerShell . Узел управления Ansible работает в большинстве Unix-подобных систем, поддерживающих Python , включая Windows с установленной подсистемой Windows для Linux . [3] Конфигурация системы частично определяется с помощью собственного декларативного языка .

Термин « ансибль » был придуман Урсулой К. Ле Гуин в ее романе 1966 года «Мир Роканнона» . [4] и относится к вымышленным системам мгновенной связи. [5] [6]

Инструмент Ansible был разработан Майклом ДеХааном, автором серверного приложения Cobbler и соавтором инфраструктуры Fedora Unified Network Controller (Func) для удаленного администрирования. [7]

Ansible, Inc. (первоначально AnsibleWorks, Inc.) — компания, основанная в 2013 году ДеХааном, Тимоти Герлой и Саидом Зиуани для коммерческой поддержки и спонсирования Ansible. [8] [9] [10] Red Hat приобрела Ansible в октябре 2015 года. [11] [12]

Ansible включен в состав дистрибутива Linux Fedora , принадлежащего Red Hat , а также доступен для Red Hat Enterprise Linux , CentOS , openSUSE , SUSE Linux Enterprise , Debian , Ubuntu , Scientific Linux и Oracle Linux через дополнительные пакеты для Enterprise. Linux, а также для других операционных систем. [13]

Архитектура

[ редактировать ]

Ansible помогает управлять несколькими машинами, выбирая части инвентаря Ansible, хранящиеся в простых текстовых файлах. Инвентаризация настраивается, а инвентаризация целевого компьютера может быть получена динамически или из облачных источников в различных форматах ( YAML , INI ). [14]

Конфиденциальные данные можно хранить в зашифрованных файлах с помощью Ansible Vault. [15] с 2014 года. [16] В отличие от других популярных программ управления конфигурацией, таких как Chef , Puppet , Salt и CFEngine , Ansible использует безагентную архитектуру. [17] с Программное обеспечение Ansible обычно не работает и даже не установлено на контролируемом узле. [17] Вместо этого Ansible управляет узлом, модули временно устанавливая и запуская на нем через SSH. Во время выполнения задачи оркестрации процесс, запускающий модуль, взаимодействует с управляющей машиной с помощью протокола на основе JSON через стандартный ввод и вывод. [18] Когда Ansible не управляет узлом, он не потребляет ресурсы на узле, поскольку не демоны и не устанавливается программное обеспечение. запускаются [17]

Зависимости

[ редактировать ]

Ansible требует , чтобы Python был установлен на всех управляющих компьютерах, включая менеджер пакетов pip , а также программное обеспечение для управления конфигурацией и зависимые от него пакеты. Управляемые сетевые устройства не требуют дополнительных зависимостей и не требуют агентов. [19]

Узел управления

[ редактировать ]

Узел управления (главный хост) предназначен для управления (оркестрирования) целевыми машинами (узлы, называемые « инвентаризация », см. ниже). [20] Узлы управления могут запускаться из Linux и Unix-подобных операционных систем (включая MacOS ); Операционные системы Windows поддерживаются только через подсистему Windows для Linux . [21] Допускается использование нескольких узлов управления. [20] Ansible не требует единой управляющей машины для оркестровки. [22] обеспечение простоты аварийного восстановления. [22] Узлы управляются управляющим узлом через SSH .

Цели дизайна

[ редактировать ]

Цели проектирования Ansible включают в себя: [18]

  • Минималистичный по своей природе. Системы управления не должны налагать дополнительные зависимости от окружающей среды. [17]
  • Последовательный. С помощью Ansible можно создавать согласованные среды.
  • Безопасный. Ansible не развертывает агентов на узлах. только OpenSSH и Python. На управляемых узлах требуются [17] [22]
  • Надежный. При тщательном написании сборник сценариев Ansible может быть идемпотентным , чтобы предотвратить неожиданные побочные эффекты на управляемые системы. [23] Можно написать неидемпотентные пьесы.
  • Требуется минимальное обучение. В Playbooks используется простой и описательный язык, основанный на шаблонах YAML и Jinja .

Модули [24] в основном автономны и могут быть написаны на стандартном языке сценариев (например, Python, Perl , Ruby , Bash и т. д.). [ нужна ссылка ] . Одной из основных целей модулей является идемпотентность, которая означает, что даже если операция повторяется несколько раз (например, при восстановлении после сбоя), она всегда переводит систему в одно и то же состояние. [18] [ нужен неосновной источник ]

Конфигурация инвентаря

[ редактировать ]

Местоположение целевых узлов указывается с помощью списков конфигурации инвентаря (в формате INI или YAML), расположенных по адресу /etc/ansible/hosts (в Linux). [14] [25] В файле конфигурации указан либо IP-адрес , либо имя хоста каждого узла, доступного для Ansible. Кроме того, узлы можно объединять в группы. [14]

Пример формата инвентаря ( INI-файл ):

192.168.6.1

[webservers]
foo.example.com
bar.example.com

В этом файле конфигурации указаны три узла: первый узел указан по IP-адресу, а два последних узла указаны по именам хостов. Кроме того, последние два узла сгруппированы под webservers группа.

Ansible также может использовать собственный сценарий динамической инвентаризации , который может динамически извлекать данные из другой системы. [26] и поддерживает группы групп. [27]

Учебники

[ редактировать ]

Playbooks — это YAML- файлы, в которых хранятся списки задач для повторения. [28] [20] выполнения на управляемых узлах. [20] [29] Каждый Playbook сопоставляет (связывает) группу хостов с набором ролей. Каждая роль представлена ​​вызовами задач Ansible. [30]

Платформа автоматизации Ansible

[ редактировать ]

Платформа автоматизации Ansible (AAP) — это REST API , веб-сервис и веб-интерфейс (приложение), предназначенные для того, чтобы сделать Ansible более доступным для людей с широким спектром ИТ-навыков. Это платформа, состоящая из нескольких компонентов, включая инструменты разработчика, операционный интерфейс, а также Automation Mesh, позволяющую решать задачи автоматизации в масштабе всех центров обработки данных. AAP — это коммерческий продукт, поддерживаемый Red Hat, Inc., но на его основе создано более 17 исходных проектов с открытым исходным кодом, включая восходящий проект AWX (ранее производный от Ansible Tower), исходный код которого является открытым с сентября 2017 года. [31] [32] [33] [34]

Существует также еще одна альтернатива Tower с открытым исходным кодом — Semaphore, написанная на Go . [35] [36]

Поддержка платформы

[ редактировать ]

Управляющие машины должны быть хостами Linux/Unix (например, BSD , CentOS , Debian , macOS , Red Hat Enterprise Linux , SUSE Linux Enterprise , Ubuntu). [13] ), и требуется Python 2.7 или 3.5. [19]

Управляемые узлы, если они Unix-подобны, должны иметь Python 2.4 или более поздней версии. Для управляемых узлов с Python 2.5 или более ранней версии python-simplejson пакет тоже необходим. [37] Начиная с версии 1.7, Ansible также может управлять Windows. [38] узлы. [37] В этом случае вместо SSH используется собственное удаленное взаимодействие PowerShell, поддерживаемое протоколом WS-Management.

Ansible можно развертывать на физических хостах, виртуальных машинах и в облачных средах. [18]

AnsibleFest — это ежегодная конференция сообщества пользователей, участников и т. д. Ansible. [39]

Год Расположение
2014 Сан-Франциско, Калифорния, США
2015 Лондон, Великобритания
2016 Лондон, Великобритания
2016 Сан-Франциско, Калифорния, США
2016 Бруклин, Нью-Йорк, США
2017 Лондон, Великобритания
2017 Сан-Франциско, Калифорния, США
2018 Остин, Техас, США
2019 Атланта, Джорджия, США
2020 Виртуальный только из-за пандемии COVID-19
2021 Виртуальный только из-за пандемии COVID-19
2022 Чикаго, Иллинойс, США
2023 Бостон, Массачусетс, США
2024 Денвер, Колорадо, США
2025 Лас-Вегас, Невада, США

См. также

[ редактировать ]
  1. ^ «Выпуск 2.17.2» . 15 июля 2024 г. Проверено 21 июля 2024 г.
  2. ^ Штатный писатель. «Обзор — как работает Ansible» . ansible.com . Red Hat , Inc. с. 1 . Проверено 7 декабря 2016 г.
  3. ^ «Руководство по установке документации Ansible» . docs.ansible.com . Проверено 7 июля 2022 г.
  4. ^ Бернардо, Сьюзен; Мерфи, Грэм Дж (2006). Урсула К. Ле Гуин: критический собеседник . Вестпорт, Коннектикут: Greenwood Press. п. 18 . ISBN  978-0-313-02730-7 . OCLC   230345464 .
  5. ^ «Часто задаваемые вопросы» . docs.ansible.com . Анзибль-документация. Red Hat , Inc. с. 1 . Проверено 7 марта 2023 г.
  6. ^ ДеХаан, Майкл (29 января 2014 г.). «Почта в группах Google – проект Ansible» . groups.google.com . п. 1 . Проверено 26 апреля 2017 г.
  7. ^ Моэн, Майк (17 апреля 2012 г.). «Интервью с автором Ansible Майклом ДеХааном» . coloandcloud.com . ООО Могансем. п. 1. Архивировано из оригинала 14 ноября 2012 года . Проверено 5 ноября 2012 г.
  8. ^ «Об Ансибле» . Ansible, Inc. с. 1. Архивировано из оригинала 5 сентября 2015 года . Проверено 8 июля 2016 г.
  9. ^ Исследование Блумберга. «Ansible, Inc.: Информация о частной компании» . Интернет-программное обеспечение и услуги . Bloomberg LP с. 1 . Проверено 8 июля 2016 г.
  10. ^ «О команде» . 05.09.2015. Архивировано из оригинала 5 сентября 2015 г. Проверено 7 апреля 2021 г.
  11. ^ Новет, Иордания (15 октября 2015 г.). «Источник: Red Hat покупает Ansible более чем за 100 миллионов долларов» . www.venturebeat.com . VentureBeat , Inc. с. 1 . Проверено 16 октября 2015 г.
  12. ^ Штатный автор (16 октября 2015 г.). «Red Hat приобретает компанию Ansible, лидера в области ИТ-автоматизации и DevOps» . redhat.com . Красная шляпа , Inc. Проверено 16 октября 2015 г.
  13. ^ Перейти обратно: а б Ульяницкий, Николай. «Загрузка ansible (DEB, RPM, TGZ, TXZ, XZ)» . pkgs.org . Поиск пакетов Linux. п. 1 . Проверено 5 ноября 2012 г.
  14. ^ Перейти обратно: а б с «Инвентарь» . docs.ansible.com . Анзибль-документация. Red Hat , Inc. с. 1 . Проверено 7 марта 2023 г.
  15. ^ «Ansible Vault — Документация Ansible» . docs.ansible.com .
  16. ^ «Ansible vault: платформа для шифрования любого файла playbook или var. · ansible/ansible@427b8dc» . Гитхаб .
  17. ^ Перейти обратно: а б с д и «Преимущества безагентной архитектуры» (PDF) . Red Hat , Inc. с. 5.
  18. ^ Перейти обратно: а б с д «Подробно об Ansible» (PDF) . Red Hat , Inc. с. 5.
  19. ^ Перейти обратно: а б «Поддержка Python 3» . docs.ansible.com . Анзибль-документация. Red Hat , Inc. с. 1. Архивировано из оригинала 10 июля 2017 года . Проверено 6 июля 2017 г.
  20. ^ Перейти обратно: а б с д «Концепции Ansible — Документация Ansible» . docs.ansible.com . Проверено 19 ноября 2021 г.
  21. ^ «Установка Ансибла» . docs.ansible.com . Проверено 4 января 2023 г.
  22. ^ Перейти обратно: а б с «Руководство по установке — Документация Ansible» . docs.ansible.com . Проверено 30 ноября 2018 г.
  23. ^ «Обеспечение чередующихся обновлений и непрерывного развертывания с нулевым временем простоя» (PDF) . Red Hat , Inc. с. 7.
  24. ^ «Указатель модуля — документация Ansible» . docs.ansible.com .
  25. ^ «Работа с инвентарем — документация Ansible» . docs.ansible.com . Проверено 30 ноября 2018 г.
  26. ^ «Динамическая инвентаризация» . docs.ansible.com . Анзибль-документация. Red Hat , Inc. с. 1. Архивировано из оригинала 5 августа 2019 года . Проверено 25 ноября 2016 г.
  27. ^ «Как составить инвентарь — Документация Ansible» . docs.ansible.com .
  28. ^ «Игровые книжки» . docs.ansible.com . Анзибль-документация. Red Hat, Inc. с. 1 . Проверено 7 марта 2023 г.
  29. ^ «Введение в плейбуки — документация Ansible» . docs.ansible.com . Проверено 19 ноября 2021 г.
  30. ^ «Организация задач и обработчиков для роли» . docs.ansible.com . Анзибль-документация. Red Hat , Inc. с. 1. Архивировано из оригинала 17 июля 2017 года . Проверено 25 ноября 2016 г.
  31. ^ Реддиторы (19 февраля 2016 г.). «Ansible объявляет, что Tower станет открытым исходным кодом в ближайшем будущем на AnsibleFest!» . Reddit.com . Реддит . п. 1 . Проверено 20 июля 2017 г.
  32. ^ Штатный писатель. «Проект Открытая башня» . ansible.com/open-tower . Red Hat , Inc. с. 1 . Проверено 21 января 2017 г.
  33. ^ Шляпа Ансибл, красная (7 мая 2024 г.). «Часто задаваемые вопросы по проекту AWX | Ansible.com» . www.ansible.com . {{cite web}}: CS1 maint: несколько имен: список авторов ( ссылка )
  34. ^ "ансибль/awx" . 25 марта 2020 г. – через GitHub.
  35. ^ Семафорное сообщество. «API-семафор» . ansible-semaphore.com . п. 1 . Проверено 19 сентября 2023 г.
  36. ^ Семафорное сообщество. "ансибль-семафор" . github.com/ansible-semaphore . ООО «Кастауэй Консалтинг» . Проверено 5 февраля 2021 г.
  37. ^ Перейти обратно: а б "Начиная" . docs.ansible.com . Анзибль-документация. Red Hat , Inc. с. 1 . Проверено 7 марта 2023 г.
  38. ^ ДеХаан, Майкл (6 августа 2014 г.). «Выпущена Ansible 1.7 – бета-версия Windows и многое другое!» . ansible.com/блог . Внутренняя книга игр. Ansible, Inc. с. 1 . Проверено 7 августа 2014 г.
  39. ^ «АнсиблФест» . Анзибль . Красная шляпа, Inc. Проверено 4 октября 2018 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 0ab2e17ad44a4f3ac86d0b176c93e2fa__1720504560
URL1:https://arc.ask3.ru/arc/aa/0a/fa/0ab2e17ad44a4f3ac86d0b176c93e2fa.html
Заголовок, (Title) документа по адресу, URL1:
Ansible (software) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)