I manage a Citrix environment using UPM. I recently started testing the use of FSLogix for profiles to allow the use of the Teams full client. I loved the idea of the cloud cache functionality and a hands off approach to synchronizing profiles across multiple locations without any fuss !
I have Citrix servers in 4 geographical locations: 2 in the US, 1 in Europe and 1 in Asia. When I started testing, I used a single location for the servers and profiles. Everything was looking really promising. However, things fell apart as I tried to implement cloud cache across these 4 distant locations. Here are some observations on how I think things work. I have some suggestions on product enhancements to help my deployment.
The profile container is created on the cloud cache location for first time user. This also seems to be the case with multiple cloud cache locations that the user logon does not complete until the profile is created and synced across all locations. I noticed that my logon times went from 40 seconds using a single location to 3-4 minutes with all four locations configured.
What if FSLogix created a local container for a new user (fast) and worries about syncing the copies to the cloud cache locations afterwards?
For an existing profile, I saw similar behavior. The logon times increased significantly as I introduced more cloud cache locations It looks like FSLogix wants all cloud cache locations in sync before completing the logon process.
What if FSLogix mounts the VHD from the closest cloud cache location in order to speed up the logon time. Then worry about syncing the profiles to all cloud cache locations afterwards. The FSLogix service could perform some simple ping/file transfer actions to determine which cloud cache location responds first.
Maybe I am just out of my mind for trying to sync these large profiles across four distant locations.