Kvalita služby úložiště

Technologie QoS (Quality of Service) úložiště ve Windows Serveru 2016 poskytuje způsob, jak centrálně monitorovat a spravovat výkon úložiště pro virtuální počítače pomocí Hyper-V a rolí souborového serveru Scale-Out. Tato funkce automaticky zlepšuje nestrannost prostředků úložiště mezi více virtuálními počítači používajícími stejný cluster souborového serveru a umožňuje konfigurovat minimální a maximální výkonnostní cíle založené na zásadách v jednotkách normalizovaných vstupně-výstupních operací za sekundu.

QoS úložiště ve Windows Serveru 2016 můžete použít k provedení následujících kroků:

  • Zmírnění problémů s hlučnou sousedou QoS úložiště ve výchozím nastavení zajišťuje, že jeden virtuální počítač nemůže využívat všechny prostředky úložiště a omezit ostatní virtuální počítače v šířce pásma úložiště.

  • Monitorování koncového výkonu úložiště Jakmile se spustí virtuální počítače uložené na souborovém serveru Scale-Out, monitoruje se jejich výkon. Podrobnosti o výkonu všech spuštěných virtuálních počítačů a konfigurace clusteru souborového serveru Scale-Out je možné zobrazit z jednoho umístění.

  • Správa vstupně-výstupních operací úložiště na obchodní potřeby úloh Zásady kvality služby úložiště definují minimální a maximální výkon virtuálních počítačů a zajišťují jejich splnění. To poskytuje konzistentní výkon virtuálním počítačům, a to i v hustých a nadměrně zřízených prostředích. Pokud zásady nelze splnit, jsou výstrahy k dispozici ke sledování, kdy jsou virtuální počítače mimo zásady nebo mají přiřazené neplatné zásady.

Tento dokument popisuje, jak může vaše firma využívat nové funkce kvality služby úložiště. Předpokládá se, že máte předchozí funkční znalosti Windows Serveru, clusteringu převzetí služeb při selhání systému Windows Server, souborového serveru Scale-Out, Hyper-V a Windows PowerShellu.

Overview

Tato část popisuje požadavky na používání kvality služby úložiště, přehled softwarově definovaného řešení s využitím kvality služby úložiště a seznam terminologií souvisejících s kvality služby úložiště.

Požadavky na QoS úložiště

QoS úložiště podporuje dva scénáře nasazení:

  • Hyper-V pomocí souborového serveru Scale-Out Tento scénář vyžaduje obojí z následujícího:

    • Cluster úložiště, který je clusterem souborového serveru Scale-Out

    • Výpočetní cluster, který má nejméně jeden server s povolenou rolí Hyper-V

    Pro kvalitu služby úložiště se vyžaduje cluster převzetí služeb při selhání na serverech úložiště, ale výpočetní servery se nemusí nacházet v clusteru převzetí služeb při selhání. Na všech serverech (používaných pro úložiště i výpočetní prostředky) musí běžet Windows Server 2016.

    Pokud nemáte nasazený cluster souborového serveru Scale-Out pro účely vyhodnocení, podrobné pokyny k vytvoření clusteru s využitím existujících serverů nebo virtuálních počítačů najdete v tématu Windows Server 2012 R2 Storage: Podrobné informace o prostorech úložiště, protokolech SMB Scale-Out a sdíleném VHDX (fyzickém).

  • Hyper-V s použitím sdílených svazků clusteru. Tento scénář vyžaduje následující:

    • Výpočetní cluster s povolenou rolí Hyper-V

    • Hyper-V použití sdílených svazků clusteru (CSV) jako úložiště

Vyžaduje se cluster s podporou převzetí služeb při selhání. Všechny servery musí mít stejnou verzi Windows Serveru 2016.

Použití kvality služby úložiště v softwarově definovaném řešení úložného prostoru

Kvalita služby úložiště je integrovaná do softwarově definovaného řešení úložiště od Microsoftu poskytovaného souborovým serverem Scale-Out a technologií Hyper-V. Souborový server Scale-Out zpřístupňuje sdílené složky serverům Hyper-V pomocí protokolu SMB3. Do clusteru souborového serveru byl přidán nový Správce zásad, který poskytuje centrální monitorování výkonu úložiště.

Scale-Out souborový server a technologie QoS úložiště

Obrázek 1: Použití Storage QoS v softwarově definovaném řešení úložiště na souborovém serveru Scale-Out

Vzhledem k tomu, Hyper-V servery spouštějí virtuální počítače, monitoruje je Správce zásad. Správce zásad komunikuje se zásadami kvality služby úložiště a všemi omezeními nebo rezervacemi zpět na Hyper-V server, který podle potřeby řídí výkon virtuálního počítače.

Pokud dojde ke změnám zásad kvality služby úložiště nebo k výkonu virtuálních počítačů, Správce zásad upozorní Hyper-V servery, aby upravily jejich chování. Tato smyčka zpětné vazby zajišťuje, že všechny virtuální pevné disky virtuálních počítačů fungují konzistentně podle definovaných zásad kvality služby úložiště.

Glossary

Term Description
Normalizovaná IOPS Veškeré využití úložiště se měří v normalizovaných vstupně-výstupních operacích za sekundu. Jedná se o počet vstupně-výstupních operací úložiště za sekundu. Všechny vstupně-výstupní operace, které jsou 8 kB nebo menší, se považuje za jednu normalizovanou I/O operaci. Všechny vstupně-výstupní operace, které jsou větší než 8 kB, se považují za několik normalizovaných vstupně-výstupních operací. Například požadavek 256 kB se považuje za 32 normalizovaných vstupně-výstupních operací za sekundu.

Windows Server 2016 obsahuje možnost určit velikost použitou k normalizování I/O operací. V úložném clustru je možné zadat normalizovanou velikost a ovlivnit výpočty normalizace na celém clustru. Výchozí hodnota zůstává 8 kB. Toto nastavení má vliv na všechny virtuální počítače. (Ovlivněny jsou také virtuální počítače vytvořené na místních svazcích.)

Flow Každý popisovač souboru otevřený serverem Hyper-V na soubor VHD nebo VHDX se považuje za "tok". Pokud má virtuální počítač připojené dva virtuální pevné disky, bude mít 1 tok do clusteru souborového serveru na jeden soubor. Pokud je soubor VHDX sdílený s více virtuálními počítači, bude mít 1 tok na virtuální počítač.
InitiatorName Název virtuálního počítače, který je hlášen na souborovém serveru Scale-Out pro každý tok.
InitiatorID Identifikátor odpovídající ID virtuálního počítače. Dá se vždy použít k jedinečné identifikaci datových toků jednotlivých virtuálních počítačů, i když mají virtuální počítače stejný InitiatorName.
Policy Zásady kvality služby úložiště se ukládají v databázi clusteru a mají následující vlastnosti: PolicyId, MinimumIOPS, MaximumIOPS, ParentPolicy a PolicyType.
PolicyId Jedinečný identifikátor politiky Ve výchozím nastavení se vygeneruje, ale lze ho specifikovat, pokud si to přejete.
MinimumIOPS Minimální normalizované IOPS, které bude poskytovat politika. Označuje se také jako "Rezervace".
MaximumIOPS Maximální normalizované IOPS, které budou omezeny zásadami. Označuje se také jako limit.
Aggregated Typ zásady, ve kterém se zadaná hodnota MinimumIOPS a MaximumIOPS a Šířka pásma sdílí mezi všemi toky přiřazenými k zásadě. Všechny virtuální pevné disky přiřazené zásadám v daném systému úložiště mají jednu alokaci šířky pásma vstupně-výstupních operací pro všechny sdílené složky.
Dedicated Politika, ve které jsou spravovány zadané minimální a maximální IOPS a šířka pásma pro jednotlivé VHD/VHDx.

Nastavení kvality služby úložiště a monitorování základního výkonu

Tato část popisuje, jak povolit novou funkci kvality služby úložiště a jak monitorovat výkon úložiště bez použití vlastních zásad.

Nastavení kvality služby úložiště v clusteru úložiště

Tato část pojednává o tom, jak aktivovat Storage QoS na novém nebo stávajícím clusteru pro převzetí služeb při selhání a Scale-Out souborovém serveru běžícím na systému Windows Server 2016.

Nastavení kvality služby úložiště v nové instalaci

Pokud jste nakonfigurovali nový cluster s podporou převzetí služeb při selhání a nakonfigurovali sdílený svazek clusteru (CSV) ve Windows Serveru 2016, automaticky se nastaví funkce QoS úložiště.

Ověření instalace QoS úložiště

Po vytvoření clusteru s podporou převzetí služeb při selhání a konfiguraci disku sdíleného svazku clusteru se prostředek kvality služby úložiště zobrazí jako základní prostředek clusteru a zobrazí se ve Správci clusteru s podporou převzetí služeb při selhání i ve Windows PowerShellu. Záměrem je, že clusterový systém s podporou převzetí služeb při selhání bude tento prostředek spravovat a neměli byste s tímto prostředkem provádět žádné akce. Zobrazujeme ho ve Správci clusteru s podporou převzetí služeb při selhání i v PowerShellu, aby byly konzistentní s ostatními prostředky systému clusteru s podporou převzetí služeb při selhání, jako je nová služba Health Service.

Prostředek Storage QoS se zobrazí v jádrových prostředcích clusteru.

Obrázek 2: Storage QoS prostředek zobrazený jako hlavní prostředek clusteru ve Správci clusteru s podporou převzetí služeb při selhání

Pro zobrazení stavu QoS prostředku úložiště použijte následující rutinu PowerShellu.

PS C:\> Get-ClusterResource -Name "Storage Qos Resource"

Name                   State      OwnerGroup        ResourceType
----                   -----      ----------        ------------
Storage Qos Resource   Online     Cluster Group     Storage QoS Policy Manager

Nastavení kvality služby úložiště ve výpočetním clusteru

Role Hyper-V ve Windows Serveru 2016 má integrovanou podporu kvality služby úložiště a je ve výchozím nastavení povolená.

Instalace nástrojů pro vzdálenou správu pro správu zásad kvality služby úložiště ze vzdálených počítačů

Pomocí nástrojů pro vzdálenou správu serveru můžete spravovat zásady kvality služby úložiště a monitorovat toky z výpočetních hostitelů. Jsou k dispozici jako volitelné funkce ve všech instalacích Windows Serveru 2016 a lze je stáhnout samostatně pro Windows 10 na webu Microsoft Download Center .

Volitelná funkce RSAT-Clustering zahrnuje modul Windows PowerShellu pro vzdálenou správu clusteringu s podporou převzetí služeb při selhání, včetně kvality služby úložiště.

  • Windows PowerShell: Add-WindowsFeature RSAT-Clustering

Volitelná funkce nástrojů RSAT-Hyper-V zahrnuje modul Windows PowerShellu pro vzdálenou správu technologie Hyper-V.

  • Windows PowerShell: Add-WindowsFeature RSAT-Hyper-V-Tools

Nasazení virtuálních počítačů pro spouštění úloh pro testování

Budete potřebovat několik virtuálních počítačů uložených na souborovém serveru Scale-Out s příslušnými úlohami. Některé tipy, jak simulovat zatížení a provést zátěžové testování, najdete na následující stránce doporučeného nástroje (DiskSpd) a některé příklady použití: DiskSpd, PowerShell a výkon úložiště: měření IOPS, propustnosti a latence místních disků i sdílených složek SMB.

Ukázkové scénáře uvedené v této příručce zahrnují pět virtuálních počítačů. BuildVM1, BuildVM2, BuildVM3 a BuildVM4 používají desktopovou úlohu s nízkými až středními požadavky na úložiště. TestVm1 spouští srovnávací test zpracování online transakcí s vysokou poptávkou po úložišti.

Zobrazení aktuálních metrik výkonu úložiště

Tato část obsahuje:

  • Jak provádět dotazy na toky pomocí cmdletu Get-StorageQosFlow.

  • Jak zobrazit výkon svazku pomocí cmdletu Get-StorageQosVolume

Dotazování toků pomocí cmdletu Get-StorageQosFlow

Cmdlet Get-StorageQosFlow zobrazuje všechny aktuální toky iniciované servery Hyper-V. Všechna data shromažďuje cluster souborového serveru Scale-Out, proto je možné tuto rutinu použít na libovolném uzlu v clusteru souborového serveru Scale-Out nebo na vzdáleném serveru pomocí parametru -CimSession.

Následující ukázkový příkaz ukazuje, jak zobrazit všechny soubory otevřené Hyper-V na serveru pomocí Get-StorageQoSFlow.

PS C:\> Get-StorageQosFlow

InitiatorName    InitiatorNodeNam StorageNodeName  FilePath        Status
                 e
-------------    ---------------- ---------------  --------        ------
                                  plang-fs3.pla... C:\ClusterSt... Ok
                                  plang-fs2.pla... C:\ClusterSt... Ok
                                  plang-fs1.pla... C:\ClusterSt... Ok
                                  plang-fs3.pla... C:\ClusterSt... Ok
                                  plang-fs2.pla... C:\ClusterSt... Ok
                                  plang-fs1.pla... C:\ClusterSt... Ok
TR20-VMM         plang-z400.pl... plang-fs1.pla... C:\ClusterSt... Ok
BuildVM4         plang-c2.plan... plang-fs1.pla... C:\ClusterSt... Ok
WinOltp1         plang-c1.plan... plang-fs1.pla... C:\ClusterSt... Ok
BuildVM3         plang-c2.plan... plang-fs1.pla... C:\ClusterSt... Ok
BuildVM1         plang-c2.plan... plang-fs1.pla... C:\ClusterSt... Ok
TR20-VMM         plang-z400.pl... plang-fs1.pla... C:\ClusterSt... Ok
BuildVM2         plang-c2.plan... plang-fs1.pla... C:\ClusterSt... Ok
TR20-VMM         plang-z400.pl... plang-fs1.pla... C:\ClusterSt... Ok
                                  plang-fs3.pla... C:\ClusterSt... Ok
                                  plang-fs2.pla... C:\ClusterSt... Ok
BuildVM4         plang-c2.plan... plang-fs2.pla... C:\ClusterSt... Ok
WinOltp1         plang-c1.plan... plang-fs2.pla... C:\ClusterSt... Ok
BuildVM3         plang-c2.plan... plang-fs2.pla... C:\ClusterSt... Ok
WinOltp1         plang-c1.plan... plang-fs2.pla... C:\ClusterSt... Ok
                                  plang-fs1.pla... C:\ClusterSt... Ok

Následující ukázkový příkaz je naformátovaný tak, aby zobrazoval název virtuálního počítače, Hyper-V název hostitele, IOPS a název souboru VHD seřazený podle IOPS.

PS C:\> Get-StorageQosFlow | Sort-Object StorageNodeIOPS -Descending | ft InitiatorName, @{Expression={$_.InitiatorNodeName.Substring(0,$_.InitiatorNodeName.IndexOf('.'))};Label="InitiatorNodeName"}, StorageNodeIOPS, Status, @{Expression={$_.FilePath.Substring($_.FilePath.LastIndexOf('\')+1)};Label="File"} -AutoSize

InitiatorName InitiatorNodeName StorageNodeIOPS Status File
------------- ----------------- --------------- ------ ----
WinOltp1      plang-c1                     3482     Ok IOMETER.VHDX
BuildVM2      plang-c2                      544     Ok BUILDVM2.VHDX
BuildVM1      plang-c2                      497     Ok BUILDVM1.VHDX
BuildVM4      plang-c2                      316     Ok BUILDVM4.VHDX
BuildVM3      plang-c2                      296     Ok BUILDVM3.VHDX
BuildVM4      plang-c2                      195     Ok WIN8RTM_ENTERPRISE_VL_BU...
TR20-VMM      plang-z400                    156     Ok DATA1.VHDX
BuildVM3      plang-c2                       81     Ok WIN8RTM_ENTERPRISE_VL_BU...
WinOltp1      plang-c1                       65     Ok BOOT.VHDX
                                             18     Ok DefaultFlow
                                             12     Ok DefaultFlow
WinOltp1      plang-c1                        4     Ok 9914.0.AMD64FRE.WINMAIN....
TR20-VMM      plang-z400                      4     Ok DATA2.VHDX
TR20-VMM      plang-z400                      3     Ok BOOT.VHDX
                                              0     Ok DefaultFlow
                                              0     Ok DefaultFlow
                                              0     Ok DefaultFlow
                                              0     Ok DefaultFlow
                                              0     Ok DefaultFlow
                                              0     Ok DefaultFlow
                                              0     Ok DefaultFlow

Následující ukázkový příkaz ukazuje, jak filtrovat toky na základě iniciátoruName, abyste mohli snadno najít výkon a nastavení úložiště pro konkrétní virtuální počítač.

PS C:\> Get-StorageQosFlow -InitiatorName BuildVm1 | Format-List

FilePath           : C:\ClusterStorage\Volume2\SHARES\TWO\BUILDWORKLOAD\BUILDVM1.V
                     HDX
FlowId             : ebfecb54-e47a-5a2d-8ec0-0940994ff21c
InitiatorId        : ae4e3dd0-3bde-42ef-b035-9064309e6fec
InitiatorIOPS      : 464
InitiatorLatency   : 26.2684
InitiatorName      : BuildVM1
InitiatorNodeName  : plang-c2.plang.nttest.microsoft.com
Interval           : 300000
Limit              : 500
PolicyId           : 1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5
Reservation        : 500
Status             : Ok
StorageNodeIOPS    : 475
StorageNodeLatency : 7.9725
StorageNodeName    : plang-fs1.plang.nttest.microsoft.com
TimeStamp          : 2/12/2015 2:58:49 PM
VolumeId           : 4d91fc3a-1a1e-4917-86f6-54853b2a6787
PSComputerName     :
MaximumIops        : 500
MinimumIops        : 500

Data vrácená rutinou Get-StorageQosFlow zahrnují:

  • Název hostitele Hyper-V (InitiatorNodeName).

  • Název virtuálního počítače a jeho ID (InitiatorName a InitiatorId)

  • Nedávný průměrný výkon zjištěný hostitelem Hyper-V pro virtuální disk (InitiatorIOPS, InitiatorLatency)

  • Nedávný průměrný výkon zjištěný clusterem úložiště pro virtuální disk (StorageNodeIOPS, StorageNodeLatency)

  • Aktuální zásada použitá na soubor, pokud existuje, a výsledná konfigurace (PolicyId, Reservation, Limit)

  • Stav zásady

    • Ok – neexistují žádné problémy

    • InsufficientThroughput – Použije se zásada, ale nelze doručit minimální počet vstupně-výstupních operací za sekundu. K tomu může dojít, pokud je minimální požadavek pro jeden virtuální počítač nebo všechny virtuální počítače dohromady větší, než může dodat úložný svazek.

    • UnknownPolicyId – K virtuálnímu počítači na hostiteli Hyper-V byla přiřazena zásada, ale na souborovém serveru chybí. Tyto zásady by se měly odebrat z konfigurace virtuálního počítače nebo by se měly vytvořit odpovídající zásady v clusteru souborového serveru.

Zobrazit výkon svazku pomocí Get-StorageQosVolume

Metriky výkonu úložiště se rovněž shromažďují pro jednotlivé úložné svazky, vedle metrik výkonu jednotlivých toků. To usnadňuje zobrazení průměrného celkového využití v normalizovaných vstupně-výstupních operacích za sekundu, latenci a agregačních limitech a rezervacích použitých u svazku.

PS C:\> Get-StorageQosVolume | Format-List

Interval       : 300000
IOPS           : 0
Latency        : 0
Limit          : 0
Reservation    : 0
Status         : Ok
TimeStamp      : 2/12/2015 2:59:38 PM
VolumeId       : 434f561f-88ae-46c0-a152-8c6641561504
PSComputerName :
MaximumIops    : 0
MinimumIops    : 0

Interval       : 300000
IOPS           : 1097
Latency        : 3.1524
Limit          : 0
Reservation    : 1568
Status         : Ok
TimeStamp      : 2/12/2015 2:59:38 PM
VolumeId       : 4d91fc3a-1a1e-4917-86f6-54853b2a6787
PSComputerName :
MaximumIops    : 0
MinimumIops    : 1568

Interval       : 300000
IOPS           : 5354
Latency        : 6.5084
Limit          : 0
Reservation    : 781
Status         : Ok
TimeStamp      : 2/12/2015 2:59:38 PM
VolumeId       : 0d2fd367-8d74-4146-9934-306726913dda
PSComputerName :
MaximumIops    : 0
MinimumIops    : 781

Vytvoření a monitorování zásad kvality služby úložiště

Tato část popisuje, jak vytvořit zásady kvality služby úložiště, použít tyto zásady na virtuální počítače a monitorovat cluster úložiště po použití zásad.

Vytvoření zásad kvality služby úložiště

Zásady kvality služby úložiště se definují a spravují v clusteru Scale-Out souborového serveru. Pro flexibilní nasazení můžete vytvořit libovolný počet zásad (až 10 000 na cluster úložiště).

Každý soubor VHD/VHDX přiřazený k virtuálnímu počítači je možné nakonfigurovat pomocí zásad. Různé soubory a virtuální počítače můžou používat stejné zásady, nebo je možné je nakonfigurovat pomocí samostatných zásad. Pokud je několik souborů VHD/VHDX nebo více virtuálních počítačů nakonfigurováno se stejnými zásadami, budou agregovány a společně sdílet minimumIOPS a maximumIOPS poměrně férově. Pokud používáte samostatné zásady pro více souborů VHD/VHDX nebo virtuálních počítačů, budou se minimální a maximální hodnoty sledovat zvlášť pro každý z nich.

Pokud vytvoříte několik podobných zásad pro různé virtuální počítače a virtuální počítače mají stejnou poptávku po úložišti, obdrží podobný podíl IOPS. Pokud jeden virtuální počítač vyžaduje více a druhý méně, vstupně-výstupní operace za sekundu (IOPS) se přizpůsobí této poptávce.

Typy zásad kvality služby úložiště

Existují dva typy zásad: Aggregated (dříve označované jako SingleInstance) a Dedicated (dříve označované jako MultiInstance). Agregované zásady uplatňují maximální a minimální hodnoty pro kombinovanou sadu souborů VHD/VHDX a virtuálních počítačů, na kterých se vztahují. V důsledku toho sdílejí zadanou sadu IOPS a šířky pásma. Zásady vyhrazené pro každý VHD/VHDx samostatně používají minimální a maximální hodnoty. To usnadňuje vytvoření jedné zásady, která použije podobné limity pro více souborů VHD/VHDx.

Pokud například vytvoříte agregovanou politiku s minimem 300 IOPS a maximem 500 IOPS. Pokud tuto zásadu použijete na 5 různých souborů VHD/VHDx, ujistěte se, že kombinace 5 souborů VHD/VHDx bude zaručeno alespoň 300 IOPS (pokud je poptávka a systém úložiště může poskytnout tento výkon) a ne více než 500 IOPS. Pokud mají soubory VHD/VHDx podobnou vysokou poptávku po vstupně-výstupních operacích za sekundu a systém úložiště může držet krok, každý soubor VHD/VHDx získá přibližně 100 IOPS.

Pokud ale vytvoříte vyhrazenou zásadu s podobnými limity a použijete ji u souborů VHD/VHDx na 5 různých virtuálních počítačích, každý virtuální počítač získá alespoň 300 IOPS a maximálně 500 IOPS. Pokud mají virtuální počítače podobnou vysokou poptávku po vstupně-výstupních operacích za sekundu a systém úložiště může držet krok, každý virtuální počítač získá přibližně 500 IOPS. Pokud jeden z virtuálních počítačů má několik souborů VHD/VHDx se stejnou nakonfigurovanou zásadou MultiInstance, budou sdílet limit, takže celkové vstupně-výstupní operace z virtuálního počítače u souborů s touto zásadou nepřekročí dané limity.

Pokud tedy máte skupinu souborů VHD/VHDx, které chcete mít stejné charakteristiky výkonu, a nechcete mít potíže s vytvořením několika podobných zásad, můžete použít jednu vyhrazenou zásadu a použít pro soubory každého virtuálního počítače.

Ponechte počet souborů VHD/VHDx přiřazených k jedné agregované zásadě na 20 nebo méně. Tento typ politiky byl navržen pro agregaci s několika VM v clusteru.

Vytvoření a použití vyhrazené zásady

Nejprve pomocí rutiny New-StorageQosPolicy vytvořte zásadu na souborovém serveru Scale-Out, jak je znázorněno v následujícím příkladu:

$desktopVmPolicy = New-StorageQosPolicy -Name Desktop -PolicyType Dedicated -MinimumIops 100 -MaximumIops 200

Poté ho použijte na vhodné disky virtuálních počítačů na serveru Hyper-V. Poznamenejte si PolicyId z předchozího kroku nebo ho uložte do proměnné ve vašich skriptech.

Na souborovém serveru Scale-Out pomocí PowerShellu vytvořte zásadu kvality služby úložiště a získejte ID zásad, jak je znázorněno v následujícím příkladu:

PS C:\> $desktopVmPolicy = New-StorageQosPolicy -Name Desktop -PolicyType Dedicated -MinimumIops 100 -MaximumIops 200

C:\> $desktopVmPolicy.PolicyId

Guid
----
1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5

Na Hyper-V serveru pomocí PowerShellu nastavte zásady kvality služby úložiště pomocí ID zásad, jak je znázorněno v následujícím příkladu:

Get-VM -Name Build* | Get-VMHardDiskDrive | Set-VMHardDiskDrive -QoSPolicyID 1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5

Potvrďte, že se zásady jsou aplikovány.

Pomocí Get-StorageQosFlow rutiny PowerShellu potvrďte, že se pro příslušné toky použily minimumIOPS a MaximumIOPS, jak je znázorněno v následujícím příkladu.

PS C:\> Get-StorageQoSflow | Sort-Object InitiatorName |
 ft InitiatorName, Status, MinimumIOPS, MaximumIOPS, StorageNodeIOPS, Status, @{Expression={$_.FilePath.Substring($_.FilePath.LastIndexOf('\')+1)};Label="File"} -AutoSize

InitiatorName Status MinimumIops MaximumIops StorageNodeIOPS Status File
------------- ------ ----------- ----------- --------------- ------ ----
BuildVM1          Ok         100         200             250     Ok BUILDVM1.VHDX
BuildVM2          Ok         100         200             251     Ok BUILDVM2.VHDX
BuildVM3          Ok         100         200             252     Ok BUILDVM3.VHDX
BuildVM4          Ok         100         200             233     Ok BUILDVM4.VHDX
TR20-VMM          Ok          33         666               1     Ok DATA2.VHDX
TR20-VMM          Ok          33         666               5     Ok DATA1.VHDX
TR20-VMM          Ok          33         666               4     Ok BOOT.VHDX
WinOltp1          Ok           0           0               0     Ok 9914.0.AMD6...
WinOltp1          Ok           0           0            5166     Ok IOMETER.VHDX
WinOltp1          Ok           0           0               0     Ok BOOT.VHDX

Na Hyper-V serveru můžete také použít poskytnutý skript Get-VMHardDiskDrivePolicy.ps1 a zjistit, jaké zásady se použijí na virtuální pevný disk.

PS C:\> Get-VM -Name BuildVM1 | Get-VMHardDiskDrive | Format-List

Path                          : \\plang-fs.plang.nttest.microsoft.com\two\BuildWorkload
                                \BuildVM1.vhdx
DiskNumber                    :
MaximumIOPS                   : 0
MinimumIOPS                   : 0
QoSPolicyID                   : 1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5
SupportPersistentReservations : False
ControllerLocation            : 0
ControllerNumber              : 0
ControllerType                : IDE
PoolName                      : Primordial
Name                          : Hard Drive
Id                            : Microsoft:AE4E3DD0-3BDE-42EF-B035-9064309E6FEC\83F8638B
                                -8DCA-4152-9EDA-2CA8B33039B4\0\0\D
VMId                          : ae4e3dd0-3bde-42ef-b035-9064309e6fec
VMName                        : BuildVM1
VMSnapshotId                  : 00000000-0000-0000-0000-000000000000
VMSnapshotName                :
ComputerName                  : PLANG-C2
IsDeleted                     : False

Dotazování na zásady kvality služby úložiště

Get-StorageQosPolicy zobrazí seznam všech nakonfigurovaných zásad a jejich stav na souborovém serveru Scale-Out.

PS C:\> Get-StorageQosPolicy

Name                 MinimumIops          MaximumIops          Status
----                 -----------          -----------          ------
Default              0                    0                    Ok
Limit500             0                    500                  Ok
SilverVm             500                  500                  Ok
Desktop              100                  200                  Ok
Limit500             0                    0                    Ok
VMM                  100                  2000                 Ok
Vdi                  1                    100                  Ok

Stav se může v průběhu času měnit podle toho, jak systém funguje.

  • Ok – Všechny toky používající tyto zásady přijímají požadované minimumIOPS.

  • InsufficientThroughput – Jeden nebo více toků používajících tuto zásadu nedostává minimální počet IOPS

Zásadu můžete také přesměrovat na Get-StorageQosPolicy, abyste získali stav všech toků nakonfigurovaných tak, aby používaly tuto zásadu.

PS C:\> Get-StorageQosPolicy -Name Desktop | Get-StorageQosFlow | ft InitiatorName, *IOPS, Status, FilePath -AutoSize

InitiatorName MaximumIops MinimumIops InitiatorIOPS StorageNodeIOPS Status FilePat
                                                                           h
------------- ----------- ----------- ------------- --------------- ------ -------
BuildVM4              100          50           187              17     Ok C:\C...
BuildVM3              100          50           194              25     Ok C:\C...
BuildVM1              200         100           195             196     Ok C:\C...
BuildVM2              200         100           193             192     Ok C:\C...
BuildVM4              200         100           187             169     Ok C:\C...
BuildVM3              200         100           194             169     Ok C:\C...

Vytvořte agregované zásady

Agregované zásady by se měly použít, pokud chcete, aby několik virtuálních pevných disků sdílelo jeden fond IOPS a šířky pásma. Pokud například použijete stejné agregované zásady na pevné disky ze dvou virtuálních počítačů, bude mezi ně minimum rozděleno podle poptávky. Oběma diskům bude zaručeno kombinované minimální hodnoty, a společně nepřekročí specifikovanou maximální IOPS ani šířku pásma.

Stejný přístup se dá použít také k poskytnutí jediného přidělení všem souborům VHD/VHDx pro virtuální počítače, které tvoří službu nebo patří tenantovi v prostředí s více hostiteli.

V procesu vytvoření vyhrazených a agregovaných zásad kromě zadaného typu PolicyType neexistuje žádný rozdíl.

Následující příklad ukazuje, jak vytvořit zásady kvality služby agregovaného úložiště a získat jeho ID zásad na souborovém serveru Scale-Out:

PS C:\> $highPerf = New-StorageQosPolicy -Name SqlWorkload -MinimumIops 1000 -MaximumIops 5000 -PolicyType Aggregated
[plang-fs]: PS C:\Users\plang\Documents> $highPerf.PolicyId

Guid
----
1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5

Následující příklad ukazuje, jak použít zásady kvality služby úložiště na Hyper-V serveru pomocí id zásady získané v předchozím příkladu:

PS C:\> Get-VM -Name WinOltp1 | Get-VMHardDiskDrive | Set-VMHardDiskDrive -QoSPolicyID 1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5

Následující příklad ukazuje, jak zobrazit účinky zásad kvality služby úložiště ze souborového serveru:

PS C:\> Get-StorageQosFlow -InitiatorName WinOltp1 | format-list InitiatorName, PolicyId, MinimumIOPS, MaximumIOPS, StorageNodeIOPS, FilePath

InitiatorName   : WinOltp1
PolicyId        : 1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5
MinimumIops     : 250
MaximumIops     : 1250
StorageNodeIOPS : 0
FilePath        : C:\ClusterStorage\Volume2\SHARES\TWO\BASEVHD\9914.0.AMD64FRE.WIN
                  MAIN.141218-1718_SERVER_SERVERDATACENTER_EN-US.VHDX

InitiatorName   : WinOltp1
PolicyId        : 2bbbbbb2-3cc3-4dd4-5ee5-6ffffffffff6
MinimumIops     : 250
MaximumIops     : 1250
StorageNodeIOPS : 0
FilePath        : C:\ClusterStorage\Volume3\SHARES\THREE\WINOLTP1\BOOT.VHDX

InitiatorName   : WinOltp1
PolicyId        : 3cccccc3-4dd4-5ee5-6ff6-7aaaaaaaaaa7
MinimumIops     : 1000
MaximumIops     : 5000
StorageNodeIOPS : 4550
FilePath        : C:\ClusterStorage\Volume3\SHARES\THREE\WINOLTP1\IOMETER.VHDX
PS C:\> Get-StorageQosFlow -InitiatorName WinOltp1 | for
mat-list InitiatorName, PolicyId, MinimumIOPS, MaximumIOPS, StorageNodeIOPS, FilePath

InitiatorName   : WinOltp1
PolicyId        : 4dddddd4-5ee5-6ff6-7aa7-8bbbbbbbbbb8
MinimumIops     : 250
MaximumIops     : 1250
StorageNodeIOPS : 0
FilePath        : C:\ClusterStorage\Volume2\SHARES\TWO\BASEVHD\9914.0.AMD64FRE.WIN
                  MAIN.141218-1718_SERVER_SERVERDATACENTER_EN-US.VHDX

InitiatorName   : WinOltp1
PolicyId        : 5eeeeee5-6ff6-7aa7-8bb8-9cccccccccc9
MinimumIops     : 250
MaximumIops     : 1250
StorageNodeIOPS : 0
FilePath        : C:\ClusterStorage\Volume3\SHARES\THREE\WINOLTP1\BOOT.VHDX

InitiatorName   : WinOltp1
PolicyId        : 6ffffff6-7aa7-8bb8-9cc9-0dddddddddd0
MinimumIops     : 1000
MaximumIops     : 5000
StorageNodeIOPS : 4550
FilePath        : C:\ClusterStorage\Volume3\SHARES\THREE\WINOLTP1\IOMETER.VHDX

Každý virtuální pevný disk bude mít na základě zatížení upravenou hodnotu MinimumIOPS a MaximumIOPS a MaximumIobandwidth. Tím se zajistí, že celková šířka pásma používaná pro skupinu disků zůstane v rozsahu definovaném zásadami. V předchozím příkladu jsou první dva disky nečinné a třetí disk může používat až maximální počet vstupně-výstupních operací za sekundu. Pokud první dva disky začnou znovu vydávat vstupně-výstupní operace, maximální počet vstupně-výstupních operací za sekundu třetího disku se automaticky sníží.

Úprava existující zásady

Vlastnosti Name, MinimumIOPS, MaximumIOPS a MaximumIoBandwidth lze po vytvoření zásady změnit. Typ zásad (agregovaný/vyhrazený) však nelze po vytvoření zásady změnit.

Následující rutina Windows PowerShellu ukazuje, jak změnit vlastnost MaximumIOPS pro existující zásadu:

[DBG]: PS C:\demoscripts>> Get-StorageQosPolicy -Name SqlWorkload | Set-StorageQosPolicy -MaximumIops 6000

Následující cmdlet ověří změnu:

PS C:\> Get-StorageQosPolicy -Name SqlWorkload

Name                    MinimumIops            MaximumIops            Status
----                    -----------            -----------            ------
SqlWorkload             1000                   6000                   Ok

[plang-fs1]: PS C:\Users\plang\Documents> Get-StorageQosPolicy -Name SqlWorkload | Get-Storag
eQosFlow | Format-Table InitiatorName, PolicyId, MaximumIops, MinimumIops, StorageNodeIops -A
utoSize

InitiatorName PolicyId                             MaximumIops MinimumIops StorageNodeIops
------------- --------                             ----------- ----------- ---------------
WinOltp1      1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5        1500         250               0
WinOltp1      2bbbbbb2-3cc3-4dd4-5ee5-6ffffffffff6        1500         250               0
WinOltp1      3cccccc3-4dd4-5ee5-6ff6-7aaaaaaaaaa7        6000        1000            4507

Identifikace a řešení běžných problémů

Tato část popisuje, jak najít virtuální počítače s neplatnými zásadami kvality služby úložiště, jak znovu vytvořit odpovídající zásady, jak odebrat zásadu z virtuálního počítače a jak identifikovat virtuální počítače, které nesplňují požadavky zásad kvality služby úložiště.

Identifikujte virtuální počítače s neplatnými zásadami

Pokud se zásada odstraní ze souborového serveru před odebráním z virtuálního počítače, bude virtuální počítač dál běžet, jako by se nepoužívaly žádné zásady.

PS C:\> Get-StorageQosPolicy -Name SqlWorkload | Remove-StorageQosPolicy

Confirm
Are you sure you want to perform this action?
Performing the operation "DeletePolicy" on target "MSFT_StorageQoSPolicy (PolicyId =
"1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5")".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [?] Help (default is "Y"):

Stav toků teď bude zobrazovat "UnknownPolicyId".

PS C:\> Get-StorageQoSflow | Sort-Object InitiatorName | ft InitiatorName, Status, MinimumIOPS, MaximumIOPS, StorageNodeIOPS, Status, @{Expression={$_.FilePath.Substring($_.FilePath.LastIndexOf('\')+1)};Label="File"} -AutoSize

InitiatorName          Status MinimumIops MaximumIops StorageNodeIOPS          Status File
-------------          ------ ----------- ----------- ---------------          ------ ----
                           Ok           0           0               0              Ok Def...
                           Ok           0           0              10              Ok Def...
                           Ok           0           0              13              Ok Def...
                           Ok           0           0               0              Ok Def...
                           Ok           0           0               0              Ok Def...
                           Ok           0           0               0              Ok Def...
                           Ok           0           0               0              Ok Def...
                           Ok           0           0               0              Ok Def...
                           Ok           0           0               0              Ok Def...
BuildVM1                   Ok         100         200             193              Ok BUI...
BuildVM2                   Ok         100         200             196              Ok BUI...
BuildVM3                   Ok          50          64              17              Ok WIN...
BuildVM3                   Ok          50         136             179              Ok BUI...
BuildVM4                   Ok          50         100              23              Ok WIN...
BuildVM4                   Ok         100         200             173              Ok BUI...
TR20-VMM                   Ok          33         666               2              Ok DAT...
TR20-VMM                   Ok          25         975               3              Ok DAT...
TR20-VMM                   Ok          75        1025              12              Ok BOO...
WinOltp1      UnknownPolicyId           0           0               0 UnknownPolicyId 991...
WinOltp1      UnknownPolicyId           0           0            4926 UnknownPolicyId IOM...
WinOltp1      UnknownPolicyId           0           0               0 UnknownPolicyId BOO...

Opětovné vytvoření odpovídajících zásad kvality služby úložiště

Pokud byla zásada neúmyslně odebrána, můžete vytvořit novou zásadu pomocí starého Id zásad. Nejprve získejte potřebné ID politiky.

PS C:\> Get-StorageQosFlow -Status UnknownPolicyId | ft InitiatorName, PolicyId -AutoSize

InitiatorName PolicyId
------------- --------
WinOltp1      1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5
WinOltp1      2bbbbbb2-3cc3-4dd4-5ee5-6ffffffffff6
WinOltp1      3cccccc3-4dd4-5ee5-6ff6-7aaaaaaaaaa7

Dále vytvořte novou zásadu s použitím identifikátoru zásady.

PS C:\> New-StorageQosPolicy -PolicyId 1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5 -PolicyType Aggregated -Name RestoredPolicy -MinimumIops 100 -MaximumIops 2000

Name                    MinimumIops            MaximumIops            Status
----                    -----------            -----------            ------
RestoredPolicy          100                    2000                   Ok

Nakonec ověřte, že byla použita.

PS C:\> Get-StorageQoSflow | Sort-Object InitiatorName | ft InitiatorName, Status, MinimumIOPS, MaximumIOPS, StorageNodeIOPS, Status, @{Expression={$_.FilePath.Substring($_.FilePath.LastIndexOf('\')+1)};Label="File"} -AutoSize

InitiatorName Status MinimumIops MaximumIops StorageNodeIOPS Status File
------------- ------ ----------- ----------- --------------- ------ ----
                  Ok           0           0               0     Ok DefaultFlow
                  Ok           0           0               8     Ok DefaultFlow
                  Ok           0           0               9     Ok DefaultFlow
                  Ok           0           0               0     Ok DefaultFlow
                  Ok           0           0               0     Ok DefaultFlow
                  Ok           0           0               0     Ok DefaultFlow
                  Ok           0           0               0     Ok DefaultFlow
                  Ok           0           0               0     Ok DefaultFlow
                  Ok           0           0               0     Ok DefaultFlow
BuildVM1          Ok         100         200             192     Ok BUILDVM1.VHDX
BuildVM2          Ok         100         200             193     Ok BUILDVM2.VHDX
BuildVM3          Ok          50         100              24     Ok WIN8RTM_ENTERPRISE_VL...
BuildVM3          Ok         100         200             166     Ok BUILDVM3.VHDX
BuildVM4          Ok          50         100              12     Ok WIN8RTM_ENTERPRISE_VL...
BuildVM4          Ok         100         200             178     Ok BUILDVM4.VHDX
TR20-VMM          Ok          33         666               2     Ok DATA2.VHDX
TR20-VMM          Ok          33         666               2     Ok DATA1.VHDX
TR20-VMM          Ok          33         666              10     Ok BOOT.VHDX
WinOltp1          Ok          25         500               0     Ok 9914.0.AMD64FRE.WINMA...

Odebrání zásad kvality služby úložiště

Pokud se zásada odebrala úmyslně nebo pokud byl virtuální počítač importován se zásadami, které nepotřebujete, můžete ji odebrat.

PS C:\> Get-VM -Name WinOltp1 | Get-VMHardDiskDrive | Set-VMHardDiskDrive -QoSPolicyID $null

Po odebrání Id politiky z nastavení virtuálního pevného disku bude stav v pořádku a nebude použito žádné minimum ani maximum.

PS C:\> Get-StorageQoSflow | Sort-Object InitiatorName | ft InitiatorName, MinimumIOPS, MaximumIOPS, StorageNodeIOPS, Status, @{Expression={$_.FilePath.Substring($_.FilePath.LastIndexOf('\')+1)};Label="File"} -AutoSize

InitiatorName MinimumIops MaximumIops StorageNodeIOPS Status File
------------- ----------- ----------- --------------- ------ ----
                        0           0               0     Ok DefaultFlow
                        0           0              16     Ok DefaultFlow
                        0           0              12     Ok DefaultFlow
                        0           0               0     Ok DefaultFlow
                        0           0               0     Ok DefaultFlow
                        0           0               0     Ok DefaultFlow
                        0           0               0     Ok DefaultFlow
                        0           0               0     Ok DefaultFlow
                        0           0               0     Ok DefaultFlow
BuildVM1              100         200             197     Ok BUILDVM1.VHDX
BuildVM2              100         200             192     Ok BUILDVM2.VHDX
BuildVM3                9           9              23     Ok WIN8RTM_ENTERPRISE_VL_BUILDW...
BuildVM3               91         191             171     Ok BUILDVM3.VHDX
BuildVM4                8           8              18     Ok WIN8RTM_ENTERPRISE_VL_BUILDW...
BuildVM4               92         192             163     Ok BUILDVM4.VHDX
TR20-VMM               33         666               2     Ok DATA2.VHDX
TR20-VMM               33         666               1     Ok DATA1.VHDX
TR20-VMM               33         666               5     Ok BOOT.VHDX
WinOltp1                0           0               0     Ok 9914.0.AMD64FRE.WINMAIN.1412...
WinOltp1                0           0            1811     Ok IOMETER.VHDX
WinOltp1                0           0               0     Ok BOOT.VHDX

Vyhledání virtuálních počítačů, které nesplňují zásady kvality služby úložiště

Stav InsufficientThroughput je přiřazen všem tokům, které:

  • Mají minimální definované IOPS nastavené zásadami; a

  • Iniciují vstupně-výstupní operace rychlostí, která splňuje nebo překračuje minimum; a

  • Nedosahování minimální míry IOP

PS C:\> Get-StorageQoSflow | Sort-Object InitiatorName | ft InitiatorName, MinimumIOPS, MaximumIOPS, StorageNodeIOPS, Status, @{Expression={$_.FilePath.Substring($_.FilePath.LastIndexOf('\')+1)};Label="File"} -AutoSize

InitiatorName MinimumIops MaximumIops StorageNodeIOPS                 Status File
------------- ----------- ----------- ---------------                 ------ ----
                        0           0               0                     Ok DefaultFlow
                        0           0               0                     Ok DefaultFlow
                        0           0              15                     Ok DefaultFlow
                        0           0               0                     Ok DefaultFlow
                        0           0               0                     Ok DefaultFlow
                        0           0               0                     Ok DefaultFlow
                        0           0               0                     Ok DefaultFlow
                        0           0               0                     Ok DefaultFlow
                        0           0               0                     Ok DefaultFlow
BuildVM3               50         100              20                     Ok WIN8RTM_ENTE...
BuildVM3              100         200             174                     Ok BUILDVM3.VHDX
BuildVM4               50         100              11                     Ok WIN8RTM_ENTE...
BuildVM4              100         200             188                     Ok BUILDVM4.VHDX
TR20-VMM               33         666               3                     Ok DATA1.VHDX
TR20-VMM               78        1032             180                     Ok BOOT.VHDX
TR20-VMM               22         968               4                     Ok DATA2.VHDX
WinOltp1             3750        5000               0                     Ok 9914.0.AMD64...
WinOltp1            15000       20000           11679 InsufficientThroughput IOMETER.VHDX
WinOltp1             3750        5000               0                     Ok BOOT.VHDX

Toky můžete určit pro libovolný stav, včetně funkce InsufficientThroughput , jak je znázorněno v následujícím příkladu:

PS C:\> Get-StorageQosFlow -Status InsufficientThroughput | fl

FilePath           : C:\ClusterStorage\Volume3\SHARES\THREE\WINOLTP1\IOMETER.VHDX
FlowId             : 1ca356ff-fd33-5b5d-b60a-2c8659dc803e
InitiatorId        : 2ceabcef-2eba-4f1b-9e66-10f960b50bbf
InitiatorIOPS      : 12168
InitiatorLatency   : 22.983
InitiatorName      : WinOltp1
InitiatorNodeName  : plang-c1.plang.nttest.microsoft.com
Interval           : 300000
Limit              : 20000
PolicyId           : 1aaaaaa1-2bb2-3cc3-4dd4-5eeeeeeeeee5
Reservation        : 15000
Status             : InsufficientThroughput
StorageNodeIOPS    : 12181
StorageNodeLatency : 22.0514
StorageNodeName    : plang-fs2.plang.nttest.microsoft.com
TimeStamp          : 2/13/2015 12:07:30 PM
VolumeId           : 0d2fd367-8d74-4146-9934-306726913dda
PSComputerName     :
MaximumIops        : 20000
MinimumIops        : 15000

Monitorování stavu pomocí kvality služby úložiště

Nová služba Health Service zjednodušuje monitorování clusteru úložiště a poskytuje jediné místo, kde můžete zkontrolovat všechny události, které se dají provádět v libovolném uzlu. Tato část popisuje, jak monitorovat stav vašeho clusteru úložiště pomocí příkazu debug-storagesubsystem.

Zobrazení stavu úložiště pomocí Debug-StorageSubSystem

Clusterované prostory úložiště také poskytují informace o stavu clusteru úložiště v jednom umístění. To může správcům pomoct rychle identifikovat aktuální problémy v nasazeních úložiště a sledovat, jak problémy přicházejí nebo jsou zamítnuty.

Virtuální počítač s neplatnými zásadami

Virtuální počítače s neplatnými zásadami se také oznamují prostřednictvím monitorování stavu subsystému úložiště. Tady je příklad ze stejného stavu, jak je popsáno v části Hledání virtuálních počítačů s neplatnými zásadami tohoto dokumentu.

C:\> Get-StorageSubSystem -FriendlyName Clustered* | Debug-StorageSubSystem

EventTime                 :
FaultId                   : 0d16d034-9f15-4920-a305-f9852abf47c3
FaultingObject            :
FaultingObjectDescription : Storage QoS Policy 5d1bf221-c8f0-4368-abcf-aa139e8a7c72
FaultingObjectLocation    :
FaultType                 : Storage QoS policy used by consumer does not exist.
PerceivedSeverity         : Minor
Reason                    : One or more storage consumers (usually Virtual Machines) are
                            using a non-existent policy with id
                            5d1bf221-c8f0-4368-abcf-aa139e8a7c72. Consumer details:

                            Flow ID: 1ca356ff-fd33-5b5d-b60a-2c8659dc803e
                            Initiator ID: 2ceabcef-2eba-4f1b-9e66-10f960b50bbf
                            Initiator Name: WinOltp1
                            Initiator Node: plang-c1.plang.nttest.microsoft.com
                            File Path:
                            C:\ClusterStorage\Volume3\SHARES\THREE\WINOLTP1\IOMETER.VHDX
RecommendedActions        : {Reconfigure the storage consumers (usually Virtual Machines)
                            to use a valid policy., Recreate any missing Storage QoS
                            policies.}
PSComputerName            :

Ztráta redundance virtuálního disku úložných prostorů

V tomto příkladu má clusterovaný prostor úložiště virtuální disk vytvořený jako trojcestné zrcadlení. Disk, který selhal, byl odebrán ze systému, ale nebyl přidán náhradní disk. Subsystém úložiště hlásí ztrátu redundance s upozorněním HealthStatus, ale OperationalStatus "OK , protože svazek je stále online.

PS C:\> Get-StorageSubSystem -FriendlyName Clustered*

FriendlyName                   HealthStatus                   OperationalStatus
------------                   ------------                   -----------------
Clustered Windows Storage o... Warning                        OK

[plang-fs1]: PS C:\Users\plang\Documents> Get-StorageSubSystem -FriendlyName Clustered* | Deb
ug-StorageSubSystem

EventTime                 :
FaultId                   : dfb4b672-22a6-4229-b2ed-c29d7485bede
FaultingObject            :
FaultingObjectDescription : Virtual disk 'Two'
FaultingObjectLocation    :
FaultType                 : VirtualDiskDegradedFaultType
PerceivedSeverity         : Minor
Reason                    : Virtual disk 'Two' does not have enough redundancy remaining to
                            successfully repair or regenerate its data.
RecommendedActions        : {Rebalance the pool, replace failed physical disks, or add new
                            physical disks to the storage pool, then repair the virtual
                            disk.}
PSComputerName            :

Ukázkový skript pro průběžné monitorování kvality služby úložiště

Tato část obsahuje ukázkový skript, který ukazuje, jak se dají monitorovat běžná selhání pomocí skriptu WMI. Je navržena jako výchozí komponenta, která umožňuje vývojářům načítat události zdravotního stavu v reálném čase.

Ukázkový skript:

param($cimSession)
# Register and display events
Register-CimIndicationEvent -Namespace root\microsoft\windows\storage -ClassName msft_storagefaultevent -CimSession $cimSession

while ($true)
{
     $e = (Wait-Event)
     $e.SourceEventArgs.NewEvent
     Remove-Event $e.SourceIdentifier
}

Nejčastější dotazy

Jak mohu zachovat zásady kvality služby úložiště pro můj virtuální počítač, pokud přesunu jeho soubory VHD/VHDx do jiného úložného clusteru?

Nastavení v souboru VHD/VHDx, které určuje zásadu, je GUID ID zásady. Při vytvoření zásady lze identifikátor GUID zadat pomocí parametru PolicyID . Pokud tento parametr není zadaný, vytvoří se náhodný identifikátor GUID. Proto můžete získat ID zásad v clusteru úložiště, ve kterém virtuální počítače aktuálně ukládají soubory VHD/VHDx, a vytvořit stejnou zásadu v cílovém úložném clusteru a pak určit, že se vytvoří se stejným identifikátorem GUID. Když se soubory virtuálních počítačů přesunou do nových clusterů úložiště, budou platit zásady se stejným identifikátorem GUID.

System Center Virtual Machine Manager se dá použít k použití zásad napříč několika clustery úložiště, což tento scénář výrazně usnadňuje.

Pokud změním zásady kvality služby úložiště, proč se neprojeví hned po spuštění Get-StorageQoSFlow?

Pokud máte tok, který dosáhne maxima zásady a změníte tuto zásadu, aby byla vyšší nebo nižší, a pak okamžitě určíte latenci, IOPS nebo šířku pásma toků pomocí PowerShell cmdletů, bude trvat až 5 minut, než se projeví úplné účinky změny zásady na toky. Nové limity se projeví během několika sekund, ale rutina PowerShellu Get-StorgeQoSFlow používá průměr jednotlivých čítačů pomocí 5minutového posuvného okna. Jinak, pokud byla zobrazena aktuální hodnota a spustili jste příkaz PowerShell několikrát za sebou, může se zobrazit výrazně jiná hodnota, protože hodnoty pro IOPS a latence se můžou výrazně lišit v každé sekundě.

Jaké nové funkce byly přidány ve Windows Serveru 2016

Ve Windows Serveru 2016 byly přejmenovány názvy typů zásad kvality služby úložiště. Typ zásad s více instancemi se přejmenuje na Dedicated a jedna instance se přejmenovala na Aggregated. Chování správy vyhrazených zásad je také změněno – soubory VHD/VHDX ve stejném virtuálním počítači, u kterých jsou použity stejné vyhrazené zásady, nebudou sdílet přidělení vstupně-výstupních operací.

Windows Server 2016 má dvě nové funkce kvality služby úložiště:

  • Maximální šířka pásma

    Kvalita služeb úložiště ve Windows Serveru 2016 zavádí možnost určit maximální šířku pásma, kterou mohou využívat toky přiřazené k politice. Parametr při zadávání v rutinách StorageQosPolicy je MaximumIOBandwidth a výstup se vyjadřuje v bajtech za sekundu. Pokud jsou v zásadách nastaveny maximimIops i MaximumIOBandwidth , budou platit i první, ke kterým toky dojde, omezí vstupně-výstupní operace toků.

  • Normalizace vstupně-výstupních operací za sekundu je konfigurovatelná

    QoSin úložiště používá normalizaci IOPS. Výchozí je použití normalizační velikosti 8K. QoS úložiště ve Windows Serveru 2016 zavádí možnost určit jinou velikost normalizace pro cluster úložiště. Tato velikost normalizace ovlivňuje všechny toky v clusteru úložiště a projeví se okamžitě (během několika sekund), jakmile se změní. Minimum je 1 kB a maximum je 4 GB (nedoporučuje se nastavovat více než 4 MB, protože je neobvyklé mít více než 4 MB I/O operací).

    Je třeba vzít v úvahu, že při změně výpočtu normalizace IO se stejné vzory IO a propustnost mohou objevit s různými čísly IOPS ve výstupu Storage QoS. Pokud porovnáváte vstupně-výstupní operace za sekundu mezi clustery úložiště, můžete také ověřit, jakou hodnotu normalizace každá používá, protože to ovlivní hlášené normalizované vstupně-výstupní operace za sekundu.

Příklad 1: Vytvoření nové zásady a zobrazení maximální šířky pásma v clusteru úložiště

V PowerShellu můžete zadat jednotky, ve které se číslo vyjadřuje. V následujícím příkladu se jako maximální hodnota šířky pásma používá 10 MB. QoS úložiště to převede a uloží jako bajty za sekundu. Proto se 10 MB převede na 10485760 bajtů za sekundu.

PS C:\Windows\system32> New-StorageQosPolicy -Name HR_VMs -MaximumIops 1000 -MinimumIops 20 -MaximumIOBandwidth 10MB

Name   MinimumIops MaximumIops MaximumIOBandwidth Status
----   ----------- ----------- ------------------ ------
HR_VMs 20          1000        10485760           Ok

PS C:\Windows\system32> Get-StorageQosPolicy

Name    MinimumIops MaximumIops MaximumIOBandwidth Status
----    ----------- ----------- ------------------ ------
Default 0           0           0                  Ok
HR_VMs  20          1000        10485760           Ok

PS C:\Windows\system32> Get-StorageQoSFlow | fL InitiatorName,FilePath,InitiatorIOPS,InitiatorLatency,InitiatorBandwidth

InitiatorName      : testsQoS
FilePath           : C:\ClusterStorage\Volume2\TESTSQOS\VIRTUAL HARD DISKS\TESTSQOS.VHDX
InitiatorIOPS      : 5
InitiatorLatency   : 1.5455
InitiatorBandwidth : 37888

Příklad 2: Získání nastavení normalizace IOPS a určení nové hodnoty

Následující příklad ukazuje, jak získat nastavení normalizace IOPS (vstupně-výstupních operací za sekundu) pro clustery úložiště s výchozí hodnotou 8 kB, jak ho nastavit na 32 kB a poté ho znovu zobrazit. Všimněte si, že v tomto příkladu zadejte hodnotu 32KB, protože PowerShell umožňuje místo převodu na bajty zadat jednotku. Výstup zobrazuje hodnotu v bajtech za sekundu. Toto nastavení má vliv na všechny virtuální počítače. (Ovlivněny jsou také virtuální počítače vytvořené na místních svazcích.)

PS C:\Windows\system32> Get-StorageQosPolicyStore

IOPSNormalizationSize
---------------------
8192

PS C:\Windows\system32> Set-StorageQosPolicyStore -IOPSNormalizationSize 32KB
PS C:\Windows\system32> Get-StorageQosPolicyStore

IOPSNormalizationSize
---------------------
32768

Viz také