Скачать PDF
1) Что такое Ansible?
Ansible - это система управления конфигурацией. Он используется для настройки и управления инфраструктурой и приложениями. Он позволяет пользователям развертывать и обновлять приложения с помощью SSH без необходимости установки агента в удаленной системе.
2) Какая польза от Ansible?
Ansible используется для управления ИТ-инфраструктурой и развертывания программных приложений на удаленных узлах.
Например, Ansible позволяет развертывать приложение на многих узлах с помощью одной единственной команды. Однако для этого необходимы некоторые знания программирования, чтобы понимать доступные скрипты.
3) Что такое Ansible Galaxy?
Ansible может связываться с настроенными клиентами из командной строки с помощью команды ansible. Он также позволяет автоматизировать настройку с помощью команды ansible-playbook. Чтобы создать базовую структуру каталогов, вы можете использовать прилагаемый к Ansible инструмент, известный как ansible-galaxy.
Команда:
$ ansible-galaxy init azavea. packer
azavea.packer успешно создан
4) Что такое непрерывная доставка?
Непрерывная доставка - это практика доставки программного обеспечения сразу после его разработки. В этом методе нам нужно использовать систему контроля версий. Программное обеспечение постоянно обновляется в системах реального времени.
5) Как получить доступ к переменным среды оболочки в Ansible?
В Ansible, если вы хотите получить доступ к существующим переменным, пользователю необходимо использовать плагин поиска env. Пример, чтобы получить доступ к значению среды Office на управляющей машине:
Вам нужно написать следующий код:
---#… vars:local_home: "{{ lookup('env','Office') }}"I{{ ansible_env.SOME_VARIABLE }}
6) Какой код нужно написать для доступа к имени переменной?
Имена переменных могут быть построены путем добавления с помощью следующего метода:
{{ hostvars[inventory_hostname]['ansible_' + which_interface]['ipv4']['address'] }}
Метод использования hostvars важен, потому что это словарь всего пространства имен переменных. Переменная inventory_hostname указывает текущий хост, который вы просматриваете в цикле хоста.
7) Объясните, как можно отключить cowsay?
Если cowsay установлен, то, выполняя playbooks внутри Ansible, вы можете отключить coway, используя следующие параметры:
- Удалить Cowsay
- Установка значения для переменной окружения
экспорт ANSIBLE_NOCOWS = 1
8) Объясните, как можно рекурсивно скопировать файл на целевой хост?
Модуль «копировать» имеет рекурсивный параметр. Однако, если вы хотите, чтобы это работало более эффективно для большого количества файлов, то модуль «синхронизация» - лучший вариант для вас.
9) Как вы можете внести изменения в документацию в Ansible?
Документация по Ansible хранится в репозитории проекта git. Он содержит полные инструкции по внесению вклада, которые можно найти в документации.
10) Как лучше всего сделать контент повторно используемым / распространяемым?
Вы можете прочитать все о «ролях» в разделе документации playbooks. Это помогает сделать контент playbook самодостаточным и доступным для других пользователей.
11) Что такое Ansible Tower?
Ansible tower - это инструмент, который делает Ansible очень простым в использовании. Он действует как центр автоматизации задач. Башня бесплатна для использования до 10 узлов.
12) Каким методом можно проверить вары инвентаря, определенные для хоста?
Для этого используйте эту команду:
ansible -m debug -a "var=hostvars['hostname']" localhost
13) Укажите разницу между именем переменной и переменными среды.
Имя переменной |
Переменные среды |
Его можно построить, добавив строки. | Чтобы получить доступ к переменной среды, вам необходимо получить доступ к существующим переменным. |
{{hostvars [inventory_hostname] ['ansible_' + which_interface] ['ipv4'] ['address']}} | #… Vars: local_home: «{{lookup ('env', 'HOME')}}» |
Позволяет добавлять строки | Чтобы установить переменные среды, нам нужно увидеть раздел расширенных playbooks. |
Тип адреса IPv4 используется для имен переменных, мы используем адрес IPv4. | Для переменных удаленной среды используйте {{ansible_env.SOME_VARIABLE}}. |
14) Что такое специальные команды?
Вы можете думать о специальных командах как о способе выполнения нами действий с нашими хостами без написания учебного пособия. Например, если мы хотим перезагрузить все хосты в определенной группе (веб-серверах). Затем вы можете написать сценарий или просто выполнить одноразовую специальную команду.
15) Объясните Ansible факты
Вы можете думать об анзибле как о способе для анзибля получать информацию о хосте и сохранять их в переменных для облегчения доступа. Эта информация, хранящаяся в предварительно определенных переменных, доступна для использования в сборнике воспроизведения. Для создания фактов ansible запускает модуль настройки.
16) Как вы видите все переменные для хоста?
Вы можете увидеть их с помощью переменной host. Здесь хранятся переменные хоста с именем хоста в качестве ключа. Например, чтобы посмотреть переменные, определенные для localhost, вы можете запустить;
ansible -m debug -a "var=hostvars[inventory_hostnam
17) Объяснять модули в анзибле
Модули в Ansible идемпотентны. С точки зрения службы RESTful, чтобы операция была идемпотентной, клиенты могут получить тот же результат, используя модули в Ansible. Несколько одинаковых запросов становятся одним запросом.
В Ansible есть два разных типа модулей:
-
Основные модули
-
Дополнительные модули
Основные модули
Команда Ansible поддерживает эти типы модулей, и они всегда будут поставляться с программным обеспечением Ansible. Они также будут отдавать более высокий приоритет всем запросам, чем запросы в репозиториях «extras».
Дополнительные модули:
Эти модули в настоящее время идут в комплекте с Ansible, но в будущем могут быть доступны отдельно. Они также в основном поддерживаются сообществом Ansible. Эти модули по-прежнему можно использовать, но они могут получить меньшую скорость ответа на проблемы и запросы на вытягивание.
18) Когда следует тестировать сценарии и роли?
По сути, тесты могут быть добавлены либо в новые Playbook, либо в существующие Playbook. Поэтому большая часть работы по тестированию каждый раз предлагает чистый хостинг. Используя эту методологию тестирования, вам нужно практически не вносить изменений в код.
19) Обсудите метод создания пустого файла с помощью Ansible
Чтобы создать и очистить файл, вам необходимо выполнить указанные шаги.
Шаг 1. Сохраните пустой файл в каталоге файлов.
Шаг 2. Скопируйте его на удаленный хост.