Руководство пользователя
Добро пожаловать в Руководство пользователя Ansible! Это руководство о работе с Ansible, включая использование командной строки, работу с инвентарём, взаимодействие с данными, написание задач, плейбуков и задач; выполнение плейбуков и справочные материалы. На этой странице описаны наиболее распространённые ситуации и вопросы, которые приводят пользователей к этому разделу. Если вы предпочитаете традиционный оглавление, вы можете найти его внизу страницы.
Начало работы
-
Мне нужен обзор работы Ansible. Где я могу найти:
- краткое видео-обзрение quick video overview
- текстовое введение text introduction
- Я готов учиться Ansible. Какие концепции Ansible мне необходимо изучить?
- Я хочу использовать Ansible без написания плейбука. Как использовать команды ad-hoc?
Написание задач, плейбуков и задач
- Я пишу свой первый плейбук. Что я должен знать перед началом?
-
У меня есть конкретный случай использования для задачи или плейбука:
- Выполнение задач с повышенными привилегиями или как другой пользователь с помощью become
- Повторение задачи один раз для каждого элемента в списке с помощью циклов
- Выполнение задач на другом компьютере с помощью делегирования
- Выполнение задач только при определённых условиях с помощью условных операторов и проверки условий с помощью тестов
- Группирование набора задач вместе с помощью блоков
- Выполнение задач только тогда, когда что-то изменилось, с помощью обработчиков
- Изменение того, как Ansible обрабатывает ошибки
- Установка удалённых значений среды
- Я хочу использовать возможности повторного использования артефактов Ansible. Как создать повторно используемые файлы и роли?
- Мне нужно включить один файл или плейбук внутри другого. В чём разница между включением и импортом?
- Я хочу запустить определённые части моего плейбука. Как добавить и использовать метки?
Работа с инвентарём
- У меня есть список серверов и устройств, которые я хочу автоматизировать. Как создать инвентарь для отслеживания их?
- Я использую облачные сервисы и у меня постоянно появляются и исчезают серверы и устройства. Как отслеживать их с помощью динамического инвентаря?
- Я хочу автоматизировать определённые подмножества моего инвентаря. Как использовать шаблоны?
Взаимодействие с данными
- Я хочу использовать один плейбук для нескольких систем с различными атрибутами. Как использовать переменные, чтобы справиться с этими различиями?
- Я хочу получить данные о моих системах. Как получить доступ к фактам Ansible?
- Мне нужно получить доступ к конфиденциальным данным, таким как пароли, с помощью Ansible. Как защитить эти данные с помощью Ansible vault?
- Я хочу изменить имеющиеся данные, чтобы использовать их в задаче. Как использовать фильтры для преобразования моих данных?
- Мне нужно получить данные из внешнего хранилища данных. Как использовать поиски для доступа к базам данных и API?
- Я хочу попросить пользователей плейбука предоставить данные. Как получить пользовательский ввод с помощью подсказок?
- Я часто использую определённые модули. Как оптимизировать свой инвентарь и плейбуки, установив значения по умолчанию для параметров модулей?
Выполнение плейбуков
После того, как ваш плейбук готов к запуску, вам могут понадобиться эти темы:
- Выполнение плейбуков “сухого запуска” с помощью режима проверки и сравнения
- Запуск плейбуков во время отладки с помощью начального и пошагового запуска
- Исправление задач во время выполнения с помощью отладчика Ansible
- Управление тем, как выполняется мой плейбук, с помощью стратегий и прочего
- Запуск задач, плейбуков и плейлистов асинхронно
Расширенные функции и справочная информация
- Использование расширенного синтаксиса
- Обработка сложных данных
- Использование плагинов
- Использование ключевых слов плейбука
- Использование инструментов командной строки
- Отклонение определённых модулей
- Модульное обслуживание
Традиционное оглавление
Если вы предпочитаете прочитать всё Руководство пользователя, вот список страниц в порядке:
- Быстрый старт Ansible
- Основные концепции Ansible
- Начало работы
- Введение в ад-хок команды
- Работа с плейбуками
- Введение в плейбуки
- Советы и рекомендации
- Понимание повышения привилегий: become
- Циклы
- Управление местом выполнения задач: делегирование и локальные действия
- Условные операторы
- Тесты
- Блоки
- Обработчики: выполнение операций при изменении
- Обработка ошибок в плейбуках
- Настройка удаленной среды
- Работа с менеджерами версий, специфичными для языка
- Использование повторно артефактов Ansible
- Роли
- Включение и импорт
- Теги
-
Как создать свой инвентарь
- Основы инвентаря: форматы, хосты и группы
- Добавление переменных в инвентарь
- Назначение переменной одному компьютеру: переменные хоста
- Назначение переменной многим компьютерам: переменные группы
- Организация переменных хоста и группы
- Как объединяются переменные
- Использование нескольких источников инвентаря
- Подключение к хостам: параметры поведения инвентаря
- Примеры настройки инвентаря
- Работа с динамическим инвентарем
- Шаблоны: нацеливание на хосты и группы
- Методы и подробности подключения
- Работа с инструментами командной строки
-
Использование переменных
- Создание допустимых имён переменных
- Простые переменные
- Когда следует заключать переменные в кавычки (особенность YAML)
- Переменные списков
- Переменные словарей
- Регистрация переменных
- Ссылка на вложенные переменные
- Преобразование переменных с помощью фильтров Jinja2
- Где задавать переменные
- Приоритет переменных: куда поместить переменную?
- Использование расширенного синтаксиса переменных
- Выявление переменных: факты и магические переменные
-
Шифрование содержимого с помощью Ansible Vault
- Управление паролями vault
- Шифрование содержимого с помощью Ansible Vault
- Использование зашифрованных переменных и файлов
- Настройка по умолчанию для использования зашифрованного содержимого
- Когда зашифрованные файлы становятся видимыми?
- Ускорение Ansible Vault
- Формат файлов, зашифрованных с помощью Ansible Vault
-
Использование фильтров для обработки данных
- Обработка неопределенных переменных
- Определение различных значений для true/false/null (тернарный оператор)
- Управление типами данных
- Форматирование данных: YAML и JSON
- Комбинирование и выбор данных
- Генерация случайных данных
- Управление переменными списков
- Выбор из множеств или списков (теория множеств)
- Вычисление чисел (математика)
- Управление сетевыми взаимодействиями
- Шифрование и проверка целостности строк и паролей
- Обработка текста
- Обработка строк
- Управление UUID
- Обработка дат и времени
- Получение имён ресурсов Kubernetes
- Обращения к справочным данным
- Взаимодействие пользователя: запросы
- Значения по умолчанию модулей
- Проверка задач: режим проверки и режим сравнения
- Выполнение playbook для устранения неполадок
- Отладка задач
- Управление выполнением playbook: стратегии и многое другое
- Асинхронные действия и опрос
- Расширенный синтаксис
- Обработка данных
- Исключение модулей
-
Примерный Ansible setup
- Примерная структура каталогов
- Альтернативная структура каталогов
- Примеры переменных групп и хостов
- Примеры playbook, организованные по функциям
- Примеры файлов задач и обработчиков в роли, основанной на функциях
- Что предоставляет примерный setup
- Организация для развертывания или настройки
- Использование локальных Ansible модулей
- Работа с Модулями
- Работа с плагинами
- Ключевые слова playbook
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/user_guide/index.html