To achieve high availability for FSLogix Profile Container on-premises, Parallels recommends using multiple SMB locations with a single VHD path and Distributed File System Namespace in front of one or many SMB locations (note that only one SMB location can be active at one time) as active-passive HA. DFSR is applicable to NTFS-based SMB locations, but a third-party synchronization tool, such as https://bvckup2.com/kb/beyond-robocopy, is required for ReFS.
Multiple locations can be specified from the User Profile tab by clicking on the [+] button.
For FSLogix Profile Container in the cloud (e.g. Microsoft Azure), multiple storage solutions are available, with the recommended ones being Azure Files and Azure NetApp Files. Additional best practices apply, such as setting up the storage solution in the same datacenter location and excluding the VHD(X) files for Profile Container from antivirus scanning. For more information about FSLogix Profile Container and Azure deployment options, see https://docs.microsoft.com/en-us/azure/virtual-desktop/create-fslogix-profile-container.
More information on DFS and DFSR can be found at https://technet.microsoft.com/enus/library/jj127250.aspx.
Cloud Cache technology allows storing multiple copies (per Microsoft, the practical limit is 4) of Profile Containers on SMB file shares and keeping its data in sync without the need to deploy complex replication infrastructure. Note though that logon and logoff delays may impact the user experience.
Examples of usage:
Keeping copies of profiles in several storage locations (disaster recovery data center).
Replicating data to the more cost-effective storage.
Migrating from one storage location to another.
To configure multiple Cloud Cache locations (corresponds to CCDLocations setting), simply add them using the [+] button on the User Profile tab.
Profile Container will read data from a provider if the data needed does not already exist in the Local Cache file. When configuring Cloud Cache locations, the order Providers are listed defines the order Profile Container uses them for reading. If the first path specified is unavailable, then Profile Container will attempt to read from the second Provider and so on.
Cloud Cache will always write to all Providers specified in CCDLocations, unless a specified Provider isn't available.
Because the Local Cache file will service most I/O requests, the performance of the Local Cache file will define the user experience. It is critical that the storage used for the Local Cache file is high-performing and highly available. It is also suggested that any storage used for the local cache file should be a physically attached storage or have reliability and performance characteristics that meet or exceed high-performing physically attached storage. When using Cloud Cache, FSLogix profiles can be stored on Azure Files as well as directly on Azure Page Blobs. For Azure Page Blobs, it is important to secure sensitive Azure credentials by using Credential Manager. This is explained in Chapter 3.