community.network.avi_api_session – Модуль Avi API
Примечание
Этот плагин входит в коллекцию community.network (версия 2.0.1).
Для его установки используйте: ansible-galaxy collection install community.network.
Для использования в книге задач укажите: 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 для использования с Avi API и объектами. | |
| avi_credentials словарь | Словарь учетных данных Avi, который можно использовать вместо перечисления данных входа в Avi контроллер. | ||
| api_version строка | Значение по умолчанию: "16.4.4" | Версия контроллера Avi | |
| controller строка | IP-адрес или SQDN контроллера Avi | ||
| csrftoken строка | Токен csrf контроллера Avi API для повторного использования существующего сеанса с идентификатором сеанса | ||
| password строка | Пароль контроллера Avi | ||
| port строка | Порт контроллера Avi | ||
| session_id строка | Идентификатор сеанса контроллера Avi API для повторного использования существующего сеанса с csrftoken | ||
| tenant строка | Значение по умолчанию: "admin" | Аренда контроллера Avi | |
| tenant_uuid строка | UUID аренды контроллера Avi | ||
| timeout строка | Значение по умолчанию: 300 | Таймаут запроса контроллера Avi | |
| token строка | Токен контроллера Avi API | ||
| 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 строка | Путь к ресурсу Avi API. Например, path: virtualservice будет переведено на api/virtualserivce. | ||
| tenant строка | Значение по умолчанию: "admin" | Имя аренды, используемое для всех вызовов Avi API и контекста объекта. | |
| tenant_uuid строка | Значение по умолчанию: "" | UUID аренды, используемый для всех вызовов Avi API и контекста объекта. | |
| timeout строка | Значение по умолчанию: 60 | Таймаут (в секундах) для вызовов Avi API. | |
| 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 словарь | success, changed | Ресурс Avi REST |
Авторы
- Gaurav Rastogi (@grastogi23) <grastogi@avinetworks.com>
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/network/avi_api_session_module.html