netapp_eseries.santricity.netapp_e_amg – NetApp E-Series create, remove, and update asynchronous mirror groups

Note

This plugin is part of the netapp_eseries.santricity collection (version 1.2.13).

To install it use: ansible-galaxy collection install netapp_eseries.santricity.

To use it in a playbook, specify: netapp_eseries.santricity.netapp_e_amg.

New in version 2.2: of netapp_eseries.santricity

Synopsis

  • Allows for the creation, removal and updating of Asynchronous Mirror Groups for NetApp E-series storage arrays

Parameters

Parameter Choices/Defaults Comments
api_password
string / required
The password to authenticate with the SANtricity Web Services Proxy or Embedded Web Services API.
api_url
string / required
The url to the SANtricity Web Services Proxy or Embedded Web Services API. Example https://prod-1.wahoo.acme.com/devmgr/v2
api_username
string / required
The username to authenticate with the SANtricity Web Services Proxy or Embedded Web Services API.
interfaceType
string
    Choices:
  • iscsi
  • fibre
The intended protocol to use if both Fibre and iSCSI are available.
manualSync
boolean
    Choices:
  • no ←
  • yes
Setting this to true will cause other synchronization values to be ignored
name
string / required
The name of the async array you wish to target, or create.
If state is present and the name isn't found, it will attempt to create.
new_name
string
New async array name
recoveryWarnThresholdMinutes
integer
Default:
20
Recovery point warning threshold (minutes). The user will be warned when the age of the last good failures point exceeds this value
repoUtilizationWarnThreshold
integer
Default:
80
Recovery point warning threshold
secondaryArrayId
string / required
The ID of the secondary array to be used in mirroring process
ssid
string
Default:
1
The ID of the array to manage. This value must be unique for each array.
state
string / required
    Choices:
  • absent
  • present
A state of present will either create or update the async mirror group.
A state of absent will remove the async mirror group.
syncIntervalMinutes
integer
Default:
10
The synchronization interval in minutes
syncWarnThresholdMinutes
integer
Default:
10
The threshold (in minutes) for notifying the user that periodic synchronization has taken too long to complete.
validate_certs
boolean
    Choices:
  • no
  • yes ←
Should https certificates be validated?

Notes

Note

  • The E-Series Ansible modules require either an instance of the Web Services Proxy (WSP), to be available to manage the storage-system, or an E-Series storage-system that supports the Embedded Web Services API.

  • Embedded Web Services is currently available on the E2800, E5700, EF570, and newer hardware models.

  • netapp_e_storage_system may be utilized for configuring the systems managed by a WSP instance.

Examples

- name: AMG removal
  na_eseries_amg:
    state: absent
    ssid: "{{ ssid }}"
    secondaryArrayId: "{{amg_secondaryArrayId}}"
    api_url: "{{ netapp_api_url }}"
    api_username: "{{ netapp_api_username }}"
    api_password: "{{ netapp_api_password }}"
    new_name: "{{amg_array_name}}"
    name: "{{amg_name}}"
  when: amg_create

- name: AMG create
  netapp_e_amg:
    state: present
    ssid: "{{ ssid }}"
    secondaryArrayId: "{{amg_secondaryArrayId}}"
    api_url: "{{ netapp_api_url }}"
    api_username: "{{ netapp_api_username }}"
    api_password: "{{ netapp_api_password }}"
    new_name: "{{amg_array_name}}"
    name: "{{amg_name}}"
  when: amg_create

Return Values

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

Key Returned Description
msg
string
success
Successful creation

Sample:
{"changed": true, "connectionType": "fc", "groupRef": "3700000060080E5000299C24000006E857AC7EEC", "groupState": "optimal", "id": "3700000060080E5000299C24000006E857AC7EEC", "label": "amg_made_by_ansible", "localRole": "primary", "mirrorChannelRemoteTarget": "9000000060080E5000299C24005B06E557AC7EEC", "orphanGroup": false, "recoveryPointAgeAlertThresholdMinutes": 20, "remoteRole": "secondary", "remoteTarget": {"nodeName": {"ioInterfaceType": "fc", "iscsiNodeName": null, "remoteNodeWWN": "20040080E5299F1C"}, "remoteRef": "9000000060080E5000299C24005B06E557AC7EEC", "scsiinitiatorTargetBaseProperties": {"ioInterfaceType": "fc", "iscsiinitiatorTargetBaseParameters": null}}, "remoteTargetId": "ansible2", "remoteTargetName": "Ansible2", "remoteTargetWwn": "60080E5000299F880000000056A25D56", "repositoryUtilizationWarnThreshold": 80, "roleChangeProgress": "none", "syncActivity": "idle", "syncCompletionTimeAlertThresholdMinutes": 10, "syncIntervalMinutes": 10, "worldWideName": "60080E5000299C24000006E857AC7EEC"}


Authors

  • Kevin Hulquest (@hulquest)