Visualizzare gli errori del Servizio integrità
Si applica a: Azure Stack HCI, versioni 23H2 e 22H2; Windows Server 2022, Windows Server 2019
Il servizio integrità monitora costantemente il cluster Spazi di archiviazione diretta per rilevare i problemi e generare "errori". Un cmdlet visualizza eventuali errori correnti, consentendo di verificare facilmente l'integrità della distribuzione senza esaminare a sua volta ogni entità o funzionalità. Gli errori sono progettati per essere precisi, facili da comprendere e correggibili.
Ogni errore contiene cinque campi importanti:
- Gravità
- Descrizione del problema
- Passaggi successivi consigliati per risolvere il problema
- Informazioni di identificazione per l'entità che ha generato l’errore
- La posizione fisica (se applicabile)
Ad esempio, di seguito viene riportato un errore tipico:
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
Nota
La posizione fisica viene derivata dalla configurazione del dominio di errore. Per altre informazioni sui domini di errore, vedere Riconoscimento del dominio di errore. Se non si specificano queste informazioni, il campo della posizione è meno utile. Ad esempio, può visualizzare solo il numero di slot.
Analisi della causa radice
Il servizio integrità può valutare la potenziale causalità tra le entità di errore per identificare e combinare errori che sono conseguenze dello stesso problema sottostante. Riconoscendo gli effetti concatenati, è possibile generare report più concisi. Ad esempio, se un server è inattivo, è previsto che le unità all'interno del server siano anche senza connettività. Di conseguenza, verrà generato un solo errore per la causa radice, in questo caso il server.
Utilizzo in PowerShell
Per visualizzare eventuali errori correnti in PowerShell, eseguire il cmdlet seguente:
Get-HealthFault
In questo modo vengono restituiti eventuali errori che influiscono sul cluster Spazi di archiviazione diretta complessivo. Nella maggior parte dei casi, questi errori si riferiscono all'hardware o alla configurazione. Se non sono presenti errori, il cmdlet non restituisce nulla.
Nota
In un ambiente non di produzione e a proprio rischio è possibile sperimentare questa funzionalità attivando manualmente gli errori. Ad esempio, è possibile eseguire questa operazione rimuovendo un disco fisico o arrestando un nodo. Dopo la visualizzazione dell'errore, reinserire il disco fisico o riavviare il nodo per far scomparire l'errore.
Utilizzo in .NET e C#
Questa sezione illustra come connettersi al servizio integrità, usare gli oggetti discover ed eseguire query di errore.
Connettere
Per eseguire una query sul servizio integrità, si stabilisce una Sessione CimSession con il cluster. A tale scopo, sono necessarie alcune operazioni disponibili solo in Microsoft .NET completo, ovvero non è possibile eseguire questa operazione direttamente da un'app Web o per dispositivi mobili. Gli esempi di codice in questa sezione usano C#, la scelta più semplice per questo livello di accesso ai dati.
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;
}
Il nome utente specificato deve essere un amministratore locale del computer di destinazione.
È consigliabile costruire password SecureString direttamente dall'input dell'utente in tempo reale, in modo che la password non venga mai archiviata in memoria in testo non crittografato. Ciò consente di attenuare una serie di problemi di sicurezza. Ma in pratica, costruire come sopra è comune a scopo di prototipazione.
Individuazione oggetti
Dopo aver stabilito CimSession , è possibile eseguire query su Strumentazione gestione Windows (WMI) nel cluster.
Prima di ottenere errori o metriche, è necessario ottenere istanze di diversi oggetti pertinenti. Ottenere prima di tutto il MSFT_StorageSubSystem che rappresenta Spazi di archiviazione diretta nel cluster. A tale scopo, è possibile ottenere ogni MSFT_StorageNode nel cluster e ogni MSFT_Volume dei volumi di dati. Infine, è necessario ottenere il MSCluster_ClusterHealthService, il servizio integrità stesso.
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();
}
Si tratta degli stessi oggetti disponibili in PowerShell usando cmdlet come Get-StorageSubSystem, Get-StorageNode e Get-Volume.
È possibile accedere a tutte le stesse proprietà, documentate in Classi API di gestione archiviazione.
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());
}
Errori di query
Richiamare Diagnosi per ottenere gli errori correnti con ambito cimInstance di destinazione, che può essere il cluster o qualsiasi volume.
L'elenco completo degli errori disponibili in ogni ambito di Windows Server 2019 è documentato più avanti nella sezione Coverage .
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!
}
}
}
Facoltativo: Classe MyFault
Può essere utile costruire e rendere persistente la propria rappresentazione degli errori. Ad esempio, la classe MyFault archivia diverse proprietà chiave degli errori, tra cui FaultId, che possono essere usate in un secondo momento per associare gli aggiornamenti, rimuovere le notifiche o deduplicare nel caso in cui lo stesso errore venga rilevato più volte.
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));
}
L'elenco completo delle proprietà in ogni errore (DiagnoseResult) è documentato più avanti nella sezione Proprietà errore .
Eventi di errore
Quando vengono creati, rimossi o aggiornati errori, il servizio integrità genera eventi WMI. Questi sono essenziali per mantenere sincronizzato lo stato dell'applicazione senza polling frequente e possono essere utili per determinare quando inviare avvisi di posta elettronica, ad esempio. Per sottoscrivere questi eventi, il codice di esempio seguente usa il pattern di progettazione Observer.
Per prima cosa, sottoscrivere MSFT_StorageFaultEvent eventi.
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);
}
Implementare quindi un observer il cui metodo OnNext() viene richiamato ogni volta che viene generato un nuovo evento.
Ogni evento contiene ChangeType che indica se viene creato, rimosso o aggiornato un errore e il valore FaultId pertinente.
Inoltre, ogni evento contiene tutte le proprietà dell'errore stesso.
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
}
}
Informazioni sul ciclo di vita degli errori
Gli errori non devono essere contrassegnati come "visti" o risolti dall'utente. Vengono creati quando il servizio integrità osserva un problema e vengono rimossi automaticamente solo dopo che il servizio integrità non può più osservare il problema. In generale, ciò riflette che il problema è stato risolto.
In alcuni casi, tuttavia, gli errori possono essere rilevati dal servizio integrità, ad esempio dopo un failover, connettività intermittente e così via. Per questo motivo, può essere opportuno rendere persistente la propria rappresentazione degli errori, in modo che sia possibile deduplicare facilmente. Ciò è particolarmente importante se si inviano avvisi di posta elettronica o equivalenti.
Proprietà di errore
La tabella seguente presenta diverse proprietà chiave dell'oggetto di errore. Per lo schema completo, esaminare la classe MSFT_StorageDiagnoseResult in storagewmi.mof.
Proprietà | Esempio |
---|---|
FaultId | {12345-12345-12345-12345-12345} |
FaultType | Microsoft.Health.FaultType.Volume.Capacity |
Motivo | "Il volume esaurisce lo spazio disponibile." |
Percezione dell'everità | 5 |
FaultingObjectDescription | Contoso XYZ9000 S.N. 123456789 |
FaultingObjectLocation | Rack A06, UR 25, Slot 11 |
RecommendedActions | {"Espandere il volume.", "Eseguire la migrazione dei carichi di lavoro ad altri volumi".} |
FaultId: ID univoco nell'ambito di un cluster.
PercepitoSeverity: PerceivedSeverity = { 4, 5, 6 } = { "Informational", "Warning" e "Error" }, o colori equivalenti come blu, giallo e rosso.
FaultingObjectDescription: informazioni sulle parti per l'hardware, in genere vuote per gli oggetti software.
FaultingObjectLocation: informazioni sulla posizione per l'hardware, in genere vuote per gli oggetti software.
RecommendedActions: elenco di azioni consigliate indipendenti e in nessun ordine specifico. Oggi, questo elenco è spesso di lunghezza 1.
Proprietà degli eventi di errore
La tabella seguente presenta diverse proprietà chiave dell'evento di errore. Per lo schema completo, esaminare la classe MSFT_StorageFaultEvent in storagewmi.mof.
Si noti changetype che indica se viene creato, rimosso o aggiornato un errore e faultId. Un evento contiene anche tutte le proprietà dell'errore interessato.
Proprietà | Esempio |
---|---|
ChangeType | 0 |
FaultId | {12345-12345-12345-12345-12345} |
FaultType | Microsoft.Health.FaultType.Volume.Capacity |
Motivo | "Il volume è in esaurimento dello spazio disponibile". |
Percepitaseverity | 5 |
ErroreObjectDescription | Contoso XYZ9000 S.N. 123456789 |
FaultingObjectLocation | Rack A06, UR 25, Slot 11 |
ConsigliateActions | {"Espandere il volume.", "Eseguire la migrazione dei carichi di lavoro ad altri volumi".} |
Changetype ChangeType = { 0, 1, 2 } = { "Create", "Remove", "Update" }.
Copertura
In Windows Server 2019 e Azure Stack HCI il servizio integrità offre la copertura di errore seguente:
PhysicalDisk (31)
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailedMedia
- Gravità: Avviso
- Motivo: "Il disco fisico non è riuscito".
- RecommendedAction: "Sostituire il disco fisico".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.LostCommunication
- Gravità: Avviso
- Motivo: "La connettività è stata persa nel disco fisico".
- RecommendedAction: "Verificare che il disco fisico funzioni e sia connesso correttamente".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.Unresponsive
- Gravità: Avviso
- Motivo: "Il disco fisico sta mostrando una ricorrente non rispondenza".
- RecommendedAction: "Sostituire il disco fisico".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.PredictiveFailure
- Gravità: Avviso
- Motivo: "Si prevede che si verifichi presto un errore del disco fisico".
- RecommendedAction: "Sostituire il disco fisico".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.UnsupportedHardware
- Gravità: Avviso
- Motivo: "Il disco fisico è in quarantena perché non è supportato dal fornitore della soluzione".
- RecommendedAction: "Sostituire il disco fisico con hardware supportato".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.UnsupportedFirmware
- Gravità: Avviso
- Motivo: "Il disco fisico è in quarantena perché la versione del firmware non è supportata dal fornitore della soluzione".
- RecommendedAction: "Aggiornare il firmware nel disco fisico alla versione di destinazione".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.UnrecognizedMetadata
- Gravità: Avviso
- Motivo: "Il disco fisico ha i metadati non riconosciuti".
- RecommendedAction: "Questo disco può contenere dati da un pool di archiviazione sconosciuto. Prima di tutto assicurarsi che non siano presenti dati utili su questo disco, quindi reimpostare il disco."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailedFirmwareUpdate
- Gravità: Avviso
- Motivo: "Tentativo non riuscito di aggiornare il firmware sul disco fisico".
- RecommendedAction: "Provare a usare un file binario del firmware diverso".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.SblFailedMedia
- Gravità: Avviso
- Motivo: "L'unità non è riuscita".
- RecommendedAction: "Sostituisci l'unità".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.SblUnresponsive
- Gravità: Avviso
- Motivo: "Il disco fisico sta mostrando una ricorrente non rispondenza".
- RecommendedAction: "Sostituire il disco fisico".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureBadBlock
- Gravità: Avviso
- Motivo: "L'unità ha segnalato blocchi non negativi durante le scritture. Un blocco occasionale non valido è normale, ma troppi potrebbero significare che l'unità è danneggiata, danneggiata o che inizia a non riuscire."
- ConsigliataAction: "Se questa operazione continua a verificarsi o si osserva una riduzione delle prestazioni, prendere in considerazione la sostituzione dell'unità".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureBadBlockRead
- Gravità: Avviso
- Motivo: "L'unità ha segnalato blocchi non negativi durante le letture. Un blocco occasionale non valido è normale, ma troppi potrebbero significare che l'unità è danneggiata, danneggiata o che inizia a non riuscire."
- ConsigliataAction: "Se questa operazione continua a verificarsi o si osserva una riduzione delle prestazioni, prendere in considerazione la sostituzione dell'unità".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureIoRetry
- Gravità: Avviso
- Motivo: "L'unità richiede più tentativi di lettura o scrittura. Se ciò continua a verificarsi, potrebbe significare che l'unità è danneggiata, danneggiata o che inizia a non riuscire."
- ConsigliataAction: "Se questa operazione continua a verificarsi o si osserva una riduzione delle prestazioni, prendere in considerazione la sostituzione dell'unità".
Nota
Questo errore è disabilitato per impostazione predefinita. Per abilitarlo, impostare l'impostazione di integrità System.Storage.PhysicalDisk.MarginalFailure.EventBased.IoRetry.Enabled su true
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureIoFailure
- Gravità: Avviso
- Motivo: "Impossibile leggere o scrivere l'unità. Se ciò continua a verificarsi, potrebbe significare che l'unità è danneggiata, danneggiata o che inizia a non riuscire."
- ConsigliataAction: "Se questa operazione continua a verificarsi o si osserva una riduzione delle prestazioni, prendere in considerazione la sostituzione dell'unità".
Nota
Questo errore è disabilitato per impostazione predefinita. Per abilitarlo, impostare l'impostazione di integrità System.Storage.PhysicalDisk.MarginalFailure.EventBased.IoFailure.Enabled su true
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureSmart
- Gravità: Avviso
- Motivo: "L'unità ha segnalato i potenziali problemi seguenti per Windows usando SMART (Self-Monitoring, Analysis and Reporting Technology)"
- ConsigliataAction: "Se questa operazione continua a verificarsi o si osserva una riduzione delle prestazioni, prendere in considerazione la sostituzione dell'unità".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureHighWear
- Gravità: Avviso
- Motivo: "L'unità ha raggiunto una percentuale elevata della sua resistenza di scrittura valutata. L'unità può diventare di sola lettura, ovvero non può eseguire più scritture, quando raggiunge il 100% della sua resistenza valutata. Controllare il foglio dati o chiedere al produttore di ulteriori dettagli sulla valutazione della resistenza e sul comportamento end-of-life."
- ConsigliataAction: "Se questa operazione continua a verificarsi o si osserva una riduzione delle prestazioni, prendere in considerazione la sostituzione dell'unità".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureReadOnly
- Gravità: Avviso
- Motivo: "L'unità ha raggiunto il 100% della sua resistenza di scrittura valutata ed è ora di sola lettura, ovvero non può eseguire più scritture. Le unità a stato solido si consumano dopo un determinato numero di scritture, che varia a seconda della classificazione di resistenza dell'unità. Per informazioni dettagliate, controllare le specifiche dell'unità o chiedere al produttore la valutazione della resistenza e il comportamento end-of-life."
- ConsigliataAction: "Se questa operazione continua a verificarsi o si osserva una riduzione delle prestazioni, prendere in considerazione la sostituzione dell'unità".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighLatency.SlowestIO
- Gravità: Avviso
- Motivo: "L'unità ha una latenza di picco elevata".
- RecommendedAction: "Monitorare le prestazioni dell'unità e prendere in considerazione la sostituzione dell'unità".
Nota
Questo errore è disabilitato per impostazione predefinita. Per abilitarla, impostare l'impostazione di integrità System.Storage.PhysicalDisk.HighLatency.Threshold.Tail.Enabled su true
FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighLatency.AverageIO
- Gravità: Avviso
- Motivo: "L'unità ha una latenza media elevata".
- RecommendedAction: "Monitorare le prestazioni dell'unità e prendere in considerazione la sostituzione dell'unità".
Nota
Questo errore è disabilitato per impostazione predefinita. Per abilitarla, impostare l'impostazione di integrità System.Storage.PhysicalDisk.HighLatency.Threshold.Tail.Enabled su true
FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighLatency.Outlier.AverageIO
- Gravità: Avviso
- Motivo: "L'unità ha una latenza media elevata".
- RecommendedAction: "Monitorare le prestazioni dell'unità e prendere in considerazione la sostituzione dell'unità".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighLatency.Outlier.SlowestIO
- Gravità: Avviso
- Motivo: "L'unità ha una latenza di picco elevata".
- RecommendedAction: "Monitorare le prestazioni dell'unità e prendere in considerazione la sostituzione dell'unità".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighErrorCount.AverageIO
- Gravità: Avviso
- Motivo: "L'unità presenta un numero elevato di errori".
- RecommendedAction: "Monitorare le prestazioni dell'unità e prendere in considerazione la sostituzione dell'unità".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighErrorCount.Outlier.AverageIO
- Gravità: Avviso
- Motivo: "L'unità presenta un numero elevato di errori".
- RecommendedAction: "Monitorare le prestazioni dell'unità e prendere in considerazione la sostituzione dell'unità".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.CacheReadOnly
- Gravità: Avviso
- Motivo: "L'unità cache non è riuscita in alcune letture o scritture, quindi per proteggere i dati spostati nelle unità di capacità".
- RecommendedAction: "Sostituire l'unità o provare a cancellarla e reimpostarla".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.CacheReadOnly.Draining
- Gravità: Avviso
- Motivo: "L'unità cache non è riuscita in alcune operazioni di lettura o scrittura. Per proteggere i dati, la scrittura nell'unità cache è stata interrotta e si sta tentando di spostare i dati nelle unità di capacità".
- RecommendedAction: "Blocca durante lo spostamento dei dati".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.CacheReadOnly.FailedDrain
- Gravità: Avviso
- Motivo: "Alcuni dati nell'unità cache non possono essere letti, impedendone lo spostamento nelle unità di capacità".
- RecommendedAction: "Sostituisci l'unità".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.SedEncKey.RotationFailure
- Gravità: Avviso
- Motivo: "Tentativo di ruotare la chiave di crittografia SED sul nuovo valore predefinito non riuscito".
- RecommendedAction: "Verificare che l'unità funzioni e sia connessa correttamente. Se l'unità non è riuscita, sostituirla. Riavviare la rotazione della chiave di crittografia SED dopo che l'unità è integra".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.SedEncKey.NotDefault
- Gravità: Avviso
- Motivo: "Il disco fisico ha una chiave di crittografia SED, ma non corrisponde alla chiave predefinita corrente".
- RecommendedAction: "Avviare la rotazione della chiave di crittografia SED".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.SedEncKey.NotDefined
- Gravità: Avviso
- Motivo: "Non esiste una chiave di crittografia SED predefinita definita per l'unità".
- RecommendedAction: "Impostare una chiave di crittografia SED predefinita".
FaultType: Microsoft.Health.FaultType.StorageScaleUnit.SedEncKey.RotationTimeout
- Gravità: Avviso
- Motivo: "Impossibile completare la rotazione della chiave di crittografia SED nel server prima del timeout"
- RecommendedAction: "Assicurarsi che il server sia raggiungibile e che tutti i dischi fisici siano integri".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.DriveArriveFailure
- Gravità: Avviso
- Motivo: "Disco fisico ha esito negativo sulle query. "
- RecommendedAction: "Convalidare l'affidabilità della rete. Se il problema persiste, provare a sostituire il dispositivo."
Disco virtuale (3)
FaultType: Microsoft.Health.FaultType.VirtualDisks.NeedsRepair
- Gravità: informativo
- Motivo: "Alcuni dati in questo volume non sono completamente resilienti. Rimane accessibile."
- RecommendedAction: "Ripristino della resilienza dei dati".
FaultType: Microsoft.Health.FaultType.VirtualDisks.Detached
- Gravità: Critica
- Motivo: "Il volume è inaccessibile. Alcuni dati potrebbero essere persi."
- RecommendedAction: "Controllare la connettività fisica e/o di rete di tutti i dispositivi di archiviazione. Potrebbe essere necessario eseguire il ripristino dal backup."
FaultType: Microsoft.Health.FaultType.VirtualDisks.NoRedundancy
- Gravità: Critica
- Motivo: "Tutte le copie dei dati non sono disponibili per un'area del disco virtuale. Il carico di lavoro può essere interrotto e possono verificarsi errori di I/O".
- RecommendedAction: "Se è in corso un'operazione di manutenzione, sospendere e ripristinare l'accesso a tutte le risorse di archiviazione fino a quando lo spazio di archiviazione non si stabilizza".
Capacità pool (2)
FaultType: Microsoft.Health.FaultType.StoragePool.TransactionAndCleanupFailure
- Gravità: Avviso
- Motivo: "Pool di archiviazione non è in grado di scrivere in un quorum di dispositivi di metadati. Il carico di lavoro può essere interrotto e possono verificarsi errori di I/O".
- RecommendedAction: "Se è in corso un'operazione di manutenzione, sospendere e ripristinare l'accesso a tutte le risorse di archiviazione fino a quando lo spazio di archiviazione non si stabilizza".
FaultType: Microsoft.Health.FaultType.StoragePool.PoolCapacityThresholdExceeded
- Gravità: Avviso
- Motivo: "Il pool di archiviazione sta esaurendo la capacità".
- RecommendedAction: "Aggiungere capacità aggiuntiva al pool di archiviazione o liberare capacità".
Capacità del volume (5)1
FaultType: Microsoft.Health.FaultType.Volume.Capacity
- Gravità: Avviso
- Motivo: "Il volume esaurisce lo spazio disponibile".
- RecommendedAction: "Espandere il volume o eseguire la migrazione dei carichi di lavoro ad altri volumi".
FaultType: Microsoft.Health.FaultType.Volume.FileSystem.Corruption.Correctable
- Gravità: Avviso
- Motivo: "Il file system ha rilevato un errore di checksum ed è stato in grado di correggerlo".
- RecommendedAction: "Avviare l'analisi dell'integrità dei dati dall'utilità di pianificazione, l'archiviazione potrebbe non riuscire. Se è in corso un'operazione di aggiornamento o manutenzione, arrestarla immediatamente. Potrebbe essere necessario eseguire il ripristino dal backup."
FaultType: Microsoft.Health.FaultType.Volume.FileSystem.Corruption.Uncorrectable
- Gravità: Avviso
- Motivo: "Il file system ha rilevato un errore di checksum e non è stato in grado di correggerlo".
- RecommendedAction: "Avviare l'analisi dell'integrità dei dati dall'utilità di pianificazione, l'archiviazione potrebbe non riuscire. Se è in corso un'operazione di aggiornamento o manutenzione, arrestarla immediatamente. Potrebbe essere necessario eseguire il ripristino dal backup."
FaultType: Microsoft.Health.FaultType.Volume.FileSystem.Corruption.Uncorrectable.DataRemoved
- Gravità: Avviso
- Motivo: "Il file system ha rilevato un danneggiamento in un file o in una cartella. Il file o la cartella è stato rimosso dallo spazio dei nomi del file system."
- RecommendedAction: "Avviare l'analisi dell'integrità dei dati dall'utilità di pianificazione, l'archiviazione potrebbe non riuscire. Se è in corso un'operazione di aggiornamento o manutenzione, arrestarla immediatamente. Potrebbe essere necessario eseguire il ripristino dal backup."
FaultType: Microsoft.Health.FaultType.Volume.FileSystem.Corruption.Uncorrectable.DataRemovalFailure
- Gravità: Avviso
- Motivo: "Il file system ha rilevato un danneggiamento in un file o in una cartella. Il file system potrebbe non essere riuscito a rimuoverlo dallo spazio dei nomi del file system."
- RecommendedAction: "Avviare l'analisi dell'integrità dei dati dall'utilità di pianificazione, l'archiviazione potrebbe non riuscire. Se è in corso un'operazione di aggiornamento o manutenzione, arrestarla immediatamente. Potrebbe essere necessario eseguire il ripristino dal backup."
Server (12)
FaultType: Microsoft.Health.FaultType.Server.Down
- Gravità: Critica
- Motivo: "Impossibile raggiungere il server".
- RecommendedAction: "Avvia o sostituisci server".
FaultType: Microsoft.Health.FaultType.Server.Isolated
- Gravità: Critica
- Motivo: "Il server è isolato dal cluster a causa di problemi di connettività".
- RecommendedAction: "Se l'isolamento persiste, controllare le reti o eseguire la migrazione dei carichi di lavoro ad altri nodi".
FaultType: Microsoft.Health.FaultType.Server.Quarantined
- Gravità: Critica
- Motivo: "Il server viene messo in quarantena dal cluster a causa di errori ricorrenti".
- RecommendedAction: "Sostituire il server o correggere la rete".
FaultType: Microsoft.Health.FaultType.Server.Temperature
- Gravità: Avviso
- Motivo: "Il sensore temperatura server ha generato un avviso".
- RecommendedAction: "Controllare la temperatura del server".
FaultType: Microsoft.Health.FaultType.Server.Storage.Degraded
- Gravità: Avviso
- Motivo: "Il server dispone di spazio di archiviazione non completo o aggiornato, quindi è necessario sincronizzarlo con i dati di altri server nel cluster. Questa situazione è normale dopo il riavvio di un server o un'unità non riesce."
- RecommendedAction: "Blocca durante la sincronizzazione dell'archiviazione. Non rimuovere alcuna unità o riavviare alcun server nel cluster fino a quando non viene confermato che la sincronizzazione è stata completata."
FaultType: Microsoft.Health.FaultType.Node.CPUOverloaded
- Gravità: Avviso
- Motivo: "L'utilizzo della CPU del server è costantemente superiore alla soglia".
- RecommendedAction: "Spostare le macchine virtuali in altri server con un utilizzo inferiore della CPU o prendere in considerazione l'aggiunta di capacità di calcolo aggiuntive al cluster (in genere aggiungendo server)."
FaultType: Microsoft.Health.FaultType.Node.VCPUToLCPU
- Gravità: Avviso
- Motivo: "Il rapporto tra processori virtuali e processori logici (thread) in questo server ha superato la soglia configurata".
- RecommendedAction: "Spostare le macchine virtuali in un altro server con un utilizzo inferiore della CPU o prendere in considerazione l'aggiunta di capacità di calcolo aggiuntive al cluster".
FaultType: Microsoft.Health.FaultType.Node.LowFreeRam
- Gravità: Avviso
- Motivo: "La memoria disponibile è inferiore alla soglia configurata".
- RecommendedAction: "Spostare le macchine virtuali in un altro server con un utilizzo inferiore della CPU o prendere in considerazione l'aggiunta di capacità di calcolo aggiuntive al cluster".
FaultType: Microsoft.Health.FaultType.Node.HighRootPartitionMemoryUsage
- Gravità: Avviso
- Motivo: "Windows Server sta consumando molta memoria fisica, che supera la soglia configurata".
- RecommendedAction: "Verificare la presenza di processi o app che utilizzano una quantità eccessiva di memoria, spostare le macchine virtuali in altri server o aggiungere memoria ai server".
FaultType: Microsoft.Health.FaultType.Node.TooHighCpuReservation
- Gravità: Avviso
- Motivo: "La prenotazione della CPU combinata delle macchine virtuali in questo server supera la soglia configurata".
- RecommendedAction: "Prendere in considerazione lo spostamento di macchine virtuali o la riduzione delle prenotazioni della CPU".
FaultType: Microsoft.Health.FaultType.Node.TooHighMemoryUseAfterReclamation
- Gravità: Avviso
- Motivo: "L'assegnazione di memoria combinata delle macchine virtuali in questo server supera la soglia configurata".
- RecommendedAction: "Prendere in considerazione lo spostamento di macchine virtuali o la riduzione della memoria assegnata".
FaultType: Microsoft.Health.FaultType.Node.SustainedHighCpuUsage
- Gravità: Avviso
- Motivo: "Il server ha un utilizzo costante della CPU che supera la soglia."
- RecommendedAction: "Spostare le macchine virtuali in un altro server con un utilizzo inferiore della CPU o prendere in considerazione l'aggiunta di una maggiore capacità di calcolo".
Cluster (6)
FaultType: Microsoft.Health.FaultType.ClusterQuorumWitness.Error
- Gravità: Critica
- Motivo: "Il cluster è un errore del server lontano dall'andare inattivo".
- RecommendedAction: "Controllare la risorsa di controllo del mirroring e riavviare in base alle esigenze. Avviare o sostituire server non riusciti."
FaultType: Microsoft.Health.FaultType.Cluster.ValidationReport.Failed
- Gravità: Critica
- Motivo: "La convalida del cluster ha riscontrato problemi".
- RecommendedAction: "La convalida del cluster ha rilevato errori in alcune categorie di test. Vedere il report di convalida del cluster."
FaultType: Microsoft.Health.FaultType.Cluster.ValidationReportDcb.Failed
- Gravità: Critica
- Motivo: "Validate-DCB ha rilevato problemi".
- RecommendedAction: "Validate-DCB ha rilevato errori di rete. Vedere report di convalida DCB."
FaultType: Microsoft.Health.FaultType.Cluster.TooHighCpuReservation
- Gravità: Critica
- Motivo: "La prenotazione della CPU combinata delle macchine virtuali in questo server supera la soglia configurata".
- RecommendedAction: "Prendere in considerazione lo spostamento di macchine virtuali o la riduzione delle prenotazioni della CPU".
FaultType: Microsoft.Health.FaultType.Cluster.TooHighMemoryUseAfterReclamation
- Gravità: Critica
- Motivo: "L'assegnazione di memoria combinata delle macchine virtuali in questo server supera la soglia configurata".
- RecommendedAction: "Prendere in considerazione lo spostamento di macchine virtuali o la riduzione della memoria assegnata".
FaultType: Microsoft.Health.FaultType.Cluster.SustainedHighCpuUsage
- Gravità: Critica
- Motivo: "Il server ha un utilizzo costante della CPU che supera la soglia."
- RecommendedAction: "Spostare le macchine virtuali in un altro server con un utilizzo inferiore della CPU o prendere in considerazione l'aggiunta di una maggiore capacità di calcolo".
Scheda di rete/interfaccia (6)
FaultType: Microsoft.Health.FaultType.NetworkAdapter.Disconnected
- Gravità: Avviso
- Motivo: "L'interfaccia di rete è diventata disconnessa".
- RecommendedAction: "Riconnettere il cavo di rete".
FaultType: Microsoft.Health.FaultType.NetworkInterface.Missing
- Gravità: Avviso
- Motivo: "Il server {server} contiene schede di rete mancanti connesse alla rete cluster {rete cluster}".
- RecommendedAction: "Connettere il server alla rete cluster mancante".
FaultType: Microsoft.Health.FaultType.NetworkAdapter.Hardware
- Gravità: Avviso
- Motivo: "L'interfaccia di rete ha avuto un errore hardware".
- RecommendedAction: "Sostituisci la scheda di interfaccia di rete".
FaultType: Microsoft.Health.FaultType.NetworkAdapter.Disabled
- Gravità: Avviso
- Motivo: "L'interfaccia di rete {interfaccia di rete} non è abilitata e non viene usata".
- RecommendedAction: "Abilita l'interfaccia di rete".
FaultType: Microsoft.Health.FaultType.StorageSubsystem.RDMA.Alert
- Gravità: Avviso
- Motivo: "Il cluster ha rilevato problemi di connettività di rete che impediscono il corretto funzionamento di Spazi di archiviazione diretta".
- RecommendedAction: "Verificare che la rete sia configurata e funzionante correttamente. Se si usa RDMA Over Converged Ethernet (RoCE), verificare che Data Center Bridging (DCB), Enhanced Transmission Service (ETS) e Priority Flow Control (PFC) siano configurati correttamente e in modo coerente in ogni nodo del cluster e commutatore fisico. Se non sai come farlo, chiedi al tuo fornitore o a qualcuno che ti fida di aiutarti".
FaultType: Microsoft.Health.FaultType.StorageSubsystem.RDMA.Disabled
- Gravità: Avviso
- Motivo: "Il cluster ha rilevato problemi di connettività di rete che impediscono al Spazi di archiviazione diretta di funzionare correttamente. Per garantire prestazioni e sicurezza dei dati coerenti, Spazi di archiviazione diretta ha smesso di usare l'accesso diretto alla memoria remota (RDMA) anche se è presente e abilitato hardware con supporto per RDMA. Il traffico di archiviazione continuerà a scorrere, ma con prestazioni ridotte usando TCP/IP."
- RecommendedAction: "Verificare che la rete sia configurata e funzionante correttamente e quindi riattivare RDMA. Se si usa RDMA Over Converged Ethernet (RoCE), verificare che Data Center Bridging (DCB), Enhanced Transmission Service (ETS) e Priority Flow Control (PFC) siano configurati correttamente e in modo coerente in ogni nodo del cluster e commutatore fisico. Se non sai come eseguire questa operazione, chiedi al tuo fornitore o a qualcuno che ti fida di aiutarti. Per continuare con RDMA disattivato, è possibile ignorare questo avviso".
Enclosure (6)
FaultType: Microsoft.Health.FaultType.StorageEnclosure.LostCommunication
- Gravità: Avviso
- Motivo: "La comunicazione è stata persa nell'chassis di archiviazione".
- Scelta consigliataAction: "Avviare o sostituire l'enclosure di archiviazione".
FaultType: Microsoft.Health.FaultType.StorageEnclosure.FanError
- Gravità: Avviso
- Motivo: "La ventola nella posizione {posizione} dell'operatore di archiviazione non è riuscita.
- Scelta consigliataAction: "Sostituire la ventola nell'chassis di archiviazione".
FaultType: Microsoft.Health.FaultType.StorageEnclosure.CurrentSensorError
- Gravità: Avviso
- Motivo: "Il sensore corrente nella posizione {posizione} dell'operatore di archiviazione non è riuscito".
- RecommendedAction: "Sostituire un sensore corrente nell'chassis di archiviazione".
FaultType: Microsoft.Health.FaultType.StorageEnclosure.VoltageSensorError
- Gravità: Avviso
- Motivo: "Il sensore di tensione in corrispondenza della posizione {posizione} dell'operatore di archiviazione non è riuscito".
- RecommendedAction: "Sostituire un sensore di tensione nell'chassis di archiviazione".
FaultType: Microsoft.Health.FaultType.StorageEnclosure.IoControllerError
- Gravità: Avviso
- Motivo: "Il controller I/O in posizione {posizione} dell'enclosure di archiviazione non è riuscito".
- RecommendedAction: "Sostituire un controller di I/O nell'istanza di archiviazione".
FaultType: Microsoft.Health.FaultType.StorageEnclosure.TemperatureSensorError
- Gravità: Avviso
- Motivo: "Il sensore di temperatura nella posizione {posizione} dell'operatore di archiviazione non è riuscito".
- RecommendedAction: "Sostituire un sensore di temperatura nell'chassis di archiviazione".
Implementazione del firmware (3)
FaultType: Microsoft.Health.FaultType.FaultDomain.FailedMaintenanceMode
- Gravità: Avviso
- Motivo: "Attualmente non è in grado di eseguire lo stato di avanzamento durante l'implementazione del firmware".
- RecommendedAction: "Verificare che tutti gli spazi di archiviazione siano integri e che non sia attualmente in modalità di manutenzione alcun dominio di errore".
FaultType: Microsoft.Health.FaultType.FaultDomain.FirmwareVerifyVersionFailed
- Gravità: Avviso
- Motivo: "L'implementazione del firmware è stata annullata a causa di informazioni sulla versione del firmware non leggibili o impreviste dopo l'applicazione di un aggiornamento del firmware".
- ConsigliataAction: "Riavviare l'implementazione del firmware una volta risolto il problema del firmware".
FaultType: Microsoft.Health.FaultType.FaultDomain.TooManyFailedUpdates
- Gravità: Avviso
- Motivo: "L'implementazione del firmware è stata annullata a causa di troppi dischi fisici che hanno avuto esito negativo su un tentativo di aggiornamento del firmware".
- ConsigliataAction: "Riavviare l'implementazione del firmware una volta risolto il problema del firmware".
QoS di archiviazione (3)2
FaultType: Microsoft.Health.FaultType.StorQos.InsufficientThroughput
- Gravità: Avviso
- Motivo: "La velocità effettiva di archiviazione non è sufficiente per soddisfare le riserve".
- RecommendedAction: "Riconfigurare i criteri QoS di archiviazione".
FaultType: Microsoft.Health.FaultType.StorQos.LostCommunication
- Gravità: Avviso
- Motivo: "Gestione criteri QoS di archiviazione ha perso la comunicazione con il volume".
- ConsigliataAction: "Riavviare i nodi {node}"
FaultType: Microsoft.Health.FaultType.StorQos.MisconfiguredFlow
- Gravità: Avviso
- Motivo: "Uno o più consumer di archiviazione (in genere Macchine virtuali) usano un criterio non esistente con ID {id}".
- ConsigliataAction: "Ricreare i criteri QoS di archiviazione mancanti".
VM/VHD (7)
FaultType: Microsoft.Health.FaultType.Vm.BadHealthState
- Gravità: Avviso
- Motivo: "Lo stato di integrità della macchina virtuale non è OK".
- RecommendedAction: "Risolvere i problemi della macchina virtuale".
FaultType: Microsoft.Health.FaultType.Vm.BadOperationalStatus
- Gravità: Avviso
- Motivo: "Lo stato operativo della macchina virtuale non è OK".
- RecommendedAction: "Risolvere i problemi della macchina virtuale".
FaultType: Microsoft.Health.FaultType.Vm.GuestUnhealthy
- Gravità: Avviso
- Motivo: "Il sistema operativo guest nella macchina virtuale segnala uno stato non integro".
- RecommendedAction: "Risolvere i problemi della macchina virtuale".
FaultType: Microsoft.Health.FaultType.Vm.ConfigIsOffline
- Gravità: Avviso
- Motivo: "La risorsa di configurazione della macchina virtuale è offline, ovvero la macchina virtuale non può essere amministrata".
- RecommendedAction: "Bring the virtual machine configuration online".
FaultType: Microsoft.Health.FaultType.Vm.NotRespondingToControlCodes
- Gravità: Avviso
- Motivo: "La macchina virtuale non risponde ai codici di controllo del cluster".
- Scelta consigliataAction: "Controllare lo stato della risorsa del cluster della macchina virtuale".
FaultType: Microsoft.Health.FaultType.Vm.IsNearMemoryLimit
- Gravità: Avviso
- Motivo: "La macchina virtuale richiede più memoria massima configurata".
- RecommendedAction: "Verificare che i processi o le app consumano troppo memoria o si considerino l'aumento della memoria massima".
FaultType: Microsoft.Health.FaultType.Vhd.IsNearlyFull
- Gravità: Avviso
- Motivo: "Il disco rigido virtuale ha raggiunto la sua capacità. Non è possibile scrivere più dati, che potrebbero influire negativamente sulle macchine virtuali.
- RecommendedAction: "Ridimensionare il disco rigido virtuale o eliminare file indesiderati".
1 Indica che il volume ha raggiunto il 80% completo (gravità secondaria) o il 90% completo (gravità principale). 2 Indica che alcuni vhd nel volume non hanno soddisfatto le operazioni di I/O al secondo minimo per oltre il 10% (minore), il 30% (principale) o il 50% (critico) di una finestra di rotazione di 24 ore.
Nota
L'integrità dei componenti dell'chassis di archiviazione, ad esempio fan, alimentatori e sensori deriva da Servizi di chassis SCSI (SES). Se il fornitore non specifica queste informazioni, Servizio integrità non può visualizzarlo.