Enabling ActiveDR for ESXi Storage
If a FlashArray is running Purity 6.0 or later, ActiveDR can be enabled for VMware-based storage.
Overview and ActiveDR Configuration
There are a few terms worth understanding for ActiveDR:
- ActiveDR: Asynchronous continuous replication between two FlashArrays.
- Pod: A namespace for volumes that can be enabled for ActiveDR replication.
- Local pod: The local pod hosts the volumes that are being replicated.
- Remote pod: The remote pod hosts the volumes that are replicated copies of the volumes in the local pod.
- Promotion: An operation run on a pod that makes the included volumes read/write accessible with the latest copy of the data. This is the state of the volumes whether or not they are presented to a host or hosts.
- Demotion: An operation run on a pod that makes the included volumes read/write inaccessible with the latest copy of the data. This is the state of the volumes whether or not they are presented to a host or hosts.
- Replica link: A replication connection between two pods, each on a different array.
- Recovery point: The latest available point-in-time of the data on the remote pod.
- Lag: The difference in time between the local pod data and the remote pod data. This is commonly referred to as the Recovery Point Objective (RPO).
There are many methods to provision FlashArray storage to a VMware environment; the FlashArray management tools directly (GUI, CLI, REST), the Pure Storage vSphere Client Plugin, PowerShell, vRealize Orchestrator, and many more. Enabling ActiveDR for a volume can be achieved in three ways:
- Creating a new volume in the promoted pod
- Removing the replica link and moving a volume into the pod and then re-adding the replica link
- Creating a replica link to a target pod for a pod hosting volumes
This document will focus on using the Pure Storage Plugin for the vSphere Client in combination with the FlashArray GUI when necessary. This is meant to be instructive--other options for provisioning are perfectly acceptable. Refer to your preferred method of provisioning for additional details.
Note that volumes cannot be moved into a pod with an active replica link. The pods must be first unlinked, then you can move volumes into the local pod. New volumes can be created in a pod at any time, regardless to link status.
Enabling ActiveDR on a FlashArray Pair
The first step is to configure the replication connection between a FlashArray pair. ActiveDR can be configured on either replication type (synchronous or asynchronous) though the replication connection type does not alter ActiveDR behavior in any way. The main difference between the two connection types is that the synchronous connection allows for ActiveCluster (active-active synchronous replication) to be enabled on a pod.
If the distance between the two FlashArrays is measured in a Round Trip Time (RRT) of more than 11ms, choose the asynchronous connection type. To create this connection login to the FlashArray GUI and click on the Storage pane and click on the plus sign in the Array Connections panel. Populate the opposing FlashArray management address and connection key (you can create this connection on either FlashArray).
To enter the connection key:
1) Get connection key on remote FlashArray | 2) Copy connection key on remote FlashArray | 3) Enter connection key into local FlashArray |
![]() |
![]() |
![]() |
To enter the management address:
1) Go to network settings of remote FlashArray | 2) Find VIR address of remote FlashArray | 3) Enter in remote address into local FlashArray |
![]() |
|
![]() |
Click Connect.
The connection will be created. Ensure that the connection version is at least 6.0.0 (this will report the lower of the two Purity levels if the source and target versions are different):
The next step is to create a source pod or to identify a pre-existing pod to be protected by ActiveDR.
For a pre-existing pod to be protected by ActiveDR it cannot currently have any protection groups with asynchronous replication enabled nor can it be enabled for ActiveCluster. If you would like to enable ActiveDR for a pod in one or both of those scenarios you must first disable those protections first.
Login to the FlashArray of which you would like to replicate from (the desired "source" array). Click on Storage then Pods and click on the plus sign in the pods panel to create a new pod.
Enter in a name that describes the pod (it can always be renamed later) and click Create.
Click on the pod and then click on the plus sign in the Pod Replica Links panel. This will start the process to create the relationship between your selected pod to a remote pod on a target FlashArray.
In the window that appears choose the target FlashArray and the desired target pod (or create a new pod which can be done through the wizard as shown below):
1) Choose a FlashArray | 2) Create a new pod or select an existing one | 3) Create the replica link by clicking Create. |
![]() |
![]() |
![]() |
The replication between the pods will immediately start and will go into a status of baselining until the pods are synchronized:
If you choose an existing pod to be the target pod, you must first "demote" the target pod before a replica link can be established.
Provisioning with the Pure Storage Plugin for the vSphere Client
The first release of the Pure Storage Plugin for the vSphere Client that supports ActiveDR is version 4.4.0. To install the plugin, refer to the following KB article:
HTML-5 vSphere Web Client Plugin Support
The vSphere Plugin currently only supports creating new volumes in ActiveDR pods (scenario #1 above) and does not offer the ability to create/delete replica links. This must be done directly via the FlashArray GUI, CLI, or REST API.
Provisioning a VMFS Datastore into an ActiveDR Pod
To create a new VMFS datastore from an ActiveDR enabled pod, login to the vSphere Client. In general, Pure Storage recommends the use of vSphere clusters to manage hosts. In order to provision to a host or a cluster, the hosts must be configured for connectivity. On a FlashArray there is an object called a host (a collection of initiators that represent a physical host) and a host group (a collection of hosts). Pure Storage recommends a 1:1 correlation between a host group and a cluster.
For the cluster you would like to provision to, ensure that a host group has been created. If it has not, right-click on a ESXi cluster object and choose Pure Storage > Add Host Group. If this is already completed, you can skip this step and go to creating a new datastore.
1) Right-click on a cluster | 2) Click Pure Storage, then Add Host Group | 3) Choose FlashArray, FC/iSCSI, and click Create. |
![]() |
![]() |
![]() |
Right-click on a ESXi cluster object and choose Pure Storage > Create Datastore. Choose VMFS as the option.
1) Right-click on a cluster | 2) Click Pure Storage, then Create Datastore | 3) Choose VMFS |
![]() |
![]() |
![]() |
Choose a name, size and confirm the hosts to provision to (you can only choose one cluster upon initial provisioning, but you can add it to additional ones later).
1) Choose a name and size | 2) Confirm the host or cluster to provision to |
![]() |
![]() |
On the storage page, you can choose what FlashArray and optionally what pod to put the new datastore in.
If you do not see the FlashArray listed (and the desired pod) it means that the FlashArray is not yet registered with the plugin or there is no correct host group created on the FlashArray. Verify both configurations and retry.
There are three tabs; Local, Clustered, and Continuous. Local means a volume not in a pod, or a pod that has no ActiveCluster or ActiveDR relationship. Clustered refers to pods that are enabled for ActiveCluster, and Continuous refers to pods that are enabled for ActiveDR. Click Continuous and choose your desired pod.
If you do not see Continuous as an option it means that you are not using vSphere Plugin version 4.4.0 or later. Upgrade and retry.
The table will show the local pod, the remote pod (and their respective FlashArrays), the current replication direction and the current replication lag. There will be a small note if the remote pod is currently in the promoted status--this is informational only and is not a cause for concern.
Click Next. If there are any protection groups in the pod you may also choose to place that new volume in one or more protection groups to provide scheduled snapshot protection.
As of Purity 6.0.0 protection groups in an ActiveDR pod only support local snapshots--they do not also support traditional snapshot replication. But it is important to remember that standard volume snapshots and protection group snapshots do get replicated by ActiveDR to the remote pod anyway--as ActiveDR not only replicates writes but also your snapshots and their configuration.
Click Next. You may optionally also assign a bandwidth or IOPS limit. Click Next again review your choices and then click Finish.
Viewing VMFS ActiveDR status
To identify what pod a VMFS datastore is in, as well as the replication configuration/direction, click on the datastore and then the summary tab. There is a panel called FlashArray that shows the pod information, as well as direction and the hosting and target FlashArrays.
1) Click on datastore and then Summary tab. | 2) Find FlashArray panel to see ActiveDR information |
![]() |
![]() |
Provisioning an RDM into an ActiveDR Pod
The Pure Storage Plugin for the vSphere Client does not have a native ability to provision an RDM, but this can still be achieved via combination of datastore provisioning in the plugin and native vSphere Client functions. At a high level:
- Create a VMFS datastore with the name you would like for the RDM
- Note the new volume serial number.
- Using the vSphere Client, delete the VMFS file system on the volume.
- Add the volume a virtual machine as an RDM.
Right-click on a ESXi cluster object and choose Pure Storage > Create Datastore. Choose VMFS as the option.
1) Right-click on a cluster | 2) Click Pure Storage, then Create Datastore | 3) Choose VMFS |
![]() |
![]() |
![]() |
Choose a name, size and confirm the hosts to provision to (you can only choose one cluster upon initial provisioning, but you can add it to additional ones later).
1) Choose a name and size | 2) Confirm the host or cluster to provision to |
![]() |
![]() |
On the storage page, you can choose what FlashArray and optionally what pod to put the new datastore in.
If you do not see the FlashArray listed (and the desired pod) it means that the FlashArray is not yet registered with the plugin or there is no correct host group created on the FlashArray. Verify both configurations and retry.
There are three tabs; Local, Clustered, and Continuous. Local means a volume not in a pod, or a pod that has no ActiveCluster or ActiveDR relationship. Clustered refers to pods that are enabled for ActiveCluster, and Continuous refers to pods that are enabled for ActiveDR. Click Continuous and choose your desired pod.
If you do not see Continuous as an option it means that you are not using vSphere Plugin version 4.4.0 or later. Upgrade and retry.
The table will show the local pod, the remote pod (and their respective FlashArrays), the current replication direction and the current replication lag. There will be a small note if the remote pod is currently in the promoted status--this is informational only and is not a cause for concern.
Click Next. If there are any protection groups in the pod you may also choose to place that new volume in one or more protection groups to provide scheduled snapshot protection.
As of Purity 6.0.0 protection groups in an ActiveDR pod only support local snapshots--they do not also support traditional snapshot replication. But it is important to remember that standard volume snapshots and protection group snapshots do get replicated by ActiveDR to the remote pod anyway--as ActiveDR not only replicates writes but also your snapshots and their configuration.
Click Next. You may optionally also assign a bandwidth or IOPS limit. Click Next again review your choices and then click Finish.
Once provisioned, click on the new VMFS datastore, then the Configure tab, then Device Backing and take note of the device name (NAA). The last 5 numbers or so should be enough to identify it, but record the entire number to be sure.
1) Click on the VMFS datastore | 2) Click Configure then Device Backing | 3) Take note of the NAA number |
![]() |
![]() |
![]() |
Next, right-click on the new VMFS datastore and choose Delete Datastore. Do not click on Pure Storage > Destroy Datastore as that will remove the entire provisioned volume.
1) Right-click on the datastore | 2) Choose Delete Datastore | 3) Confirm Deletion |
![]() |
![]() |
![]() |
You can now add that volume to a virtual machine as an RDM. Right-click the VM, choose Edit Settings, then add
1) Right-click the target VM | 2) Choose Edit Settings | 3) Choose Add New Device then RDM Disk |
![]() |
![]() |
![]() |
The RDM will appear in this list (verify the NAA number). Choose it and click OK then OK again to confirm the addition of the RDM.