netscaler.adc.servicegroup (2.5.1) — module

Configuration for service group resource.

| "added in version" 2.0.0 of netscaler.adc"

Authors: Sumanth Lingappa (@sumanth-lingappa)

preview | supported by community

Install collection

Install with ansible-galaxy collection install netscaler.adc:==2.5.1


Add to requirements.yml

  collections:
    - name: netscaler.adc
      version: 2.5.1

Description

Configuration for service group resource.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
---
- name: Sample Playbook
  hosts: localhost
  gather_facts: false
  tasks:
    - name: Setup servers
      delegate_to: localhost
      netscaler.adc.server:
        state: present
        name: foo.example.com
        domain: foo.example.com
    - name: Setup servicegroups
      delegate_to: localhost
      tags: test
      netscaler.adc.servicegroup:
        state: absent
        servicegroupname: test1-1
        servicetype: TCP
        autoscale: DNS
        healthmonitor: "YES"
        servicegroup_servicegroupmember_binding:
          binding_members:
            - servername: foo.example.com
              port: 443
              servicegroupname: test1-1

Inputs

    
sp:
    choices:
    - 'ON'
    - 'OFF'
    description:
    - Enable surge protection for the service group.
    type: str

td:
    description:
    - Integer value that uniquely identifies the traffic domain in which you want to configure
      the entity. If you do not specify an ID, the entity becomes part of the default
      traffic domain, which has an ID of 0.
    type: float

cip:
    choices:
    - ENABLED
    - DISABLED
    description:
    - Insert the Client IP header in requests forwarded to the service.
    type: str

cka:
    choices:
    - 'YES'
    - 'NO'
    description:
    - Enable client keep-alive for the service group.
    type: str

cmp:
    choices:
    - 'YES'
    - 'NO'
    description:
    - Enable compression for the specified service.
    type: str

nsip:
    description:
    - The ip address of the NetScaler ADC appliance where the nitro API calls will be
      made.
    - The port can be specified with the colon (:). E.g. 192.168.1.1:555.
    required: true
    type: str

port:
    description:
    - Server port number.
    type: int

tcpb:
    choices:
    - 'YES'
    - 'NO'
    description:
    - Enable TCP buffering for the service group.
    type: str

usip:
    choices:
    - 'YES'
    - 'NO'
    description:
    - Use client's IP address as the source IP address when initiating connection to the
      server. With the C(NO) setting, which is the default, a mapped IP (MIP) address
      or subnet IP (SNIP) address is used as the source IP address to initiate server
      side connections.
    type: str

delay:
    description:
    - Time, in seconds, allocated for a shutdown of the services in the service group.
      During this period, new requests are sent to the service only for clients who already
      have persistent sessions on the appliance. Requests from new clients are load balanced
      among other available services. After the delay time expires, no requests are sent
      to the service, and the service is marked as unavailable (OUT OF SERVICE).
    type: float

order:
    description:
    - Order number to be assigned to the servicegroup member
    type: float

state:
    choices:
    - present
    - absent
    - enabled
    - disabled
    - unset
    default: present
    description:
    - The state of the resource being configured by the module on the NetScaler ADC node.
    - When C(present), the resource will be added/updated configured according to the
      module's parameters.
    - When C(absent), the resource will be deleted from the NetScaler ADC node.
    - When C(enabled), the resource will be enabled on the NetScaler ADC node.
    - When C(disabled), the resource will be disabled on the NetScaler ADC node.
    - When C(unset), the resource will be unset on the NetScaler ADC node.
    type: str

dbsttl:
    description:
    - Specify the TTL for DNS record for domain based service.The default value of ttl
      is 0 which indicates to use the TTL received in DNS response for monitors
    type: float

hashid:
    description:
    - The hash identifier for the service. This must be unique for each service. This
      parameter is used by hash based load balancing methods.
    type: float

maxreq:
    description:
    - Maximum number of requests that can be sent on a persistent connection to the service
      group.
    - 'Note: Connection requests beyond this value are rejected.'
    type: float

weight:
    description:
    - Weight to assign to the servers in the service group. Specifies the capacity of
      the servers relative to the other servers in the load balancing configuration. The
      higher the weight, the higher the percentage of requests sent to the service.
    type: float

comment:
    description:
    - Any information about the service group.
    type: str

newname:
    description:
    - New name for the service group.
    type: str

api_path:
    default: nitro/v1/config
    description:
    - Base NITRO API path.
    - Define only in case of an ADM service proxy call
    type: str

graceful:
    choices:
    - 'YES'
    - 'NO'
    description:
    - Wait for all existing connections to the service to terminate before shutting down
      the service.
    type: str

serverid:
    description:
    - The  identifier for the service. This is used when the persistency type is set to
      Custom Server ID.
    type: float

autoscale:
    choices:
    - DISABLED
    - DNS
    - POLICY
    - CLOUD
    - API
    description:
    - Auto scale option for a servicegroup
    type: str

cacheable:
    choices:
    - 'YES'
    - 'NO'
    description:
    - Use the transparent cache redirection virtual server to forward the request to the
      cache server.
    - 'Note: Do not set this parameter if you set the Cache Type.'
    type: str

cachetype:
    choices:
    - TRANSPARENT
    - REVERSE
    - FORWARD
    description:
    - Cache type supported by the cache server.
    type: str

cipheader:
    description:
    - Name of the HTTP header whose value must be set to the IP address of the client.
      Used with the Client IP parameter. If client IP insertion is enabled, and the client
      IP header is not specified, the value of Client IP Header parameter or the value
      set by the set ns config command is used as client's IP header name.
    type: str

maxclient:
    description:
    - Maximum number of simultaneous open connections for the service group.
    type: float

appflowlog:
    choices:
    - ENABLED
    - DISABLED
    description:
    - Enable logging of AppFlow information for the specified service group.
    type: str

clttimeout:
    description:
    - Time, in seconds, after which to terminate an idle client connection.
    type: float

dup_weight:
    description:
    - weight of the monitor that is bound to servicegroup.
    type: float

memberport:
    description:
    - member port
    type: int

nameserver:
    description:
    - Specify the nameserver to which the query for bound domain needs to be sent. If
      not specified, use the global nameserver
    type: str

netprofile:
    description:
    - Network profile for the service group.
    type: str

nitro_pass:
    description:
    - The password with which to authenticate to the NetScaler ADC node.
    required: false
    type: str

nitro_user:
    description:
    - The username with which to authenticate to the NetScaler ADC node.
    required: false
    type: str

servername:
    description:
    - Name of the server to which to bind the service group.
    type: str

svrtimeout:
    description:
    - Time, in seconds, after which to terminate an idle server connection.
    type: float

pathmonitor:
    choices:
    - 'YES'
    - 'NO'
    description:
    - Path monitoring for clustering
    type: str

save_config:
    default: false
    description:
    - If C(true) the module will save the configuration on the NetScaler ADC node if it
      makes any changes.
    - The module will not save the configuration on the NetScaler ADC node if it made
      no changes.
    type: bool

servicetype:
    choices:
    - HTTP
    - FTP
    - TCP
    - UDP
    - SSL
    - SSL_BRIDGE
    - SSL_TCP
    - DTLS
    - NNTP
    - RPCSVR
    - DNS
    - ADNS
    - SNMP
    - RTSP
    - DHCPRA
    - ANY
    - SIP_UDP
    - SIP_TCP
    - SIP_SSL
    - DNS_TCP
    - ADNS_TCP
    - MYSQL
    - MSSQL
    - ORACLE
    - MONGO
    - MONGO_TLS
    - RADIUS
    - RADIUSListener
    - RDP
    - DIAMETER
    - SSL_DIAMETER
    - TFTP
    - SMPP
    - PPTP
    - GRE
    - SYSLOGTCP
    - SYSLOGUDP
    - FIX
    - SSL_FIX
    - USER_TCP
    - USER_SSL_TCP
    - QUIC
    - IPFIX
    - LOGSTREAM
    - LOGSTREAM_SSL
    - MQTT
    - MQTT_TLS
    - QUIC_BRIDGE
    description:
    - Protocol used to exchange data with the service.
    type: str

maxbandwidth:
    description:
    - Maximum bandwidth, in Kbps, allocated for all the services in the service group.
    type: float

monthreshold:
    description:
    - Minimum sum of weights of the monitors that are bound to this service. Used to determine
      whether to mark a service as UP or DOWN.
    type: float

useproxyport:
    choices:
    - 'YES'
    - 'NO'
    description:
    - Use the proxy port as the source port when initiating connections with the server.
      With the C(NO) setting, the client-side connection port is used as the source port
      for the server-side connection.
    - 'Note: This parameter is available only when the Use Source IP (USIP) parameter
      is set to C(YES).'
    type: str

healthmonitor:
    choices:
    - 'YES'
    - 'NO'
    description:
    - 'Monitor the health of this service.  Available settings function as follows:'
    - C(YES) - Send probes to check the health of the service.
    - C(NO) - Do not send probes to check the health of the service. With the C(NO) option,
      the appliance shows the service as UP at all times.
    type: str

customserverid:
    description:
    - The identifier for this IP:Port pair. Used when the persistency type is set to Custom
      Server ID.
    type: str

downstateflush:
    choices:
    - ENABLED
    - DISABLED
    description:
    - Flush all active transactions associated with all the services in the service group
      whose state transitions from UP to DOWN. Do not enable this option for applications
      that must complete their transactions.
    type: str

includemembers:
    description:
    - Display the members of the listed service groups in addition to their settings.
      Can be specified when no service group name is provided in the command. In that
      case, the details displayed for each service group are identical to the details
      displayed when a service group name is provided, except that bound monitors are
      not displayed.
    type: bool

nitro_protocol:
    choices:
    - http
    - https
    default: https
    description:
    - Which protocol to use when accessing the nitro API objects.
    type: str

tcpprofilename:
    description:
    - Name of the TCP profile that contains TCP configuration settings for the service
      group.
    type: str

validate_certs:
    default: true
    description:
    - If C(false), SSL certificates will not be validated. This should only be used on
      personally controlled sites using self-signed certificates.
    required: false
    type: bool

httpprofilename:
    description:
    - Name of the HTTP profile that contains HTTP configuration settings for the service
      group.
    type: str

pathmonitorindv:
    choices:
    - 'YES'
    - 'NO'
    description:
    - Individual Path monitoring decisions.
    type: str

autodelayedtrofs:
    choices:
    - 'YES'
    - 'NO'
    description:
    - Indicates graceful movement of IP-Port binding/s to TROFS when IP addresses are
      removed from DNS response. System will wait for monitor response timeout period
      before moving to TROFS .
    type: str

autodisabledelay:
    description:
    - The time allowed (in seconds) for a graceful shutdown. During this period, new connections
      or requests will continue to be sent to this service for clients who already have
      a persistent session on the system. Connections or requests from fresh or new clients
      who do not yet have a persistence sessions on the system will not be sent to the
      service. Instead, they will be load balanced among other available services. After
      the delay time expires, no new requests or connections will be sent to the service.
    type: float

monitor_name_svc:
    description:
    - Name of the monitor bound to the service group. Used to assign a weight to the monitor.
    type: str

nitro_auth_token:
    description:
    - The authentication token provided by a login operation.
    type: str
    version_added: 2.6.0
    version_added_collection: netscaler.adc

servicegroupname:
    description:
    - Name of the service group. Must begin with an ASCII alphabetic or underscore (_)
      character, and must contain only ASCII alphanumeric, underscore, hash (#), period
      (.), space, colon (:), at (@), equals (=), and hyphen (-) characters. Can be changed
      after the name is created.
    type: str

monconnectionclose:
    choices:
    - RESET
    - FIN
    description:
    - Close monitoring connections by sending the service a connection termination message
      with the specified bit set.
    type: str

rtspsessionidremap:
    choices:
    - 'ON'
    - 'OFF'
    description:
    - Enable RTSP session ID mapping for the service group.
    type: str

autodisablegraceful:
    choices:
    - 'YES'
    - 'NO'
    description:
    - Indicates graceful shutdown of the service. System will wait for all outstanding
      connections to this service to be closed before disabling the service.
    type: str

servicegroup_lbmonitor_binding:
    description: Bindings for servicegroup_lbmonitor_binding resource
    suboptions:
      binding_members:
        default: []
        description: List of binding members
        elements: dict
        type: list
      mode:
        choices:
        - desired
        - bind
        - unbind
        default: desired
        description:
        - The mode in which to configure the bindings.
        - If mode is set to C(desired), the bindings will be added or removed from the
          target NetScaler ADCs as necessary to match the bindings specified in the state.
        - If mode is set to C(bind), the specified bindings will be added to the resource.
          The existing bindings in the target ADCs will not be modified.
        - If mode is set to C(unbind), the specified bindings will be removed from the
          resource. The existing bindings in the target ADCs will not be modified.
        type: str
    type: dict

servicegroup_servicegroupmember_binding:
    description: Bindings for servicegroup_servicegroupmember_binding resource
    suboptions:
      binding_members:
        default: []
        description: List of binding members
        elements: dict
        type: list
      mode:
        choices:
        - desired
        - bind
        - unbind
        default: desired
        description:
        - The mode in which to configure the bindings.
        - If mode is set to C(desired), the bindings will be added or removed from the
          target NetScaler ADCs as necessary to match the bindings specified in the state.
        - If mode is set to C(bind), the specified bindings will be added to the resource.
          The existing bindings in the target ADCs will not be modified.
        - If mode is set to C(unbind), the specified bindings will be removed from the
          resource. The existing bindings in the target ADCs will not be modified.
        type: str
    type: dict

Outputs

changed:
  description: Indicates if any change is made by the module
  returned: always
  sample: true
  type: bool
diff:
  description: Dictionary of before and after changes
  returned: always
  sample:
    after:
      key2: pqr
    before:
      key1: xyz
    prepared: changes done
  type: dict
diff_list:
  description: List of differences between the actual configured object and the configuration
    specified in the module
  returned: when changed
  sample:
  - 'Attribute `key1` differs. Desired: (<class ''str''>) XYZ. Existing: (<class ''str''>)
    PQR'
  type: list
failed:
  description: Indicates if the module failed or not
  returned: always
  sample: false
  type: bool
loglines:
  description: list of logged messages by the module
  returned: always
  sample:
  - message 1
  - message 2
  type: list