# avi_serverautoscalepolicy – Module for setup of ServerAutoScalePolicy Avi RESTful Object

New in version 2.4.

- Synopsis

- Requirements

- Parameters

- Notes

- Examples

- Return Values

- Status

## Synopsis

- This module is used to configure ServerAutoScalePolicy object

- more examples at https://github.com/avinetworks/devops

## Requirements

The below requirements are needed on the host that executes this module.

- avisdk

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
api_context dictionary added in 2.5 |  | 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_api_patch_op
-
added in 2.5

Choices:
- add
- replace
- delete

Patch operation to use when using avi_api_update_method as patch.

avi_api_update_method
-
added in 2.5

Choices:
- put ←
- patch

Default method for object update is HTTP PUT.
Setting to patch will override that behavior to use HTTP PATCH.

avi_credentials dictionary added in 2.5 |  | Avi Credentials dictionary which can be used in lieu of enumerating Avi Controller login details.
| api_version - | Default: "16.4.4" | Avi controller version
| controller - |  | Avi controller IP or SQDN
| csrftoken - |  | Avi controller API csrftoken to reuse existing session with session id
| password - |  | Avi controller password
| port - |  | Avi controller port
| session_id - |  | Avi controller API session id to reuse existing session with csrftoken
| tenant - | Default: "admin" | Avi controller tenant
| tenant_uuid - |  | Avi controller tenant UUID
| timeout - | Default: 300 | Avi controller request timeout
| token - |  | Avi controller API token
| username - |  | Avi controller username

avi_disable_session_cache_as_fact
boolean
added in 2.6

Choices:
- no
- yes

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`.
description - |  | User defined description for the object.

intelligent_autoscale
boolean

Choices:
- no
- yes

Use avi intelligent autoscale algorithm where autoscale is performed by comparing load on the pool against estimated capacity of all the servers.
Default value when not specified in API or module is interpreted by Avi Controller as False.

intelligent_scalein_margin - |  | Maximum extra capacity as percentage of load used by the intelligent scheme. Scalein is triggered when available capacity is more than this margin. Allowed values are 1-99. Default value when not specified in API or module is interpreted by Avi Controller as 40.
intelligent_scaleout_margin - |  | Minimum extra capacity as percentage of load used by the intelligent scheme. Scaleout is triggered when available capacity is less than this margin. Allowed values are 1-99. Default value when not specified in API or module is interpreted by Avi Controller as 20.
max_scalein_adjustment_step - |  | Maximum number of servers to scalein simultaneously. The actual number of servers to scalein is chosen such that target number of servers is always more than or equal to the min_size. Default value when not specified in API or module is interpreted by Avi Controller as 1.
max_scaleout_adjustment_step - |  | Maximum number of servers to scaleout simultaneously. The actual number of servers to scaleout is chosen such that target number of servers is always less than or equal to the max_size. Default value when not specified in API or module is interpreted by Avi Controller as 1.
max_size - |  | Maximum number of servers after scaleout. Allowed values are 0-400.
min_size - |  | No scale-in happens once number of operationally up servers reach min_servers. Allowed values are 0-400.
name - / required |  | Name of the object.
password string | Default: "" | Password of Avi user in Avi controller. The default value is the environment variable `AVI_PASSWORD`.
scalein_alertconfig_refs - |  | Trigger scalein when alerts due to any of these alert configurations are raised. It is a reference to an object of type alertconfig.
scalein_cooldown - |  | Cooldown period during which no new scalein is triggered to allow previous scalein to successfully complete. Default value when not specified in API or module is interpreted by Avi Controller as 300.
scaleout_alertconfig_refs - |  | Trigger scaleout when alerts due to any of these alert configurations are raised. It is a reference to an object of type alertconfig.
scaleout_cooldown - |  | Cooldown period during which no new scaleout is triggered to allow previous scaleout to successfully complete. Default value when not specified in API or module is interpreted by Avi Controller as 300.

state
-

Choices:
- absent
- present ←

The state that should be applied on the entity.

tenant string | Default: "admin" | Name of tenant used for all Avi API calls and context of object.
tenant_ref - |  | It is a reference to an object of type tenant.
tenant_uuid string | Default: "" | UUID of tenant used for all Avi API calls and context of object.
url - |  | Avi controller URL of the object.

use_predicted_load
boolean

Choices:
- no
- yes

Use predicted load rather than current load.
Default value when not specified in API or module is interpreted by Avi Controller as False.

username string | Default: "" | Username used for accessing Avi controller. The default value is the environment variable `AVI_USERNAME`.
uuid - |  | Unique object identifier of the object.

## Notes

Note

- For more information on using Ansible to manage Avi Network devices see https://www.ansible.com/ansible-avi-networks.

## Examples

    - name: Example to create ServerAutoScalePolicy object
      avi_serverautoscalepolicy:
        controller: 10.10.25.42
        username: admin
        password: something
        state: present
        name: sample_serverautoscalepolicy

## Return Values

Common return values are documented here, the following are the fields unique to this module:

Key | Returned | Description
--- | --- | ---
obj dictionary | success, changed | ServerAutoScalePolicy (api/serverautoscalepolicy) object

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]

- This module is maintained by the Ansible Community. [community]

### Authors

- Gaurav Rastogi (@grastogi23) <grastogi@avinetworks.com>

Hint

If you notice any issues in this documentation, you can edit this document to improve it.