Integritätsdienstfehler

Gilt für: Windows Server 2016

Was sind Fehler?

Der Integritätsdienst überwacht Ihren „Direkte Speicherplätze“-Cluster ständig, um Probleme zu erkennen und „Fehler“ zu generieren. Ein neues Cmdlet zeigt aktuelle Fehler, sodass Sie die Integrität Ihrer Bereitstellung einfach überprüfen können, ohne sich alle Entitäten oder Features ansehen zu müssen. Fehler sind auf Präzision, leichte Verständlichkeit und Umsetzbarkeit ausgelegt.

Jeder Fehler umfasst fünf wichtige Felder:

  • Schweregrad
  • Beschreibung des Problems
  • Empfohlene nächste Schritte zum Beheben des Problems
  • Identifizierende Informationen zur fehlerbehafteten Entität
  • Die physische Stelle (falls zutreffend)

Es folgt ein Beispiel eines typischen Fehlers:

Severity: MINOR
Reason: Connectivity has been lost to the physical disk.
Recommendation: Check that the physical disk is working and properly connected.
Part: Manufacturer Contoso, Model XYZ9000, Serial 123456789
Location: Seattle DC, Rack B07, Node 4, Slot 11

Hinweis

Die physische Stelle wird von der Konfiguration der Fehlerdomäne abgeleitet. Weitere Informationen zu Fehlerdomänen finden Sie unter Fehlerdomänen in Windows Server 2016. Wenn Sie diese Informationen nicht angeben, ist das Feld mit der Stelle weniger hilfreich, sodass z. B. nur die Steckplatznummer angezeigt wird.

Analyse der Grundursache

Der Integritätsdienst kann die potenzielle Kausalität zwischen fehlerhaften Entitäten bewerten, um Fehler zu identifizieren und zu kombinieren, die Folgen desselben zugrunde liegenden Problems sind. Durch erkennen von Kausalketten ergeben sich kürzere Berichte. Wenn zum Beispiel ein Server ausfällt, ist davon auszugehen, dass auch alle Laufwerke innerhalb des Servers ohne Verbindung sein werden. Daher wird nur ein Fehler für die Grundursache ausgelöst – in diesem Fall für den Server.

Verwendung in PowerShell

Führen Sie zur Anzeige aktueller Fehler in PowerShell dieses Cmdlet aus:

Get-StorageSubSystem Cluster* | Debug-StorageSubSystem

Es gibt alle Fehler zurück, die sich auf den gesamten „Direkte Speicherplätze“-Cluster auswirken. In den meisten Fällen beziehen sich diese Fehler auf die Hardware oder Konfiguration. Wenn keine Fehler vorhanden sind, gibt dieses Cmdlet nichts zurück.

Hinweis

In einer anderen Umgebung als Ihrer Produktionsumgebung und auf eigenes Risiko können Sie mit diesem Feature experimentieren, indem Sie selbst Fehler auslösen, z. B. indem Sie einen physischen Datenträger ausbauen oder einen Knoten herunterfahren. Nachdem der Fehler aufgetreten ist, bauen Sie den physischen Datenträger wieder ein oder starten den Knoten neu. Der Fehler sollte dann verschwinden.

Mit den folgenden Cmdlets können Sie auch Fehler anzeigen, die sich nur auf bestimmte Volumes oder Dateifreigaben auswirken:

Get-Volume -FileSystemLabel <Label> | Debug-Volume

Get-FileShare -Name <Name> | Debug-FileShare

Gibt alle Fehler zurück, die sich nur auf das bestimmte Volume bzw. die bestimmte Dateifreigabe auswirken. In den meisten Fällen beziehen sich diese Fehler auf die Kapazitätsplanung, die Ausfallsicherheit für Daten oder auf Features wie Quality of Service für Speicher oder Speicherreplikat.

Verwendung in .NET und C#

Verbinden

Zum Abfragen des Integritätsdiensts müssen Sie eine CimSession-Sitzung mit dem Cluster einrichten. Dazu benötigen Sie einige Funktionen, die nur in der Vollversion von .NET zur Verfügung stehen, d. h. eine direkte Durchführung über eine Web-App oder eine mobile App ist nicht möglich. In diesen Codebeispielen wird C# verwendet, die unkomplizierteste Wahl für diese Datenzugriffsschicht.

using System.Security;
using Microsoft.Management.Infrastructure;

public CimSession Connect(string Domain = "...", string Computer = "...", string Username = "...", string Password = "...")
{
    SecureString PasswordSecureString = new SecureString();
    foreach (char c in Password)
    {
        PasswordSecureString.AppendChar(c);
    }

    CimCredential Credentials = new CimCredential(
        PasswordAuthenticationMechanism.Default, Domain, Username, PasswordSecureString);
    WSManSessionOptions SessionOptions = new WSManSessionOptions();
    SessionOptions.AddDestinationCredentials(Credentials);
    Session = CimSession.Create(Computer, SessionOptions);
    return Session;
}

Der angegebene Benutzername muss ein lokaler Administrator des Zielcomputers sein.

Es wird empfohlen, das Kennwort SecureString direkt aus der Benutzereingabe in Echtzeit zu erstellen, damit das Kennwort niemals im Klartext im Arbeitsspeicher gespeichert wird. Dies trägt dazu bei, eine Reihe von Sicherheitsrisiken zu entschärfen. In der Praxis ist es jedoch üblich, für Prototypen die oben beschriebene Vorgehensweise zu verwenden.

Objekte ermitteln

Sobald die CimSession-Sitzung eingerichtet ist, können Sie Windows Management Instrumentation (WMI) im Cluster abfragen.

Bevor Sie Fehler oder Metriken abrufen können, müssen Sie Instanzen mehrerer relevanter Objekte abrufen. Zuerst MSFT_StorageSubSystem, das „Direkte Speicherplätze“ im Cluster darstellt. Damit können Sie jeden MSFT_StorageNode im Cluster und jedes MSFT_Volume, die Datenvolumes, abrufen. Schließlich benötigen Sie auch MSFT_StorageHealth, den Integritätsdienst selbst.

CimInstance Cluster;
List<CimInstance> Nodes;
List<CimInstance> Volumes;
CimInstance HealthService;

public void DiscoverObjects(CimSession Session)
{
    // Get MSFT_StorageSubSystem for Storage Spaces Direct
    Cluster = Session.QueryInstances(@"root\microsoft\windows\storage", "WQL", "SELECT * FROM MSFT_StorageSubSystem")
        .First(Instance => (Instance.CimInstanceProperties["FriendlyName"].Value.ToString()).Contains("Cluster"));

    // Get MSFT_StorageNode for each cluster node
    Nodes = Session.EnumerateAssociatedInstances(Cluster.CimSystemProperties.Namespace,
        Cluster, "MSFT_StorageSubSystemToStorageNode", null, "StorageSubSystem", "StorageNode").ToList();

    // Get MSFT_Volumes for each data volume
    Volumes = Session.EnumerateAssociatedInstances(Cluster.CimSystemProperties.Namespace,
        Cluster, "MSFT_StorageSubSystemToVolume", null, "StorageSubSystem", "Volume").ToList();

    // Get MSFT_StorageHealth itself
    HealthService = Session.EnumerateAssociatedInstances(Cluster.CimSystemProperties.Namespace,
        Cluster, "MSFT_StorageSubSystemToStorageHealth", null, "StorageSubSystem", "StorageHealth").First();
}

Dies sind die gleichen Objekte, die Sie in PowerShell mit Cmdlets wie Get-StorageSubSystem, Get-StorageNode und Get-Volume abrufen.

Sie können auf die gleichen Eigenschaften zugreifen, die unter Klassen der Speicherverwaltungs-API dokumentiert sind.

using System.Diagnostics;

foreach (CimInstance Node in Nodes)
{
    // For illustration, write each node's Name to the console. You could also write State (up/down), or anything else!
    Debug.WriteLine("Discovered Node " + Node.CimInstanceProperties["Name"].Value.ToString());
}

Abfragefehler

Rufen Sie Diagnose auf, um alle aktuellen Fehler für das Ziel CimInstance abzurufen. Hierbei handelt es sich entweder um den Cluster oder um ein beliebiges Volume.

Die vollständige Liste der Fehler, die für jeden Bereich in Windows Server 2016 verfügbar sind, finden Sie weiter unten.

public void GetFaults(CimSession Session, CimInstance Target)
{
    // Set Parameters (None)
    CimMethodParametersCollection FaultsParams = new CimMethodParametersCollection();
    // Invoke API
    CimMethodResult Result = Session.InvokeMethod(Target, "Diagnose", FaultsParams);
    IEnumerable<CimInstance> DiagnoseResults = (IEnumerable<CimInstance>)Result.OutParameters["DiagnoseResults"].Value;
    // Unpack
    if (DiagnoseResults != null)
    {
        foreach (CimInstance DiagnoseResult in DiagnoseResults)
        {
            // TODO: Whatever you want!
        }
    }
}

Optional: MyFault-Klasse

Es kann für Sie sinnvoll sein, eine eigene Darstellung von Fehlern zu erstellen und beizubehalten. Beispielsweise speichert diese Klasse MyFault verschiedene wichtige Fehlereigenschaften, darunter auch die FaultId. Diese kann später dazu genutzt werden, um Updatebenachrichtigungen oder Benachrichtigungen über das Entfernen zuzuordnen oder um zu deduplizieren, wenn derselbe Fehler aus irgendeinem Grund mehrmals erkannt wird.

public class MyFault {
    public String FaultId { get; set; }
    public String Reason { get; set; }
    public String Severity { get; set; }
    public String Description { get; set; }
    public String Location { get; set; }

    // Constructor
    public MyFault(CimInstance DiagnoseResult)
    {
        CimKeyedCollection<CimProperty> Properties = DiagnoseResult.CimInstanceProperties;
        FaultId     = Properties["FaultId"                  ].Value.ToString();
        Reason      = Properties["Reason"                   ].Value.ToString();
        Severity    = Properties["PerceivedSeverity"        ].Value.ToString();
        Description = Properties["FaultingObjectDescription"].Value.ToString();
        Location    = Properties["FaultingObjectLocation"   ].Value.ToString();
    }
}
List<MyFault> Faults = new List<MyFault>;

foreach (CimInstance DiagnoseResult in DiagnoseResults)
{
    Faults.Add(new Fault(DiagnoseResult));
}

Die vollständige Liste der Eigenschaften in jedem Fehler (DiagnoseResult) finden Sie weiter unten.

Fehlerereignisse

Wenn Fehler erstellt, entfernt oder aktualisiert werden, generiert der Integritätsdienst WMI-Ereignisse. Diese sind notwendig, um den Zustand Ihrer Anwendung ohne häufige Abfragen synchron zu halten, und können z. B. dabei helfen, den Zeitpunkt für das Versenden von E-Mail-Warnungen zu bestimmen. Um diese Ereignisse zu abonnieren, verwendet dieser Beispielcode das Observer-Entwurfsmuster erneut.

Abonnieren Sie zunächst MSFT_StorageFaultEvent-Ereignisse.

public void ListenForFaultEvents()
{
    IObservable<CimSubscriptionResult> Events = Session.SubscribeAsync(
        @"root\microsoft\windows\storage", "WQL", "SELECT * FROM MSFT_StorageFaultEvent");
    // Subscribe the Observer
    FaultsObserver<CimSubscriptionResult> Observer = new FaultsObserver<CimSubscriptionResult>(this);
    IDisposable Disposeable = Events.Subscribe(Observer);
}

Implementieren Sie dann einen Observer, dessen OnNext() -Methode immer dann aufgerufen wird, wenn ein neues Ereignis generiert wird.

Jedes Ereignis enthält einen ChangeType-Wert, der angibt, ob ein Fehler erstellt, entfernt oder aktualisiert wird. Außerdem gibt er die relevante FaultId an.

Darüber hinaus umfassen sie alle Eigenschaften des Fehlers selbst.

class FaultsObserver : IObserver
{
    public void OnNext(T Event)
    {
        // Cast
        CimSubscriptionResult SubscriptionResult = Event as CimSubscriptionResult;

        if (SubscriptionResult != null)
        {
            // Unpack
            CimKeyedCollection<CimProperty> Properties = SubscriptionResult.Instance.CimInstanceProperties;
            String ChangeType = Properties["ChangeType"].Value.ToString();
            String FaultId = Properties["FaultId"].Value.ToString();

            // Create
            if (ChangeType == "0")
            {
                Fault MyNewFault = new MyFault(SubscriptionResult.Instance);
                // TODO: Whatever you want!
            }
            // Remove
            if (ChangeType == "1")
            {
                // TODO: Use FaultId to find and delete whatever representation you have...
            }
            // Update
            if (ChangeType == "2")
            {
                // TODO: Use FaultId to find and modify whatever representation you have...
            }
        }
    }
    public void OnError(Exception e)
    {
        // Handle Exceptions
    }
    public void OnCompleted()
    {
        // Nothing
    }
}

Grundlegendes zum Fehlerlebenszyklus

Fehler sind nicht dazu gedacht, vom Benutzer als „gesehen“ oder „gelöst“ markiert zu werden. Sie werden erstellt, wenn der Integritätsdienst ein Problem ermittelt, und sie werden automatisch und nur dann entfernt, wenn der Integritätsdienst das Problem nicht mehr feststellen kann. Im Allgemeinen spiegelt dies wider, dass das Problem behoben wurde.

In einigen Fällen kann es jedoch vorkommen, dass der Integritätsdienst Fehler erneut ermittelt (z. B. nach einem Failover oder aufgrund einer unterbrochenen Verbindung usw.). Aus diesem Grund kann es sinnvoll sein, Ihre eigene Darstellung von Fehlern dauerhaft zu speichern, sodass Sie problemlos deduplizieren können. Dies ist besonders wichtig, wenn Sie E-Mail-Warnungen oder ähnliches senden.

Eigenschaften von Fehlern

Diese Tabelle zeigt verschiedene wichtige Eigenschaften des Fehlerobjekts. Das vollständige Schema finden Sie in der Klasse MSFT_StorageDiagnoseResult in storagewmi.mof.

Eigenschaft Beispiel
FaultId {12345-12345-12345-12345-12345}
FaultType Microsoft.Health.FaultType.Volume.Capacity
`Reason` „Auf dem Volume ist kaum noch Speicherplatz verfügbar.“
PerceivedSeverity 5
FaultingObjectDescription Contoso XYZ9000 S.N. 123456789
FaultingObjectLocation Rack A06, RU 25, Slot 11
RecommendedActions {"Erweitern Sie das Volume, oder migrieren Sie Workloads zu anderen Volumes."}

FaultId Innerhalb des Bereichs eines Clusters eindeutig.

PerceivedSeverity PerceivedSeverity = { 4, 5, 6 } = { „Information“, „Warnung“ und „Fehler“ } oder entsprechende Farben wie Blau, Gelb und Rot.

FaultingObjectDescription Teilinformationen für Hardware, für Softwareobjekte in der Regel leer.

FaultingObjectLocation Standortinformationen für Hardware, für Softwareobjekte in der Regel leer.

RecommendedActions Liste der empfohlenen Maßnahmen, unabhängig und in keiner bestimmten Reihenfolge. Derzeit hat diese Liste häufig die Länge 1.

Eigenschaften von Fehlerereignissen

Diese Tabelle zeigt verschiedene wichtige Eigenschaften des Fehlerereignisses. Das vollständige Schema finden Sie in der Klasse MSFT_StorageFaultEvent in storagewmi.mof.

Hinweis: ChangeType gibt an, ob ein Fehler erstellt, entfernt oder aktualisiert wird. Außerdem wird die FaultId angegeben. Ein Ereignis enthält auch alle Eigenschaften des betroffenen Fehlers.

Eigenschaft Beispiel
ChangeType 0
FaultId {12345-12345-12345-12345-12345}
FaultType Microsoft.Health.FaultType.Volume.Capacity
`Reason` „Auf dem Volume ist kaum noch Speicherplatz verfügbar.“
PerceivedSeverity 5
FaultingObjectDescription Contoso XYZ9000 S.N. 123456789
FaultingObjectLocation Rack A06, RU 25, Slot 11
RecommendedActions {"Erweitern Sie das Volume, oder migrieren Sie Workloads zu anderen Volumes."}

ChangeType ChangeType = { 0, 1, 2 } = { "Erstellen", "Entfernen", "Aktualisieren" }.

Abdeckung

Der Integritätsdienst bietet in Windows Server 2016 die folgende Abdeckung für Fehler:

Physischer Datenträger (8)

FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailedMedia

  • Schweregrad: Warnung
  • Reason: „Fehler bei physischem Datenträger.“
  • RecommendedAction: „Ersetzen Sie den physischen Datenträger.“

FaultType: Microsoft.Health.FaultType.PhysicalDisk.LostCommunication

  • Schweregrad: Warnung
  • Reason: „Die Verbindung mit dem physischen Datenträger wurde getrennt.“
  • RecommendedAction: „Überprüfen Sie, ob der physische Datenträger funktioniert und ordnungsgemäß verbunden ist.“

FaultType: Microsoft.Health.FaultType.PhysicalDisk.Unresponsive

  • Schweregrad: Warnung
  • Reason: „Der physische Datenträger hat wiederholt nicht reagiert.“
  • RecommendedAction: „Ersetzen Sie den physischen Datenträger.“

FaultType: Microsoft.Health.FaultType.PhysicalDisk.PredictiveFailure

  • Schweregrad: Warnung
  • Reason: „Es wird erwartet, dass der physische Datenträger in Kürze ausfällt.“
  • RecommendedAction: „Ersetzen Sie den physischen Datenträger.“

FaultType: Microsoft.Health.FaultType.PhysicalDisk.UnsupportedHardware

  • Schweregrad: Warnung
  • Reason: „Der physische Datenträger befindet sich unter Quarantäne, da er vom Hersteller der Lösung nicht unterstützt wird.“
  • RecommendedAction: „Ersetzen Sie den physischen Datenträger durch unterstützte Hardware.“

FaultType: Microsoft.Health.FaultType.PhysicalDisk.UnsupportedFirmware

  • Schweregrad: Warnung
  • Reason: „Der physische Datenträger befindet sich unter Quarantäne, da seine Firmwareversion vom Hersteller der Lösung nicht unterstützt wird.“
  • RecommendedAction: „Aktualisieren Sie die Firmware auf dem physischen Datenträger auf die Zielversion.“

FaultType: Microsoft.Health.FaultType.PhysicalDisk.UnrecognizedMetadata

  • Schweregrad: Warnung
  • Reason: „Der physische Datenträger weist unbekannte Metadaten auf.“
  • RecommendedAction: „Dieser Datenträger kann Daten aus einem unbekannten Speicherpool enthalten. Stellen Sie zuerst sicher, dass sich auf diesem Datenträger keine wichtigen Daten befinden, und setzen Sie den Datenträger dann zurück.“

FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailedFirmwareUpdate

  • Schweregrad: Warnung
  • Reason: „Fehler beim Versuch, die Firmware auf dem physischen Datenträger zu aktualisieren.“
  • RecommendedAction: „Verwenden Sie eine andere Firmware-Binärdatei.“

Virtueller Datenträger (2)

FaultType: Microsoft.Health.FaultType.VirtualDisks.NeedsRepair

  • Schweregrad: Information
  • Reason: „Einige Daten auf diesem Volume sind nicht vollständig resilient. Das Volume ist weiterhin zugänglich.“
  • RecommendedAction: „Stellen Sie die Resilienz der Daten wieder her.“

FaultType: Microsoft.Health.FaultType.VirtualDisks.Detached

  • Schweregrad: Kritisch
  • Reason: „Auf das Volume kann nicht zugegriffen werden. Einige Daten gehen möglicherweise verloren.“
  • RecommendedAction: „Überprüfen Sie die physische und/oder die Netzwerkkonnektivität aller Speichergeräte. Möglicherweise müssen Sie eine Wiederherstellung anhand einer Sicherung durchführen.“

Poolkapazität (1)

FaultType: Microsoft.Health.FaultType.StoragePool.InsufficientReserveCapacityFault

  • Schweregrad: Warnung
  • Reason: „The storage pool does not have the minimum recommended reserve capacity. This may limit your ability to restore data resiliency in the event of drive failure(s).“ (Grund: Der Speicherpool verfügt nicht über die empfohlene Mindestreservekapazität. Dies kann Ihre Fähigkeit einschränken, die Resilienz von Daten bei Laufwerksfehlern wiederherzustellen.)
  • RecommendedAction: „Add additional capacity to the storage pool, or free up capacity. The minimum recommended reserve varies by deployment, but is approximately 2 drives' worth of capacity.“ (Empfohlene Aktion: Fügen Sie dem Speicherpool zusätzliche Kapazität hinzu, oder geben Sie Kapazität frei. Die empfohlene Mindestreserve variiert je nach Bereitstellung, hat jedoch etwa den Umfang der Kapazität von 2 Laufwerken.)

Volumekapazität (2)1

FaultType: Microsoft.Health.FaultType.Volume.Capacity

  • Schweregrad: Warnung
  • Reason: „Auf dem Volume ist kaum noch Speicherplatz verfügbar.“
  • RecommendedAction: „Erweitern Sie das Volume, oder migrieren Sie Workloads zu anderen Volumes.“

FaultType: Microsoft.Health.FaultType.Volume.Capacity

  • Schweregrad: Kritisch
  • Reason: „Auf dem Volume ist kaum noch Speicherplatz verfügbar.“
  • RecommendedAction: „Erweitern Sie das Volume, oder migrieren Sie Workloads zu anderen Volumes.“

Server (3)

FaultType: Microsoft.Health.FaultType.Server.Down

  • Schweregrad: Kritisch
  • Reason: „Der Server ist nicht erreichbar.“
  • RecommendedAction: „Starten oder ersetzen Sie den Server.“

FaultType: Microsoft.Health.FaultType.Server.Isolated

  • Schweregrad: Kritisch
  • Reason: „Der Server ist aufgrund von Konnektivitätsproblemen vom Cluster isoliert.“
  • RecommendedAction: „Wenn die Isolation weiterhin besteht, überprüfen Sie die Netzwerke, oder migrieren Sie Workloads zu anderen Knoten.“

FaultType: Microsoft.Health.FaultType.Server.Quarantined

  • Schweregrad: Kritisch
  • Reason: „Der Server wird aufgrund wiederholter Fehler vom Cluster unter Quarantäne gestellt.“
  • RecommendedAction: „Ersetzen Sie den Server, oder beheben Sie den Fehler im Netzwerk.“

Cluster (1)

FaultType: Microsoft.Health.FaultType.ClusterQuorumWitness.Error

  • Schweregrad: Kritisch
  • Reason: „Der nächste Serverfehler wird zu einem Ausfall des Clusters führen.“
  • RecommendedAction: „Überprüfen Sie die Zeugenressource, und starten Sie sie bei Bedarf neu. Starten Sie fehlerhafte Server neu, oder ersetzen Sie sie.“

Netzwerkadapter/-schnittstelle (4)

FaultType: Microsoft.Health.FaultType.NetworkAdapter.Disconnected

  • Schweregrad: Warnung
  • Reason: „Die Netzwerkschnittstelle wurde getrennt.“
  • RecommendedAction: „Schließen Sie das Netzwerkkabel wieder an.“

FaultType: Microsoft.Health.FaultType.NetworkInterface.Missing

  • Schweregrad: Warnung
  • Reason: „Auf dem Server {server} fehlen Netzwerkadapter, die mit dem Clusternetzwerk {cluster network} verbunden sind.“
  • RecommendedAction: „Verbinden Sie den Server mit dem fehlenden Clusternetzwerk.“

FaultType: Microsoft.Health.FaultType.NetworkAdapter.Hardware

  • Schweregrad: Warnung
  • Reason: „Bei der Netzwerkschnittstelle wurde ein Hardwarefehler festgestellt.“
  • RecommendedAction: „Ersetzen Sie den Netzwerkschnittstellenadapter.“

FaultType: Microsoft.Health.FaultType.NetworkAdapter.Disabled

  • Schweregrad: Warnung
  • Reason: „Die Netzwerkschnittstelle {network interface} ist nicht aktiviert und wird nicht verwendet.“
  • RecommendedAction: „Aktivieren Sie den Netzwerkschnittstellenadapter.“

Gehäuse (6)

FaultType: Microsoft.Health.FaultType.StorageEnclosure.LostCommunication

  • Schweregrad: Warnung
  • Reason: „Die Kommunikation mit dem Speichergehäuse wurde unterbrochen.“
  • RecommendedAction: „Starten oder ersetzen Sie das Speichergehäuse.“

FaultType: Microsoft.Health.FaultType.StorageEnclosure.FanError

  • Schweregrad: Warnung
  • Reason: „Der Lüfter an Position {position} des Speichergehäuses ist ausgefallen.“
  • RecommendedAction: „Starten oder ersetzen Sie den Lüfter im Speichergehäuse.“

FaultType: Microsoft.Health.FaultType.StorageEnclosure.CurrentSensorError

  • Schweregrad: Warnung
  • Reason: „Der Stromsensor an Position {position} des Speichergehäuses ist ausgefallen.“
  • RecommendedAction: „Ersetzen Sie den Stromsensor im Speichergehäuse.“

FaultType: Microsoft.Health.FaultType.StorageEnclosure.VoltageSensorError

  • Schweregrad: Warnung
  • Reason: „Der Spannungssensor an Position {position} des Speichergehäuses ist ausgefallen.“
  • RecommendedAction: „Ersetzen Sie den Spannungssensor im Speichergehäuse.“

FaultType: Microsoft.Health.FaultType.StorageEnclosure.IoControllerError

  • Schweregrad: Warnung
  • Reason: „Der E/A-Controller an Position {position} des Speichergehäuses ist ausgefallen.“
  • RecommendedAction: „Ersetzen Sie den E/A-Controller im Speichergehäuse.“

FaultType: Microsoft.Health.FaultType.StorageEnclosure.TemperatureSensorError

  • Schweregrad: Warnung
  • Reason: „Der Temperatursensor an Position {position} des Speichergehäuses ist ausgefallen.“
  • RecommendedAction: „Ersetzen Sie den Temperatursensor im Speichergehäuse.“

Firmwarerollout (3)

FaultType: Microsoft.Health.FaultType.FaultDomain.FailedMaintenanceMode

  • Schweregrad: Warnung
  • Reason: „Während der Ausführung des Firmwarerollouts ist derzeit kein Fortschritt möglich.“
  • RecommendedAction: „Stellen Sie sicher, dass alle Speicherplätze fehlerfrei sind und sich derzeit keine Fehlerdomäne im Wartungsmodus befindet.“

FaultType: Microsoft.Health.FaultType.FaultDomain.FirmwareVerifyVersionFaile

  • Schweregrad: Warnung
  • Reason: „Das Firmwarerollout wurde aufgrund nicht lesbarer oder unerwarteter Firmwareversionsinformationen nach dem Anwenden eines Firmwareupdates abgebrochen.“
  • RecommendedAction: „Starten Sie das Firmwarerollout neu, sobald das Firmwareproblem behoben wurde.“

FaultType: Microsoft.Health.FaultType.FaultDomain.TooManyFailedUpdates

  • Schweregrad: Warnung
  • Reason: „Das Firmwarerollout wurde abgebrochen, weil das Firmwareupdate auf zu vielen physischen Datenträgern Fehler verursacht hat.“
  • RecommendedAction: „Starten Sie das Firmwarerollout neu, sobald das Firmwareproblem behoben wurde.“

Speicher-QoS (3)2

FaultType: Microsoft.Health.FaultType.StorQos.InsufficientThroughput

  • Schweregrad: Warnung
  • Reason: „Der Speicherdurchsatz reicht für Reserven nicht aus.“
  • RecommendedAction: „Konfigurieren Sie die Richtlinien für Speicher-QoS neu.“

FaultType: Microsoft.Health.FaultType.StorQos.LostCommunication

  • Schweregrad: Warnung
  • Reason: „Die Kommunikation zwischen dem Speicher-QoS-Richtlinien-Manager und dem Volume wurde unterbrochen.“
  • RecommendedAction: „Starten Sie die Knoten {nodes} neu.“

FaultType: Microsoft.Health.FaultType.StorQos.MisconfiguredFlow

  • Schweregrad: Warnung
  • Reason: „Mindestens ein Speicherconsumer (in der Regel eine VM) verwendet eine nicht vorhandene Richtlinie mit der ID {id}.“
  • RecommendedAction: „Erstellen Sie fehlende Speicher-QoS-Richtlinien neu.“

1 Gibt an, dass das Volume 80 % (niedriger Schweregrad) oder 90 % (hoher Schweregrad) der maximalen Speicherkapazität erreicht hat. 2 Gibt an, dass einige virtuelle Festplatten (VHDs) auf dem Volume im rollierenden 24-Stunden-Zeitfenster nicht ihren IOPS-Mindestwert von über 10 % (niedrig), 30 % (hoch) und 50 % (kritisch) erreicht haben.

Hinweis

Die Integrität von Speichergehäusekomponenten wie Lüfter, Netzteile und Sensoren wird von SES (SCSI Enclosure Services) abgeleitet. Wenn Ihr Anbieter diese Informationen nicht bereitstellt, kann der Integritätsdienst sie nicht anzeigen.

Zusätzliche Referenzen