On this page
purestorage.flasharray.purefa_host – Manage hosts on Pure Storage FlashArrays
Note
This plugin is part of the purestorage.flasharray collection (version 1.11.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.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.
|
|
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
aliases: host |
|
nqn
list / elements=string
|
List of NQNs of the host.
|
|
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.
DEPRECATED No longer a necessary parameter
|
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 <name>#I<suffix>, 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.
|
Notes
Note
- If specifying
lun
option ensure host support requested value - This module requires the
purestorage
andpy-pure-client
Python libraries - Additional Python librarues may be required for specific modules.
- 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
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
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
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
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
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Delete exisitng WWNs from host foo (does not delete host object)
purefa_host:
name: foo
wwns: ""
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- 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) <pure-ansible-team@purestorage.com>
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/purestorage/flasharray/purefa_host_module.html