Skip to content

Commit fca5287

Browse files
Merge pull request #6210 from robinharwood/roharwoo-sfi-guids
[SCOPED] SFI - Updated various GUID to use a generic format
2 parents 96e4e9f + e2ada09 commit fca5287

File tree

1 file changed

+20
-20
lines changed

1 file changed

+20
-20
lines changed

WindowsServerDocs/storage/storage-qos/storage-qos-overview.md

+20-20
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ When there are changes to Storage QoS policies or to the performance demands by
7575
|PolicyId|Unique identifier for a policy. It is generated by default, but can be specified if desired.|
7676
|MinimumIOPS|Minimum normalized IOPS that will be provided by a policy. Also known as "Reservation".|
7777
|MaximumIOPS|Maximum normalized IOPS that will be limited by a policy. Also known as "Limit".|
78-
|Aggregated |A policy type where the specified MinimumIOPS & MaximumIOPS and Bandwidth are shared among all flows assigned to the policy. All VHD's assigned the policy on that storage system have a single allocation of I/O bandwidth for them to all share.|
78+
|Aggregated |A policy type where the specified MinimumIOPS & MaximumIOPS and Bandwidth are shared among all flows assigned to the policy. All VHDs assigned the policy on that storage system have a single allocation of I/O bandwidth for them to all share.|
7979
|Dedicated|A policy type where the specified Minimum & MaximumIOPS and Bandwidth are managed for individual VHD/VHDx.|
8080

8181
## <a name="BKMK_SetUpQoS"></a>How to set up Storage QoS and monitor basic performance
@@ -92,7 +92,7 @@ If you have configured a new Failover Cluster and configured a Cluster Shared Vo
9292

9393
#### Verify Storage QoS installation
9494

95-
After you have created a Failover Cluster and configured a CSV disk, , **Storage QoS Resource** is displayed as a Cluster Core Resource and visible in both Failover Cluster Manager and Windows PowerShell. The intent is that the failover cluster system will manage this resource and you should not have to do any actions against this resource. We display it in both Failover Cluster Manager and PowerShell to be consistent with the other failover cluster system resources like the new Health Service.
95+
After you have created a Failover Cluster and configured a CSV disk, **Storage QoS Resource** is displayed as a Cluster Core Resource and visible in both Failover Cluster Manager and Windows PowerShell. The intent is that the failover cluster system will manage this resource and you should not have to do any actions against this resource. We display it in both Failover Cluster Manager and PowerShell to be consistent with the other failover cluster system resources like the new Health Service.
9696

9797
![Storage QoS Resource appears in Cluster Core Resources](media/overview-Clustering_StorageQoSFCM.png)
9898

@@ -128,7 +128,7 @@ The **RSAT-Hyper-V-Tools** optional feature includes the Windows PowerShell modu
128128

129129
You will need some virtual machines stored on the Scale-Out File Server with relevant workloads. For some tips in how to simulate load and do some stress testing, see the following page for a recommended tool (DiskSpd) and some example usage: [DiskSpd, PowerShell and storage performance: measuring IOPS, throughput and latency for both local disks and SMB file shares.](/archive/blogs/josebda/diskspd-powershell-and-storage-performance-measuring-iops-throughput-and-latency-for-both-local-disks-and-smb-file-shares)
130130

131-
The example scenarios shown in this guide includes five virtual machines. BuildVM1, BuildVM2, BuildVM3 and BuildVM4 are running a desktop workload with low to moderate storage demands. TestVm1 is running an online transaction processing benchmark with high storage demand.
131+
The example scenarios shown in this guide include five virtual machines. BuildVM1, BuildVM2, BuildVM3 and BuildVM4 are running a desktop workload with low to moderate storage demands. TestVm1 is running an online transaction processing benchmark with high storage demand.
132132

133133
### View current storage performance metrics
134134

@@ -235,7 +235,7 @@ The data returned by the `Get-StorageQosFlow` cmdlet includes:
235235

236236
- The Hyper-V hostname (InitiatorNodeName).
237237

238-
- The virtual machine's name and its Id (InitiatorName and InitiatorId)
238+
- The virtual machine's name and its ID (InitiatorName and InitiatorId)
239239

240240
- Recent average performance as observed by the Hyper-V host for the virtual disk (InitiatorIOPS, InitiatorLatency)
241241

@@ -303,17 +303,17 @@ This section describes how to create Storage QoS policies, apply these policies
303303

304304
Storage QoS policies are defined and managed in the Scale-Out File Server cluster. You can create as many policies as needed for flexible deployments (up to 10,000 per storage cluster).
305305

306-
Each VHD/VHDX file assigned to a virtual machine may be configured with a policy. Different files and virtual machines can use the same policy or they can each be configured with separate policies. If multiple VHD/VHDX files or multiple virtual machines are configured with the same policy, they will be aggregated together and will share the MinimumIOPS and MaximumIOPS fairly. If you use separate policies for multiple VHD/VHDX files or virtual machines, the minimum and maximums are tracked separately for each.
306+
Each VHD/VHDX file assigned to a virtual machine can be configured with a policy. Different files and virtual machines can use the same policy or they can each be configured with separate policies. If multiple VHD/VHDX files or multiple virtual machines are configured with the same policy, they will be aggregated together and will share the MinimumIOPS and MaximumIOPS fairly. If you use separate policies for multiple VHD/VHDX files or virtual machines, the minimum and maximums are tracked separately for each.
307307

308308
If you create multiple similar policies for different virtual machines and the virtual machines have equal storage demand, they will receive a similar share of IOPS. If one VM demands more and the other less, then IOPS will follow that demand.
309309

310310
### Types of Storage QoS Policies
311311

312312
There are two types of policies: Aggregated (previously known as SingleInstance) and Dedicated (previously known as MultiInstance). Aggregated policies apply maximums and minimum for the combined set of VHD/VHDX files and virtual machines where they apply. In effect, they share a specified set of IOPS and bandwidth. Dedicated policies apply the minimum and maximum values for each VHD/VHDx, separately. This makes it easy to create a single policy that applies similar limits to multiple VHD/VHDx files.
313313

314-
For instance, if you create a Aggregated policy with a minimum of 300 IOPS and a maximum of 500 IOPS. If you apply this policy to 5 different VHD/VHDx files, you are making sure that the 5 VHD/VHDx files combined will be guaranteed at least 300 IOPS (if there is demand and the storage system can provide that performance) and no more than 500 IOPS. If the VHD/VHDx files have similar high demand for IOPS and the storage system can keep up, each VHD/VHDx files will get about 100 IOPS.
314+
For instance, if you create an Aggregated policy with a minimum of 300 IOPS and a maximum of 500 IOPS. If you apply this policy to 5 different VHD/VHDx files, you are making sure that the 5 VHD/VHDx files combined will be guaranteed at least 300 IOPS (if there is demand and the storage system can provide that performance) and no more than 500 IOPS. If the VHD/VHDx files have similar high demand for IOPS and the storage system can keep up, each VHD/VHDx file will get about 100 IOPS.
315315

316-
However, if you create a Dedicated policy with similar limits and apply it to VHD/VHDx files on 5 different virtual machines, each virtual machine will get at least 300 IOPS and no more than 500 IOPS. If the virtual machines have similar high demand for IOPS and the storage system can keep up, each virtual machine will get about 500 IOPS. . If one of the virtual machines has multiple VHD/VHDx files with the same MulitInstance policy configured, they will share the limit so that the total IO from the VM from files with that policy will not exceed the limits.
316+
However, if you create a Dedicated policy with similar limits and apply it to VHD/VHDx files on 5 different virtual machines, each virtual machine will get at least 300 IOPS and no more than 500 IOPS. If the virtual machines have similar high demand for IOPS and the storage system can keep up, each virtual machine will get about 500 IOPS. If one of the virtual machines has multiple VHD/VHDx files with the same MulitInstance policy configured, they will share the limit so that the total IO from the VM from files with that policy will not exceed the limits.
317317

318318
Hence, if you have a group of VHD/VHDx files that you want to exhibit the same performance characteristics and you don't want the trouble of creating multiple, similar policies, you can use a single Dedicated policy and apply to the files of each virtual machine.
319319

@@ -344,7 +344,7 @@ Guid
344344
On the Hyper-V server, using PowerShell, set the Storage QoS Policy using the Policy ID as shown in the following example:
345345

346346
```PowerShell
347-
Get-VM -Name Build* | Get-VMHardDiskDrive | Set-VMHardDiskDrive -QoSPolicyID cd6e6b87-fb13-492b-9103-41c6f631f8e0
347+
Get-VM -Name Build* | Get-VMHardDiskDrive | Set-VMHardDiskDrive -QoSPolicyID 1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5
348348
```
349349

350350
### Confirm that the policies are applied
@@ -379,7 +379,7 @@ Path : \\plang-fs.plang.nttest.microsoft.com\two\BuildW
379379
DiskNumber :
380380
MaximumIOPS : 0
381381
MinimumIOPS : 0
382-
QoSPolicyID : cd6e6b87-fb13-492b-9103-41c6f631f8e0
382+
QoSPolicyID : 1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5
383383
SupportPersistentReservations : False
384384
ControllerLocation : 0
385385
ControllerNumber : 0
@@ -438,7 +438,7 @@ BuildVM3 200 100 194 169 Ok C:\C.
438438

439439
### Create an Aggregated Policy
440440

441-
Aggregated policies may be used if you want multiple virtual hard disks to share a single pool of IOPS and bandwidth. For example, if you apply the same Aggregated policy to hard disks from two virtual machines, the minimum will be split between them according to demand. Both disks will be guaranteed a combined minimum, and together they will not exceed the specified maximum IOPS or bandwidth.
441+
Aggregated policies should be used if you want multiple virtual hard disks to share a single pool of IOPS and bandwidth. For example, if you apply the same Aggregated policy to hard disks from two virtual machines, the minimum will be split between them according to demand. Both disks will be guaranteed a combined minimum, and together they will not exceed the specified maximum IOPS or bandwidth.
442442

443443
The same approach could also be used to provide a single allocation to all VHD/VHDx files for the virtual machines comprising a service or belonging to a tenant in a multihosted environment.
444444

@@ -458,10 +458,10 @@ Guid
458458
The following example shows how to apply the Storage QoS Policy on Hyper-V server using the policyID obtained in the preceding example:
459459

460460
```PowerShell
461-
PS C:\> Get-VM -Name WinOltp1 | Get-VMHardDiskDrive | Set-VMHardDiskDrive -QoSPolicyID 7e2f3e73-1ae4-4710-8219-0769a4aba072
461+
PS C:\> Get-VM -Name WinOltp1 | Get-VMHardDiskDrive | Set-VMHardDiskDrive -QoSPolicyID 1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5
462462
```
463463

464-
The following example shows how to viewing effects of the Storage QoS policy from file server:
464+
The following example shows how to view effects of the Storage QoS policy from file server:
465465

466466
```PowerShell
467467
PS C:\> Get-StorageQosFlow -InitiatorName WinOltp1 | format-list InitiatorName, PolicyId, MinimumIOPS, MaximumIOPS, StorageNodeIOPS, FilePath
@@ -559,7 +559,7 @@ PS C:\> Get-StorageQosPolicy -Name SqlWorkload | Remove-StorageQosPolicy
559559
Confirm
560560
Are you sure you want to perform this action?
561561
Performing the operation "DeletePolicy" on target "MSFT_StorageQoSPolicy (PolicyId =
562-
"7e2f3e73-1ae4-4710-8219-0769a4aba072")".
562+
"1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5")".
563563
[Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (default is "Y"):
564564
```
565565

@@ -610,7 +610,7 @@ WinOltp1 3cccccc3-4dd4-5ee5-6ff6-7aaaaaaaaaa7
610610
Next, create a new policy using that PolicyId
611611

612612
```PowerShell
613-
PS C:\> New-StorageQosPolicy -PolicyId 7e2f3e73-1ae4-4710-8219-0769a4aba072 -PolicyType Aggregated -Name RestoredPolicy -MinimumIops 100 -MaximumIops 2000
613+
PS C:\> New-StorageQosPolicy -PolicyId 1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5 -PolicyType Aggregated -Name RestoredPolicy -MinimumIops 100 -MaximumIops 2000
614614
615615
Name MinimumIops MaximumIops Status
616616
---- ----------- ----------- ------
@@ -647,7 +647,7 @@ WinOltp1 Ok 25 500 0 Ok 9914.0.AMD64
647647

648648
#### <a name="BKMK_RemovePolicyFromVM"></a>Remove Storage QoS Policies
649649

650-
If the policy was removed intentionally, or if a VM was imported with a policy that you don't need, it may be removed.
650+
If the policy was removed intentionally, or if a VM was imported with a policy that you don't need, it can be removed.
651651

652652
```PowerShell
653653
PS C:\> Get-VM -Name WinOltp1 | Get-VMHardDiskDrive | Set-VMHardDiskDrive -QoSPolicyID $null
@@ -748,7 +748,7 @@ MinimumIops : 15000
748748

749749
## <a name="BKMK_Health"></a>Monitor Health using Storage QoS
750750

751-
The new Health Service simplifies the monitoring of the Storage Cluster, providing a single place to check for any actionable events in any of the nodes. This section describes how monitor the health of your storage cluster using the `debug-storagesubsystem` cmdlet.
751+
The new Health Service simplifies the monitoring of the Storage Cluster, providing a single place to check for any actionable events in any of the nodes. This section describes how to monitor the health of your storage cluster using the `debug-storagesubsystem` cmdlet.
752752

753753
### View Storage Status with Debug-StorageSubSystem
754754

@@ -842,7 +842,7 @@ System Center Virtual Machine Manager can be used to apply policies across multi
842842

843843
### If I change the Storage QoS Policy, why don't I see it take effect immediately when I run Get-StorageQoSFlow
844844

845-
If you have a flow that is hitting a maximum of a policy and you change the policy to either make it higher or lower, and then you immediately determine the latency/IOPS/BandWidth of the flows using the PowerShell cmdlets, it will take up to 5 minutes to see the full effects of the policy change on the flows. The new limits will be in effect within a few seconds, but the **Get-StorgeQoSFlow** PowerShell cmdlet uses an average of each counter using a 5 minute sliding window. Otherwise, if it was showing a current value and you ran the PowerShell cmdlet multiple times in a row, you may see vastly different values because values for IOPS and latencies can fluctuate significantly from one second to another.
845+
If you have a flow that is hitting a maximum of a policy and you change the policy to either make it higher or lower, and then you immediately determine the latency/IOPS/BandWidth of the flows using the PowerShell cmdlets, it will take up to 5 minutes to see the full effects of the policy change on the flows. The new limits will be in effect within a few seconds, but the **Get-StorgeQoSFlow** PowerShell cmdlet uses an average of each counter using a 5 minute sliding window. Otherwise, if it was showing a current value and you ran the PowerShell cmdlet multiple times in a row, you might see vastly different values because values for IOPS and latencies can fluctuate significantly from one second to another.
846846

847847
### <a name="BKMK_Updates"></a>What new functionality was added in Windows Server 2016
848848

@@ -852,14 +852,14 @@ There are two new Storage QoS features Windows Server 2016:
852852

853853
- **Maximum Bandwidth**
854854

855-
Storage QoS in Windows Server 2016 introduces the ability to specify the maximum bandwidth that the flows assigned to the policy may consume. The parameter when specifying it in the **StorageQosPolicy** cmdlets is **MaximumIOBandwidth** and the output is expressed in bytes per second.
855+
Storage QoS in Windows Server 2016 introduces the ability to specify the maximum bandwidth that the flows assigned to the policy can consume. The parameter when specifying it in the **StorageQosPolicy** cmdlets is **MaximumIOBandwidth** and the output is expressed in bytes per second.
856856
If both **MaximimIops** and **MaximumIOBandwidth** are set in a policy, they will both be in effect and the first one to be reached by the flow(s) will limit the I/O of the flows.
857857

858858
- **IOPS normalization is configurable**
859859

860-
Storage QoSin uses normalization of IOPS. The default is to use a normalization size of 8K. Storage QoS in Windows Server 2016 introduces the ability to specify a different normalization size for the storage cluster. This normalization size effects all flows on the storage cluster and takes effect immediately (within a few seconds) once it is changed. The minimum is 1KB and the maximum is 4GB (recommend not setting more than 4MB since it's unusual to have more than 4MB IOs).
860+
Storage QoSin uses normalization of IOPS. The default is to use a normalization size of 8K. Storage QoS in Windows Server 2016 introduces the ability to specify a different normalization size for the storage cluster. This normalization size affects all flows on the storage cluster and takes effect immediately (within a few seconds) once it is changed. The minimum is 1KB and the maximum is 4GB (recommend not setting more than 4MB since it's unusual to have more than 4MB IOs).
861861

862-
Something to consider is that the same IO pattern/throughput shows up with different IOPS numbers in the Storage QoS output when you change the IOPS normalization due to the change in normalization calculation. If you are comparing IOPS between storage clusters, you may also want to verify what normalization value each is using since that will effect the normalized IOPS reported.
862+
Something to consider is that the same IO pattern/throughput shows up with different IOPS numbers in the Storage QoS output when you change the IOPS normalization due to the change in normalization calculation. If you are comparing IOPS between storage clusters, you might also want to verify what normalization value each is using since that will affect the normalized IOPS reported.
863863

864864
#### Example 1: Creating a new policy and viewing the maximum bandwidth on the storage cluster
865865

0 commit comments

Comments
 (0)