avi_api_session - Avi API Module
New in version 2.3.
Synopsis
- This module can be used for calling any resources defined in Avi REST API. https://avinetworks.com/
- This module is useful for invoking HTTP Patch methods and accessing resources that do not have an REST object associated with them.
Requirements (on host that executes module)
- avisdk
Options
parameter | required | default | choices | comments |
---|---|---|---|---|
api_version | no | Avi API version of to use for Avi API and objects. | ||
controller | no | IP address or hostname of the controller. The default value is the environment variable AVI_CONTROLLER . | ||
data | no | HTTP body in YAML or JSON format. | ||
http_method | yes |
| Allowed HTTP methods for RESTful services and are supported by Avi Controller. | |
params | no | Query parameters passed to the HTTP API. | ||
password | no | Password of Avi user in Avi controller. The default value is the environment variable AVI_PASSWORD . | ||
path | no | Path for Avi API resource. For example, path: virtualservice will translate to api/virtualserivce . | ||
tenant | no | admin | Name of tenant used for all Avi API calls and context of object. | |
tenant_uuid | no | UUID of tenant used for all Avi API calls and context of object. | ||
timeout | no | Timeout (in seconds) for Avi API calls. | ||
username | no | Username used for accessing Avi controller. The default value is the environment variable AVI_USERNAME . |
Examples
- name: Get Pool Information using avi_api_session 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 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 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
Return Values
Common return values are documented here Return Values, the following are the fields unique to this module:
name | description | returned | type | sample |
---|---|---|---|---|
obj | Avi REST resource | success, changed | dict |
Status
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/avi_api_session_module.html