Saturday, November 20, 2021

FSLogix Profile Replication with Bvckup2


 One of the things I needed was a fast, quick down and dirty secondary FSLogix profile server. At the time, I was pushed to deploy FSlogix ASAP, so I only built one server to satisfy what the business wanted.  Now, ideally, you would like to do some HA  in your profile solution, Architect this out, and put a lot more time into this solution, as this wasn’t an option for me during that time.

Please note: my statement about “One of the things I needed was a fast was and quick down and dirty secondary FSLogix profile server” isn’t saying Bvckup2 is a cheap solution. In fact, it’s the best solution in my humble opinion. A while back, after discussing this with James Kindon on this blog many moons ago. James Kindon went into this HA  difference in an older Blog of his. I am not going to repeat what he said. The URL below that will help show some differences and options for you. I have been writing up the blog for a while now, and I’ll go into how I did it. You can read all the details in settings and more about what the options do in another blog James Kindon released. I have been sitting on this for a while and it's just a quick and high level to show you how it works in real-time.


I am referencing this link for a more in-depth configuration and explanation of the history and back story.

High Level for HA configuration types

https://jkindon.com/2019/08/26/architecting-for-fslogix-containers-high-availability/


Bvckup2 settings ( Great break down)

FSLogix Container Replication with Bvckup2 (jkindon.com)




Bvckup2 could achieve this for me, and it is something I highly recommend for FSLogix HA solutions. It handles the block level and even opens files. It is nice if the users have the VHDX file in a . RW mode when using FSlogix.


As you can see here, there are a couple of blogs on FSlogix HA, and users spread around HA, or even putting users on specific Profile servers

QuickPost – using FSLogix object-specific settings – JAMES-RANKIN.COM

Designing Profile Management with Active-Active Resource Locations – James Kindon (jkindon.com)


I borrowed this screenshot from Jame Kindon’s article. 

“Multiple SMB Locations with Multiple VHD Paths”

“Choosing to use VHDLocations rather than Cloud Cache does not mean that the ability to define multiple locations is lost. FSLogix allows for multiple paths to be defined to allow for Failover should one location be unavailable. The priority for which location will be used first is defined by the order that the paths are specified in the VHDLocations path.”

Diagram

Description automatically generated



For this use case, it’s a straightforward setup.

  1. I created my shares identical on each server.


  1. Server1 (FS01) already had my data in it, it was already in production, so I needed the data replicated to Server2 (FS02) in my remote location.


  1. I Installed the software on both servers. The source is FS01, and the destination is FS01. They are in different regions as well (Different States)  


  1. To make it run continuously, you have to run it as a service account, and you will need grant permission. I created a domain account and added the permissions to the software to control the service.


  1. Permission granted in the location for the folder.


  1. Here are some base settings I set. This is the Source Server which is FS01 around backup From. The backup to is FS02 server.




  1. Let start the job and watch the data pour in on the FS02 server.

  2. See the data coming in and matching

FS02                                 FS01


  1. As you can see, the data is the same

  2. FS02                                 FS01



  1. In this example, I am making a user profile that is in use and performing an ideal production use case.

  2. Before on FS01


  1. Run Job



  1. FS02 now matches with what FS01 has 



  1. Now, what if the data changes on FS01 or when the user logs off the RW disk are gone from FS01.  The detect changes will clean this up and make the profiles match the source and destination locations.


  1. Once I was logged off from my main profile on FS01, BCKUP2 detected data was a change from the Source FS01. It compared the replicated VHDX only. Then, on FS02, it took the RW disk and created a folder under my main profile folder called $Archive (Bvckup 2), then dumped the needed data with a recent replication. In this case, I used the Archive feature just in case something was screwed up, and I could go back to the point in time for the user’s container.


  1. What if an outage occurred on FS01 and FS02 gets turned into the primary, and the detect changes can’t happen because there is nothing to detect from the source? I am not 100% on this yet. I can only assume. In this case, FSLogix will do what it does with any RW disk and create a RO option to get the profile going.  ( I need to test this and create an outage and compare results)



These options are what achieved that for me:

  1. Re-Scan destination, Archive backup copies of deleted Items, and use delta copying.

Here are the high-level steps it does:

  1. It will detect when a user logs off

  2. FSLogix natively takes the RW file and merges it back into the FS01 base VHDX.

  3. Bvckup2 sees this change and adjusts it on the destination to match. Which is an extra backup of the old file.


Let’s test this.

  1. As you see below, To RW files in the location of FS02. The reason for this is that I have a session in Site 1 ongoing, and it copied it as it should.


  1. At this time, I logged off-Site 1. You will see only a test.VHDX here on FS01 because of the VHDX Merge.


  1. Let’s replicate the job now, being the RW.VHDX has gone from the Source FS01 Server

    1. Me replicating it


  1. Results as below.






This is a quick blog showing how it works, and it is excellent software for replicating containers. There are many ways to set this up and achieve the desired replication for you in your environment.  Feel Free to ask me any questions. I may not be able to answer them all. But I can test the use case in my lab and try to help. 









No comments:

Post a Comment