Shut Down Unused Session Hosts in a Windows Virtual Desktop Pooled or Personal Host Pool

WVD Function App

(UPDATED 6/17/2021 with code for multiple pooled and personal host pools) Azure Virtual Desktop (previously Windows Virtual Desktop (WVD)) has a new option in preview that starts session hosts in a personal or pooled host pool when a user connects. It won’t, however, shut down the session hosts when the user logs out. The script outlined in this video will evaluate all running and available session hosts in a personal or pooled host pool and shut down and deallocate session hosts without an active connection.  Deallocating Session hosts while not in use can save money on compute costs.

Continue reading “Shut Down Unused Session Hosts in a Windows Virtual Desktop Pooled or Personal Host Pool”

Automatically add an Azure Tag Using Event Grid and Azure Functions

Azure Function

In this video, we apply Azure Tags to Resource Groups automatic with Event Grid and Azure Functions.  We configure Azure Event Grid on a subscription to send an event whenever a new resource group is created.  Then, we configure a PowerShell Function App with a Managed Identity to use the event data and tag the resource group with the date and creator’s name.

Continue reading “Automatically add an Azure Tag Using Event Grid and Azure Functions”

Image Builder and WVD Session Hosts with One Azure DevOps Pipeline

This video picks up where the last two DevOps videos left off.  We use one Azure DevOps Pipeline and multiple jobs to build an updated image with Azure Image Builder, then deploy new Virtual Machines, Windows Virtual Desktop Session Hosts in this example, with the updated image.  We also go over addressing Image Builder failures in the DevOps pipeline.

Continue reading “Image Builder and WVD Session Hosts with One Azure DevOps Pipeline”

Deploy Windows Virtual Desktop (WVD) Session Hosts with Azure DevOps

In this video, we go over using an Azure DevOps pipeline to automate building and Deploying Windows Virtual Desktop (WVD) Session Hosts.  This Azure DevOps tutorial builds on previous videos and demonstrates how to use Azure ARM Templates and parameter files to deploy WVD Session Hosts.  Next, the ARM template and parameter file is used in an Azure DevOps pipeline along with PowerShell and Azure Key Vault secretes to securely automate the deployment of Session Hosts based on the latest Shared Image Gallery (SIG) image.

Continue reading “Deploy Windows Virtual Desktop (WVD) Session Hosts with Azure DevOps”

Azure DevOps Pipeline and Image Builder

In this video, we go over using an Azure DevOps pipeline to automate the image build process with Azure Image Builder.  This Azure DevOps tutorial goes over using Azure DevOps with VS Code to manage files.  We then build a YAML pipeline with Azure CLI, ARM template deployments and PowerShell to build an image.

Continue reading “Azure DevOps Pipeline and Image Builder”

Azure DevOps, Git and VS Code

This video provides an introduction to using Azure DevOps Git repos with VS Code.  We go over installing and configuring Git, then cloning a repo to the local workstation.  We also go over using Git Push to push changes to the DevOps repo and using Git Pull to update the local repo with remote changes.

Continue reading “Azure DevOps, Git and VS Code”

Starting Lab Computers with Stream Deck, a Webhook, and an Azure PowerShell Function

This video is a step-by-step introduction for using an Elgato Stream Deck to send a Webhook that starts or stops computers in Azure based on their tag settings.  We go over creating the Azure Function App, setting up system assigned identities and creating a custom RBAC role in Azure to grant the identity permissions to the subscription.  Then we configure the start stop function to use values passed in from the web hook to start or stop the computers.  Finally, we configure the Elgato Stream Deck with start and stop buttons that control the lab.

Continue reading “Starting Lab Computers with Stream Deck, a Webhook, and an Azure PowerShell Function”

Azure Automanage now in Public Preview

In this post and accompanying video, we go over Azure Automanage.  Automanage is an Azure solution to automate management of IaaS servers within the Cloud Adoption Frameworks best practices.  This post gives an overview of the services.  The video reviews the service and provides a demonstration of on-boarding a server.  After that, we go on to review settings on a server that is part of Azure Automanage.

Continue reading “Azure Automanage now in Public Preview”