Ver as falhas do Serviço de Estado de Funcionamento
Aplica-se a: Azure Stack HCI, versões 23H2 e 22H2; Windows Server 2022, Windows Server 2019
O Serviço de Estado de Funcionamento monitoriza constantemente o cluster de Espaços de Armazenamento Direto para detetar problemas e gerar "falhas". Um cmdlet apresenta quaisquer falhas atuais, permitindo-lhe verificar facilmente o estado de funcionamento da sua implementação sem olhar para todas as entidades ou funcionalidades por sua vez. As Falhas foram concebidas para serem precisas, fáceis de compreender e passíveis de ação.
Cada falha contém cinco campos importantes:
- Gravidade
- Descrição do problema
- Passos seguintes recomendados para resolver o problema
- Informações de identificação para a entidade com falha
- A sua localização física (se aplicável)
Por exemplo, eis uma falha comum:
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
A localização física é derivada da sua configuração do domínio de falhas. Para obter mais informações sobre domínios de falha, veja Deteção de domínios de falhas. Se não fornecer estas informações, o campo de localização é menos útil. Por exemplo, só pode mostrar o número do bloco.
Análise da origem do problema
O Serviço de Estado de Funcionamento pode avaliar a causalidade potencial entre entidades com falhas para identificar e combinar falhas que são consequências do mesmo problema subjacente. Ao reconhecer cadeias de efeitos, tal produz relatórios menos extensos. Por exemplo, se um servidor estiver inativo, espera-se que todas as unidades dentro do servidor também estejam sem conectividade. Por conseguinte, apenas será levantada uma falha para a causa principal, neste caso, o servidor.
Utilização no PowerShell
Para ver quaisquer falhas atuais no PowerShell, execute o seguinte cmdlet:
Get-HealthFault
Esta ação devolve quaisquer falhas que afetam o cluster de Espaços de Armazenamento Direto geral. Na maioria das vezes, estas falhas estão relacionadas com hardware ou configuração. Se não existirem falhas, o cmdlet não devolve nada.
Nota
Num ambiente de não produção e por sua conta e risco, pode experimentar esta funcionalidade ao acionar falhas. Por exemplo, pode fazê-lo removendo um disco físico ou encerrando um nó. Depois de a falha aparecer, volte a inserir o disco físico ou reinicie o nó para que a falha desapareça.
Utilização no .NET e C#
Esta secção mostra como ligar ao Serviço de Estado de Funcionamento, utilizar objetos de deteção e executar consultas de falha.
Ligar
Para consultar o Serviço de Estado de Funcionamento, estabeleça uma CimSession com o cluster. Para tal, precisará de algumas coisas que só estão disponíveis na totalidade do Microsoft .NET, o que significa que não pode fazê-lo diretamente a partir de uma aplicação Web ou móvel. Os exemplos de código nesta secção utilizam C#, a escolha mais simples para esta camada de acesso a dados.
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;
}
O nome de utilizador fornecido deve ser um administrador local do computador de destino.
Recomendamos que construa o SecureString de Palavra-passe diretamente a partir da entrada do utilizador em tempo real, para que a palavra-passe nunca seja armazenada na memória em texto não encriptado. Isto ajuda a mitigar uma variedade de preocupações de segurança. Mas, na prática, construí-lo como acima é comum para fins de prototipagem.
Detetar objetos
Com a CimSession estabelecida, pode consultar o Windows Management Instrumentation (WMI) no cluster.
Antes de obter Falhas ou Métricas, tem de obter instâncias de vários objetos relevantes. Primeiro, obtenha o MSFT_StorageSubSystem que representa Espaços de Armazenamento Direto no cluster. Com esta opção, pode obter todas as MSFT_StorageNode no cluster e todas as MSFT_Volume dos volumes de dados. Por fim, tem de obter o MSCluster_ClusterHealthService, o próprio Serviço de Estado de Funcionamento.
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();
}
Estes são os mesmos objetos que obtém no PowerShell com cmdlets como Get-StorageSubSystem, Get-StorageNode e Get-Volume.
Pode aceder a todas as mesmas propriedades, documentadas em Classes de API de Gestão de Armazenamento.
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());
}
Falhas de consulta
Invoque Diagnosticar para obter as falhas atuais no âmbito do CimInstance de destino, que pode ser o cluster ou qualquer volume.
A lista completa de falhas disponíveis em cada âmbito no Windows Server 2019 é documentada posteriormente na secção Cobertura .
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!
}
}
}
Opcional: Classe MyFault
Pode fazer sentido construir e manter a sua própria representação de falhas. Por exemplo, a classe MyFault armazena várias propriedades principais de falhas, incluindo o FaultId, que pode ser utilizado mais tarde para associar atualizações, remover notificações ou eliminar duplicados no caso de a mesma falha ser detetada várias vezes.
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));
}
A lista completa de propriedades em cada falha (DiagnoseResult) é documentada posteriormente na secção Propriedades da falha .
Eventos de falha
Quando as falhas são criadas, removidas ou atualizadas, o Serviço de Estado de Funcionamento gera eventos WMI. Estes são essenciais para manter o estado da sua aplicação sincronizado sem consultas frequentes e podem ajudar a determinar quando enviar alertas por e-mail, por exemplo. Para subscrever estes eventos, o seguinte código de exemplo utiliza o Padrão de Estrutura do Observador.
Primeiro, subscreva MSFT_StorageFaultEvent eventos.
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);
}
Em seguida, implemente um Observador cujo método OnNext() é invocado sempre que é gerado um novo evento.
Cada evento contém ChangeType que indica se uma falha é criada, removida ou atualizada e o FaultId relevante.
Além disso, cada evento contém todas as propriedades da própria falha.
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
}
}
Compreender o ciclo de vida das falhas
As falhas não se destinam a ser marcadas como "vistas" ou resolvidas pelo utilizador. São criados quando o Serviço de Estado de Funcionamento observa um problema e são removidos automaticamente apenas depois de o Serviço de Estado de Funcionamento já não poder observar o problema. Em geral, isto reflete que o problema foi corrigido.
No entanto, em alguns casos, as falhas podem ser redescobertas pelo Serviço de Estado de Funcionamento, como após uma ativação pós-falha, conectividade intermitente, etc. Por este motivo, pode fazer sentido manter a sua própria representação de falhas, para que possa facilmente deduplicar. Isto é especialmente importante se enviar alertas por e-mail ou o equivalente.
Propriedades da falha
A tabela seguinte apresenta várias propriedades de chave do objeto de falha. Para obter o esquema completo, inspecione a classe MSFT_StorageDiagnoseResult em storagewmi.mof.
Propriedade | Exemplo |
---|---|
FaultId | {12345-12345-12345-12345-12345} |
FaultType | Microsoft.Health.FaultType.Volume.Capacity |
Razão | "O volume está a ficar sem espaço disponível." |
PerceivedSeverity | 5 |
FaultingObjectDescription | 123456789 da Contoso XYZ9000 S.N. |
FaultingObjectLocation | Rack A06, RU 25, Slot 11 |
RecommendedActions | {"Expandir o volume.", "Migrar cargas de trabalho para outros volumes."} |
FaultId: ID exclusivo no âmbito de um cluster.
PerceivedSeverity: PerceivedSeverity = { 4, 5, 6 } = { "Informational", "Warning" e "Error" }, ou cores equivalentes, como azul, amarelo e vermelho.
FaultingObjectDescription: informações de peça para hardware, normalmente em branco para objetos de software.
FaultingObjectLocation: informações de localização para hardware, normalmente em branco para objetos de software.
RecommendedActions: lista de ações recomendadas que são independentes e sem ordem específica. Atualmente, esta lista tem muitas vezes o comprimento 1.
Propriedades do evento de falha
A tabela seguinte apresenta várias propriedades principais do evento de falha. Para obter o esquema completo, inspecione a classe MSFT_StorageFaultEvent em storagewmi.mof.
Repare no ChangeType que indica se está a ser criada, removida ou atualizada uma falha e o FaultId. Um evento também contém todas as propriedades da falha afetada.
Propriedade | Exemplo |
---|---|
ChangeType | 0 |
FaultId | {12345-12345-12345-12345-12345} |
FaultType | Microsoft.Health.FaultType.Volume.Capacity |
Razão | "O volume está a ficar sem espaço disponível." |
PerceivedSeverity | 5 |
FaultingObjectDescription | 123456789 da Contoso XYZ9000 S.N. |
FaultingObjectLocation | Rack A06, RU 25, Slot 11 |
RecommendedActions | {"Expandir o volume.", "Migrar cargas de trabalho para outros volumes."} |
ChangeType ChangeType = { 0, 1, 2 } = { "Criar", "Remover", "Atualizar" }.
Cobertura
No Windows Server 2019 e no Azure Stack HCI, o Serviço de Estado de Funcionamento fornece a seguinte cobertura de falha:
PhysicalDisk (31)
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailedMedia
- Gravidade: aviso
- Motivo: "O disco físico falhou".
- RecommendedAction: "Substituir o disco físico".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.LostCommunication
- Gravidade: aviso
- Motivo: "A conectividade foi perdida para o disco físico."
- RecommendedAction: "Verifique se o disco físico está a funcionar e ligado corretamente.".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.Unresponsive
- Gravidade: aviso
- Motivo: "O disco físico apresenta uma falta de resposta periódica."
- RecommendedAction: "Substituir o disco físico".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.PredictiveFailure
- Gravidade: aviso
- Motivo: "Prevê-se que uma falha do disco físico ocorra em breve."
- RecommendedAction: "Substituir o disco físico".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.UnsupportedHardware
- Gravidade: aviso
- Motivo: "O disco físico está em quarentena porque não é suportado pelo fornecedor da solução."
- RecommendedAction: "Substitua o disco físico pelo hardware suportado."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.UnsupportedFirmware
- Gravidade: aviso
- Motivo: "O disco físico está em quarentena porque a respetiva versão de firmware não é suportada pelo fornecedor da solução."
- RecommendedAction: "Atualize o firmware no disco físico para a versão de destino."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.UnrecognizedMetadata
- Gravidade: aviso
- Motivo: "O disco físico tem metadados não reconhecidos."
- RecommendedAction: "Este disco pode conter dados de um agrupamento de armazenamento desconhecido. Primeiro, certifique-se de que não existem dados úteis neste disco e, em seguida, reponha o disco."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailedFirmwareUpdate
- Gravidade: aviso
- Motivo: "Falha ao tentar atualizar o firmware no disco físico."
- RecommendedAction: "Experimente utilizar um binário de firmware diferente."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.SblFailedMedia
- Gravidade: aviso
- Motivo: "A unidade falhou".
- RecommendedAction: "Substituir a unidade".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.SblUnresponsive
- Gravidade: aviso
- Motivo: "O disco físico apresenta uma falta de resposta periódica."
- RecommendedAction: "Substituir o disco físico".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureBadBlock
- Gravidade: aviso
- Motivo: "A unidade reportou blocos incorretos durante as escritas. Um bloqueio ocasionalmente incorreto é normal, mas muitos podem significar que a unidade está avariada, danificada ou a começar a falhar."
- RecommendedAction: "Se isto continuar a acontecer ou observar uma diminuição do desempenho, considere substituir a unidade."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureBadBlockRead
- Gravidade: aviso
- Motivo: "A unidade reportou blocos incorretos durante as leituras. Um bloqueio ocasionalmente incorreto é normal, mas muitos podem significar que a unidade está avariada, danificada ou a começar a falhar."
- RecommendedAction: "Se isto continuar a acontecer ou observar uma diminuição do desempenho, considere substituir a unidade."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureIoRetry
- Gravidade: aviso
- Motivo: "A unidade precisava de várias tentativas para ler ou escrever. Se isto continuar a acontecer, pode significar que a unidade está avariada, danificada ou a começar a falhar."
- RecommendedAction: "Se isto continuar a acontecer ou observar uma diminuição do desempenho, considere substituir a unidade."
Nota
Esta Falha está desativada por predefinição. Para a ativar, defina a definição de estado de funcionamento System.Storage.PhysicalDisk.MarginalFailure.EventBased.IoRetry.Enabled como true
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureIoFailure
- Gravidade: aviso
- Motivo: "A unidade não conseguiu ler ou escrever. Se isto continuar a acontecer, pode significar que a unidade está avariada, danificada ou a começar a falhar."
- RecommendedAction: "Se isto continuar a acontecer ou observar uma diminuição do desempenho, considere substituir a unidade."
Nota
Esta Falha está desativada por predefinição. Para a ativar, defina a definição de estado de funcionamento System.Storage.PhysicalDisk.MarginalFailure.EventBased.IoFailure.Enabled como true
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureSmart
- Gravidade: aviso
- Motivo: "A unidade reportou os seguintes potenciais problemas ao Windows com SMART (Auto-Monitorização, Análise e Tecnologia de Relatórios)"
- RecommendedAction: "Se isto continuar a acontecer ou observar uma diminuição do desempenho, considere substituir a unidade."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureHighWear
- Gravidade: aviso
- Razão: "A unidade atingiu uma alta percentagem da sua resistência de escrita classificada. A unidade pode tornar-se só de leitura, o que significa que não pode efetuar mais escritas, quando atinge 100% da sua resistência classificada. Verifique a folha de dados ou peça ao fabricante mais detalhes sobre a classificação de resistência e o comportamento de fim de vida."
- RecommendedAction: "Se isto continuar a acontecer ou observar uma diminuição do desempenho, considere substituir a unidade."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureReadOnly
- Gravidade: aviso
- Razão: "A unidade atingiu 100% da sua resistência de escrita classificada e agora é só de leitura, o que significa que não pode realizar mais escritas. As unidades de estado sólido desgastam-se após um determinado número de escritas, o que varia consoante a classificação de resistência da unidade. Para obter detalhes, verifique as especificações da unidade ou pergunte ao fabricante sobre a classificação de resistência e o comportamento de fim de vida."
- RecommendedAction: "Se isto continuar a acontecer ou observar uma diminuição do desempenho, considere substituir a unidade."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighLatency.SlowestIO
- Gravidade: aviso
- Razão: "A unidade tem latência de pico elevado."
- RecommendedAction: "Monitorize o desempenho da unidade e considere substituir a unidade."
Nota
Esta Falha está desativada por predefinição. Para a ativar, defina a definição de estado de funcionamento System.Storage.PhysicalDisk.HighLatency.Threshold.Tail.Enabled como verdadeiro
FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighLatency.AverageIO
- Gravidade: aviso
- Razão: "A unidade tem latência média elevada."
- RecommendedAction: "Monitorize o desempenho da unidade e considere substituir a unidade."
Nota
Esta Falha está desativada por predefinição. Para a ativar, defina a definição de estado de funcionamento System.Storage.PhysicalDisk.HighLatency.Threshold.Tail.Enabled como verdadeiro
FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighLatency.Outlier.AverageIO
- Gravidade: aviso
- Razão: "A unidade tem latência média elevada."
- RecommendedAction: "Monitorize o desempenho da unidade e considere substituir a unidade."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighLatency.Outlier.SlowestIO
- Gravidade: aviso
- Razão: "A unidade tem alta latência de pico."
- RecommendedAction: "Monitorize o desempenho da unidade e considere substituir a unidade."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighErrorCount.AverageIO
- Gravidade: aviso
- Motivo: "A unidade tem um elevado número de erros."
- RecommendedAction: "Monitorize o desempenho da unidade e considere substituir a unidade."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighErrorCount.Outlier.AverageIO
- Gravidade: aviso
- Motivo: "A unidade tem um elevado número de erros."
- RecommendedAction: "Monitorize o desempenho da unidade e considere substituir a unidade."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.CacheReadOnly
- Gravidade: aviso
- Motivo: "A unidade de cache falhou em algumas leituras ou escritas, por isso, para proteger os seus dados, movemo-los para unidades de capacidade."
- RecommendedAction: "Substitua a unidade ou tente desmarcar e repô-la."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.CacheReadOnly.Draining
- Gravidade: aviso
- Motivo: "A unidade de cache falhou em algumas leituras ou escritas. Para proteger os seus dados, deixámos de escrever na unidade de cache e estamos a tentar mover os dados para unidades de capacidade."
- RecommendedAction: "Aguarde enquanto movemos os dados."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.CacheReadOnly.FailedDrain
- Gravidade: aviso
- Motivo: "Alguns dados na unidade de cache não podem ser lidos, impedindo-nos de movê-los para unidades de capacidade."
- RecommendedAction: "Substitua a unidade".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.SedEncKey.RotationFailure
- Gravidade: aviso
- Motivo: "A tentativa de rodar a chave de encriptação SED para a nova predefinição falhou."
- RecommendedAction: "Verifique se a unidade está a funcionar e corretamente ligada. Se a unidade tiver falhado, substitua-a. Reinicie a rotação da chave de encriptação SED assim que a unidade estiver em bom estado de funcionamento."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.SedEncKey.NotDefault
- Gravidade: aviso
- Motivo: "O disco físico tem uma chave de encriptação SED, no entanto, não corresponde à chave predefinida atual."
- RecommendedAction: "Iniciar a rotação da chave de encriptação SED".
FaultType: Microsoft.Health.FaultType.PhysicalDisk.SedEncKey.NotDefined
- Gravidade: aviso
- Motivo: "Não existe uma chave de encriptação SED predefinida definida para a unidade."
- RecommendedAction: "Definir uma chave de encriptação SED predefinida".
FaultType: Microsoft.Health.FaultType.StorageScaleUnit.SedEncKey.RotationTimeout
- Gravidade: aviso
- Motivo: "Falha ao concluir a rotação da chave de encriptação SED no servidor antes do tempo limite"
- RecommendedAction: "Certifique-se de que o servidor está acessível e que todos os discos físicos estão em bom estado de funcionamento."
FaultType: Microsoft.Health.FaultType.PhysicalDisk.DriveArriveFailure
- Gravidade: aviso
- Motivo: "O Disco Físico está a falhar nas consultas"
- RecommendedAction: "Valide a fiabilidade da rede. Se o problema persistir, considere substituir o dispositivo."
Disco Virtual (3)
FaultType: Microsoft.Health.FaultType.VirtualDisks.NeedsRepair
- Gravidade: Informativo
- Motivo: "Alguns dados neste volume não são totalmente resilientes. Permanece acessível."
- RecommendedAction: "Restaurar a resiliência dos dados.".
FaultType: Microsoft.Health.FaultType.VirtualDisks.Detached
- Gravidade: Crítica
- Motivo: "O volume está inacessível. Alguns dados podem ser perdidos."
- RecommendedAction: "Verifique a conectividade física e/ou de rede de todos os dispositivos de armazenamento. Poderá ter de restaurar a partir da cópia de segurança."
FaultType: Microsoft.Health.FaultType.VirtualDisks.NoRedundancy
- Gravidade: Crítica
- Motivo: "Todas as cópias de dados estão indisponíveis para uma região do disco virtual. A carga de trabalho pode ser interrompida e podem ser observadas falhas de E/S."
- RecommendedAction: "Se uma operação de manutenção estiver em curso, suspenda-a e restaure o acesso a todo o armazenamento até o armazenamento estabilizar."
Capacidade do Conjunto (2)
FaultType: Microsoft.Health.FaultType.StoragePool.TransactionAndCleanupFailure
- Gravidade: aviso
- Motivo: "O Agrupamento de Armazenamento não consegue escrever num quórum de dispositivos de metadados. A carga de trabalho pode ser interrompida e podem ser observadas falhas de E/S."
- RecommendedAction: "Se uma operação de manutenção estiver em curso, suspenda-a e restaure o acesso a todo o armazenamento até o armazenamento estabilizar."
FaultType: Microsoft.Health.FaultType.StoragePool.PoolCapacityThresholdExceeded
- Gravidade: aviso
- Motivo: "O agrupamento de armazenamento está a ficar sem capacidade."
- RecommendedAction: "Adicionar capacidade adicional ao agrupamento de armazenamento ou libertar capacidade.".
Capacidade de Volume (5)1
FaultType: Microsoft.Health.FaultType.Volume.Capacity
- Gravidade: aviso
- Motivo: "O volume está a ficar sem espaço disponível."
- RecommendedAction: "Expanda o volume ou migre cargas de trabalho para outros volumes."
FaultType: Microsoft.Health.FaultType.Volume.FileSystem.Corruption.Correctable
- Gravidade: aviso
- Motivo: "O sistema de ficheiros detetou um erro de soma de verificação e conseguiu corrigi-lo."
- RecommendedAction: "Inicie a análise da Integridade dos Dados a partir do agendador de tarefas, o armazenamento pode estar a correr mal. Se houver uma operação de atualização ou manutenção em curso, pare-a imediatamente. Poderá ter de restaurar a partir da cópia de segurança."
FaultType: Microsoft.Health.FaultType.Volume.FileSystem.Corruption.Uncorrectable
- Gravidade: aviso
- Motivo: "O sistema de ficheiros detetou um erro de soma de verificação e não conseguiu corrigi-lo."
- RecommendedAction: "Inicie a análise da Integridade dos Dados a partir do agendador de tarefas, o armazenamento pode estar a correr mal. Se houver uma operação de atualização ou manutenção em curso, pare-a imediatamente. Poderá ter de restaurar a partir da cópia de segurança."
FaultType: Microsoft.Health.FaultType.Volume.FileSystem.Corruption.Uncorrectable.DataRemoved
- Gravidade: aviso
- Motivo: "O sistema de ficheiros detetou danos num ficheiro ou pasta. O ficheiro ou pasta foi removido do espaço de nomes do sistema de ficheiros."
- RecommendedAction: "Inicie a análise da Integridade dos Dados a partir do agendador de tarefas, o armazenamento pode estar a correr mal. Se houver uma operação de atualização ou manutenção em curso, pare-a imediatamente. Poderá ter de restaurar a partir da cópia de segurança."
FaultType: Microsoft.Health.FaultType.Volume.FileSystem.Corruption.Uncorrectable.DataRemovalFailure
- Gravidade: aviso
- Motivo: "O sistema de ficheiros detetou danos num ficheiro ou pasta. O sistema de ficheiros pode não ter conseguido removê-lo do espaço de nomes do sistema de ficheiros."
- RecommendedAction: "Inicie a análise da Integridade dos Dados a partir do agendador de tarefas, o armazenamento pode estar a ficar incorreto. Se houver uma operação de atualização ou manutenção em curso, pare-a imediatamente. Poderá ter de restaurar a partir da cópia de segurança."
Servidor (12)
FaultType: Microsoft.Health.FaultType.Server.Down
- Gravidade: Crítica
- Motivo: "Não é possível aceder ao servidor."
- RecommendedAction: "Iniciar ou substituir o servidor".
FaultType: Microsoft.Health.FaultType.Server.Isolated
- Gravidade: Crítica
- Motivo: "O servidor está isolado do cluster devido a problemas de conectividade."
- RecommendedAction: "Se o isolamento persistir, verifique as redes ou migre cargas de trabalho para outros nós."
FaultType: Microsoft.Health.FaultType.Server.Quarantined
- Gravidade: Crítica
- Motivo: "O servidor está em quarentena pelo cluster devido a falhas recorrentes."
- RecommendedAction: "Substituir o servidor ou corrigir a rede".
FaultType: Microsoft.Health.FaultType.Server.Temperature
- Gravidade: aviso
- Motivo: "O sensor de temperatura do servidor elevou um aviso."
- RecommendedAction: "Verifique a temperatura do servidor".
FaultType: Microsoft.Health.FaultType.Server.Storage.Degraded
- Gravidade: aviso
- Motivo: "O servidor tem armazenamento que não está completo ou atualizado, pelo que temos de sincronizá-lo com dados de outros servidores no cluster. Isto é normal depois de um servidor reiniciar ou uma unidade falhar."
- RecommendedAction: "Aguarde enquanto sincronizamos o armazenamento. Não remova nenhuma unidade ou reinicie quaisquer servidores no cluster até confirmarmos que a sincronização está concluída."
FaultType: Microsoft.Health.FaultType.Node.CPUOverloaded
- Gravidade: aviso
- Motivo: "A utilização da CPU do servidor está consistentemente acima do limiar."
- RecommendedAction: "Mova máquinas virtuais para outros servidores com uma utilização de CPU mais baixa ou considere adicionar capacidade de computação adicional ao cluster (normalmente ao adicionar servidores)."
FaultType: Microsoft.Health.FaultType.Node.VCPUToLCPU
- Gravidade: aviso
- Motivo: "A proporção de processadores virtuais para processadores lógicos (threads) neste servidor excedeu o limiar configurado."
- RecommendedAction: "Mova máquinas virtuais para outro servidor com uma utilização de CPU mais baixa ou considere adicionar capacidade de computação adicional ao cluster."
FaultType: Microsoft.Health.FaultType.Node.LowFreeRam
- Gravidade: aviso
- Motivo: "A memória disponível está abaixo do limiar configurado."
- RecommendedAction: "Mova máquinas virtuais para outro servidor com uma utilização de CPU mais baixa ou considere adicionar capacidade de computação adicional ao cluster."
FaultType: Microsoft.Health.FaultType.Node.HighRootPartitionMemoryUsage
- Gravidade: aviso
- Motivo: "O Windows Server está a consumir muita memória física, o que excede o limiar configurado."
- RecommendedAction: "Verifique se existem processos ou aplicações que consomem demasiada memória, mova máquinas virtuais para outros servidores ou adicione memória aos servidores."
FaultType: Microsoft.Health.FaultType.Node.TooHighCpuReservation
- Gravidade: aviso
- Motivo: "A reserva combinada de CPU de máquinas virtuais neste servidor excede o limiar configurado."
- RecommendedAction: "Considere mover máquinas virtuais ou reduzir as reservas de CPU."
FaultType: Microsoft.Health.FaultType.Node.TooHighMemoryUseAfterReclamation
- Gravidade: aviso
- Motivo: "A atribuição de memória combinada de máquinas virtuais neste servidor excede o limiar configurado."
- RecommendedAction: "Considere mover máquinas virtuais ou reduzir a memória atribuída."
FaultType: Microsoft.Health.FaultType.Node.SustainedHighCpuUsage
- Gravidade: aviso
- Motivo: "O servidor tem a utilização da CPU consistentemente superior ao limiar."
- RecommendedAction: "Mover máquinas virtuais para outro servidor com uma utilização mais baixa da CPU ou considerar adicionar mais capacidade de computação."
Cluster (6)
FaultType: Microsoft.Health.FaultType.ClusterQuorumWitness.Error
- Gravidade: Crítica
- Motivo: "O cluster está a uma falha do servidor de ficar inativo."
- RecommendedAction: "Verifique o recurso testemunha e reinicie conforme necessário. Inicie ou substitua servidores com falhas."
FaultType: Microsoft.Health.FaultType.Cluster.ValidationReport.Failed
- Gravidade: Crítica
- Motivo: "A validação do cluster encontrou problemas."
- RecommendedAction: "A Validação do Cluster encontrou falhas em algumas categorias de testes. Veja o relatório de validação do cluster."
FaultType: Microsoft.Health.FaultType.Cluster.ValidationReportDcb.Failed
- Gravidade: Crítica
- Motivo: "Validate-DCB encontrou problemas."
- RecommendedAction: "Validate-DCB encontrou erros de rede. Veja Relatório de validação do DCB."
FaultType: Microsoft.Health.FaultType.Cluster.TooHighCpuReservation
- Gravidade: Crítica
- Motivo: "A reserva combinada de CPU de máquinas virtuais neste servidor excede o limiar configurado."
- RecommendedAction: "Considere mover máquinas virtuais ou reduzir as reservas de CPU."
FaultType: Microsoft.Health.FaultType.Cluster.TooHighMemoryUseAfterReclamation
- Gravidade: Crítica
- Motivo: "A atribuição de memória combinada de máquinas virtuais neste servidor excede o limiar configurado."
- RecommendedAction: "Considere mover máquinas virtuais ou reduzir a memória atribuída."
FaultType: Microsoft.Health.FaultType.Cluster.SustainedHighCpuUsage
- Gravidade: Crítica
- Motivo: "O servidor tem a utilização da CPU consistentemente superior ao limiar."
- RecommendedAction: "Mover máquinas virtuais para outro servidor com uma utilização mais baixa da CPU ou considerar adicionar mais capacidade de computação."
Placa/Interface de Rede (6)
FaultType: Microsoft.Health.FaultType.NetworkAdapter.Disconnected
- Gravidade: aviso
- Motivo: "A interface de rede ficou desligada."
- RecommendedAction: "Voltar a ligar o cabo de rede".
FaultType: Microsoft.Health.FaultType.NetworkInterface.Missing
- Gravidade: aviso
- Motivo: "O servidor {server} tem placas de rede em falta ligadas à rede de cluster {cluster network}."
- RecommendedAction: "Ligar o servidor à rede de cluster em falta.".
FaultType: Microsoft.Health.FaultType.NetworkAdapter.Hardware
- Gravidade: aviso
- Motivo: "A interface de rede teve uma falha de hardware."
- RecommendedAction: "Substituir o adaptador de interface de rede".
FaultType: Microsoft.Health.FaultType.NetworkAdapter.Disabled
- Gravidade: aviso
- Motivo: "A interface de rede {network interface} não está ativada e não está a ser utilizada."
- RecommendedAction: "Ativar a interface de rede".
FaultType: Microsoft.Health.FaultType.StorageSubsystem.RDMA.Alert
- Gravidade: aviso
- Motivo: "O cluster detetou problemas de conectividade de rede que impedem Espaços de Armazenamento Direto de funcionar corretamente."
- RecommendedAction: "Verifique se a rede está corretamente configurada e a funcionar. Se estiver a utilizar RDMA Over Converged Ethernet (RoCE), verifique se o Data Center Bridging (DCB), o Enhanced Transmission Service (ETS) e o Priority Flow Control (PFC) estão configurados correta e consistentemente em cada nó de cluster e comutador físico. Se não souber como fazê-lo, peça ao seu fornecedor ou a alguém em quem confia para o ajudar."
FaultType: Microsoft.Health.FaultType.StorageSubsystem.RDMA.Disabled
- Gravidade: aviso
- Motivo: "O cluster detetou problemas de conectividade de rede que impedem Espaços de Armazenamento Direto de funcionar corretamente. Para garantir um desempenho e segurança de dados consistentes, Espaços de Armazenamento Direto deixou de utilizar o acesso remoto direto à memória (RDMA), mesmo que o hardware compatível com RDMA esteja presente e ativado. O tráfego de armazenamento continuará a fluir, mas com um desempenho reduzido através de TCP/IP."
- RecommendedAction: "Verifique se a rede está corretamente configurada e a funcionar e, em seguida, volte a ativar o RDMA. Se estiver a utilizar RDMA Over Converged Ethernet (RoCE), verifique se o Data Center Bridging (DCB), o Enhanced Transmission Service (ETS) e o Priority Flow Control (PFC) estão configurados correta e consistentemente em cada nó de cluster e comutador físico. Se não souber como fazê-lo, peça ao seu fornecedor ou a alguém em quem confia para o ajudar. Para continuar com o RDMA desativado, pode dispensar este alerta."
Bastidor (6)
FaultType: Microsoft.Health.FaultType.StorageEnclosure.LostCommunication
- Gravidade: aviso
- Motivo: "A comunicação foi perdida para o recinto de armazenamento."
- RecommendedAction: "Iniciar ou substituir o bastidor de armazenamento".
FaultType: Microsoft.Health.FaultType.StorageEnclosure.FanError
- Gravidade: aviso
- Motivo: "A ventoinha na posição {position} do bastidor de armazenamento falhou."
- RecommendedAction: "Substitua a ventoinha no bastidor de armazenamento.".
FaultType: Microsoft.Health.FaultType.StorageEnclosure.CurrentSensorError
- Gravidade: aviso
- Motivo: "O sensor atual na posição {position} do bastidor de armazenamento falhou."
- RecommendedAction: "Substitua um sensor atual no bastidor de armazenamento.".
FaultType: Microsoft.Health.FaultType.StorageEnclosure.VoltageSensorError
- Gravidade: aviso
- Motivo: "O sensor de tensão na posição {position} do bastidor de armazenamento falhou."
- RecommendedAction: "Substitua um sensor de tensão no bastidor de armazenamento.".
FaultType: Microsoft.Health.FaultType.StorageEnclosure.IoControllerError
- Gravidade: aviso
- Motivo: "O controlador de E/S na posição {position} do bastidor de armazenamento falhou."
- RecommendedAction: "Substitua um controlador de E/S no bastidor de armazenamento.".
FaultType: Microsoft.Health.FaultType.StorageEnclosure.TemperatureSensorError
- Gravidade: aviso
- Motivo: "O sensor de temperatura na posição {position} do bastidor de armazenamento falhou."
- RecommendedAction: "Substitua um sensor de temperatura no bastidor de armazenamento."
Implementação de Firmware (3)
FaultType: Microsoft.Health.FaultType.FaultDomain.FailedMaintenanceMode
- Gravidade: aviso
- Motivo: "Atualmente, não é possível fazer progressos durante a implementação do firmware."
- RecommendedAction: "Verifique se todos os espaços de armazenamento estão em bom estado de funcionamento e que nenhum domínio de falha está atualmente no modo de manutenção."
FaultType: Microsoft.Health.FaultType.FaultDomain.FirmwareVerifyVersionFailed
- Gravidade: aviso
- Motivo: "A implementação de firmware foi cancelada devido a informações de versão de firmware ilegíveis ou inesperadas após a aplicação de uma atualização de firmware."
- RecommendedAction: "Reinicie a implementação do firmware assim que o problema de firmware tiver sido resolvido."
FaultType: Microsoft.Health.FaultType.FaultDomain.TooManyFailedUpdates
- Gravidade: aviso
- Motivo: "A implementação de firmware foi cancelada devido a demasiados discos físicos que falharam numa tentativa de atualização de firmware."
- RecommendedAction: "Reinicie a implementação do firmware assim que o problema de firmware tiver sido resolvido."
QoS de Armazenamento (3)2
FaultType: Microsoft.Health.FaultType.StorQos.InsufficientThroughput
- Gravidade: aviso
- Motivo: "O débito de armazenamento é insuficiente para satisfazer as reservas."
- RecommendedAction: "Reconfigure Storage QoS policies".
FaultType: Microsoft.Health.FaultType.StorQos.LostCommunication
- Gravidade: aviso
- Motivo: "O gestor de políticas QoS de Armazenamento perdeu a comunicação com o volume."
- RecommendedAction: "Reinicie os nós {nodes}"
FaultType: Microsoft.Health.FaultType.StorQos.MisconfiguredFlow
- Gravidade: aviso
- Motivo: "Um ou mais consumidores de armazenamento (normalmente Máquinas Virtuais) estão a utilizar uma política inexistente com o ID {id}."
- RecommendedAction: "Recrie quaisquer políticas QoS de Armazenamento em falta."
VM/VHD (7)
FaultType: Microsoft.Health.FaultType.Vm.BadHealthState
- Gravidade: aviso
- Motivo: "O estado de funcionamento da máquina virtual não está ok."
- RecommendedAction: "Resolver problemas da máquina virtual".
FaultType: Microsoft.Health.FaultType.Vm.BadOperationalStatus
- Gravidade: aviso
- Motivo: "O estado operacional da máquina virtual não está ok."
- RecommendedAction: "Resolver problemas da máquina virtual".
FaultType: Microsoft.Health.FaultType.Vm.GuestUnhealthy
- Gravidade: aviso
- Motivo: "O sistema operativo convidado na máquina virtual está a reportar um estado de mau estado de funcionamento."
- RecommendedAction: " Troubleshoot the virtual machine" (Resolução de problemas da máquina virtual).
FaultType: Microsoft.Health.FaultType.Vm.ConfigIsOffline
- Gravidade: aviso
- Motivo: "O recurso de configuração da máquina virtual está offline, o que significa que não é possível administrar a máquina virtual."
- RecommendedAction: "Colocar a configuração da máquina virtual online".
FaultType: Microsoft.Health.FaultType.Vm.NotRespondingToControlCodes
- Gravidade: aviso
- Motivo: "A máquina virtual não está a responder aos códigos de controlo do cluster."
- RecommendedAction: "Verificar o estado do recurso do cluster da máquina virtual".
FaultType: Microsoft.Health.FaultType.Vm.IsNearMemoryLimit
- Gravidade: aviso
- Motivo: "A máquina virtual precisa de mais memória configurada."
- RecommendedAction: "Verifique se existem processos ou aplicações que consomem demasiada memória ou considere aumentar a memória máxima."
FaultType: Microsoft.Health.FaultType.Vhd.IsNearlyFull
- Gravidade: aviso
- Motivo: "O disco rígido virtual atingiu a sua capacidade. Não é possível escrever mais dados na mesma, o que pode afetar negativamente as máquinas virtuais."
- RecommendedAction: "Redimensionar o disco rígido virtual ou eliminar ficheiros indesejados.".
1 Indica que o volume atingiu 80% de total (gravidade secundária) ou 90% cheio (gravidade principal). 2 Indica que alguns .vhd(s) no volume não cumpriram a IOPS Mínima para mais de 10% (menor), 30% (principal) ou 50% (crítico) de uma janela sem interrupção de 24 horas.
Nota
O estado de funcionamento dos componentes do bastidor de armazenamento, como ventoinhas, fontes de alimentação e sensores, é derivado dos Serviços de Bastidor scSI (SES). Se o seu fornecedor não disponibilizar estas informações, o Serviço de Estado de Funcionamento não o conseguirá apresentar.