netapp_eseries.santricity.netapp_e_storagepool – NetApp E-Series manage volume groups and disk pools

Note

This plugin is part of the netapp_eseries.santricity collection.

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

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

New in version 2.2: of netapp_eseries.santricity

Synopsis

  • Create or remove volume groups and disk pools 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.
criteria_drive_count
integer
The number of disks to use for building the storage pool.
When state=="present" then criteria_drive_count or criteria_min_usable_capacity must be specified.
The pool will be expanded if this number exceeds the number of disks already in place (See expansion note below)
criteria_drive_interface_type
string
    Choices:
  • sas
  • sas4k
  • fibre
  • fibre520b
  • scsi
  • sata
  • pata
The interface type to use when selecting drives for the storage pool
If not provided then all interface types will be considered.
criteria_drive_min_size
float
The minimum individual drive size (in size_unit) to consider when choosing drives for the storage pool.
criteria_drive_require_da
boolean
added in 2.9 of netapp_eseries.santricity
    Choices:
  • no ←
  • yes
Ensures the storage pool will be created with only data assurance (DA) capable drives.
Only available for new storage pools; existing storage pools cannot be converted.
criteria_drive_require_fde
boolean
    Choices:
  • no ←
  • yes
Whether full disk encryption ability is required for drives to be added to the storage pool
criteria_drive_type
string
    Choices:
  • hdd
  • ssd
The type of disk (hdd or ssd) to use when searching for candidates to use.
When not specified each drive type will be evaluated until successful drive candidates are found starting with the most prevalent drive type.
criteria_min_usable_capacity
float
The minimum size of the storage pool (in size_unit).
When state=="present" then criteria_drive_count or criteria_min_usable_capacity must be specified.
The pool will be expanded if this value exceeds its current size. (See expansion note below)
criteria_size_unit
string
    Choices:
  • bytes
  • b
  • kb
  • mb
  • gb ←
  • tb
  • pb
  • eb
  • zb
  • yb
The unit used to interpret size parameters
erase_secured_drives
boolean
    Choices:
  • no
  • yes ←
If state=="absent" then all storage pool drives will be erase
If state=="present" then delete all available storage array drives that have security enabled.
name
string / required
The name of the storage pool to manage
raid_level
string
    Choices:
  • raidAll
  • raid0
  • raid1
  • raid3
  • raid5
  • raid6
  • raidDiskPool ←
The RAID level of the storage pool to be created.
Required only when state=="present".
When raid_level=="raidDiskPool" then criteria_drive_count >= 10 or criteria_drive_count >= 11 is required depending on the storage array specifications.
When raid_level=="raid0" then 1<=criteria_drive_count is required.
When raid_level=="raid1" then 2<=criteria_drive_count is required.
When raid_level=="raid3" then 3<=criteria_drive_count<=30 is required.
When raid_level=="raid5" then 3<=criteria_drive_count<=30 is required.
When raid_level=="raid6" then 5<=criteria_drive_count<=30 is required.
Note that raidAll will be treated as raidDiskPool and raid3 as raid5.
remove_volumes
boolean
    Choices:
  • no
  • yes ←
Prior to removing a storage pool, delete all volumes in the pool.
reserve_drive_count
integer
Set the number of drives reserved by the storage pool for reconstruction operations.
Only valid on raid disk pools.
secure_pool
boolean
    Choices:
  • no
  • yes
Enables security at rest feature on the storage pool.
Will only work if all drives in the pool are security capable (FDE, FIPS, or mix)
Warning, once security is enabled it is impossible to disable without erasing the drives.
ssid
string
Default:
1
The ID of the array to manage. This value must be unique for each array.
state
string / required
    Choices:
  • present
  • absent
Whether the specified storage pool should exist or not.
Note that removing a storage pool currently requires the removal of all defined volumes first.
validate_certs
boolean
    Choices:
  • no
  • yes ←
Should https certificates be validated?

Notes

Note

  • The expansion operations are non-blocking due to the time consuming nature of expanding volume groups

  • Traditional volume groups (raid0, raid1, raid5, raid6) are performed in steps dictated by the storage array. Each required step will be attempted until the request fails which is likely because of the required expansion time.

  • raidUnsupported will be treated as raid0, raidAll as raidDiskPool and raid3 as raid5.

  • Tray loss protection and drawer loss protection will be chosen if at all possible.

  • 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: No disk groups
  netapp_e_storagepool:
    ssid: "{{ ssid }}"
    name: "{{ item }}"
    state: absent
    api_url: "{{ netapp_api_url }}"
    api_username: "{{ netapp_api_username }}"
    api_password: "{{ netapp_api_password }}"
    validate_certs: "{{ netapp_api_validate_certs }}"

Return Values

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

Key Returned Description
msg
string
success
Success message

Sample:
Json facts for the pool that was created.


Authors

  • Kevin Hulquest (@hulquest)

  • Nathan Swartz (@ndswartz)