You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
5.6 KiB
Markdown

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# Справочный материал
## Что такое Ansible?
Ansible - это инструмент управления конфигурацией, стоящий в ряду с Chef, Puppet и Salt.
Когда мы говорим о конфигурации управления, мы обычно говорим о написании какого-то состояния описание для наших серверов, а затем с помощью инструмента для обеспечения того, чтобы серверы были, действительно, в таком состоянии: нужные пакеты установлены, конфигурационные файлы содержат ожидаемые значения и имеют ожидаемые разрешения, работают нужные службы, и так далее. Как и другие инструменты правления конфигурацией, Ansible предоставляет доменный язык (DSL), который вы используете для описания состояния ваших серверов.
Ansible — инструмент для развертывания приложений.
Когда люди говорят о развертывании, они обычно имеют в виду процесс использования программного обеспечения, которое было написано собственными силами, создание двоичных файлов или статических ресурсов (при необходимости), копирование необходимых файлов в сервер(ы), а затем запуск служб. Capistrano и Fabric — два примера инструментов развертывания с открытым исходным кодом. Ansible — отличный инструмент для развертывания, а также управление конфигурацией. Использование единого инструмента для управления конфигурацией и развертывания упрощает жизнь тем, кто отвечает за операции.
Ansible — инструмент для выполнения действий на нескольких серверах.
Некоторые люди говорят о необходимости оркестрации развертывания. Вот где много- Задействовано множество удаленных серверов, и все должно происходить в определенном порядке. За например, вам нужно поднять базу данных перед запуском веб-серверов, или вам нужно выводить веб-серверы из балансировщика нагрузки по одному, чтобы обновить их без простоев. Ansible также хорош в этом и разработан из основа для выполнения действий на нескольких серверах. Ansible имеет освежающий простая модель управления порядком выполнения действий.
Ansible — инструмент для взаимодействия с облаком.
Наконец, вы услышите, как люди говорят о предоставлении новых серверов. В контексте общественного облака, такие как Amazon EC2, это относится к запуску новой виртуальной машины пример. Ansible поможет вам в этом, предоставив ряд модулей для общения с облаком, включая EC2, Azure, Digital Ocean, Google Compute Engine, Linode и Rackspace, а также любые облака, поддерживающие API OpenStack.
## Релевантные определения
**Хост** — удаленная машина, управляемая Ansible.
**Группа**— несколько хостов сгруппированных вместе, которые имеют общий атрибут.
**Инвентарь** — коллекция всех хостов и групп, которыми управляет Ansible. Это может быть статический файл в простых случаях, или инвентарь из удаленных источников, таких как облачные поставщики.
**Модули** — единицы кода, которые Ansible отправляет в удаленные узлы для выполнения.
**Задачи** — единицы действия, которые объединяют модуль и его аргументы вместе с некоторыми другими параметрами.
**Playbook** — упорядоченный список задач, а также его необходимые параметры, которые определяют рецепт для настройки системы.
**Роли** — переиспользуемые единицы организации, которые позволяют пользователям облегчить код автоматизации. Обычно включают список файлов и задач для настройки одного сервиса.
**YAML** — популярный и простой формат данных.