VMware Horizon Community
LukaszDziwisz
Hot Shot
Hot Shot
Jump to solution

AppVolumes Replication - Writables and Appstacks

Hello Everyone,

I'm currently working on getting our Cloud POD completed and the last piece I have to set is the AppVolumes replication between our two sites. Ideally I want to have users with homesites where 50% of users are using Site1 and 50% Site 2. I have two standalone vcenters and App Volumes Managers in each site. For the storage we have Pure and I have already enabled Async replication. With Appvolumes I have created a storage group and I was able to import all appstacks. Then I used the powershell script and was able to replicate all entitlements with no problems. At some point I would like to automate it because right now I'm only snapshoting a replicated Appstack datastore in Site 1 and sending it across to Site 2 and then i have to manually go in and restore it to non-attachable Datastore so then AppVolumes replicates it using storage group and imports it.

As for writables I was trying to accomplish it the same way however it looks like Storage groups either don't apply to writable or it just doesn't work. I looked at the Horizon reference architecture-multi site reference guide and the only thing I can find in it is as follows:

"In use cases where writable volumes are being used, there are a few additional steps: 1. Mount the replicated datastore that contains the writable volumes.2. Perform a rescan of that datastore. If the datastore was the default writable volume location, App Volumes Manager automatically picks up the user entitlements after the old assignment information has been cleaned up.3. (Optional) If the datastore is not the default writable volume location, perform an Import Writables operation from the App Volumes Manager at Site 2."

What I'm seeing though is that storage group doesn't really work on Writables like with appstacks. It doesn't replicate between datastores. Also, If I manually drop a writable vmdk and metadata file to the default writable location, the manager never imports it automatically like mentioned in the article.

At the end of the day what I want to achieve is to have 2 sites and appstacks and writables available at both sites at all times. A user at Site 2 might never have to log in to Site 1 but in case of disaster I would like to have that synchronized and available in both places

Can someone share how this could be achieved or if you are currently doing it, maybe share you setup?

Thank you

Reply
0 Kudos
1 Solution

Accepted Solutions
Ray_handels
Virtuoso
Virtuoso
Jump to solution

At the end of the day what I want to achieve is to have 2 sites and appstacks and writables available at both sites at all times. A user at Site 2 might never have to log in to Site 1 but in case of disaster I would like to have that synchronized and available in both places

Simple answer, no you can't. If you look at appstacks, these are read only and thus can be "copied" or synced to all datastores and be attached there because after sealing, they never change.

If you look at writable disks, these change every time you log on. If you were to have 2 physical locations where the same writable is being stored Appvolumes would not know which location to choose from, also if you attach the writable from datastore A, change stuff, log off and log on again and receive writable from datastore B you won't have the change available on your writable.

Only thing you can do is move the writable from datastore A to datastore B if a user moves from locations..

View solution in original post

3 Replies
Ray_handels
Virtuoso
Virtuoso
Jump to solution

At the end of the day what I want to achieve is to have 2 sites and appstacks and writables available at both sites at all times. A user at Site 2 might never have to log in to Site 1 but in case of disaster I would like to have that synchronized and available in both places

Simple answer, no you can't. If you look at appstacks, these are read only and thus can be "copied" or synced to all datastores and be attached there because after sealing, they never change.

If you look at writable disks, these change every time you log on. If you were to have 2 physical locations where the same writable is being stored Appvolumes would not know which location to choose from, also if you attach the writable from datastore A, change stuff, log off and log on again and receive writable from datastore B you won't have the change available on your writable.

Only thing you can do is move the writable from datastore A to datastore B if a user moves from locations..

LukaszDziwisz
Hot Shot
Hot Shot
Jump to solution

@Ray,

Thank you as always for your input. I agree after further research and your response it completely makes sense. What we will end up doing is that we will just simply backup all writables from both locations to one shared lun and in case of DR event we will just restore and import to the surviving site for now. Then after my roll out is completed. I'll try to work with UEM a little more  and try to move away from writable volumes.

Thank you for your help

Reply
0 Kudos
medvmwadm
Enthusiast
Enthusiast
Jump to solution

I'm in this exact same scenario.  In our case, we have close to 400 Writable Volumes and we are actually trying to migrate all VDI users from one site to another site in a different datacenter.  I currently have a shared NFS datastore that we are using to replicate the AppStacks.

I too will probably look at using the baked in Backup feature of App Volumes to write all Writable Volumes to the NFS datastore.  Then, do a Restore at the other end.  Has anybody found a better way to replicate Writables from one site to another?

Thanks

Reply
0 Kudos