purestorage.flasharray.purefa_host – Manage hosts on Pure Storage FlashArrays
purestorage.flasharray.purefa_host – Manage hosts on Pure Storage FlashArrays
Note
This plugin is part of the purestorage.flasharray collection (version 1.5.1).
To install it use: ansible-galaxy collection install purestorage.flasharray
.
To use it in a playbook, specify: purestorage.flasharray.purefa_host
.
New in version 1.0.0: of purestorage.flasharray
Synopsis
- Create, delete or modify hosts on Pure Storage FlashArrays.
Requirements
The below requirements are needed on the host that executes this module.
- python >= 2.7
- purestorage >= 1.19
- py-pure-client >= 1.6.0
- netaddr
- requests
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
api_token string |
FlashArray API token for admin privileged user. | |
count integer |
Number of hosts to be created in a multiple host creation Only supported from Purity//FA v6.0.0 and higher | |
digits integer |
Default: 1 |
Number of digits to use for multiple host count. This will pad the index number with zeros where necessary Only supported from Purity//FA v6.0.0 and higher Range is between 1 and 10 |
fa_url string |
FlashArray management IPv4 address or Hostname. | |
host_password string |
Sets the host password for CHAP authentication Password length between 12 and 255 characters To clear the username/password pair use clear as the password SETTING A PASSWORD IS NON-IDEMPOTENT | |
host_user string |
Sets the host user name for CHAP authentication Required with host_password To clear the username/password pair use clear as the password | |
iqn list / elements=string |
List of IQNs of the host if protocol is iscsi or mixed. | |
lun integer |
LUN ID to assign to volume for host. Must be unique. If not provided the ID will be automatically assigned. Range for LUN ID is 1 to 4095. | |
name string / required |
The name of the host. Note that hostnames are case-sensitive however FlashArray hostnames are unique and ignore case - you cannot have hosta and hostA Multi-host support available from Purity//FA 6.0.0 ***NOTE*** Manual deletion of individual hosts created using multi-host will cause idempotency to fail Multi-host support only exists for host creation
| |
nqn list / elements=string |
List of NQNs of the host if protocol is nvme or mixed. | |
personality string |
|
Define which operating system the host is. Recommended for ActiveCluster integration. |
preferred_array list / elements=string |
List of preferred arrays in an ActiveCluster environment. To remove existing preferred arrays from the host, specify delete. | |
protocol string |
|
Defines the host connection protocol for volumes. |
rename string |
The name to rename to. Note that hostnames are case-sensitive however FlashArray hostnames are unique and ignore case - you cannot have hosta and hostA | |
start integer |
Default: 0 |
Number at which to start the multiple host creation index Only supported from Purity//FA v6.0.0 and higher |
state string |
|
Define whether the host should exist or not. When removing host all connected volumes will be disconnected. |
suffix string |
Suffix string, if required, for multiple host create Host names will be formed as #I, where # is a placeholder for the host index See associated descriptions Only supported from Purity//FA v6.0.0 and higher | |
target_password string |
Sets the target password for CHAP authentication Password length between 12 and 255 characters To clear the username/password pair use clear as the password SETTING A PASSWORD IS NON-IDEMPOTENT | |
target_user string |
Sets the target user name for CHAP authentication Required with target_password To clear the username/password pair use clear as the password | |
volume string |
Volume name to map to the host. | |
wwns list / elements=string |
List of wwns of the host if protocol is fc or mixed. |
Notes
Note
- If specifying
lun
option ensure host support requested value - This module requires the
purestorage
Python library - You must set
PUREFA_URL
andPUREFA_API
environment variables if fa_url and api_token arguments are not passed to the module directly
Examples
- name: Create new AIX host
purefa_host:
name: foo
personality: aix
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Create 10 hosts with index starting at 10 but padded with 3 digits
purefa_host:
name: foo
personality: vms
suffix: bar
count: 10
start: 10
digits: 3
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
state: present
- name: Rename host foo to bar
purefa_host:
name: foo
rename: bar
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Delete host
purefa_host:
name: foo
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
state: absent
- name: Make host bar with wwn ports
purefa_host:
name: bar
protocol: fc
wwns:
- 00:00:00:00:00:00:00
- 11:11:11:11:11:11:11
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Make host bar with iSCSI ports
purefa_host:
name: bar
protocol: iscsi
iqn:
- iqn.1994-05.com.redhat:7d366003913
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Make host bar with NVMe ports
purefa_host:
name: bar
protocol: nvme
nqn:
- nqn.2014-08.com.vendor:nvme:nvm-subsystem-sn-d78432
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Make mixed protocol host
purefa_host:
name: bar
protocol: mixed
nqn:
- nqn.2014-08.com.vendor:nvme:nvm-subsystem-sn-d78432
iqn:
- iqn.1994-05.com.redhat:7d366003914
wwns:
- 00:00:00:00:00:00:01
- 11:11:11:11:11:11:12
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Map host foo to volume bar as LUN ID 12
purefa_host:
name: foo
volume: bar
lun: 12
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Disconnect volume bar from host foo
purefa_host:
name: foo
volume: bar
state: absent
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Add preferred arrays to host foo
purefa_host:
name: foo
preferred_array:
- array1
- array2
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Delete preferred arrays from host foo
purefa_host:
name: foo
preferred_array: delete
fa_url: 10.10.10.2
- name: Set CHAP target and host username/password pairs
purefa_host:
name: foo
target_user: user1
target_password: passwrodpassword
host_user: user2
host_password: passwrodpassword
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Delete CHAP target and host username/password pairs
purefa_host:
name: foo
target_user: user
target_password: clear
host_user: user
host_password: clear
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
Authors
- Pure Storage Ansible Team (@sdodsley) <[email protected]>
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/purestorage/flasharray/purefa_host_module.html