Skip to main content
Pure Technical Services

Implementation Guide : Provision and Manage | Azure VMware Solution and Pure CBS

Currently viewing public documentation. Please login to access the full scope of documentation.



Azure Run Command Overview and Architecture

AVS is a fully-managed VMware service provided by Azure to its customers.  AVS users are given access to the cloudadmin@vsphere.local account which has sufficient privileges for general vCenter and virtual machine daily operations management.  This account does not include some of the broader administrative rights.  To account for this, AVS uses a framework called Run Command to allow end-users to run certain administrative actions against their AVS cluster.  At its core, Run Command is a collection of PowerShell cmdlets that for the purposes of this guide is how we will accomplish initial AVS cluster configuration to use iSCSI, create and attach CBS volumes and manage CBS datastore operations within the AVS cluster or AVS clusters.

Existing Pure Storage VMware users are potentially familiar with the Pure Storage vSphere Plugin and/or the Pure Storage Analytics Collector.  For the AVS integration, we have introduced a third flavor of our Pure Storage Plugin entitled VMware Cloud Manager that can be deployed on the AVS Cluster to support using and managing CBS via Run Command and the Pure PowerShell SDK.  The version of the plugin comes preloaded with PowerShell and all of the required modules and libraries    Alternatively, customers can build their own Azure VM with connectivity to AVS and CBS and install the required PowerShell libraries and modules.  In this first section of this guide, we will show how to setup both the Pure Plugin within AVS as well as build your own Azure VM that can in turn be used to control the AVS and CBS integration.  

Integration Setup

Option 1:  Deploy Pure Storage OVA

The deployment process for installing the Pure Plugin OVA onto AVS is nearly identical to the on-premises method.  The Pure Plugin OVA can be downloaded from the following link to a host with access to AVS or the URL can be used alternatively.  For this example, we elected to download the OVA to an Azure Windows VM with access to AVS.

The Pure Storage OVA can be accessed via this link (note that clicking this link will automatically kick off the OVA download):

Start by right-clicking on the AVS cluster you wish to deploy the OVA to and select Deploy OVF Template...


In the wizard that appears, we chose the local file option and browsed to the file location of the Pure Plugin OVA.  Click on Next when this is complete.


Provide a virtual machine name and select a folder to deploy the OVA into and then click on the next button.


You can deploy the OVA onto any AVS cluster/ESXi host.  Select a cluster or individual host and then click on the Next button.


Review the details of the OVA.  Note that this example used a development build so your plugin version is likely different than what is shown below.  Click on the next button to proceed.


Accept the license agreement and click next to proceed.


A new AVS instance will only have a vSAN datastore available to deploy the OVA onto.  Select the vsanDatastore option and then click on next.  Once CBS is setup, you will have the option to storage vMotion the Pure Plugin to the CBS array if you want.


Select an NSX-T network segment for the Pure Plugin to utilization and click on next.


See the numbered list below this screenshot for detailed information to customize the OVA template.


  1. Appliance Type:  Select VMware Cloud Plugin from the drop-down menu.  This is the flavor of the plugin built specifically for AVS and CBS support.
  2. DHCP:  The Pure Plugin supports DHCP if you have a DHCP service running and available within your AVS deployment.  For this example we will use a static IP address so we have unchecked this box.
  3. IPv4 Address:  Provide a static IP address for the Pure Plugin appliance to utilize.
  4. Netmask:  Provide the netmask for your NSX-T network segment.
  5. Gateway:  Enter the gateway for your NSX-T network segment.
  6. DNS Servers:  If your AVS deployment is attached to a DNS instance, enter it here.  You can also enter in a more generic DNS server such as
  7. Hostname:  Enter an optional hostname for the Pure Plugin appliance.
  8. HTTPS Proxy:  If you have a proxy server in use, enter the proxy URL, port, username and password.
  9. Docker IP Range:  The pure plugin leverages docker.  Use one of the network ranges presented.  In this example we used the network to make sure there was no overlap or conflict with the existing AVS network.

With the template customized you then review the OVA wizard selections and deploy the OVA into AVS.

When the deployment completes, power on the OVA by right-clicking on it and selecting Power On.


You can then ssh to the Pure Plugin using your ssh-client of choice:

$ ssh pureuser@<purepluginIPAddress>

You will immediately be prompted to change the default password (pureuser).  Upon changing the password, log back in to the Pure appliance.

To launch the Pure Storage VMware Cloud Manger integration, enter the following:

$ purepwsh

Running that command will launch the PowerShell module instance.  The plugin will then automatically begin authentication into Azure so that it can have access to your CBS and AVS instances.


You will need to navigate to and enter the personalized code shown in your session in order to authenticate into Azure.

With Pure Pugin OVA deployment and authentication successful please skip the next section (Deploy Azure VM or AVS VM) and move on to Storage Management to continue.

Option 2: Deploy Azure VM or AVS VM

Deploy an Azure Virtual Machine that has connectivity to the vNet connected to Azure VMware Solution and Pure CBS.  For this example, we have deployed an Azure Virtual Machine running Ubuntu onto the same vNet as Pure CBS with an ExpressRoute connection to AVS.

After logging into the Ubuntu VM via ssh, we will first run a few commands to install PowerShell onto the VM and then launch PowerShell.

$ wget
$ sudo dpkg -i powershell_7.3.4-1.deb_amd64.deb
$ pwsh

 With PowerShell installed and launched, we next install the required PowerShell modules for the joint integration.

PS > Install-Module -Name Az -Repository PSGallery -Force
PS > Install-Module VMware.PowerCLI -Repository PSGallery
PS > Install-Module -Name PureStorage.CBS.AVS -AllowPrerelease

Lastly, login to Azure via the following command.  You will need to navigate to the web page shown below and enter the personalized code to complete logging into Azure.  From here, please proceed to the next KB article for an explanation on how to initialize the AVS cluster and connect CBS to it.

PS > > Connect-AzAccount -UseDeviceAuthentication
To sign in, use a web browser to open the page and enter the code R2GXXC6PB to authenticate.


The step-by-step narrated technical demo video below shows how to deploy both Azure Run Command integration options.