New-AzWvdScalingPlan
Create or update a scaling plan.
Syntax
New-AzWvdScalingPlan
-Name <String>
-ResourceGroupName <String>
[-SubscriptionId <String>]
-TimeZone <String>
[-Description <String>]
[-ExclusionTag <String>]
[-FriendlyName <String>]
[-HostPoolReference <IScalingHostPoolReference[]>]
[-HostPoolType <ScalingHostPoolType>]
[-IdentityType <ResourceIdentityType>]
[-Kind <String>]
[-Location <String>]
[-ManagedBy <String>]
[-PlanName <String>]
[-PlanProduct <String>]
[-PlanPromotionCode <String>]
[-PlanPublisher <String>]
[-PlanVersion <String>]
[-Schedule <IScalingSchedule[]>]
[-SkuCapacity <Int32>]
[-SkuFamily <String>]
[-SkuName <String>]
[-SkuSize <String>]
[-SkuTier <SkuTier>]
[-Tag <Hashtable>]
[-DefaultProfile <PSObject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Create or update a scaling plan.
Examples
Example 1: Create a Windows Virtual Desktop Scaling Plan without a schedule
New-AzWvdScalingPlan `
-ResourceGroupName ResourceGroupName `
-Name 'ScalingPlan1' `
-Location 'westcentralus' `
-Description 'Description' `
-FriendlyName 'Friendly Name' `
-HostPoolType 'Pooled' `
-TimeZone 'Pacific Standard Time' `
-Schedule @() `
-HostPoolReference @(
@{
'HostPoolArmPath' = '/subscriptions/SubscriptionId/resourceGroups/ResourceGroupName/providers/Microsoft.DesktopVirtualization/hostPools/HostPoolName';
'ScalingPlanEnabled' = $false;
}
)
Location Name Type
-------- ---- ----
westcentralus scalingPlan1 Microsoft.DesktopVirtualization/scalingplans
This command creates a new Windows Virtual Desktop Scaling Plan in a Resource Group.
Example 2: Create a Windows Virtual Desktop Scaling Plan with a pooled schedule (Only available for Pooled HostPools)
New-AzWvdScalingPlan `
-ResourceGroupName ResourceGroupName `
-Name 'ScalingPlan1' `
-Location 'westcentralus' `
-Description 'Description' `
-FriendlyName 'Friendly Name' `
-HostPoolType 'Pooled' `
-TimeZone 'Pacific Standard Time' `
-Schedule @(
@{
'Name' = 'Work Week';
'DaysOfWeek' = @('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday');
'RampUpStartTime' = @{
'Hour' = 6
'Minute' = 0
};
'RampUpLoadBalancingAlgorithm' = 'BreadthFirst';
'RampUpMinimumHostsPct' = 20;
'RampUpCapacityThresholdPct' = 20;
'PeakStartTime' = @{
'Hour' = 8
'Minute' = 30
};
'PeakLoadBalancingAlgorithm' = 'DepthFirst';
'RampDownStartTime' = @{
'Hour' = 16
'Minute' = 15
};
'RampDownLoadBalancingAlgorithm' = 'BreadthFirst';
'RampDownMinimumHostsPct' = 20;
'RampDownCapacityThresholdPct' = 20;
'RampDownForceLogoffUser' = $true;
'RampDownWaitTimeMinute' = 30;
'RampDownNotificationMessage' = 'Log out now, please.';
'RampDownStopHostsWhen' = 'ZeroSessions';
'OffPeakStartTime' = @{
'Hour' = 18
'Minute' = 0
};
'OffPeakLoadBalancingAlgorithm' = 'DepthFirst';
}
) `
-HostPoolReference @(
@{
'HostPoolArmPath' = '/subscriptions/SubscriptionId/resourceGroups/ResourceGroupName/providers/Microsoft.DesktopVirtualization/hostPools/HostPoolName';
'ScalingPlanEnabled' = $false;
}
)
Location Name Type
-------- ---- ----
westcentralus scalingPlan1 Microsoft.DesktopVirtualization/scalingplans
This command creates a new Windows Virtual Desktop Scaling Plan in a Resource Group with a pooled schedule assigned at creation. This method is only available for pooled host pools. Please create a scaling plan, and then use New-AzWvdScalingPersonalSchedule or New-AzWvdScalingPooledSchedule to assign schedules after scaling plan creation.
Parameters
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DefaultProfile
The DefaultProfile parameter is not functional. Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
Type: | PSObject |
Aliases: | AzureRMContext, AzureCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
Description of scaling plan.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ExclusionTag
Exclusion tag for scaling plan.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FriendlyName
User friendly name of scaling plan.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-HostPoolReference
List of ScalingHostPoolReference definitions. To construct, see NOTES section for HOSTPOOLREFERENCE properties and create a hash table.
Type: | IScalingHostPoolReference[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-HostPoolType
HostPool type for desktop.
Type: | ScalingHostPoolType |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IdentityType
The identity type.
Type: | ResourceIdentityType |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Kind
Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Location
The geo-location where the resource lives
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ManagedBy
The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
The name of the scaling plan.
Type: | String |
Aliases: | ScalingPlanName |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PlanName
A user defined name of the 3rd Party Artifact that is being procured.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PlanProduct
The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PlanPromotionCode
A publisher provided promotion code as provisioned in Data Market for the said product/artifact.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PlanPublisher
The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PlanVersion
The version of the desired product/artifact.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ResourceGroupName
The name of the resource group. The name is case insensitive.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Schedule
List of ScalingPlanPooledSchedule definitions. To construct, see NOTES section for SCHEDULE properties and create a hash table.
Type: | IScalingSchedule[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkuCapacity
If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkuFamily
If the service has different generations of hardware, for the same SKU, then that can be captured here.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkuName
The name of the SKU. Ex - P3. It is typically a letter+number code
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkuSize
The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkuTier
This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
Type: | SkuTier |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SubscriptionId
The ID of the target subscription.
Type: | String |
Position: | Named |
Default value: | (Get-AzContext).Subscription.Id |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tag
Resource tags.
Type: | Hashtable |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TimeZone
Timezone of the scaling plan.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Outputs
Azure PowerShell