The HPE 3PAR modules for Ansible enable automation of storage provisioning for the HPE 3PAR StoreServ array. The modules use the Python 3PAR SDK to communicate with the storage array over the WSAPI REST interface.
- Ansible ver. 2.5
- hpe3par_sdk
- 3PAR OS - 3.2.2 MU6, 3.3.1 MU1
- WSAPI service should be enabled on the 3PAR storage array.
- Install Ansible and hpe3par_sdk
- Modify ansible.cfg file to point the library to the Modules folder
library=/home/user/workspace/hpe3par_ansible/Modules
This is developed as a set of modules and example playbooks to provision the following:
- CPG
- Host
- Volume
- VLUN
- Host Set
- Volume Set
- Volume Offline Clone
- Volume Online Clone
- Volume Snapshot
- QOS
- Flash Cache
- name: Create CPG "{{ cpg_name }}"
hpe3par_cpg:
storage_system_ip="{{ storage_system_ip }}"
storage_system_username="{{ storage_system_username }}"
storage_system_password="{{ storage_system_password }}"
state=present
cpg_name="{{ cpg_name }}"
domain="{{ domain }}"
growth_increment="{{ growth_increment }}"
growth_increment_unit="{{ growth_increment_unit }}"
growth_limit="{{ growth_limit }}"
growth_limit_unit="{{ growth_limit_unit }}"
growth_warning="{{ growth_warning }}"
growth_warning_unit="{{ growth_warning_unit }}"
raid_type="{{ raid_type }}"
set_size="{{ set_size }}"
high_availability="{{ high_availability }}"
disk_type="{{ disk_type }}"
- name: Delete CPG "{{ cpg_name }}"
hpe3par_cpg:
storage_system_ip="{{ storage_system_ip }}"
storage_system_username="{{ storage_system_username }}"
storage_system_password="{{ storage_system_password }}"
state=absent
Actions are Idempotent when they can be run multiple times on the same system and the results will always be identical, without producing unintended side effects.
The following actions are non-idempotent:
- Clone: resync, create_offline
- Snapshot: restore online, restore offline
- Virtual Volume: grow (grow_to_size is idempotent)
- VLUN: All actions become non-idempotent when autolun is set to true