Host and Host Group Creation
This section describes the recommendations for creating provisioning objects on the FlashArray. The FlashArray vSphere Web Client Plugin automates all of the following tasks. The FlashArray has two object types for volume provisioning, hosts and host groups:
A host is a collection of initiators (Fibre Channel WWPNs, iSCSI IQNs or NVMe NQNs) that refers to a physical host. A FlashArray host object must have a one-to-one relationship with an ESXi host. Every active initiator for a given ESXi host should be added to the respective FlashArray host object. For example, if an initiator is not yet zoned, and not intended to be, it can be omitted from the FlashArray host object. Furthermore, while the FlashArray supports multiple protocols for a single host (a mixture of FC, iSCSI, and NVMe), ESXi does not support presenting VMFS storage via more than one protocol. Therefore, you should avoid creating a multi-protocol host object on the FlashArray when in use with VMware ESXi.
In the following example, the ESXi host has two online Fibre Channel HBAs with WWPNs of 21:00:00:0e:1e:1e:7b:e0 and 21:00:00:0e:1e:1e:7b:e1
A host group is a collection of host objects. Pure Storage recommends grouping your ESXi hosts into clusters within vCenter—as this provides a variety of benefits like High Availability and Dynamic Resource Scheduling. In order to provide simple provisioning, Pure Storage also recommends creating host groups that correspond to VMware clusters. Therefore, with every VMware cluster that uses FlashArray storage, a respective host group should be created.
Every ESXi host that is in the cluster should have a corresponding host (as described above) that is added to a host group. The host group and its respective cluster should have the same number of hosts. We recommend the same number of hosts in the host group as is in the cluster. While it is supported to have an unmatching count, it makes cluster-based provisioning simpler, and a variety of orchestration integrations require these to match.
As a best practice, match FlashArray hosts groups with vCenter clusters.
Be Aware that moving a host out of a host group will disconnect the host from any volume that is connected to the host group. Doing so will cause a Permanent Device Loss (PDL) scenario to any datastores that are using the volumes connected to that Host Group.
Setting the FlashArray “ESXi” Host Personality
For FlashArrays running 5.3.6 or earlier, do not make this change online. If an ESXi host is running VMs on the array you are setting the host personality on, data unavailability can occur. A fabric logout and login may occur and accidental PDL can occur. To avoid this possibility, only set this personality on hosts that are in maintenance mode or are not actively using that array. If the FlashArray is running 5.3.7 or later, the ESXi host personality can be set online.
In Purity 5.1 and later, there is a new host personality type for VMware ESXi hosts. Changing a host personality on a FlashArray host object causes the array to change some of its behavior for specific host types.
In general, Purity automatically behaves correctly without specific configuration changes. However, due to a variety of host types supported and varying requirements, you must perform a manual configuration.
In Purity 5.1, we recommend enabling the “ESXi” host personality for all host objects that represent ESXi hosts.
The ESXi personality does the following as of Purity 5.1.0:
- It makes the FlashArray issue a Permanent Device Loss SCSI sense response to ESXi when a pod goes offline due to a mediator loss. If this is not set, no response is sent, and vSphere HA does not detect the failure properly. It will not restart VMs running on the failed hosts.
- ESXi uses peripheral LUN IDs instead of flat LUN IDs—this changes how ESXi views any LUN ID on the FlashArray above 255. Since ESXi does not properly interpret flat LUN IDs, it sees LUN ID higher than 255 to be 16,383 higher than it should be (256 is seen as 16,639), which is outside of the supported range of ESXi. Setting the ESXi personality on the FlashArray for a given host switches the FlashArray LUN methodology to peripheral, allowing ESXi to see LUN IDs higher than 255.
While this personality change is currently only relevant for specific ActiveCluster environments and/or environments that want to use higher-than-255 LUN IDs, we recommend setting this on all ESXi host objects.
As a best practice, set FlashArray host objects to have the FlashArray “ESXi” host personality when using Purity 5.1 or later. This change is required for all environments using Purity 6.0+.
The ESXi host personality can be set through the FlashArray GUI, the CLI, or REST.
- To set the ESXi host personality via the GUI, click Storage.
- Click Hosts.
- Select the host you would like to configure:
- Next, navigate to the Details pane.
- Click the vertical ellipsis and choose Set Personality:
- Choose the radio button corresponding to ESXi.
- Click Save:
Connecting Volumes to Hosts
You can connect a FlashArray volume to either host objects or host groups. If a volume is intended to be shared by the entire cluster, we recommend connecting the volume to the host group, not the individual hosts. This makes provisioning easier and ensures the entire ESXi cluster has access to the volume. Generally, volumes that are intended to host virtual machines should be connected at the host group level.
Private volumes, like ESXi boot volumes, should not be connected to the host group as they should not be shared. Instead, these volumes should be connected to the host object.
Pure Storage has no requirement on LUN IDs for VMware ESXi environments. Therefore, you should rely on the automatic LUN ID selection built into Purity.