Wednesday, August 27, 2014

VMware VSAN – How to Upgrade or Replace a Disk Controller?


The lab environment I utilize was recently upgraded to Dell R720 servers and VSAN was introduced as an additional storage tier.

To date the performance has been fantastic! However, the disk controllers that were shipped with the servers are now no longer on the VSAN HCL

As a result, new disk controllers have been purchased and now need to be installed in to each server.

Here is the process to follow that will allow each of the new controllers to be installed and without disruption to the workloads currently running on VSAN (VDI Environment & Multiple Server VM’s in this case):

  1. Delete the 1st disk group from HOST1 & identify the physical disks within the server that correlates - VMware Article here
  2. Run a compliance check on each storage policy that is currently active & allow for remediation to take place (the policy will ensure that any objects of components that once resided on the now deleted disk group are re-copied or re-striped elsewhere in the distributed file system used by VSAN)
  3. Place HOST1 in maintenance mode selecting one of the three options available: migrate all data objects, ensure object access (moves object components to ensure that minimum availability is achieved) or leave data objects in place (data is re-synced once host is back online - this is carries more risk)
  4. Power off HOST1
  5. Remove the disks identified in step one that are currently attached to the old unsupported disk controller and re-attach to the new controller. Ensure disks are wiped and that ‘pass-through’ mode is enabled again so that VSAN can take advantage of the disk once again.
  6. Power on HOST1
  7. Re-add disks back in to VSAN cluster and re-establish a new disk group
  8. Repeat steps 1- 7 until all disk groups are attached to the new disk controller
  9. Move on to HOST2 & execute steps 1 – 8
  10. Move on to HOST3 & execute steps 1 – 8
  11. Etc. Etc.

 NB: To ensure that you have a supported VSAN configuration, check out the VSAN HCL or better yet - use a VSAN ready node that is purpose built by various X86 server vendors.


What is CloudVolumes by VMware & How does it work?

Last week VMware announced their acquisition of CloudVolumesCloudVolumes are relatively new start-up based out of California who specialize in Application Virtualization.
Now I know this doesn’t sound like a ‘revolutionary’ acquisition by VMware because the term ‘Application Virtualization’ has been around for a number of years - AppV, ThinApp, AppSense etc.

The differentiator for CloudVolumes is the way in which they 'containerize' the application and then present it back to the server or desktop (virtual or physical).

The majority of Application Virtualization technologies today capture the application in a ‘container’ of some description and then stream it for consumption (in some cases there is also a local mode option where the application can be copied down to the consumer – this however can prove difficult to manage).

CloudVolumes takes a different approach to this by instead capturing the application in a .VMDK or .VHD format which can then be mounted directly into the server via the CloudVolumes agent.

Architectural Overview:


NB: You can see the various applications, plug-ins and even Windows Updates can be captured and delivered via an AppStack – all without a reboot!

CloudVolumes in use:

  1. Install CloudVolumes Manager Console which can be backed one or many VM’s for high availability. This integrates with Active Directory to help map applications to groups of users or computers and also vCenter or SCVMM for virtual workloads.
  2. Identify a server that will be used as your “provisioning server” and install the CloudVolumes Agent – this server will typically be a slim installation/image that will act as the master for capturing applications.
  3. Identify the repository that will be used for the application capture – this can be either a VMware VMFS volume, Hyper-V volume or a DFS share. NB: DFS is typically used to move applications between datacenters, more on this later!
  4. Initiate an “AppStack” capture on the “provision server” (AppStack is the terminology used to describe one or many application captured inside a .VMDK or .VHD)
  5. Complete the wizard driven process and then assign the AppStack to your chosen Active Directory target – user, computer or group.
  6. Select the preferred application enablement option: instantaneous, after next logoff or after next reboot – majority of the time you will use instantaneous which means the AppStack (.vmdk) is mounted immediately and will appear inside the server or desktop within milliseconds.

Key Considerations: 

  • Storage Read I/O requirement – the AppStack (.vmdk) created is read-only meaning that multiple reads are required when you assign the AppStack to multiple users or computers. This is not deal breaker it just means that an SSD backed volume would be required or better yet a Software-Defined-Storage approach such as VSAN which means you don’t need an expensive storage array to facilitate the shared SSD requirement.
  • The volume where the AppStack capture resides must be on shared storage that is common with the cluster where the VM resides. This means that Application Streaming is avoided and instead a direct ‘SCSI hot add mount’ is initiated – this is much more efficient and scales well.
  • Requirement for user customizations or data? CloudVolumes has this covered too by enabling a “Writable Volume” which can follow the user – think of this as a persistent disk similar to that used in VMware View. With a writable volume you can use floating pools of desktops.
  • Already using ThinApp and don’t want to re-capture the applications? CloudVolumes integrates with ThinApp
  • How is it licensed today*? Per user, per computer object or per terminal user (RDSH or Citrix based use of the product) * = this may change

Virtual & Physical:


As mentioned above, CloudVolumes works across both virtual and physical workloads – this achieved using the .VHD AppStack capture format and then mounting to a Windows OS. Taking it a step further, you can then use a Windows DFS share that has DFS targets residing in different datacenter's to help provide a single consistent AppStack that is truly portable. This diagram helps illustrate the use-case:


Horizon 6 with RDSH Application Publishing:

Cloud Volumes makes it easier to scale/manage either standalone RDSH farms or those integrated with Horizon WorkSpace.

Citrix XenApp:

Cloud Volumes makes it easier to scale/manage either Citrix XenApp farms.


Application ‘Bursting’ during peak periods:

With CloudVolumes you can create a generic pool of servers with CloudVolumes pre-installed, when required you simply assign the AppStack (you can also capture data or databases with the application capture) and grow the fleet on demand:


Closing Comments:

You can find more information here and some great product demonstrations here. The key use case for this technology is within a virtual desktop environment, but as you can see above it has uses far beyond this – watch this space to see how it will integrate with the wider VMware family of products.