Плагины httpapi
Плагины httpapi сообщают Ansible, как взаимодействовать с HTTP-API удалённого устройства и выполнять задачи на устройстве.
Каждый плагин представляет определённый диалект API. Некоторые из них специфичны для платформы (Arista eAPI, Cisco NXAPI), а другие могут использоваться на различных платформах (RESTCONF). Ansible автоматически загружает соответствующий плагин httpapi, основываясь на переменной ansible_network_os.
Добавление плагинов httpapi
Вы можете расширить возможности Ansible для поддержки других API, поместив пользовательский плагин в директорию httpapi_plugins. Подробности см. в Разработка плагинов httpapi.
Использование плагинов httpapi
Плагин httpapi, который нужно использовать, определяется автоматически на основе переменной ansible_network_os.
Большинство плагинов httpapi могут работать без конфигурации. Дополнительные опции могут быть определены каждым плагином.
Плагины самодокументирующиеся. Каждый плагин должен документировать свои конфигурационные опции.
Следующий пример плейбука показывает плагин httpapi для устройства Arista, предполагая, что переменная инвентаризации установлена как ansible_network_os=eos для запуска плагина httpapi:
- hosts: leaf01
connection: httpapi
gather_facts: false
tasks:
- name: type a simple arista command
eos_command:
commands:
- show version | json
register: command_output
- name: print command output to terminal window
debug:
var: command_output.stdout[0]["version"]
См. полный рабочий пример на GitHub.
Просмотр плагинов httpapi
Эти плагины мигрировали в коллекции на Ansible Galaxy. Если вы установили Ansible версии 2.10 или новее с помощью pip, у вас есть доступ к нескольким плагинам httpapi. Вы можете использовать ansible-doc -t httpapi -l для просмотра списка доступных плагинов. Используйте ansible-doc -t httpapi <plugin name> для просмотра документации и примеров по конкретному плагину.
См. также
- Ansible для автоматизации сети
-
Обзор использования Ansible для автоматизации сетевых устройств.
- Разработка сетевых модулей
-
Как разрабатывать сетевые модули.
- Общение
-
Есть вопросы? Нужна помощь? Хотите поделиться своими идеями? Посетите руководство по общению Ansible
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/plugins/httpapi.html