purestorage.fusion.fusion_sc module – Manage storage classes in Pure Storage Fusion
Note
This module is part of the purestorage.fusion collection (version 1.5.0).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install purestorage.fusion
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: purestorage.fusion.fusion_sc
.
New in purestorage.fusion 1.0.0
Synopsis
Manage a storage class in Pure Storage Fusion.
Requirements
The below requirements are needed on the host that executes this module.
python >= 3.8
purefusion
Parameters
Parameter |
Comments |
---|---|
Access token for Fusion Service Defaults to the set environment variable under FUSION_ACCESS_TOKEN |
|
The bandwidth limit in M or G units. M will set MB/s. G will set GB/s. Must be between 1MB/s and 512GB/s. If not provided at creation, this will default to 512GB/s. |
|
The human name of the storage class. If not provided, defaults to name. |
|
The IOPs limit - use value or K or M. K will mean 1000. M will mean 1000000. Must be between 100 and 100000000. If not provided at creation, this will default to 100000000. |
|
Application ID from Pure1 Registration page eg. pure1:apikey:dssf2331sd Defaults to the set environment variable under FUSION_ISSUER_ID |
|
The name of the storage class. |
|
Path to the private key file Defaults to the set environment variable under FUSION_PRIVATE_KEY_FILE. |
|
Password of the encrypted private key file |
|
Volume size limit in M, G, T or P units. Must be between 1MB and 4PB. If not provided at creation, this will default to 4PB. |
|
Define whether the storage class should exist or not. Choices:
|
|
Storage service to which the storage class belongs. |
Notes
Note
Supports
check_mode
.It is not currently possible to update bw_limit or iops_limit after a storage class has been created.
This module requires the purefusion Python library
You must set
FUSION_ISSUER_ID
andFUSION_PRIVATE_KEY_FILE
environment variables if issuer_id and private_key_file arguments are not passed to the module directlyIf you want to use access token for authentication, you must use
FUSION_ACCESS_TOKEN
environment variable if access_token argument is not passed to the module directly
Examples
- name: Create new storage class foo
purestorage.fusion.fusion_sc:
name: foo
size_limit: 100G
iops_limit: 100000
bw_limit: 25M
storage_service: service1
display_name: "test class"
issuer_id: key_name
private_key_file: "az-admin-private-key.pem"
- name: Update storage class (only display_name change is supported)
purestorage.fusion.fusion_sc:
name: foo
display_name: "main class"
storage_service: service1
issuer_id: key_name
private_key_file: "az-admin-private-key.pem"
- name: Delete storage class
purestorage.fusion.fusion_sc:
name: foo
storage_service: service1
state: absent
issuer_id: key_name
private_key_file: "az-admin-private-key.pem"