# a10_service_group – Manage A10 Networks AX/SoftAX/Thunder/vThunder devices’ service groups

- Synopsis

- Parameters

- Notes

- Examples

- Return Values

- Status

## Synopsis

- Manage SLB (Server Load Balancing) service-group objects on A10 Networks devices via aXAPIv2.

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
client_cert path |  | PEM formatted certificate chain file to be used for SSL client authentication. This file can also include the key as well, and if the key is included, `client_key` is not required.
client_key path |  | PEM formatted file that contains your private key to be used for SSL client authentication. If `client_cert` contains both the certificate and key, this option is not required.

force
boolean

Choices:
- no ←
- yes

If `yes` do not get a cached copy.
Alias `thirsty` has been deprecated and will be removed in 2.13.
aliases: thirsty

force_basic_auth
boolean

Choices:
- no ←
- yes

Credentials specified with url_username and url_password should be passed in HTTP Header.

host string / required |  | Hostname or IP of the A10 Networks device.
http_agent string | Default: "ansible-httpget" | Header to identify as, generally appears in web server logs.
partition - |  | set active-partition
password string / required |  | Password for the `username` account. aliases: pass, pwd
servers - |  | A list of servers to add to the service group. Each list item should be a dictionary which specifies the `server:` and `port:`, but can also optionally specify the `status:`. See the examples below for details. aliases: server, member
service_group - / required |  | The SLB (Server Load Balancing) service-group name aliases: service, pool, group

service_group_method
-

Choices:
- round-robin ←
- weighted-rr
- least-connection
- weighted-least-connection
- service-least-connection
- service-weighted-least-connection
- fastest-response
- least-request
- round-robin-strict
- src-ip-only-hash
- src-ip-hash

The SLB service-group load balancing method, such as round-robin or weighted-rr.
aliases: method

service_group_protocol
-

Choices:
- tcp ←
- udp

The SLB service-group protocol of TCP or UDP.
aliases: proto, protocol

state
-

Choices:
- present ←
- absent

If the specified service group should exists.

url string |  | HTTP, HTTPS, or FTP URL in the form (http|https|ftp)://[user[:pass]]@host.domain[:port]/path
url_password string |  | The password for use in HTTP basic authentication. If the url_username parameter is not specified, the url_password parameter will not be used.
url_username string |  | The username for use in HTTP basic authentication. This parameter can be used without url_password for sites that allow empty passwords

use_proxy
boolean

Choices:
- no
- yes ←

If `no`, it will not use a proxy, even if one is defined in an environment variable on the target hosts.

username string / required |  | An account with administrator privileges. aliases: admin, user

validate_certs
boolean

Choices:
- no
- yes ←

If `no`, SSL certificates will not be validated. This should only be used on personally controlled devices using self-signed certificates.

write_config
boolean

Choices:
- no ←
- yes

If `yes`, any changes will cause a write of the running configuration to non-volatile memory. This will save all configuration changes, including those that may have been made manually or through other modules, so care should be taken when specifying `yes`.

## Notes

Note

- Requires A10 Networks aXAPI 2.1.

- When a server doesn’t exist and is added to the service-group the server will be created.

- Requires A10 Networks aXAPI 2.1.

## Examples

    # Create a new service-group
    - a10_service_group:
        host: a10.mydomain.com
        username: myadmin
        password: mypassword
        partition: mypartition
        service_group: sg-80-tcp
        servers:
          - server: foo1.mydomain.com
            port: 8080
          - server: foo2.mydomain.com
            port: 8080
          - server: foo3.mydomain.com
            port: 8080
          - server: foo4.mydomain.com
            port: 8080
            status: disabled

## Return Values

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

Key | Returned | Description
--- | --- | ---
content string | success | the full info regarding the slb_service_group Sample: mynewservicegroup

## Status

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

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

### Authors

- Eric Chou (@ericchou1)

- Mischa Peters (@mischapeters)

Hint

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