Provisioning Collections

Overview

Provisioning Collections is a function of VDS related to the creation and management of VM images.

At a high level, the Provisioning Collection workflow is as follows:
  1. A temporary VM (e.g. "CWT1") is built based on an existing image (either a stock image or a previously saved Provisioning Collection).

  2. The VDS Administrator customizes the temporary VM to match their requirements using Scripted Events, Connect to Server and/or 3rd party management tools.

  3. Once customized, the VDS Admin click Validate and triggers a validation process that automates finalizing the image, running SysPrep, deleting the temporary VM and making the image available for deployment throughout VDS.

Video Demo - Managing VM images for VDI Session Hosts

Provisioning Collection Types

There are two distinct types of collection with specific use cases, Shared and VDI.

Shared

The Shared type is a collection of VM images(s) designed to deploy an entire environment with multiple, distinct VM images and VM roles.

VDI

The VDI type is a single VM image designed to be used and reused to deploy multiple identical VMs, typically used for hosting user sessions. For all types of AVD session hosts, the VDI type should be selected, even for hosts that run multiple sessions per VM.

Creating a new Provisioning Collection

Provisioning Collections are found in the VDS interface within each deployment, under the Provisioning Collections sub-tab.

Management.Deployments.provisioning collections1

To create a new collection
  1. Click the + Add Collection button.

  2. Complete the following fields:

    1. Name

    2. Description(Optional)

    3. Type - Shared or VDI

    4. Operating System

    5. Share Drive - If this VM will be used to host users profiles or company share data, pick the drive letter on which is will be hosted. If not, leave as "C"

    6. Minimum Cache - IF you and VDS to create VMs to hold for instant deployment, specify the minimum number of cached VMs that should be maintained. If deploying new VMs can wait for as long as it takes the hypervisor to build a VM, this can be set to "0" to save costs.

    7. Add Servers

      1. Role (If "Shared" type is selected)

        1. TS - This VM will act only as a session host

        2. Data - This VM will not host any user sessions

        3. TSData - This VM will be both the session host and the storage host (Maximum: one TSData per workspace)

      2. VM Template - Select from the available list, both stock hypervisor images and previously saved Provisioning Collections are available to select.

        1. NOTE: Windows 7 images from the Azure Marketplace do not have PowerShell Remoting enabled. To use a Windows 7 image, you’ll need to provide a custom image in your shared image gallery with powerShell Remoting enabled.

        2. NOTE: By using an existing Provisioning Collection you can update and re-deploy existing images as part of a planned image upgrade process.

      3. Storage Type - Select the speed of the OS disk considering cost and performance

      4. Data Drive - Optionally enable a 2nd disk attached to this image, typically for the data storage layer referenced above in 2.e.

        1. Data Drive Type - Select the speed of the 2nd (data) disk considering cost and performance

        2. Data Drive Size (GB) - Define the size of the 2nd (data) disk considering capacity, cost and performance

    8. Add Applications - Select any application from the Application Library that will be (1) installed on this image and (2) managed by VDS application entitlement. (This is only applicable to RDS deployments. It should remain empty for AVD workspaces)

Customizing the Temporary VM

VDS includes functionality that will allow remove VM access from within the VDS web interface. By default a local Windows admin account is created with a rotating password and passed through to the VM allowing the VDS admin local admin access without needing to know local admin credentials.

Note The Connect to Server function has an alternative setting where the VDS admin will be prompted for credentials with each connection. This setting can be enabled/disabled by editing the VDS admin account from within the "Admin" section of VDS. the functionality is called Tech Account and checking the box will require credential to be entered when using Connect to Server, unchecking this box will enable the automatic injection of local Windows admin credentials at each connection.

The VDS Admin simply needs to connect to the temporary VM using Connect to Server or another process and make the changes required to meet their requirements.

Validating the Collection

Once customization is complete, the VDS Admin can close the image and SysPrep it by clicking Validate from the Actions icon.

Management.Deployments.provisioning collections ed97e

Using the Collection

After validation has completed, the Status of the Provisioning Collection will change to Available. From within the Provisioning Collection the VDS Admin can identify the VM Template name which is used to identify this provisioning collection throughout VDS.

Management.Deployments.provisioning collections f5a49

New Server

From the Workspace > Servers page, a new server can be created and the dialog box will prompt for the VM Template. The template name from above will be found on this list:

Management.Deployments.provisioning collections fc8ad

Tip VDS provides for an easy way to update session hosts in an RDS environment by using Provisioning Collections and the Add Server functionality. This process can be done without impacting end users and repeated over and over with subsequent image updates, building on previous image iterations. For a detailed workflow on this process, see the RDS Session Host Update Process section below.

New AVD Host Pool

From the Workspace > AVD > Host Pools page, new AVD Host Pool can be created by clicking + Add Host Pool and the dialog box will prompt for the VM Template. The template name from above will be found on this list:

Management.Deployments.provisioning collections ba2f5

New AVD Session Host(s)

From the Workspace > AVD > Host Pool > Session Hosts page, new AVD session host(s) can be created by clicking + Add Session Host and the dialog box will prompt for the VM Template. The template name from above will be found on this list:

Management.Deployments.provisioning collections ba5e9
Tip VDS provides for an easy way to update session hosts in a AVD Host Pool by using Provisioning Collections and the Add Session Host functionality. This process can be done without impacting end users and repeated over and over with subsequent image updates, building on previous image iterations. For a detailed workflow on this process, see the AVD Session Host Update Process section below.

New Workspace

From the Workspaces page, a new workspace can be created by clicking + New Workspace and the dialog box will prompt for the Provisioning Collection. The Shared Provisioning Collection name will be found on this list.

Management.Deployments.provisioning collections 5c941

New Provisioning Collection

From the Deployment > Provisioning Collection page, a new Provisioning Collection can be created by clicking + Add Collection. When adding servers to this collection the dialog box will prompt for the VM Template. The template name from above will be found on this list:

Management.Deployments.provisioning collections 9eac4

Addendum 1 - RDS Session Hosts

RDS Session Host Update Process

VDS provides for an easy way to update session hosts in a RDS environment by using Provisioning Collections and the Add Server functionality. This process can be done without impacting end users and repeated over and over with subsequent image updates, building on previous image iterations.

The RDS Session Host update process is as follows:
  1. Build a new VDI Provisioning Collection, customize and validate the collection per the instructions above.

    1. Generally this Provisioning Collection will be built on the previous VM Template, emulating an "Open, Save As" process.

  2. Once the Provisioning Collection has validated, navigate to the Workspace > Servers page, click + Add Server

    Management.Deployments.provisioning collections.rds session hosts e8204
  3. Select TS as the Server Role

  4. Select the latest VM Template. Make the appropriate Machine Size and Storage Type selections based on your requirements. Leave Data Drive unchecked.

  5. Repeat this for the total number of Session Hosts required for the environment.

  6. Click Add Server, the session hosts will build based on the selected VM Template and starting coming online in as soon as 10-15 minutes (depending on the hypervisor).

    1. Note that the Session Hosts currently in the environment will ultimately be decommissioned after these new host come online. Plan to build enough new hosts to be sufficient to support the entire workload in this environment.

  7. When a new host comes online, the default setting is to stay in Disallow New Sessions. For each session host, the Allow New Sessions toggle can be used to manage which hosts can receive new user sessions. This setting is accessed by editing the settings of each individual session host server. Once sufficient new hosts have been built and functionality has been confirmed, this setting can be managed on both the new and old hosts to route all new sessions to the new hosts. The old hosts, with Allow New Sessions set to disabled, can continue to run and host existing user sessions.

    Management.Deployments.provisioning collections.rds session hosts 726d1
  8. As users log off of the old host(s), and with no new user sessions joining the old host(s), the old host(s) where Sessions = 0 can be deleted by clicking the Actions icon and selecting delete.

    Management.Deployments.provisioning collections.rds session hosts 45d32

Addendum 2 - AVD Session Hosts

AVD Session Host Update Process

VDS provides for an easy way to update session hosts in a AVD Host Pool by using Provisioning Collections and the Add Session Host functionality. This process can be done without impacting end users and repeated over and over with subsequent image updates, building on previous image iterations.

The AVD Session Host update process is as follows:
  1. Build a new VDI Provisioning Collection, customize and validate the collection per the instructions above.

    1. Generally this Provisioning Collection will be built on the previous VM Template, emulating an "Open, Save As" process.

  2. Once the Provisioning Collection has validated, navigate to the Workspace > AVD > Host Pools page and click the name of the Host Pool

  3. From within the Host Pool > Session Hosts page, click + Add Session Host

    Management.Deployments.provisioning collections 9ed95
  4. Select the latest VM Template. Make the appropriate Machine Size and Storage Type selections based on your requirements.

  5. Enter the Number of Instances equal to the total number of required Session Hosts. Typically this will be the same number as are currently in the Host Pool but it can be any number.

    1. Note that the Session Hosts currently in the Host pool will ultimately be decommissioned after these new host come online. Plan for the Number of Instances entered to be sufficient to support the entire workload in this Host Pool.

  6. Click Save, the session hosts will build based on the selected VM Template and starting coming online in as soon as 10-15 minutes (depending on the hypervisor).

  7. When a new host comes online, the default setting is to stay in Disallow New Sessions. For each session host, the Allow New Sessions toggle can be used to manage which hosts can receive new user sessions. Once sufficient new hosts have been built and functionality has been confirmed, this setting can be managed on both the new and old hosts to route all new sessions to the new hosts. The old hosts, with Allow New Sessions set to disabled, can continue to run and host existing user sessions.

    Management.Deployments.provisioning collections be47e
  8. As users log off of the old host(s), and with no new user sessions joining the old host(s), the old host(s) where Sessions = 0 can be deleted by clicking the Actions icon and selecting delete.

    Management.Deployments.provisioning collections cefb9