VMware Horizon Community
LeathenP
Contributor
Contributor

VMware App Volumes - Active / Active Deployment

Hi,

I'm looking to deploy App Volumes to supplement a Citrix XenDesktop deployment; However, the XenDesktop deployment is not your normal deployment and has been configured in an Active / Active state. Users are actively split across both geographical data centres to ensure that only 50% of users would be affect in the event of a failure. With a desire to increase our uptake on non-persistent desktops and take advantage of the operational benefits this has to offer, we've decided to invest in App Volumes. We're are currently testing and all in all very happy with what we're seeing, especially the Writable Volumes feature.


The issue we have now is, how do we get App Volumes to work in a true Active / Active configuration and supplement our Active / Active configuration within XenDesktop to allow AppStack and Writable Volumes assignment to users in the correct site. I've tried to quickly put a diagram together of the App Volumes infrastructure, to show how I think it should be configured.


App Volumes Diagrams.png


Due to our scale, we have load balanced a number of App Volumes Managers within a site. The next step is to identify a way that we can load-balance App Volumes Agent request against a single URL, but then have the request sent to the correct App Volumes Manager farm in the users "HOME" site. Then to complicate matters further, in the event of a site failure, this all needs to failover automatically with the users non-persistent desktop.


Capacity it not an issue and we will create storage groups that will ensure the AppStacks and Writable Volumes are where they need to be. Writable Volumes will eventually utilise storage Metro Clustering to ensure this data is available and accessible across both sites. The part this is missing is more to do with the Agent communication and ensuring users obtain their assigned AppStacks and Writable Volume from the correct site.


Hopefully this all makes sense, but happy to provide more details if anything is unclear.


Thanks for any help in advance.



5 Replies
Ray_handels
Virtuoso
Virtuoso

Hey Leathenp,

It does make scense what you are taking about but to make things quite easy with writable volumes you can't. With Appstacks it is quite easy to do this.

My guess is that you have storage at both locations right? Add both storages to your Appvolumes Manager and make sure all Appvolumes managers are capable of connecting to these stores. Then you create a storage group with these multiple datastores and make sure to add appstacks to this storage group. You can create a storage group by going to the Infrastucture --> Storage groups tab. Make sure to enable Auto sync, this way a newly created appstack will be synced between all datastores in the storage group.

After that make sure to also set the following option, this can be set at Configuration --> Machine Managers. What it does is it checks where the VDI resides and tries to find the appstack on the same datastore and if available it will connect it "locally" thus making sure you dont have a large amount of traffic on your storage network.

Mount Local:       

Smoke14
Hot Shot
Hot Shot

Leathenp,

My current client has the same scenario, Active/Active but they are using Horizon View in a Cloud Pod Architecture.

Ray_handels reply is correctly explained. So the Writeable Volumes solution would not meet their needs, so we went with UEM to handle the users profiles.

Working well and have not found anything blocking us for going production with this implementation.

Mike_A

Mike_A
LeathenP
Contributor
Contributor

Hi,

Thanks for your responses. I'm certainly going to investigate the single SQL instance, with possibly an Always-On cluster across both sites for redundancy purposes.

I still have a couple of questions though. The App Volumes Managers, are you load-balancing these as a large farm across both sites, or do you have two individual load-balanced farms per site and then create a GSLB type address for these site?

The part I'm still a little unsure about, is how you are ensuring that users are being serviced out of a particular site. What I'd like to make sure happens is that user A logs in and gets there desktop from site A and they then get their apps and writable volumes from Site A as well. This part is still a little unclear at the moment.

Sorry if I've missed something that is blatantly starring me in the face with this one Smiley Happy

0 Kudos
Ray_handels
Virtuoso
Virtuoso

Hey LeathenP,

We are using F5 as our loadbalancer and have 1 Appvolumes server at every site. You can put as many appvolumes servers as you want behind that F5 to meet your redundancy needs. But as said, I would be more cautious with your SQL server because installing a new Appvolumes manager is done within 5 to 10 minutes if you have a Windows server and the database to connect to.

The last part you will need to do that manually, no other way.

Make sure to create a pool per site and attach the user on site A to the pool on site A, for as far as I'm aware there is no way of telling a specific user to go to machine on a specific site by originating ip address other than creating multiple pools. Regarding the appstacks. If you select the mount on local storage option the appstack will be attached from that site automatically. The writable volume needs to be created on the datastore on the site that the user is located on. 

Smoke14
Hot Shot
Hot Shot

We use F5's for load-balancing also. It sounds like you need to leverage Cloud Pod Architecture functionality so you can assign home sites to your users. that will force the users to a specific site, if available.

For Load-Balancing, we use LTMs to handle the local load-balancing per site for the multiple AV managers for redundancy. Then we use a GTM for external access to load-balance the users across sites, if they don't have a home site set. We have to sites and we are splitting the user base between the two sites.

Here is some good blogs to start with.

https://vdelboysview.com/2015/11/30/vmware-app-volumes-storage-group-improvements-with-2-10/

VMware App Volumes™ with F5's Local Traffic Manager - VMware Consulting Blog - VMware Blogs

This should help you get a better understanding on what your trying to do.

Mike_A

Mike_A