19 лучших вопросов и ответов на собеседовании по Ansible (PDF)
Вот вопросы и ответы на собеседовании Ansible для новичков и опытных кандидатов, желающих получить работу своей мечты.
Вопросы для собеседования по Ansible для первокурсников
1) Что такое Анзибль?
Ansible — это система управления конфигурациями. Он используется для настройки и управления инфраструктурой и приложениями. Он позволяет пользователям развертывать и обновлять приложения, используя SSHбез необходимости установки агента в удаленной системе.
👉 Бесплатная загрузка PDF-файла: Вопросы и ответы для интервью Ansible >>
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'] }}
Метод использования хостваров важен, поскольку это словарь всего пространства имен переменных. Переменная 'inventory_hostname' указывает текущий хост, который вы просматриваете в цикле хостов.
7) Объясните, как можно отключить Cowsay?
Если Cowsay установлен, то при выполнении плейбуков внутри Ansible вы можете отключить coway, используя следующие параметры:
- Удалить Cowsay
- Установка значения для переменной среды
экспортировать ANSIBLE_NOCOWS=1
8) Объясните, как можно рекурсивно скопировать файл на целевой хост?
Модуль копирования имеет рекурсивный параметр. Однако, если вы хотите, чтобы это работало более эффективно для большого количества файлов, то модуль «синхронизировать» — лучший вариант для вас.
9) Как внести изменения в документацию в Ansible?
Документация по Ansible хранится в git-репозитории проекта. Он содержит полные инструкции по участию, которые можно найти в документации.
10) Какой метод лучше всего подходит для того, чтобы сделать контент пригодным для повторного использования/распространения?
Вы можете прочитать все о «Ролях» в разделе документации плейбуков. Это помогает сделать содержимое playbook автономным и доступным для совместного использования с другими пользователями ansible.
Вопросы и ответы на собеседовании по Ansible для опытных специалистов
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') }}” |
Позволяет добавлять строки | Чтобы установить переменные среды, нам нужно увидеть раздел расширенных плейбуков. |
Тип адреса IPv4. Для имен переменных мы используем адрес ipv4. | Для переменных удаленной среды используйте {{ ansible_env.SOME_VARIABLE }} |
14) Что такое специальные команды?
Вы можете думать о специальных командах как о способе выполнять действия на наших хостах без написания сборника сценариев. Например, если мы хотим перезагрузить все хосты в определенной группе (веб-серверы). Затем вы можете написать сборник сценариев или просто запустить разовую специальную команду.
15) Объясните факты об Ansible
Вы можете думать о фактах ansible как о способе ansible получить информацию о хосте и сохранить ее в переменных для облегчения доступа. Эта информация, хранящаяся в предопределенных переменных, доступна для использования в книге воспроизведения. Для генерации фактов ansible запускает модуль настройки.
16) Как увидеть все переменные хоста?
Вы можете увидеть их, используя переменную hostvars. При этом сохраняются переменные хоста с именем хоста в качестве ключа. Например, чтобы просмотреть переменные, определенные для localhost, вы можете запустить:
ansible -m debug -a "var=hostvars[inventory_hostname]"
17) Объясните модули в ansible
Модули в Ansible идемпотентны. С точки зрения службы RESTful, чтобы операция была идемпотентной, клиенты могут выполнить тот же результат, используя модули в Ansible. Несколько одинаковых запросов становятся одним запросом.
В Ansible есть два разных типа модулей:
- Основные модули
- Дополнительные модули
Основные модули
Команда Ansible поддерживает эти типы модулей, и они всегда поставляются вместе с программным обеспечением Ansible. Они также будут давать более высокий приоритет всем запросам, чем те, которые находятся в репозиториях «дополнительно».
Дополнительные модули:
Эти модули в настоящее время входят в состав Ansible, но в будущем могут быть доступны отдельно. Они также в основном поддерживаются сообществом Ansible. Эти модули по-прежнему можно использовать, но скорость реагирования на проблемы и запросы на включение может быть ниже.
18) Когда следует тестировать сценарии и роли?
В ansible тесты можно добавлять либо в новые Playbooks, либо в существующие Playbooks. Поэтому большая часть заданий по тестированию каждый раз предлагает чистый хостинг. Используя эту методологию тестирования, вам нужно практически не вносить изменений в код.
19) Обсудите метод создания пустого файла с помощью Ansible.
Чтобы создать и очистить файл, вам необходимо выполнить следующие шаги.
Шаг 1. Сохраните пустой файл в каталоге Files.
Шаг 2. Скопируйте его на удаленный хост.
Эти вопросы для собеседования также помогут вам в устной речи.