Note
This plugin is part of the community.network collection.
To install it use: ansible-galaxy collection install community.network.
To use it in a playbook, specify: community.network.avi_api_session.
The below requirements are needed on the host that executes this module.
| Parameter | Choices/Defaults | Comments | |
|---|---|---|---|
| api_context dictionary | Avi API context that includes current session ID and CSRF Token. This allows user to perform single login and re-use the session. | ||
| api_version string | Default: "16.4.4" | Avi API version of to use for Avi API and objects. | |
| avi_credentials dictionary | Avi Credentials dictionary which can be used in lieu of enumerating Avi Controller login details. | ||
| api_version string | Default: "16.4.4" | Avi controller version | |
| controller string | Avi controller IP or SQDN | ||
| csrftoken string | Avi controller API csrftoken to reuse existing session with session id | ||
| password string | Avi controller password | ||
| port string | Avi controller port | ||
| session_id string | Avi controller API session id to reuse existing session with csrftoken | ||
| tenant string | Default: "admin" | Avi controller tenant | |
| tenant_uuid string | Avi controller tenant UUID | ||
| timeout string | Default: 300 | Avi controller request timeout | |
| token string | Avi controller API token | ||
| username string | Avi controller username | ||
| avi_disable_session_cache_as_fact boolean |
| It disables avi session information to be cached as a fact. | |
| controller string | Default: "" | IP address or hostname of the controller. The default value is the environment variable AVI_CONTROLLER. | |
| data string | HTTP body in YAML or JSON format. | ||
| http_method string / required |
| Allowed HTTP methods for RESTful services and are supported by Avi Controller. | |
| params string | Query parameters passed to the HTTP API. | ||
| password string | Default: "" | Password of Avi user in Avi controller. The default value is the environment variable AVI_PASSWORD. | |
| path string | Path for Avi API resource. For example, path: virtualservice will translate to api/virtualserivce. | ||
| tenant string | Default: "admin" | Name of tenant used for all Avi API calls and context of object. | |
| tenant_uuid string | Default: "" | UUID of tenant used for all Avi API calls and context of object. | |
| timeout string | Default: 60 | Timeout (in seconds) for Avi API calls. | |
| username string | Default: "" | Username used for accessing Avi controller. The default value is the environment variable AVI_USERNAME. | |
Note
- 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
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description |
|---|---|---|
| obj dictionary | success, changed | Avi REST resource |
© 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