Update Snapshot – MCS Provision Static Pool Catalog in Azure using Citrix DaaS and PowerShell

by Uddave Jajoo, Indianapolis CUGC Leader

In my previous blog post – Update Snapshot for Static Pooled Machine Catalog, I highlighted a few steps on how to change the snapshot for an existing MCS provisioned static pooled catalog so that new desktops provisioned would receive the latest updates and components included in the recent snapshot.

As organizations slowly transition to DaaS and Public Cloud platforms, there will also be a need for administrators and engineers to manage their images in Azure gallery and also roll out the latest updates to all the end users. Here’s another blog to walk you through what changes need to be included in the PowerShell command and how Citrix Cloud Console lets you make those changes from the GUI to replace the updated snapshot in the catalog.

Delivery Group to Machine Catalog Change in Snapshot

There are two different ways to accomplish this:

  1. Using PowerShell commandlets
  2. GUI option – Directly from the Citrix Cloud Console

Method 1. Using PowerShell Commandlets

1. Login to one of the Cloud Connector servers or any management server, where the Citrix PowerShell SDK modules are installed and you would have connectivity to the Citrix Cloud Sites and Services.

2. Utilize stored profiles to authenticate successfully to Citrix cloud using command below:

Set-XDCredentials -ProfileName CitrixCloudPRD

Note: I am utilizing stored profile credentials from the memory itself, for configuring the profile, you would need access to the Citrix Cloud Client ID and Client Secret.

Powershell commandlet

3. Identify the name of the catalog, the MasterImageVM and the Snapshot details before proceeding further with the below commands:

Catalog Name: TestCatalog

Snapshot Name: SnapshotUpdated_Jan2023

4. Get the provisioning Scheme details for the TestCatalog. Make a note of the MachineProfile MasterImageVM details from the output of the PowerShell command.

Get-ProvScheme -ProvisioningSchemeName "TestCatalog"


5. Run the command below:

asnp Citrix*
Get-ChildItem -Recurse -Path XDHyp:\HostingUnits\azr-centralUs-udjajoo-hostingconnection\image.folder\udjajoo-centralus-RG.resourcegroup\azrw10master.vm

Make note of the details for attributes PSPathPSParentPath

Parent Path

PSPath : Citrix.Host.Admin.V2\Citrix.Hypervisor::XDHyp:\HostingUnits\azr-centralUs-udjajoo-hostingconnection\machineprofile.folder\udjajoo-centralus-RG.resourcegroup\azrw10master.vm

PSParentPath : Citrix.Host.Admin.V2\Citrix.Hypervisor::XDHyp:\HostingUnits\azr-centralUs-udjajoo-hostingconnection\machineprofile.folder\udjajoo-centralus-RG.resourcegroup

PSChildName : azrw10master.vm

PSDrive : XDHyp

PSProvider : Citrix.Host.Admin.V2\Citrix.Hypervisor

6. Run the command below:

Publish-ProvMasterVmImage -ProvisioningSchemeName TestCatalog” -MasterImageNote "January Month Updates with latest components" -MasterImageVM “Citrix.Host.Admin.V2\Citrix.Hypervisor::XDHyp:\HostingUnits\azr-centralUs-udjajoo-hostingconnection\machineprofile.folder\udjajoo-centralus-RG.resourcegroup\azrw10master_Snapshot_1-14-2023_AllUpdates_MSU_LatestReseal.snapshot

Note: In on-prem environments, the snapshots were getting tagged with the individual master image itself, however in Azure, the snapshots are just treated as a separate resource within your subscription, so the major difference would be there will be no VM name in the command while entering the PSPath parameter.

Verify the status of the command results as completed and monitor in the console. The catalog would now be showing the latest snapshot in the Template properties under machine catalogs tab.


7. Right click on the machine catalog and Select Add Machines to provision new desktops within the Catalog using the updated image.

Method 2. GUI option – Directly from the Citrix Cloud Console

1. Login to the Citrix Cloud Console and identify the respective Machine Catalog which needs to updated with the latest snapshot.

2. Select the catalog and then Select option Change Master Image

Cloud Console
change master image

3. In the master image tab, click on the option +Select an Image.

4. In the select image tab, point to the respective resource group and select the respective updated snapshot for the master image.

select image

5. Click Done.

6. Verify the Name of Snapshot and enter the Note to include the changes included in the latest snapshot.

master image

7. Click Next.

change master image

8. Click Finish.

9. Once the snapshot is updated in the catalog, try adding new machines to the catalog. All the new desktops provisioned within the catalog will utilize the latest updated snapshot.



See more posts by Uddave Jajoo here.

Are you a member of CUGC? Join FREE today!

Leave a Reply