ヘルス サービスの障害を表示する

適用対象: Azure Stack HCI、バージョン 23H2 および 22H2。Windows Server 2022、Windows Server 2019

ヘルス サービスは、問題を検出して "障害" を生成するために、記憶域スペース ダイレクト クラスターを常に監視します。1 つのコマンドレットで現在の障害がすべて表示されるため、すべてのエンティティまたは機能を順番に調べることなく、デプロイの正常性を簡単に確認できます。 障害は正確で理解しやすく、意思決定に役立つように設計されています。

各障害には、5 つの重要なフィールドがあります。

  • 重大度
  • 問題の説明
  • 問題対処のために推奨される次のステップ
  • 障害が発生したエンティティの識別情報
  • 物理的な場所 (該当する場合)

たとえば、一般的な障害は次のとおりです。

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

Note

物理的な場所は、障害ドメインの構成から取得されます。 障害ドメインの詳細については、「障害ドメインの認識」を参照してください。 この情報を指定していない場合、location フィールドはあまり役に立ちません。 たとえば、スロット番号のみが表示されることがあります。

根本原因分析

ヘルス サービスでは、障害が発生しているエンティティで潜在的な原因を評価し、同じ根本的な問題の結果である障害を特定して結び付けることができます。 影響の連鎖を認識することにより、レポートに記載される分量が絞られます。 たとえば、サーバーがダウンしている場合、サーバー内のドライブにも接続できないと想定されます。 したがって、根本原因として示される障害は 1 つのみ、つまりこの場合はサーバーです。

PowerShell での使用法

PowerShell で現在の障害を確認するには、次のコマンドレットを実行します。

Get-HealthFault

これにより、記憶域スペース ダイレクト クラスター全体に影響を与える障害が返されます。 ほとんどの場合、このような障害は、ハードウェアまたは構成に関連します。 障害がない場合、コマンドレットからは何も返されません。

Note

非運用環境では、ご自身で障害をトリガーすることにより、自己責任でこの機能を試すことができます。 たとえば、1 つの物理ディスクを削除したり、1 つのノードをシャット ダウンしたりすることができます。 障害が表示されたら、物理ディスクを再挿入するか、ノードを再起動して障害を解消します。

.NET および C# での使用方法

このセクションでは、ヘルス サービスへの接続、検出オブジェクトの使用、および障害クエリの実行の方法について説明します。

接続する

ヘルス サービスのクエリを実行するには、クラスターと CimSession を確立します。 これを行うには、完全版の Microsoft .NET でのみ使用できるものが必要になります。つまり、Web アプリやモバイル アプリから直接は簡単には実行できません。 このセクションのコード サンプルでは、このデータ アクセス層のための最も単純な選択肢である C# を使用します。

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;
}

指定するユーザー名は、ターゲット コンピューターのローカル管理者である必要があります。

パスワードがプレーン テキストでメモリに格納されないようにするため、ユーザー入力からパスワードの SecureString をリアルタイムで直接構築することをお勧めします。 これは、さまざまなセキュリティの問題を軽減するために役立ちます。 ただし、実際には、ひな形作成の目的で上記のように構築するのが一般的です。

オブジェクトを検出します

CimSession が確立されると、クラスターの Windows Management Instrumentation (WMI) に対してクエリを実行できます。

障害またはメトリックを取得するには、いくつかの関連オブジェクトのインスタンスを取得する必要があります。 まず、クラスター上の記憶域スペース ダイレクトを表す MSFT_StorageSubSystem を取得します。 それを使用すると、クラスター内のすべての MSFT_StorageNode や、データ ボリュームのすべての MSFT_Volume を取得できます。 最後に、MSCluster_ClusterHealthService (ヘルス サービス自体) を取得する必要があります。

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();
}

これらは、PowerShell で Get-StorageSubSystemGet-StorageNode、および Get-Volume のようなコマンドレットを使用して取得するものと同じオブジェクトです。

Storage Management API クラスに記載されている、同じプロパティのすべてにアクセスできます。

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());
}

障害のクエリ

Diagnose を呼び出して、ターゲットの CimInstance (クラスターまたは任意のボリューム) をスコープとする現在の障害を取得できます。

Windows Server 2019 の各スコープで得られる障害の全一覧については、後の「カバレッジ」セクションを参照してください。

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!
        }
    }
}

省略可能: MyFault クラス

独自の障害表現を構築して保持することに意味があることもあります。 たとえば MyFault クラスには、FaultId など、障害のいくつかの主要なプロパティが格納されます。これは、後で同じエラーが複数回検出された場合に、更新の関連付け、通知の削除、重複除去を行うために使用できます。

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));
}

各障害のプロパティの全一覧 (DiagnoseResult) については、後の「障害のプロパティ」セクションで説明します。

障害イベント

障害が作成、削除、または更新されると、WMI イベントが生成されます。 これらは、頻繁にポーリングを行わなくてもアプリケーションの状態を同期するために不可欠であり、たとえば、電子メール アラートをいつ送信するかを決定するために役立ちます。 これらのイベントをサブスクライブするため、次のサンプル コードではオブザーバー デザイン パターンを使用します。

まず、MSFT_StorageFaultEvent イベントにサブスクライブします。

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);
}

次に、オブザーバーを実装し、新しいイベントが生成されるたびに、その OnNext() メソッドが呼び出されるようにします。

各イベントには、障害の作成、削除、または更新を示す ChangeType と、関連する FaultId が含まれます。

さらに、各イベントには、その障害自体のすべてのプロパティが含まれています。

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
    }
}

障害のライフサイクルについて

障害は、ユーザーが "確認済み" または解決済みとしてマークすることは意図していません。 ヘルス サービスによって問題が観察されると作成され、問題が観察されなくなると自動的に削除されます。 これは通常、問題が修正されたことを示します。

ただし場合によっては、フェールオーバーや間欠的な接続の後などに、ヘルス サービスによって障害が再度検出されることもあります。 このため、独自の障害表現を保持し、簡単に重複を解消できるようにしておくことに意味がある場合があります。 これは、電子メール アラートまたはそれに相当するものを送信する場合に特に重要です。

障害のプロパティ

次の表に、障害オブジェクトのいくつかの主要なプロパティを示します。 完全なスキーマについては、storagewmi.mof 内の MSFT_StorageDiagnoseResult クラスを調べてください。

プロパティ
FaultId {12345-12345-12345-12345-12345}
FaultType Microsoft.Health.FaultType.Volume.Capacity
理由 "ボリュームの空き領域が不足しています。"
PerceivedSeverity 5
FaultingObjectDescription Contoso XYZ9000 S.N. 123456789
FaultingObjectLocation ラック A06、RU 25、スロット 11
RecommendedActions {"ボリュームを拡張してください。", "ワークロードを他のボリュームに移行してください。"}

FaultId: 1 つのクラスターのスコープ内の一意の ID。

PerceivedSeverity: PerceivedSeverity = { 4, 5, 6 } = { "情報", "警告", "エラー" }、または青、黄、赤などの対応する色。

FaultingObjectDescription: ハードウェアのパーツ情報。ソフトウェア オブジェクトの場合、通常は空白です。

FaultingObjectLocation: ハードウェアの位置情報。ソフトウェア オブジェクトの場合、通常は空白です。

RecommendedActions: 個別の推奨アクションのリスト。順不同です。 現在、このリストの長さは通常は 1 です。

障害イベントのプロパティ

次の表に、障害イベントのいくつかの主要なプロパティを示します。 完全なスキーマについては、storagewmi.mof 内の MSFT_StorageFaultEvent クラスを調べてください。

障害の作成、削除、または更新を示す ChangeType と、関連する FaultId に注目してください。 イベントには、影響を受けた障害のすべてのプロパティも含まれます。

プロパティ
ChangeType 0
FaultId {12345-12345-12345-12345-12345}
FaultType Microsoft.Health.FaultType.Volume.Capacity
理由 "ボリュームの空き領域が不足しています。"
PerceivedSeverity 5
FaultingObjectDescription Contoso XYZ9000 S.N. 123456789
FaultingObjectLocation ラック A06、RU 25、スロット 11
RecommendedActions {"ボリュームを拡張してください。", "ワークロードを他のボリュームに移行してください。"}

ChangeType ChangeType = {0, 1, 2} = {"作成", "削除", "更新" }。

カバレッジ

Windows Server 2019 および Azure Stack HCI では、ヘルス サービスは次の障害カバレッジを提供します。

PhysicalDisk (31)

FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailedMedia

  • 重要度: 警告
  • Reason: "物理ディスクに障害が発生しました。"
  • RecommendedAction: "物理ディスクを交換してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.LostCommunication

  • 重要度: 警告
  • Reason: "物理ディスクとの接続が失われました。"
  • RecommendedAction: "物理ディスクが動作していること、正しく接続されていることを確認してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.Unresponsive

  • 重要度: 警告
  • Reason: "物理ディスクで無応答が繰り返し発生しています。"
  • RecommendedAction: "物理ディスクを交換してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.PredictiveFailure

  • 重要度: 警告
  • Reason: "物理ディスクで、間もなく障害が発生することが予想されます。"
  • RecommendedAction: "物理ディスクを交換してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.UnsupportedHardware

  • 重要度: 警告
  • Reason: "物理ディスクは、ソリューション ベンダーによってサポートされていないため、検疫されています。"
  • RecommendedAction: "物理ディスクを、サポートされているハードウェアに交換してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.UnsupportedFirmware

  • 重要度: 警告
  • Reason: "物理ディスクは、ファームウェアのバージョンがソリューション ベンダーによってサポートされていないため、検疫中です。"
  • RecommendedAction: "物理ディスクのファームウェアをターゲット バージョンに更新してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.UnrecognizedMetadata

  • 重要度: 警告
  • Reason: "物理ディスクに、認識されていないメタデータがあります。"
  • RecommendedAction: "このディスクには、不明な記憶域プールからのデータが含まれている可能性があります。まず、このディスクに有効なデータがないことを確認してから、ディスクをリセットしてください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailedFirmwareUpdate

  • 重要度: 警告
  • Reason: "物理ディスク上のファームウェアの更新が失敗しました。"
  • RecommendedAction: "別のファームウェア バイナリを使用してみてください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.SblFailedMedia

  • 重要度: 警告
  • Reason: "ドライブに障害が発生しました。"
  • RecommendedAction: "ドライブを交換してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.SblUnresponsive

  • 重要度: 警告
  • Reason: "物理ディスクで無応答が繰り返し発生しています。"
  • RecommendedAction: "物理ディスクを交換してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureBadBlock

  • 重要度: 警告
  • Reason: "ドライブの書き込み中に不良ブロックが報告されました。不良ブロックがまれに発生する場合は正常ですが、回数が多い場合は、ドライブが誤動作している、破損している、または障害が発生し始めていることを意味する可能性があります。"
  • RecommendedAction: "これが引き続き発生する場合、またはパフォーマンスが低下している場合は、ドライブを交換することを検討してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureBadBlockRead

  • 重要度: 警告
  • Reason: "ドライブの読み取り中に不良ブロックが報告されました。不良ブロックがまれに発生する場合は正常ですが、回数が多い場合は、ドライブが誤動作している、破損している、または障害が発生し始めていることを意味する可能性があります。"
  • RecommendedAction: "これが引き続き発生する場合、またはパフォーマンスが低下している場合は、ドライブを交換することを検討してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureIoRetry

  • 重要度: 警告
  • Reason: "ドライブは、複数回の読み取りまたは書き込みを試行しています。これが引き続き発生する場合は、ドライブが誤動作している、破損している、または障害が発生し始めていることを意味する可能性があります。"
  • RecommendedAction: "これが引き続き発生する場合、またはパフォーマンスが低下している場合は、ドライブを交換することを検討してください。"

Note

この障害は、既定では無効になっています。 有効にするには、ヘルス設定の System.Storage.PhysicalDisk.MarginalFailure.EventBased.IoRetry.Enabled を true に設定します。

FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureIoFailure

  • 重要度: 警告
  • Reason: "ドライブの読み取りまたは書き込みに失敗しました。この問題が引き続き発生する場合は、ドライブが誤動作している、破損している、または障害が発生し始めていることを意味する可能性があります。"
  • RecommendedAction: "これが引き続き発生する場合、またはパフォーマンスが低下している場合は、ドライブを交換することを検討してください。"

Note

この障害は、既定では無効になっています。 有効にするには、ヘルス設定の System.Storage.PhysicalDisk.MarginalFailure.EventBased.IoFailure.Enabled を true に設定します。

FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureSmart

  • 重要度: 警告
  • Reason: "SMART (Self-Monitoring, Analysis and Reporting Technology) を使用して、ドライブから次の潜在的な問題が Windows に報告されました"
  • RecommendedAction: "これが引き続き発生する場合、またはパフォーマンスが低下している場合は、ドライブを交換することを検討してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureHighWear

  • 重要度: 警告
  • Reason: "ドライブは、書き込み耐久性の割合の上限に近づいています。ドライブが読み取り専用になる可能性があります。つまり、耐久性の割合が 100% に達した場合は、それ以上の書き込みは実行できません。耐久性の割合と寿命末期の動作の詳細については、データシートを確認するか、製造元にお問い合わせください。"
  • RecommendedAction: "これが引き続き発生する場合、またはパフォーマンスが低下している場合は、ドライブを交換することを検討してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.FailureReadOnly

  • 重要度: 警告
  • Reason: "ドライブは、書き込み耐久性の割合が 100% に達したため、読み取り専用になりました。つまり、書き込みをこれ以上実行できません。ソリッドステート ドライブは、特定回数の書き込み後に磨耗します。これは、ドライブの耐久性の割合によって異なります。詳細については、ドライブの仕様を確認するか、耐久性の割合と寿命末期の動作について製造元にお問い合わせください。"
  • RecommendedAction: "これが引き続き発生する場合、またはパフォーマンスが低下している場合は、ドライブを交換することを検討してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighLatency.SlowestIO

  • 重要度: 警告
  • Reason: "ピーク時の、ドライブの待機時間が長い。"
  • RecommendedAction: "ドライブのパフォーマンスを監視し、ドライブの交換を検討してください。"

Note

この障害は、既定では無効になっています。 有効にするには、ヘルス設定の System.Storage.PhysicalDisk.HighLatency.Threshold.Tail.Enabled を true に設定します。

FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighLatency.AverageIO

  • 重要度: 警告
  • Reason: "ドライブの平均待機時間が長い。"
  • RecommendedAction: "ドライブのパフォーマンスを監視し、ドライブの交換を検討してください。"

Note

この障害は、既定では無効になっています。 有効にするには、ヘルス設定の System.Storage.PhysicalDisk.HighLatency.Threshold.Tail.Enabled を true に設定します。

FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighLatency.Outlier.AverageIO

  • 重要度: 警告
  • Reason: "ドライブの平均待機時間が長い。"
  • RecommendedAction: "ドライブのパフォーマンスを監視し、ドライブの交換を検討してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighLatency.Outlier.SlowestIO

  • 重要度: 警告
  • Reason: "ピーク時の、ドライブの待機時間が長い。"
  • RecommendedAction: "ドライブのパフォーマンスを監視し、ドライブの交換を検討してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighErrorCount.AverageIO

  • 重要度: 警告
  • Reason: "ドライブで多数のエラーが発生します。"
  • RecommendedAction: "ドライブのパフォーマンスを監視し、ドライブの交換を検討してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.HighErrorCount.Outlier.AverageIO

  • 重要度: 警告
  • Reason: "ドライブで多数のエラーが発生します。"
  • RecommendedAction: "ドライブのパフォーマンスを監視し、ドライブの交換を検討してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.CacheReadOnly

  • 重要度: 警告
  • Reason: "キャッシュ ドライブの読み取りまたは書き込みに失敗しました。データを保護するため、容量ドライブに移動しました。"
  • RecommendedAction: "ドライブを交換するか、またはクリアしてリセットしてください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.CacheReadOnly.Draining

  • 重要度: 警告
  • Reason: "キャッシュ ドライブの読み取りまたは書き込みに失敗しました。データを保護するため、キャッシュドライブへの書き込みを停止し、そのデータを容量ドライブに移動しようとしています。"
  • RecommendedAction: "データを移動する間、お待ちください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.CacheReadOnly.FailedDrain

  • 重要度: 警告
  • Reason: "キャッシュ ドライブ上の一部のデータを読み取れなかったため、容量ドライブに移動できません。"
  • RecommendedAction: "ドライブを交換してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.SedEncKey.RotationFailure

  • 重要度: 警告
  • Reason: "SED 暗号化キーを新しい既定値にローテーションしようとしましたが失敗しました。"
  • RecommendedAction: "ドライブが動作していること、正しく接続されていることを確認してください。ドライブに障害が発生している場合は、交換してください。ドライブが正常な状態になったら、SED 暗号化キーのローテーションを再開してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.SedEncKey.NotDefault

  • 重要度: 警告
  • Reason: "物理ディスクに SED 暗号化キーがありますが、現在の既定のキーと一致しません。"
  • RecommendedAction: "SED 暗号化キーのローテーションを開始してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.SedEncKey.NotDefined

  • 重要度: 警告
  • Reason: "ドライブに既定の SED 暗号化キーが定義されていません。"
  • RecommendedAction: "既定の SED 暗号化キーを設定してください。"

FaultType: Microsoft.Health.FaultType.StorageScaleUnit.SedEncKey.RotationTimeout

  • 重要度: 警告
  • Reason: "タイムアウト前にサーバーで SED 暗号化キーのローテーションを完了できませんでした"
  • RecommendedAction: "サーバーが到達可能で、すべての物理ディスクが正常であることを確認してください。"

FaultType: Microsoft.Health.FaultType.PhysicalDisk.DriveArriveFailure

  • 重要度: 警告
  • Reason: "物理ディスクのクエリが失敗しています。"
  • RecommendedAction: "ネットワークの信頼性を確認してください。問題が解決しない場合は、デバイスの交換を検討してください。"

仮想ディスク (3)

FaultType: Microsoft.Health.FaultType.VirtualDisks.NeedsRepair

  • 重大度 : 情報
  • Reason: "このボリュームの一部のデータは完全回復性を備えていません。引き続きアクセスはできます。"
  • RecommendedAction: "データの回復性の復元。"

FaultType: Microsoft.Health.FaultType.VirtualDisks.Detached

  • 重大度: Critical
  • Reason: "ボリュームにアクセスできません。一部のデータが失われる可能性があります。"
  • RecommendedAction: "すべての記憶装置の物理的な接続またはネットワーク接続を確認してください。バックアップからの復元が必要になる場合があります。"

FaultType: Microsoft.Health.FaultType.VirtualDisks.NoRedundancy

  • 重大度: Critical
  • 理由: "仮想ディスクの特定の領域で、データのすべてのコピーを使用できません。ワークロードが中断され、IO エラーが観察される可能性があります。"
  • RecommendedAction: "メンテナンス操作が進行中の場合は、ストレージが安定するまで、その操作を中断し、すべてのストレージへのアクセスを復元してください。"

プールの容量 (2)

FaultType: Microsoft.Health.FaultType.StoragePool.TransactionAndCleanupFailure

  • 重要度: 警告
  • 理由: "記憶域プールでメタデータ デバイスのクォーラムに書き込めません。ワークロードが中断され、IO エラーが観察される可能性があります。"
  • RecommendedAction: "メンテナンス操作が進行中の場合は、ストレージが安定するまで、その操作を中断し、すべてのストレージへのアクセスを復元してください。"

FaultType: Microsoft.Health.FaultType.StoragePool.PoolCapacityThresholdExceeded

  • 重要度: 警告
  • Reason: "記憶域プールの容量が不足しています。"
  • RecommendedAction: "記憶域プールに容量をさらに追加するか、容量を解放してください。"

ボリュームの容量 (5)1

FaultType: Microsoft.Health.FaultType.Volume.Capacity

  • 重要度: 警告
  • Reason: "ボリュームの空き領域が不足しています。"
  • RecommendedAction: "ボリュームを拡張するか、ワークロードを他のボリュームに移行してください。"

FaultType: Microsoft.Health.FaultType.Volume.FileSystem.Corruption.Correctable

  • 重要度: 警告
  • Reason: "ファイル システムでチェックサム エラーが検出されましたが、修正できました。"
  • RecommendedAction: "タスク スケジューラからデータ整合性スキャンを開始してください。記憶域の不良が生じている可能性があります。更新またはメンテナンスの操作が行われている場合は、直ちに停止してください。バックアップからの復元が必要になる場合があります。"

FaultType: Microsoft.Health.FaultType.Volume.FileSystem.Corruption.Uncorrectable

  • 重要度: 警告
  • Reason: "ファイル システムでチェックサム エラーが検出され、修正できませんでした。"
  • RecommendedAction: "タスク スケジューラからデータ整合性スキャンを開始してください。記憶域の不良が生じている可能性があります。更新またはメンテナンスの操作が行われている場合は、直ちに停止してください。バックアップからの復元が必要になる場合があります。"

FaultType: Microsoft.Health.FaultType.Volume.FileSystem.Corruption.Uncorrectable.DataRemoved

  • 重要度: 警告
  • Reason: "ファイル システムでファイルまたはフォルダーの破損が検出されました。当該ファイルまたはフォルダーは、ファイル システムの名前空間から削除されました。"
  • RecommendedAction: "タスク スケジューラからデータ整合性スキャンを開始してください。記憶域の不良が生じている可能性があります。更新またはメンテナンスの操作が行われている場合は、直ちに停止してください。バックアップからの復元が必要になる場合があります。"

FaultType: Microsoft.Health.FaultType.Volume.FileSystem.Corruption.Uncorrectable.DataRemovalFailure

  • 重要度: 警告
  • Reason: "ファイル システムでファイルまたはフォルダーの破損が検出されました。当該ファイルまたはフォルダーをファイル システムの名前空間から削除できなかった可能性があります。"
  • RecommendedAction: "タスク スケジューラからデータ整合性スキャンを開始してください。記憶域の不良が生じている可能性があります。更新またはメンテナンスの操作が行われている場合は、直ちに停止してください。バックアップからの復元が必要になる場合があります。"

サーバー (12)

FaultType: Microsoft.Health.FaultType.Server.Down

  • 重大度: Critical
  • Reason: "サーバーに接続できません。"
  • RecommendedAction: "サーバーを起動または交換してください。"

FaultType: Microsoft.Health.FaultType.Server.Isolated

  • 重大度: Critical
  • Reason: "接続の問題により、サーバーはクラスターから分離されています。"
  • RecommendedAction: "分離が解決しない場合、ネットワークを確認するかワークロードを他のノードに移行してください。"

FaultType: Microsoft.Health.FaultType.Server.Quarantined

  • 重大度: Critical
  • Reason: "サーバーは、障害が繰り返し発生しているため、クラスターによって検疫されました。"
  • RecommendedAction: "サーバーを交換するか、ネットワークを修復してください。"

FaultType: Microsoft.Health.FaultType.Server.Temperature

  • 重要度: 警告
  • Reason: "サーバー温度センサーで警告が発生しました。"
  • RecommendedAction: "サーバーの温度を確認してください。"

FaultType: Microsoft.Health.FaultType.Server.Storage.Degraded

  • 重要度: 警告
  • Reason: "サーバーには、完全ではない、または最新ではない記憶域が存在します。そのため、クラスター内の他のサーバーのデータと同期する必要があります。これは、サーバーが再起動した後、またはドライブが失敗した後の正常な状態です。"
  • RecommendedAction: "ストレージの同期が終わるまでお待ちください。同期が完了するまで、ドライブを削除したり、クラスター内のサーバーを再起動したりしないでください。"

FaultType: Microsoft.Health.FaultType.Node.CPUOverloaded

  • 重要度: 警告
  • Reason: "サーバーの CPU 使用率が一貫してしきい値を超えています。"
  • RecommendedAction: "仮想マシンを CPU 使用率が低い他のサーバーに移動するか、クラスターにコンピューティング容量を追加 (通常はサーバーを追加) することを検討してください。"

FaultType: Microsoft.Health.FaultType.Node.VCPUToLCPU

  • 重要度: 警告
  • Reason: "このサーバー上の論理プロセッサ (スレッド) に対する仮想プロセッサの比率が、構成されたしきい値を超えました。"
  • RecommendedAction: "仮想マシンを CPU 使用率が低い他のサーバーに移動するか、クラスターにコンピューティング容量を追加することを検討してください。"

FaultType: Microsoft.Health.FaultType.Node.LowFreeRam

  • 重要度: 警告
  • Reason: "使用可能なメモリが、構成されたしきい値を下回っています。"
  • RecommendedAction: "仮想マシンを CPU 使用率が低い他のサーバーに移動するか、クラスターにコンピューティング容量を追加することを検討してください。"

FaultType: Microsoft.Health.FaultType.Node.HighRootPartitionMemoryUsage

  • 重要度: 警告
  • Reason: "Windows Server は、構成されたしきい値を超える多くの物理メモリを消費しています。"
  • RecommendedAction: "メモリを消費し過ぎているプロセスまたはアプリを調べるか、仮想マシンを他のサーバーに移動するか、サーバーにメモリを追加してください。"

FaultType: Microsoft.Health.FaultType.Node.TooHighCpuReservation

  • 重要度: 警告
  • Reason: "このサーバー上の仮想マシンの合計 CPU 予約が、構成されたしきい値を超えています。"
  • RecommendedAction: "仮想マシンの移動または CPU 予約の削減を検討してください。"

FaultType: Microsoft.Health.FaultType.Node.TooHighMemoryUseAfterReclamation

  • 重要度: 警告
  • Reason: "このサーバー上の仮想マシンの合計メモリ割り当てが、構成されたしきい値を超えています。"
  • RecommendedAction: "仮想マシンの移動または割り当てメモリの削減を検討してください。"

FaultType: Microsoft.Health.FaultType.Node.SustainedHighCpuUsage

  • 重要度: 警告
  • Reason: "サーバーの CPU 使用率が常にしきい値を超えています。"
  • RecommendedAction: "仮想マシンを CPU 使用率が低い他のサーバーに移動するか、コンピューティング容量を追加することを検討してください。"

クラスター (6)

FaultType: Microsoft.Health.FaultType.ClusterQuorumWitness.Error

  • 重大度: Critical
  • Reason: "このクラスターはあと 1 台のサーバーで障害が発生すると停止します。"
  • RecommendedAction: "監視リソースを確認し、必要に応じて再起動してください。失敗したサーバーを起動または交換してください。"

FaultType: Microsoft.Health.FaultType.Cluster.ValidationReport.Failed

  • 重大度: Critical
  • Reason: "クラスターの検証で問題が検出されました。"
  • RecommendedAction: "クラスター検証の一部のカテゴリのテストでエラーが検出されました。「クラスター検証レポート」を参照してください。"

FaultType: Microsoft.Health.FaultType.Cluster.ValidationReportDcb.Failed

  • 重大度: Critical
  • Reason: "Validate-DCB で問題が検出されました。"
  • RecommendedAction: "Validate-DCB でネットワーク エラーが検出されました。DCB 検証レポートを参照してください。"

FaultType: Microsoft.Health.FaultType.Cluster.TooHighCpuReservation

  • 重大度: Critical
  • Reason: "このサーバー上の仮想マシンの合計 CPU 予約が、構成されたしきい値を超えています。"
  • RecommendedAction: "仮想マシンの移動または CPU 予約の削減を検討してください。"

FaultType: Microsoft.Health.FaultType.Cluster.TooHighMemoryUseAfterReclamation

  • 重大度: Critical
  • Reason: "このサーバー上の仮想マシンの合計メモリ割り当てが、構成されたしきい値を超えています。"
  • RecommendedAction: "仮想マシンの移動または割り当てメモリの削減を検討してください。"

FaultType: Microsoft.Health.FaultType.Cluster.SustainedHighCpuUsage

  • 重大度: Critical
  • Reason: "サーバーの CPU 使用率が常にしきい値を超えています。"
  • RecommendedAction: "仮想マシンを CPU 使用率が低い他のサーバーに移動するか、コンピューティング容量を追加することを検討してください。"

ネットワーク アダプター / インターフェイス (6)

FaultType: Microsoft.Health.FaultType.NetworkAdapter.Disconnected

  • 重要度: 警告
  • Reason: "ネットワーク インターフェイスが切断されました。"
  • RecommendedAction: "ネットワーク ケーブルを再接続してください。"

FaultType: Microsoft.Health.FaultType.NetworkInterface.Missing

  • 重要度: 警告
  • Reason: "サーバー {server} に、クラスター ネットワーク {cluster network} に接続されているネットワーク アダプターがありません。"
  • RecommendedAction: "切断されているクラスター ネットワークにサーバーを接続してください。"

FaultType: Microsoft.Health.FaultType.NetworkAdapter.Hardware

  • 重要度: 警告
  • Reason: "ネットワーク インターフェイスでハードウェア障害が発生しました。"
  • RecommendedAction: "ネットワーク インターフェイス アダプターを交換してください。"

FaultType: Microsoft.Health.FaultType.NetworkAdapter.Disabled

  • 重要度: 警告
  • Reason: "ネットワーク インターフェイス {network interface} は有効ではなく、使用されていません。"
  • RecommendedAction: "ネットワーク インターフェイスを有効にしてください。"

FaultType: Microsoft.Health.FaultType.StorageSubsystem.RDMA.Alert

  • 重要度: 警告
  • Reason: "クラスターでネットワーク接続の問題が検出されました。これにより、記憶域スペース ダイレクトが正常に動作していません。"
  • RecommendedAction: "ネットワークが正しく構成され、動作していることを確認してください。RDMA Over Converged Ethernet (RoCE) を使用している場合は、データ センター ブリッジング (DCB)、Enhanced Transmission Service (ETS)、Priority Flow Control (PFC) が、すべてのクラスター ノードと物理スイッチで正しく一貫して構成されていることを確認します。これを行う方法が分からない場合は、ベンダーまたは信頼できるユーザーに支援を求めてください。"

FaultType: Microsoft.Health.FaultType.StorageSubsystem.RDMA.Disabled

  • 重要度: 警告
  • Reason: "クラスターでネットワーク接続の問題が検出されました。これにより、記憶域スペース ダイレクトが正常に動作していません。一貫したパフォーマンスとデータの安全性を確保するために、記憶域スペース ダイレクトはリモート ダイレクト メモリ アクセス (RDMA) の使用を停止しました (RDMA 対応ハードウェアが存在し、有効になっている場合でも)。記憶域トラフィックは引き続き流れますが、TCP/IP を使用したパフォーマンスは低下します。"
  • RecommendedAction: "ネットワークが正しく構成され、動作していることを確認し、RDMA を再び有効にしてください。RDMA Over Converged Ethernet (RoCE) を使用している場合は、データ センター ブリッジング (DCB)、Enhanced Transmission Service (ETS)、Priority Flow Control (PFC) が、すべてのクラスター ノードと物理スイッチで正しく一貫して構成されていることを確認してください。これを行う方法が分からない場合は、ベンダーまたは信頼できるユーザーに支援を求めてください。"

エンクロージャ(6)

FaultType: Microsoft.Health.FaultType.StorageEnclosure.LostCommunication

  • 重要度: 警告
  • Reason: "ストレージ エンクロージャへの通信が切断されました。"
  • RecommendedAction: "ストレージ エンクロージャを起動または交換してください。"

FaultType: Microsoft.Health.FaultType.StorageEnclosure.FanError

  • 重要度: 警告
  • Reason: "記憶域エンクロージャの位置 {position} にあるファンに障害が発生しました。"
  • RecommendedAction: "ストレージ エンクロージャのファンを交換してください。"

FaultType: Microsoft.Health.FaultType.StorageEnclosure.CurrentSensorError

  • 重要度: 警告
  • Reason: "ストレージ エンクロージャの位置 {position} にある電流センサーに障害が発生しました。"
  • RecommendedAction: "ストレージ エンクロージャの電流センサーを交換してください。"

FaultType: Microsoft.Health.FaultType.StorageEnclosure.VoltageSensorError

  • 重要度: 警告
  • Reason: "ストレージ エンクロージャの位置 {position} にある電圧センサーに障害が発生しました。"
  • RecommendedAction: "ストレージ エンクロージャの電圧センサーを交換してください。"

FaultType: Microsoft.Health.FaultType.StorageEnclosure.IoControllerError

  • 重要度: 警告
  • Reason: "ストレージ エンクロージャの位置 {position} にある IO コントローラーに障害が発生しました。"
  • RecommendedAction: "ストレージ エンクロージャの IO コントローラーを交換してください。"

FaultType: Microsoft.Health.FaultType.StorageEnclosure.TemperatureSensorError

  • 重要度: 警告
  • Reason: "ストレージ エンクロージャの位置 {position} にある温度センサーに障害が発生しました。"
  • RecommendedAction: "ストレージ エンクロージャの温度センサーを交換してください。"

ファームウェアのロールアウト (3)

FaultType: Microsoft.Health.FaultType.FaultDomain.FailedMaintenanceMode

  • 重要度: 警告
  • Reason: "現在、ファームウェア ロールアウトを実行中のため、進行状況を確認できません。"
  • RecommendedAction: "すべてのストレージ スペースが正常であることと、現在、メンテナンス モードになっている障害ドメインがないことを確認してください。"

FaultType: Microsoft.Health.FaultType.FaultDomain.FirmwareVerifyVersionFailed

  • 重要度: 警告
  • Reason: "ファームウェアの更新プログラムを適用した後に、ファームウェア バージョン情報が読み取り不能または予期しないものであったため、ファームウェアのロールアウトが取り消されました。"
  • RecommendedAction: "ファームウェアの問題が解決されたら、ファームウェアのロールアウトを再開してください。"

FaultType: Microsoft.Health.FaultType.FaultDomain.TooManyFailedUpdates

  • 重要度: 警告
  • Reason: "ファームウェアの更新の試行に失敗した物理ディスクの数が多すぎるため、ファームウェアのロールアウトが取り消されました。"
  • RecommendedAction: "ファームウェアの問題が解決されたら、ファームウェアのロールアウトを再開してください。"

記憶域 QoS (3)2

FaultType: Microsoft.Health.FaultType.StorQos.InsufficientThroughput

  • 重要度: 警告
  • Reason: "予約に対処するには記憶域スループットが不十分です。"
  • RecommendedAction: "記憶域 QoS ポリシーを再構成してください。"

FaultType: Microsoft.Health.FaultType.StorQos.LostCommunication

  • 重要度: 警告
  • Reason: "記憶域 QoS ポリシー マネージャーが、ボリュームと通信できなくなりました。"
  • RecommendedAction: "ノード {nodes} を再起動してください"

FaultType: Microsoft.Health.FaultType.StorQos.MisconfiguredFlow

  • 重要度: 警告
  • Reason: "1 つ以上のストレージ コンシューマー (通常は仮想マシン) が、存在しない、id {id} のポリシーを使用しています。"
  • RecommendedAction: "見つからない記憶域 QoS ポリシーを再作成してください。"

VM/VHD (7)

FaultType: Microsoft.Health.FaultType.Vm.BadHealthState

  • 重要度: 警告
  • Reason: "仮想マシンの正常性状態に問題があります。"
  • RecommendedAction: "仮想マシンをトラブルシューティングしてください。"

FaultType: Microsoft.Health.FaultType.Vm.BadOperationalStatus

  • 重要度: 警告
  • Reason: "仮想マシンの操作状態に問題があります。"
  • RecommendedAction: "仮想マシンをトラブルシューティングしてください。"

FaultType: Microsoft.Health.FaultType.Vm.GuestUnhealthy

  • 重要度: 警告
  • Reason: "仮想マシンのゲスト オペレーティング システムから異常な状態が報告されています。"
  • RecommendedAction: "仮想マシンをトラブルシューティングしてください。"

FaultType: Microsoft.Health.FaultType.Vm.ConfigIsOffline

  • 重要度: 警告
  • Reason: "仮想マシン構成リソースはオフラインであり、仮想マシンを管理することができません。"
  • RecommendedAction: "仮想マシンの構成をオンラインにしてください。"

FaultType: Microsoft.Health.FaultType.Vm.NotRespondingToControlCodes

  • 重要度: 警告
  • Reason: "仮想マシンがクラスター制御コードに応答していません。"
  • RecommendedAction: "仮想マシンのクラスター リソースの状態を確認してください。"

FaultType: Microsoft.Health.FaultType.Vm.IsNearMemoryLimit

  • 重要度: 警告
  • Reason: "仮想マシンには、より大きな最大構成メモリが必要です。"
  • RecommendedAction: "過剰なメモリを消費しているプロセスまたはアプリを調べるか、最大メモリを増やすことを検討してください。"

FaultType: Microsoft.Health.FaultType.Vhd.IsNearlyFull

  • 重要度: 警告
  • Reason: "仮想ハード ディスクが最大容量に達しました。これ以上データを書き込むことができないため、仮想マシンに悪影響を及ぼす可能性があります。"
  • RecommendedAction: "仮想ハード ディスクのサイズを変更するか、不要なファイルを削除してください。"

1 ボリューム容量が 80% に達した (重大度: マイナー) または 90% に達した (重大度: メジャー) ことを示します。 2 は、ボリューム上の一部の vhd が、24時間のローリング ウィンドウの 10% (マイナー)、30% (メジャー)、または 50% (重大) で最小 IOPS を満たしていないことを示します。

Note

ファン、電源、センサーなどのストレージ エンクロージャ コンポーネントの正常性は、SCSI エンクロージャ サービス (SES) から取得されます。 この情報は、ベンダーから提供されていない場合はヘルス サービスで表示されません。

その他の参照情報