Partilhar via


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.

Referências adicionais