New-Storage Qos Policy

Creates a Storage QoS policy.

Syntax

New-StorageQosPolicy
   [[-PolicyId] <Guid>]
   [[-Name] <String>]
   [[-MaximumIops] <UInt64>]
   [[-MinimumIops] <UInt64>]
   [[-MaximumIOBandwidth] <UInt64>]
   [[-ParentPolicy] <CimInstance>]
   [[-PolicyType] <PolicyType>]
   [-AsJob]
   [-CimSession <CimSession>]
   [-ThrottleLimit <Int32>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-StorageQosPolicy
   [-Policy] <CimInstance>
   [-AsJob]
   [-CimSession <CimSession>]
   [-ThrottleLimit <Int32>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

The New-StorageQoSPolicy cmdlet creates a Storage Quality of Service (Storage QoS) policy that specifies the maximum and minimum throughput.

This cmdlet generates the ID of the policy that it creates, if the PolicyId parameter is not specified.

For more information about Storage QoS, see Storage Quality of Servicehttps://technet.microsoft.com/en-us/library/Mt126108 ( https://technet.microsoft.com/en-us/library/Mt126108 ).

Examples

Example 1: Create a policy

PS C:\>New-StorageQosPolicy -Name "Policy01" -MaximumIops 100 -MinimumIops 10

Name    MinimumIops MaximumIops Status

----    ----------- ----------- ------

Policy01 10          100         Ok

This command creates a policy with a maximum of 100 8KB-normalized IOPS and a minimum of 10.

Required Parameters

-Policy

Specifies the storage QoS Policy that this cmdlet creates in the policy manager. Must be a valid MSFT_StorageQoSPolicy instance that specifies MaximumIops and MinimumIops .

Type: CimInstance
Position: 0
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False

Optional Parameters

-AsJob

Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete.

Type: SwitchParameter
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-CimSession

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

Type: CimSession
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Confirm

Prompts you for confirmation before running the cmdlet.

Type: SwitchParameter
Aliases: cf
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-MaximumIOBandwidth

Specifies the bandwidth limit for the policy, in bytes per seconds.

Type: UInt64
Position: 4
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-MaximumIops

Specifies the throughput limit for the policy, in units of 8KB-normalized Input/Output Operations Per Second (IOPS).

Storage usage is measured in normalized IOPS. This is a count of the storage input/output operations per second. Any IO that is 8KB or smaller is considered as one normalized IOPS. Any IO that is larger than 8KB is treated as multiple normalized IOPS. For example, a 256KB request is treated as 32 normalized IOPS.

Type: UInt64
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-MinimumIops

Specifies the throughput reservation for the policy, in 8KB-normalized IOPS.

Type: UInt64
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Name

Specifies the name of the policy to create.

Type: String
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-ParentPolicy

Specifies the parent policy of the policy that this cmdlet creates. The object must specify the PolicyId field.

Type: CimInstance
Position: 5
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-PolicyId

Specifies the GUID of the policy that this cmdlet creates.

Type: Guid
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-PolicyType

Specifies the type of the policy that this cmdlet creates. The acceptable values for this parameter are: Aggregated and Dedicated. In an aggregated policy, the maximum and minimum throughputs apply to the aggregate throughput of all initiators. In a dedicated policy, the minimum and maximum throughputs apply to each initiator individually.

Type: PolicyType
Parameter Sets: Aggregated, Dedicated
Position: 6
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-ThrottleLimit

Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.

Type: Int32
Position: Named
Default value: None
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: False
Accept pipeline input: False
Accept wildcard characters: False

Outputs

Microsoft.Management.Infrastructure.CimInstance#MSFT_StorageQoSPolicy

This cmdlet outputs a Common Information Model (CIM) object of type MSFT_StorageQoSPolicyhttps://msdn.microsoft.com/en-us/library/mt164592(v=vs.85).aspx ( https://msdn.microsoft.com/en-us/library/mt164592(v=vs.85).aspx ).

The Microsoft.Management.Infrastructure.CimInstance object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. The path after the pound sign ( # ) provides the namespace and class name for the underlying WMI object.