Учебники

13) Ansible Интервью Q & A

Скачать 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 }}

Ansible Интервью Вопрос и ответы

6) Какой код нужно написать для доступа к имени переменной?

Имена переменных могут быть построены путем добавления следующего метода:

{{ hostvars[inventory_hostname]['ansible_' + which_interface]['ipv4']['address'] }} 

Метод использования hostvars важен, потому что это словарь всего пространства имен переменных. Переменная ‘inventory_hostname’ указывает текущий хост, который вы просматриваете в цикле хоста.

7) Объясните, как можно отключить cowsay?

Если cowsay установлен, тогда, выполняя plays внутри Ansible, вы можете отключить coway, используя следующие параметры:

  1. Удалить cowsay
  2. Установка значения для переменной среды

экспорт 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. Скопируйте его на удаленный хост.