community.network.avi_api_session – Модуль API Avi
Примечание
Этот плагин входит в состав коллекции community.network (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.network.
Для использования в playbook, укажите: community.network.avi_api_session.
Обзор
- Этот модуль может быть использован для вызова любых ресурсов, определённых в REST API Avi. https://avinetworks.com/
- Этот модуль полезен для вызова HTTP-методов PATCH и доступа к ресурсам, у которых нет связанного REST-объекта.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- avisdk
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| api_context словарь | Контекст API Avi, включающий текущий идентификатор сессии и токен CSRF. Это позволяет пользователю выполнить единый вход и повторно использовать сессию. | ||
| api_version строка | По умолчанию: "16.4.4" | Версия API Avi, используемая для API Avi и объектов. | |
| avi_credentials словарь | Словарь учетных данных Avi, который может быть использован вместо указания данных входа в Avi контроллер. | ||
| api_version строка | По умолчанию: "16.4.4" | Версия контроллера Avi | |
| controller строка | IP-адрес или SQDN контроллера Avi | ||
| csrftoken строка | Токен csrf API контроллера Avi для повторного использования существующей сессии с идентификатором сессии | ||
| password строка | Пароль пользователя контроллера Avi | ||
| port строка | Порт контроллера Avi | ||
| session_id строка | Идентификатор сессии API контроллера Avi для повторного использования существующей сессии с токеном csrf | ||
| tenant строка | По умолчанию: "admin" | Тенент контроллера Avi | |
| tenant_uuid строка | UUID арендатора контроллера Avi | ||
| timeout строка | По умолчанию: 300 | Время ожидания запросов контроллера Avi | |
| token строка | Токен API контроллера Avi | ||
| username строка | Имя пользователя для доступа к контроллеру Avi | ||
| avi_disable_session_cache_as_fact булево |
| Отключает кэширование информации о сессии avi в качестве факта. | |
| controller строка | По умолчанию: "" | IP-адрес или имя хоста контроллера. Значение по умолчанию — переменная среды AVI_CONTROLLER. | |
| data строка | Тело HTTP в формате YAML или JSON. | ||
| http_method строка / обязательно |
| Разрешённые HTTP-методы для RESTful-служб, поддерживаемых контроллером Avi. | |
| params строка | Параметры запроса, передаваемые в HTTP-API. | ||
| password строка | По умолчанию: "" | Пароль пользователя Avi в контроллере Avi. Значение по умолчанию — переменная среды AVI_PASSWORD. | |
| path строка | Путь к ресурсу API Avi. Например, path: virtualservice будет переведено в api/virtualserivce. | ||
| tenant строка | По умолчанию: "admin" | Имя арендатора, используемого для всех вызовов API Avi и контекста объекта. | |
| tenant_uuid строка | По умолчанию: "" | UUID арендатора, используемого для всех вызовов API Avi и контекста объекта. | |
| timeout строка | По умолчанию: 60 | Время ожидания вызовов API Avi (в секундах). | |
| username строка | По умолчанию: "" | Имя пользователя для доступа к контроллеру Avi. Значение по умолчанию — переменная среды AVI_USERNAME. | |
Примечания
Примечание
- Дополнительную информацию об использовании Ansible для управления устройствами Avi Network см. на странице https://www.ansible.com/ansible-avi-networks.
Примеры
- name: Get Pool Information using avi_api_session
community.network.avi_api_session:
controller: "{{ controller }}"
username: "{{ username }}"
password: "{{ password }}"
http_method: get
path: pool
params:
name: "{{ pool_name }}"
api_version: 16.4
register: pool_results
- name: Patch Pool with list of servers
community.network.avi_api_session:
controller: "{{ controller }}"
username: "{{ username }}"
password: "{{ password }}"
http_method: patch
path: "{{ pool_path }}"
api_version: 16.4
data:
add:
servers:
- ip:
addr: 10.10.10.10
type: V4
- ip:
addr: 20.20.20.20
type: V4
register: updated_pool
- name: Fetch Pool metrics bandwidth and connections rate
community.network.avi_api_session:
controller: "{{ controller }}"
username: "{{ username }}"
password: "{{ password }}"
http_method: get
path: analytics/metrics/pool
api_version: 16.4
params:
name: "{{ pool_name }}"
metric_id: l4_server.avg_bandwidth,l4_server.avg_complete_conns
step: 300
limit: 10
register: pool_metrics
Возвращаемые значения
Общие возвращаемые значения описаны здесь, ниже перечислены поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| obj словарь | успех, изменения | REST-ресурс Avi |
Авторы
- Гaurav Rastogi (@grastogi23) <grastogi@avinetworks.com>
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/network/avi_api_session_module.html