Skip to content


Nerdio Manager vs. Native Auto-scaling: A Deep Dive

One of Nerdio’s primary features is our advanced auto-scaling capability for Azure Virtual Desktop. This enables customers to save up to 75% on their Azure Virtual Desktop compute and storage costs, which in most cases pays for the Nerdio licenses themselves within the first week of usage not to mention significant savings on top of that.

One question which I am often asked is “How does Nerdio’s auto-scaling capability compare to Microsoft’s built-in, native capability?” In this post, I will discuss both solutions, as well as the benefits of each. Let’s start with Microsoft’s offering.

Native Microsoft Auto-scaling

Microsoft’s auto-scaling technology is based on using an Azure Automation account, a PowerShell runbook, a webhook, and an Azure Logic App. You will need to go and create all of these. Once created, you have the following capabilities:

  • Schedule VMs to start and stop based on peak and off-peak business hours.
  • Scale out VMs based on number of sessions per CPU core.
  • Scale in VMs during off-Peak hours, leaving the minimum number of session host VMs running.

There are some limitations, though:

  • This solution applies only to pooled multi-session session host VMs.
  • This solution can manage VMs in any region, but these VMs must be in the same subscription as your Azure Automation account and Azure Logic App.
  • The maximum runtime of a job in the run book is three hours. If starting or stopping the VMs in the host pool takes longer than that, the job will fail. For more details, see Shared Resources.
  • At least one VM or session host needs to be turned on for the scaling algorithm to work properly.
  • The scaling tool doesn’t support scaling based on CPU or memory.
  • Scaling only works with existing hosts in the host pool. The scaling tool doesn’t support scaling new session hosts.
  • The setup process is quite complicated involving multiple PowerShell scripts–probably around 2-4 hours depending on your technical capability.
  • It can be quite difficult for someone with limited Azure or AVD expertise to understand.
  • For multiple host pools, you would need multiple scripts.
  • Only basic reporting capabilities are available.

It is quite difficult to manage this configuration on an ongoing basis.  Also, for multiple host pools you would need create and maintain multiple scripts.

Nerdio Auto-scaling

Nerdio’s auto-scaling technology is built directly into the Nerdio Manager application.  This means that once you have deployed Nerdio Manager, you do not need to deploy anything else. The Nerdio auto-scaling technology has far more features than the Microsoft native auto-scaling technology, and saves much more money due to its advanced and customizable features. These features include:

1. Enable Auto-scaling at the flip of a switch 

Using Nerdio Manager you can easily enable auto-scaling in under two minutes by literally flipping a switch. Compared to having to deploy all the native Microsoft tooling, this could be a huge time saver, especially for less experienced IT admins.

2. Automatically swapping out OS disks for lower SKUs

Nerdio will automatically swap out the OS disk type to a lower SKU to save on costs when VMs are stopped as part of the auto-scaling process. By doing this, you ensure that you are not paying for Premium SSD storage when you are not actively using it. 

3. Customizable active host capacity

Using Nerdio Manager, you can set a Minimum Active Host Capacity. If you know what your minimum workload requirement is, it can be maintained automatically with Nerdio Manager.

This ensures that your capacity is available on demand when you need it, without having to wait for hosts to be created. For example, we can set the Base Host Pool Capacity to 10, and the Active Host Capacity to one, which means that 10 hosts will be created, but only one host will be active. When extra load is required, the additional hosts will be powered on via auto-scaling and be available for connections within minutes.

4. Customizable Scaling Logic 

Using Nerdio, we can configure 3 separate types of scaling logic:

i. CPU Usage

We can configure the logic based on actual CPU usage and customize the trigger points for scaling up and down. We can also restrict the scale in hours to ensure that your workforce is not interrupted.

ii. Average Active Sessions

We can auto-scale based on the Average Active Sessions across your host pool. If you know for example your Host Capacity is around five users per host, once those hosts are full, we can scale new hosts based on actual user demand.

iii. Available Sessions

We can configure the scaling to ensure that there is always spare capacity available in the pool by configuring the Available Sessions.

Having three different types of scaling logic ensures that we can configure our workload to how we use it to ensure that you are only paying for what you need to pay for.

5. Pre-staging of hosts

Using Nerdio, we can “pre-stage hosts”. Pre-staging hosts means that we can ensure the required capacity is there whenever your business needs it the most. If you run a call center for example, we can ensure that there are, let’s say, 10 hosts available at 8am for when your users come in and start work.

You can also configure multiple pre-stage schedules. If you need to have separate working hours during the weekend, for example, or if you are an educational institute and need to set different schedules during the school holidays.

6. Customizable messages when hosts are shutting down

The Microsoft auto-scaling tools will just send a standard message when the hosts are shutting down. When using Nerdio, we can send a customizable message at pre-defined periods (i.e., 5, 10, 15, 30 minutes) and also instruct the auto-scaling engine to NOT log users off if they are still active, or have disconnected sessions.

7. Auto-Scaling for personal host pools 

Nerdio also has auto-scaling for personal host pools. This enables us to turn off personal host pools at set periods of times (i.e., at the end of the workday), and then turn them on at, say, 8am, and have them switched off during weekends.

Personal host pools can be very expensive as most users expect them to be available at any time, but by using Nerdio, you can ensure that they are only powered on when they need to be, saving you lots of money in Azure compute and storage costs.

We can also have user-driven auto-scaling which will automatically start the VM when the user connects, and then when the user logs off the VM will be powered down and de-allocated at a time which is configurable. This ensures that you only pay for resources you actually use.

8. Storage Auto-scaling 

Nerdio will also perform auto-scaling for your Azure Files or Azure NetApp Files. We enable you to set a minimum and maximum quota, ensuring that you will also have the performance and capacity required for your users, while saving you money. We do this utilizing three methods:

  1. Capacity – Nerdio Manager will automatically monitor the space usage and when space is running low, we will automatically grow the space for you, meaning that you will never run out of space.
  2. Performance – Nerdio Manager will monitor the latency of your storage and if it detects latency, it will grow the storage capacity therefore giving you more IOPS.
  3. Schedule – Nerdio Manager will grow and shrink capacity and performance of the storage based on a pre-defined schedule. 

9. Reporting 

Nerdio reports every action that’s performed and displays it visually showing you the cost savings on a per host pool basis.


As you can see, Nerdio Manger gives the IT professional many options to configure auto-scaling to exactly how they want it to be, all within a few clicks of a button.

To achieve the same outcome within Native Azure, you would need to write hundreds of lines of PowerShell code or JSON Scripts and then amend those scripts anytime anything needed changing. Using Nerdio Manager you can easily achieve this without advanced scripting skills, therefore saving you time and money to use your resources where you really need them.

Learn more or start your free 30-day trial!


Multi-Cloud and On-Premises Deployment with Azure Stack HCI (Coming Soon)

Deploy Azure Virtual Desktop in Azure and extend the session host VM placement to on-premises and other cloud using Azure Stack HCI. Nerdio Manager automates deployment of session hosts, AVD agent installation, and full integration into the AVD deployment in Azure.

Create a brand new Azure Virtual Desktop environment or allow Nerdio Manager to discover an existing deployment, connecting to existing resources, and manage them.

Deploy Nerdio Manager from Azure Marketplace and configure a new AVD environment with an easy to follow, step-by-step configuration wizard. First group of users can access their AVD desktop in less than 2 hours.

Service providers, system integrators, and consultants can leverage Nerdio Manager’s scripted AVD deployment template. Create complete environments with desktop images, host pools, and auto-scaling in minutes.

Create and manage AVD environments that span Azure regions and subscriptions. Quickly link Vnets and resource groups and manage AVD deployments world-wide from unified portal.

Link multiple Azure tenants under the same Nerdio Manager instance and manage AVD deployments that span Azure AD tenants. User identities and session host VMs can run in separate tenants for maximum flexibilty and security.

Deploy and manage AVD environments that span across sovereign Azure Clouds. Cross-sovereign cloud support allows identity (e.g. users and groups) to be in one Azure Cloud, while session host VMs are in another Azure Cloud.

Management of workspaces, host pools, app groups, RemoteApps & custom RDP settings

Administer every aspect of AVD with Nerdio Manager including workspaces, host pools, application groups, RemoteApp publishing, RDP properties, session time limits, FSLogix, and much, much more. Every Azure service that AVD relies on can be managed with Nerdio Manager.

Deploy and manage AVD session host VMs. Hosts can be created manually or with auto-scaling, deleted on-demand or on a schedule, re-imaged to apply updates, run a scripted action, resized, put into or taken out of drain mode, and more.

Manage user sessions across the entire AVD environment, within a workspace, host pool or on a single host. Monitor session status, disconnect or log off the user, shadow or remote control to provide support, or send user an on-screen message.

End users have the ability to log into Nerdio Manager with their Azure AD credentials and manage their own session, restart their desktop VM, or start a session host if none are started in a host pool. (Ability to resize and re-image own desktop is coming soon.)

Create, link, and manage Azure Files shares including AD domain join. Synchronize Azure Files permissions with host pools, configure quotas, and enable SMB multi-channel. Manage file lock handles and configure Azure Files auto-scaling to increase quota as needed.

Create, link, and manage Azure NetApp Files accounts, capacity pools and volumes. Configure provisioned volume size, monitor usage, and use auto-scaling to automatically adjust volume and capacity pool size to accommodate the needed capacity and latency requirements.

FSLogix configuration can be complex and overwheling, but not with Nerdio Manager. Create one or more FSLogix profiles with all the needed options, point at one or more Azure Files, Azure NetApp Files, or server locations and select from VHDLocations, CloudCache and Azure Blob storage modes.

Multiple identity source profiles can be set up and used automatically on different host pools. Active Directory, Azure AD DS, and Native Azure AD are all supported. Choose the appropriate directory profile when adding a host pool and all VMs will automatically join this directory when being created.

Create a copy of a host pool with all of its settings: auto-scale config, app groups and RemoteApps, MSIX AppAttach, user/group assignments, VM deployment settings, etc. Save time by creating host pool “templates” that can be cloned to any Workspace, Azure region or subscription instead of starting from scratch.

Apply user session time limits at host pool level. Automatically log off disconnected sessions, limit the duration of idle sessions, control empty RemoteApp session behavior and more.

Assign Azure AD users to personal desktops to ensure the user will log into a pre-configured VM. Un-assign personal desktops from users who leave the organization and re-use these VMs for new users.

Pre-configure custom Azure tags for all Azure resources associated with each host pool. Tags can be used for charge-back and cost allocation by host pool.

When creating session hosts using NV-series VMs NVIDIA and AMD GPU drivers are automatically installed.

Move existing host pools from Fall 2019 (Classic) object model to Spring 2020 (ARM) object model. Choose to whether to move or copy user assignments. Existing session hosts are automatically migrated or new ones can be created in the ARM host pool.

Automatically enable and configure AVD integration with Azure monitor. Zero configuration required. Azure Monitor Insights for AVD can be used instead of or in conjunction with Sepago Monitor.

AVD personal desktops to Windows 365 Cloud PC migration (Coming Soon)

Migrate users from AVD personal desktops to Windows 365 Enterprise Cloud PCs using an existing image and user assignment. (Coming soon)


Cloud PC License Usage Optimization (Coming Soon)

Cloud PC device lifecycle management

Cloud PC user group assignment

Intune primary user management on Cloud PCs

Migrate AVD personal desktops to Cloud PCs (Coming Soon)

Get Certified