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 установлен, тогда, выполняя plays внутри Ansible, вы можете отключить coway, используя следующие параметры:
- Удалить cowsay
- Установка значения для переменной среды
экспорт ANSIBLE_NOCOWS = 1
8) Объясните, как вы можете копировать файл рекурсивно на целевой хост?
Модуль «copy» имеет рекурсивный параметр. Однако, если вы хотите, чтобы это выполнялось более эффективно для большого количества файлов, тогда модуль «синхронизация» — лучший вариант для вас.
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 [имя_хоста_ инвентаря] [‘ansible_’ + which_interface] [‘ipv4’] [‘address’]}} | #… Vars: local_home: «{{lookup (‘env’, ‘HOME’)}}}» |
Позволяет добавлять строки | Чтобы установить переменные среды, нам нужно увидеть раздел «Расширенные игровые книги». |
Использование типа адреса IPv4 для имен переменных мы используем адрес IPv4. | Для переменных удаленной среды используйте {{ansible_env.SOME_VARIABLE}} |
14) Что такое специальные команды?
Вы можете думать о специальных командах, как о способе, которым мы можем действовать на наших хостах без написания книги игр. Например, если мы хотим перезагрузить все хосты в определенной группе (веб-серверы). Затем вы можете написать сборник пьес или просто выполнить одноразовую специальную команду.
15) Объясните Ansible факты
Вы можете думать об ансибальных фактах как о том, как ансайбл может получить информацию о хосте и сохранить ее в переменных для легкого доступа. Эта информация, хранящаяся в предопределенных переменных, доступна для использования в игровой книге. Чтобы сгенерировать факты, ansible запускает модуль установки.
16) Как вы видите все переменные для хоста?
Вы можете увидеть их, используя переменную хоста. Это хранит переменные хоста с именем хоста в качестве ключа. Например, чтобы посмотреть переменные, определенные для localhost, вы можете запустить;
ansible -m debug -a "var=hostvars[inventory_hostnam
17) Объясните модули в ansible
Модули в Ansible являются идемпотентными. С точки зрения сервиса RESTful, чтобы операция была идемпотентной, клиенты могут достичь того же результата, используя модули в Ansible. Несколько идентичных запросов становятся одним запросом.
В Ansible есть два разных типа модулей:
-
Основные модули
-
Дополнительные модули
Основные модули
Команда Ansible поддерживает эти типы модулей, и они всегда будут поставляться с программным обеспечением Ansible. Они также будут иметь более высокий приоритет для всех запросов, чем те, которые находятся в репо «extras».
Дополнительные модули:
Эти модули в настоящее время в комплекте с Ansible, но могут быть доступны отдельно в будущем. Они также в основном поддерживаются сообществом Ansible. Эти модули по-прежнему можно использовать, но они могут получать меньше ответов на проблемы и запросы на извлечение.
18) Когда следует тестировать пьесы и роли?
В любом случае, тесты могут быть добавлены либо в новые Playbooks, либо в существующие Playbooks. Поэтому большинство тестовых заданий каждый раз предлагает чистый хостинг. Используя эту методологию тестирования, вам нужно вносить очень мало изменений в код или вообще не вносить их.
19) Обсудить метод создания пустого файла с Ansible
Чтобы создать и очистить файл, необходимо выполнить указанные шаги.
Шаг 1. Сохраните пустой файл в каталоге файлов
Шаг 2. Скопируйте его на удаленный хост.