Leistungsverlauf für Direkte Speicherplätze

Gilt für: Windows Server 2022, Windows Server 2019

Der Leistungsverlauf ist ein neues Feature, das Administratoren von Direkten Speicherplätzen einfachen Zugriff auf historische Compute-, Arbeitsspeicher-, Netzwerk- und Speichermessungen auf Hostservern, Laufwerken, Volumes, virtuellen Computern usw. bietet. Der Leistungsverlauf wird automatisch erfasst und bis zu einem Jahr lang im Cluster gespeichert.

Wichtig

Dieses Feature ist neu in Windows Server 2019. Es ist in Windows Server 2016 nicht verfügbar.

Erste Schritte

Der Leistungsverlauf wird standardmäßig mit Direkte Speicherplätze in Windows Server 2019 erfasst. Sie müssen nichts installieren, konfigurieren oder starten. Eine Internetverbindung ist nicht erforderlich, System Center ist nicht erforderlich, und eine externe Datenbank ist nicht erforderlich.

Verwenden Sie Windows Admin Center, um den Leistungsverlauf Ihres Clusters grafisch anzuzeigen:

Performance history in Windows Admin Center

Verwenden Sie das neue Cmdlet Get-ClusterPerf, um den Verlauf programmgesteuert abzufragen und zu verarbeiten. Weitere Informationen finden Sie unter Verwendung in PowerShell.

Gesammelte Daten

Der Leistungsverlauf wird für sieben Objekttypen erfasst:

Types of objects

Jeder Objekttyp verfügt über viele Reihen: Beispielsweise ClusterNode.Cpu.Usage wird für jeden Server gesammelt.

Ausführliche Informationen dazu, was für die einzelnen Objekttypen gesammelt wird und wie sie interpretiert werden, finden Sie in den folgenden Unterthemen:

Object Reihen
Laufwerke Gesammelte Daten für Laufwerke
Netzwerkadapter Gesammelte Daten für Netzwerkadapter
Server Gesammelte Daten für Server
Virtuelle Festplatten Gesammelte Daten für virtuelle Festplatten
Virtuelle Computer Gesammelte Informationen für virtuellen Computer
Volumes Gesammelte Daten für Volumes
Cluster Gesammelte Daten für Cluster

Viele Reihen werden peerobjektübergreifend zu ihrem übergeordneten Element aggregiert: NetAdapter.Bandwidth.Inbound wird z. B. für jeden Netzwerkadapter separat gesammelt und auf dem Gesamtserver aggregiert. Ebenso wird ClusterNode.Cpu.Usage auf den gesamten Cluster aggregiert, und so weiter.

Zeitrahmen

Der Leistungsverlauf wird bis zu einem Jahr gespeichert, wobei die Granularität abnimmt. Für die letzte Stunde sind alle zehn Sekunden Messungen verfügbar. Danach werden sie intelligent zusammengeführt (per Durchschnittsbildung oder Summierung) zu weniger differenzierten Reihen, die mehr Zeit umfassen. Für den letzten Tag sind alle fünf Minuten Messungen verfügbar. für die letzte Woche alle 15 Minuten, und so weiter.

In Windows Admin Center können Sie oben rechts über dem Diagramm den Zeitrahmen auswählen.

Timeframes in Windows Admin Center

Geben Sie in PowerShell den -TimeFrame-Parameter an.

Im Folgenden finden Sie die verfügbaren Zeitrahmen:

Zeitraum Messungshäufigkeit Beibehalten für
LastHour Alle 10 Sekunden 1 Stunde
LastDay In Abständen von 5 Minuten 25 Stunden
LastWeek Alle 15 Minuten 8 Tage
LastMonth Jede Stunde 35 Tage
LastYear Jeder Tag 400 Tage

Verwendung in PowerShell

Verwenden Sie das Cmdlet Get-ClusterPerformanceHistory zum Abfragen und Verarbeiten des Leistungsverlaufs in PowerShell.

Get-ClusterPerformanceHistory

Tipp

Verwenden Sie den Get-ClusterPerf Alias, um sich einige Tastatureingaben zu ersparen.

Beispiel

Die CPU-Auslastung des virtuellen Computers MyVM für die letzte Stunde:

Get-VM "MyVM" | Get-ClusterPerf -VMSeriesName "VM.Cpu.Usage" -TimeFrame LastHour

Erweiterte Beispiele finden Sie in den veröffentlichten Beispielskripts, die eine Code-Grundlage zum Ermitteln von Spitzenwerten, Berechnen von Durchschnittswerten, Zeichnen von Trendlinien, Erkennen von Ausreißern und mehr bereitstellen.

Geben Sie das Objekt an

Sie können das Objekt angeben, das Sie von der Pipeline wünschen. Dies funktioniert mit 7 Objekttypen:

Objekt aus Pipeline Beispiel
Get-PhysicalDisk Get-PhysicalDisk -SerialNumber "XYZ456" | Get-ClusterPerf
Get-NetAdapter Get-NetAdapter "Ethernet" | Get-ClusterPerf
Get-ClusterNode Get-ClusterNode "Server123" | Get-ClusterPerf
Get-VHD Get-VHD "C:\ClusterStorage\MyVolume\MyVHD.vhdx" | Get-ClusterPerf
Get-VM Get-VM "MyVM" | Get-ClusterPerf
Get-Volume Get-Volume -FriendlyName "MyVolume" | Get-ClusterPerf
Get-Cluster Get-Cluster "MyCluster" | Get-ClusterPerf

Wenn Sie dies nicht angeben, wird der Leistungsverlauf für den gesamten Cluster zurückgegeben.

Geben Sie die Reihe an

Sie können die gewünschte Reihe mit den folgenden Parametern angeben:

Parameter Beispiel List
-PhysicalDiskSeriesName "PhysicalDisk.Iops.Read" Gesammelte Daten für Laufwerke
-NetAdapterSeriesName "NetAdapter.Bandwidth.Outbound" Gesammelte Daten für Netzwerkadapter
-ClusterNodeSeriesName "ClusterNode.Cpu.Usage" Gesammelte Daten für Server
-VHDSeriesName "Vhd.Size.Current" Gesammelte Daten für virtuelle Festplatten
-VMSeriesName "Vm.Memory.Assigned" Gesammelte Informationen für virtuellen Computer
-VolumeSeriesName "Volume.Latency.Write" Gesammelte Daten für Volumes
-ClusterSeriesName "PhysicalDisk.Size.Total" Gesammelte Daten für Cluster

Tipp

Verwenden Sie die Registerkartenvervollständigung, um verfügbare Reihen zu ermitteln.

Wenn Sie nichts angeben, wird jede für das angegebene Objekt verfügbare Reihe zurückgegeben.

Geben Sie den Zeitrahmen an

Sie können den gewünschten Verlaufszeitrahmen mit dem Parameter -TimeFrame angeben.

Tipp

Verwenden Sie die Registerkartenvervollständigung, um verfügbare Zeitrahmen zu ermitteln.

Wenn Sie nichts angeben, wird die Messung MostRecent zurückgegeben.

Funktionsweise

Speicherung des Leistungsverlaufs

Kurz nachdem Direkte Speicherplätze aktiviert wurde, wird ein Volume mit etwa 10 GB namens ClusterPerformanceHistory erstellt, und dort wird eine Instanz der Extensible Storage Engine (auch als Microsoft JET bezeichnet) bereitgestellt. In dieser einfachen Datenbank wird der Leistungsverlauf ohne Beteiligung oder Verwaltung des Administrators gespeichert.

Volume for performance history storage

Das Volume basiert auf Speicherplätzen und verwendet je nach Anzahl der Knoten im Cluster Resilienz mit Ein-, Zwei- oder Drei-Wege-Spiegelung. Sie wird nach Laufwerk- oder Serverfehlern wie jedes andere Volume in Direkte Speicherplätze repariert.

Das Volume verwendet ReFS, ist jedoch kein freigegebenes Clustervolume (CSV), und wird daher nur auf dem Knoten Clustergruppenbesitzer angezeigt. Dieses Volume wird automatisch erstellt und ist nicht speziell: Sie können es sehen, durchsuchen, seine Größe ändern oder löschen (was nicht empfohlen wird). Wenn etwas schief geht, finden Sie weitere Informationen unter Problembehandlung.

Objektermittlung und Datensammlung

Der Leistungsverlauf erkennt automatisch relevante Objekte wie virtuelle Computer im Cluster und beginnt mit dem Streaming ihrer Leistungsindikatoren. Die Leistungsindikatoren werden aggregiert, synchronisiert und in die Datenbank eingefügt. Das Streaming wird kontinuierlich ausgeführt und ist für minimale Auswirkungen auf das System optimiert.

Die Sammlung wird vom Integritätsdienst gesteuert, der hochverfügbar ist: Wenn der Knoten ausfällt, auf dem der Dienst ausgeführt wird, wird der Dienst kurz darauf auf einem anderen Knoten im Cluster fortgesetzt. Der Leistungsverlauf kann kurzzeitig aussetzen, wird aber automatisch fortgesetzt. Sie können den Integritätsdienst und dessen Besitzerknoten anzeigen, wenn Sie Get-ClusterResource Health in PowerShell ausführen.

Handhabung von Messlücken

Wenn Messungen zu weniger präzisen Reihen zusammengeführt werden, die mehr Zeit umfassen (siehe Beschreibung unter Zeitrahmen), werden Zeiträume mit fehlenden Daten ausgeschlossen. Wenn der Server beispielsweise 30 Minuten lang nicht verfügbar war, und dann in den nächsten 30 Minuten mit einer CPU-Auslastung von 50 % ausgeführt wird, wird der ClusterNode.Cpu.Usage-Durchschnitt für die Stunde ordnungsgemäß als 50 % (nicht 25 %) aufgezeichnet.

Erweiterbarkeit und Anpassung

Der Leistungsverlauf ist für die Skripterstellung geeignet. Verwenden Sie PowerShell, um einen beliebigen verfügbaren Verlauf direkt aus der Datenbank abzurufen. So können Sie automatisierte Berichte oder Warnungen erstellen, den Verlauf für die Aufbewahrung exportieren, eigene Visualisierungen erstellen usw. Hilfreiche Code-Grundlagen finden Sie in den veröffentlichten Beispielskripts.

Es ist nicht möglich, den Verlauf für zusätzliche Objekte, Zeitrahmen oder Reihen zu erfassen.

Die Messungshäufigkeit und der Aufbewahrungszeitraum sind derzeit nicht konfigurierbar.

Starten oder Beenden des Leistungsverlaufs

Wie aktiviere ich dieses Feature?

Sofern Sie nicht Stop-ClusterPerformanceHistory angegeben haben, ist der Leistungsverlauf standardmäßig aktiviert.

Führen Sie dieses PowerShell-Cmdlet als Administrator aus, um das Feature erneut zu aktivieren:

Start-ClusterPerformanceHistory

Wie deaktiviere ich dieses Feature?

Führen Sie dieses PowerShell-Cmdlet als Administrator aus, um das Sammeln des Leistungsverlaufs zu beenden:

Stop-ClusterPerformanceHistory

Verwenden Sie das Kennzeichen -DeleteHistory, um vorhandene Messungen zu löschen:

Stop-ClusterPerformanceHistory -DeleteHistory

Tipp

Während der ersten Bereitstellung können Sie den Start des Leistungsverlaufs verhindern, indem Sie den -CollectPerformanceHistory-Parameter von Enable-ClusterStorageSpacesDirect auf $False festlegen.

Problembehandlung

Das Cmdlet funktioniert nicht.

Eine Fehlermeldung wie „Der Begriff 'Get-ClusterPerf' wird nicht als Name eines Cmdlets erkannt“ bedeutet, dass das Feature nicht verfügbar oder installiert ist. Vergewissern Sie sich, dass Sie über Windows Server Insider Preview Build 17692 oder höher verfügen, dass Sie Failovercluster installiert haben, und dass Sie Direkte Speicherplätze ausführen.

Hinweis

Dieses Feature ist nicht auf Windows Server Version 2016 oder niedriger verfügbar.

Keine Daten verfügbar

Wenn in einem Diagramm „Keine Daten verfügbar“ zu sehen ist (siehe Bild), führen Sie die folgenden Schritte zur Problembehandlung aus:

No data available

  1. Wenn das Objekt neu hinzugefügt oder erstellt wurde, warten Sie, bis es ermittelt wurde (bis zu 15 Minuten).

  2. Aktualisieren Sie die Seite, oder warten Sie auf die nächste Hintergrundaktualisierung (bis zu 30 Sekunden).

  3. Bestimmte spezielle Objekte werden aus dem Leistungsverlauf ausgeschlossen, z. B. virtuelle Computer, die nicht gruppiert sind, und Volumes, die nicht das CSV-Dateisystem (freigegebenes Clustervolume) verwenden. Die Details erfahren Sie im Unterthema für den Objekttyp, z. B. Leistungsverlauf für Volumes.

  4. Wenn das Problem weiterhin besteht, öffnen Sie PowerShell als Administrator, und führen Sie das Cmdlet Get-ClusterPerf aus. Das Cmdlet enthält Problembehandlungslogik, um häufige Probleme zu identifizieren, z. B. wenn das ClusterPerformanceHistory-Volume fehlt, und enthält Anweisungen zur Problembehandlung.

  5. Wenn der Befehl im vorherigen Schritt nichts zurückgibt, können Sie versuchen, den Integritätsdienst (der den Leistungsverlauf erfasst) neu zu starten, indem Sie Stop-ClusterResource Health ; Start-ClusterResource Health in PowerShell ausführen.

Zusätzliche Referenzen