Forum Discussion

JonathanCovalt's avatar
JonathanCovalt
Copper Contributor
Sep 10, 2024

AVD Truly Non-Persistent

We have an environment where there are machines available for public use (a public library). Users should be able to create documents and the like on the machine, and save them to locally attached storage, or e-mail/cloud storage, etc.

 

When a user logs out, the machine should completely reset; all changes made, documents created, history, and the like should be erased and the machine should automatically reset to the base image.

 

Everything in the MS documentation I can find that mentions non-persistent machines just means pooled machines, which doesn't do this. If I want to set up an AVD pool that does this, how would I accomplish that?

  • JonathanCovalt 

     

    Are you referred this?

     

    1. Create a Golden Image:

      • Set up a virtual machine with all the necessary applications and configurations
      • Install and configure all required software
      • Optimize the image for performance
      • Capture the image to use as the base for your AVD pool
    2. Create a Host Pool:

      • In the Azure portal, navigate to Azure Virtual Desktop and create a new host pool
      • Choose the “Pooled” option for the host pool type
      • Use the captured image as the base image for the host pool
    3. Configure FSLogix for User Profiles:

      • FSLogix helps manage user profiles in non-persistent environments
      • Install and configure FSLogix on your golden image
      • Store user profiles on a network share or Azure Files
    4. Set Up Auto-Scaling:

      • Configure auto-scaling to manage the number of session hosts based on demand
      • Use Azure Automation or Azure Logic Apps to automate the scaling process
    5. Configure Session Hosts to Reset:

      • Use a script or a third-party tool to reset the session hosts to the base image after each user logs out
      • You can use Azure Automation to run a script that deallocates and reimages the session hosts periodically or after each session
    6. Deploy and Test

      • Deploy the host pool and assign users
      • Test the environment to ensure that it resets correctly after each session
    • JonathanCovalt's avatar
      JonathanCovalt
      Copper Contributor
      This is basically what I'm looking to do, yes. However, I don't need step 3 since I'm not looking to retain user profiles, and it's step 5 that I really need to figure out. Do you know of any documentation for accomplishing this?

Resources