New in version 2.5.0.
Parameter |
Choices/Defaults |
Comments |
---|---|---|
action
|
|
The action to perform when the operation value is set to
action .Some common values for this parameter are
enable , disable , rename . |
args
|
|
A dictionary which defines the key arguments by which we will select the Nitro object to operate on.
It is required for the following operation values:
get_by_args , 'delete_by_args' . |
attributes
|
|
The attributes of the Nitro object we are operating on.
It is required for the following operation values:
add , update , action . |
expected_nitro_errorcode
required |
Default:
[0]
|
A list of numeric values that signify that the operation was successful.
|
filter
|
|
A dictionary which defines the filter with which to refine the Nitro objects returned by the
get_filtered operation. |
instance_id
|
|
The id of the target Netscaler instance when issuing a Nitro request through a MAS proxy.
|
instance_ip
|
|
The IP address of the target Netscaler instance when issuing a Nitro request through a MAS proxy.
|
instance_name
|
|
The name of the target Netscaler instance when issuing a Nitro request through a MAS proxy.
|
name
|
|
The name of the resource we are operating on.
It is required for the following operation values:
update , get , delete . |
nitro_auth_token
|
|
The authentication token provided by the
mas_login operation. It is required when issuing Nitro API calls through a MAS proxy. |
nitro_pass
required |
|
The password with which to authenticate to the Netscaler node.
|
nitro_protocol
|
|
Which protocol to use when accessing the Nitro API objects.
|
nitro_user
required |
|
The username with which to authenticate to the Netscaler node.
|
nsip
|
|
The IP address of the Netscaler or MAS instance where the Nitro API calls will be made.
The port can be specified with the colon
: . E.g. 192.168.1.1:555 . |
operation
|
|
Define the Nitro operation that we want to perform.
|
resource
|
|
The type of resource we are operating on.
It is required for all operation values except
mas_login and save_config . |
validate_certs
|
Default:
yes
|
If
no , SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates. |
- name: Add a server
delegate_to: localhost
netscaler_nitro_request:
nsip: "{{ nsip }}"
nitro_user: "{{ nitro_user }}"
nitro_pass: "{{ nitro_pass }}"
operation: add
resource: server
name: test-server-1
attributes:
name: test-server-1
ipaddress: 192.168.1.1
- name: Update server
delegate_to: localhost
netscaler_nitro_request:
nsip: "{{ nsip }}"
nitro_user: "{{ nitro_user }}"
nitro_pass: "{{ nitro_pass }}"
operation: update
resource: server
name: test-server-1
attributes:
name: test-server-1
ipaddress: 192.168.1.2
- name: Get server
delegate_to: localhost
register: result
netscaler_nitro_request:
nsip: "{{ nsip }}"
nitro_user: "{{ nitro_user }}"
nitro_pass: "{{ nitro_pass }}"
operation: get
resource: server
name: test-server-1
- name: Delete server
delegate_to: localhost
register: result
netscaler_nitro_request:
nsip: "{{ nsip }}"
nitro_user: "{{ nitro_user }}"
nitro_pass: "{{ nitro_pass }}"
operation: delete
resource: server
name: test-server-1
- name: Rename server
delegate_to: localhost
netscaler_nitro_request:
nsip: "{{ nsip }}"
nitro_user: "{{ nitro_user }}"
nitro_pass: "{{ nitro_pass }}"
operation: action
action: rename
resource: server
attributes:
name: test-server-1
newname: test-server-2
- name: Get server by args
delegate_to: localhost
register: result
netscaler_nitro_request:
nsip: "{{ nsip }}"
nitro_user: "{{ nitro_user }}"
nitro_pass: "{{ nitro_pass }}"
operation: get_by_args
resource: server
args:
name: test-server-1
- name: Get server by filter
delegate_to: localhost
register: result
netscaler_nitro_request:
nsip: "{{ nsip }}"
nitro_user: "{{ nitro_user }}"
nitro_pass: "{{ nitro_pass }}"
operation: get_filtered
resource: server
filter:
ipaddress: 192.168.1.2
# Doing a NITRO request through MAS.
# Requires to have an authentication token from the mas_login and used as the nitro_auth_token parameter
# Also nsip is the MAS address and the target Netscaler IP must be defined with instance_ip
# The rest of the task arguments remain the same as when issuing the NITRO request directly to a Netscaler instance.
- name: Do mas login
delegate_to: localhost
register: login_result
netscaler_nitro_request:
nsip: "{{ mas_ip }}"
nitro_user: "{{ nitro_user }}"
nitro_pass: "{{ nitro_pass }}"
operation: mas_login
- name: Add resource through MAS proxy
delegate_to: localhost
netscaler_nitro_request:
nsip: "{{ mas_ip }}"
nitro_auth_token: "{{ login_result.nitro_auth_token }}"
instance_ip: "{{ nsip }}"
operation: add
resource: server
name: test-server-1
attributes:
name: test-server-1
ipaddress: 192.168.1.7
Common return values are documented here, the following are the fields unique to this module:
Key |
Returned |
Description |
---|---|---|
http_response_body
string
|
always |
A string with the actual HTTP response body content if existent. If there is no HTTP response body it is an empty string.
Sample:
{ errorcode: 0, message: Done, severity: NONE }
|
http_response_data
dict
|
always |
A dictionary that contains all the HTTP response's data.
Sample:
status: 200
|
nitro_auth_token
string
|
when applicable |
The token returned by the
mas_login operation when succesful.Sample:
##E8D7D74DDBD907EE579E8BB8FF4529655F22227C1C82A34BFC93C9539D66
|
nitro_errorcode
int
|
always |
A numeric value containing the return code of the NITRO operation. When 0 the operation is succesful. Any non zero value indicates an error.
|
nitro_message
string
|
always |
A string containing a human readable explanation for the NITRO operation result.
Sample:
Success
|
nitro_object
list
|
when applicable |
The object returned from the NITRO operation. This is applicable to the various get operations which return an object.
Sample:
[{'state': 'ENABLED', 'name': 'test-server-1', 'ipv6address': 'NO', 'maxbandwidth': '0', 'sp': 'OFF', 'ipaddress': '192.168.1.8', 'port': 0}]
|
nitro_severity
string
|
always |
A string describing the severity of the NITRO operation error or NONE.
Sample:
NONE
|
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
Hint
If you notice any issues in this documentation you can edit this document to improve it.