Jump to content
Welcome to our new Citrix community!
  • Windows 2016 Deduplication on FSLogix Containers and ODFC – Part 1


    cugcblogs

    raydavis22rnd-1.jpg by Ray Davis, CTA

    During the time of running my Shrink Scripts (yes, I have a couple I go back and forth with) for FSLogix, I noticed that my 4TB drive is used more and more. There wasn’t really anything I could do at this point other than adding disk space (call me old, but I try to optimize as much space as possible before throwing more hardware at it). One of the things I could do is delete all older profiles that haven’t been used in 90 days. Some scripts can do this for you. One is by Jim Moyle, and another is by René Bigler (posted at the end). However, I must test this, and I don’t have the time to do this right now. So, Manuel Winker reminded me about Windows Deduplication. I have totally forgotten about this, and I am not sure how I did, to be honest. So, this is how I did it and my results.

     

    1. Install the Data Deduplication Role (GUI)
    davis030421.png.5ecb90ce595c9b0718d127ea41e95168.png
    1. PowerShell install: Install-WindowsFeature -Name FS-Data-Deduplication -IncludeAllSubfeature -IncludeManagementTools 
    davis030421-02.png.77394ea4133c7df4a00d41d9557db481.png
    1. After things are installed, you need to set it up for the Volume that you will apply this to.
    2. Open server manager, then navigate to File and Storage Services --> Volumes, select the desired volume, right-click and from the menu and select Configure Data Deduplication.
    davis030421-03.png.e696a09a07635fd7ca7909c00b98017b.png

     

    For this test, I am going to use the “General Purpose File server.”

    This is a chart I pulled from the MS site on the difference: https://docs.microsoft.com/en-us/windows-server/storage/data-deduplication/understand#usage-type-default

    davis030421-04.png.ce6c6e59cccec4fa60d508d25acb4c85.pngdavis030421-05.png.65e06f35389a2b374d1bd0ab31c14be1.png

    For the Schedule, I had some advice from Mike Streetz: https://worldofeuc.slack.com/archives/CKBVDG48H/p1610685976025900

    I removed Enable Background Optimizations because I felt that it could cause issues, and enabled a schedule based on some feedback with better control.

    davis030421-06.png.ee2d5aa1fb32dc615d1228fa74025b46.png

     

    Let’s check my schedule with PowerShell: Get-DedupSchedule

    davis030421-07.png.e0ed3b75818832a339cf81f5ca93d6f6.png

    I am going to kick it off and see what it does for me.

    Powershell: Start-DedupJob -Volume D: -Type Optimization -Memory 75 -Cores 100 -Priority High -Full

    davie030421-08.png.31c1f47bb53f77fd70a5808a7c3ad875.png

    Before:

    davis030421-09.png.ebe3abae06f5338a82a7d25a5286ca7f.png

    After:

    davis030421-10.png.40c25492cd8e84541d2d21b6a68f32db.png

    Let check the status: Get-DedupStatus -Volume D: | fl

    davis030421-11.png.eac8441b0aab401ab6e07fc5879b3191.png

    So, I save 1GB? WOW. After looking at this, I realized that I ran an FSLogix Shrink script 2 days ago. So, I needed to change it to 1 day for me. So, that was not a really fair test.

    Test 2 is switching to VDI and 1 day. Based on what I read on MS, this would help in saving around seeing the same OS over and over. But in this case, it’s just a test, and I am not worried about that. 

    davis030421-12.png.374b317aeb088bcc15fcc418949d4c20.png

    After:

    davis030421-13.png.cfd743a1601255061a63500f6bd28eae.pngdavis030421-14.png.cb64c46f59d076367b54ee33a2b6ff4d.png

    So, I saved 92.71 GB.

    I will switch it back to see if I can squeeze more out or if it better this way. But I doubt it.

    davis030421-15.png.362f4867d922006a4442d00f76525020.png

    So, I'll run this again.

    Start-DedupJob -Volume D: -Type Optimization -Memory 75 -Cores 100 -Priority High -Full

    Results are the same. But this was a good experiment, and if I saved 91GB on 500GB Volume, I gained 18.5% of disk space back. 500×18.2% = 92.5

     

    What could I save on 4TB? If we take the math I have here and just guesstimate (guessing and estimating): 4000 x 18.5% = 740GB. I could gain another 740GB. At 4TB volume, my current free space is 670GB after an FSLogix Shrink job was run. So, overall, that is 1.4TB back in my pocket. I call that a win and I'm very happy. However, this could be less or more. 

    In my opinion, this is a huge value to anyone running FSLOGIX Profile servers, or really any file servers. This quick blog is not fancy, but more of a reminder out there for those who forgot like me. Everyone be safe and until next time, folks.

    Resources

    https://worldofeuc.slack.com/archives/CKBVDG48H/p1610685976025900

    https://docs.microsoft.com/en-us/windows-server/storage/data-deduplication/understand

    https://docs.microsoft.com/en-us/windows-server/storage/data-deduplication/advanced-settings

     

    Cleanup Jobs

    Cleanup unused FSLogix Office 365 Containers – dready’s Blog

    Delete Inactive FSLogix Profiles using PowerShell – hallspalmer_Blog (wordpress.com)

     

    Delete old Profiles script

    GitHub – FSLogix/Invoke-FslShrinkDisk: This script will shrink a FSLogix Disk to its minimum possible size


    User Feedback

    Recommended Comments

    Guest Windows 2016 Deduplication on FSLogix Containers and ODFC – Part 2 – BLOGS

    Posted

    […] my first blog post here, Part 1, I showed how to set up Windows Deduplication on Server 2016. This second series will show my […]
    Link to comment
    Share on other sites



    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

×
×
  • Create New...