GPU health diagnostics→自動quarantine/drain/remediation
記事状態: 公開 · 最終確認: 2026-10-20
要点
「GPU health automationは、診断signalを直接rebootへ結び付けず、detect・classify・quarantine・drain・remediation・再診断・復旧を明示的な状態遷移として管理する。critical GPU faultでは新規割当停止に加えて既存workloadの安全な退避を検討し、mass quarantine用circuit breaker、drain/remediation失敗時のhuman escalation、復旧前のhealth 結果の照合を設ける。」
現在の判断
「GPU health automationは、診断signalを直接rebootへ結び付けず、detect・classify・quarantine・drain・remediation・再診断・復旧を明示的な状態遷移として管理する。critical GPU faultでは新規割当停止に加えて既存workloadの安全な退避を検討し、mass quarantine用circuit breaker、drain/remediation失敗時のhuman escalation、復旧前のhealth 結果の照合を設ける。」
どこまで当てはまるか
GPU health diagnostics→自動quarantine/drain/remediation
詳しく理解する
主要記述・判断
GPU障害対応は、監視アラートから直接rebootやnode交換へ飛ばさず、detect → classify → quarantine/cordon → drain → remediation → re-diagnosis → recovery の状態遷移として管理する。NVIDIA NVSentinelはKubernetes向けGPU fault detection/remediation システムとして、GPU health・システム log・cloud maintenance イベントを監視し、faulty nodeのcordon、workload drain、break-fix 処理の流れを自動実行する。GPU health monitorはDCGMを利用してthermal issue、ECC error、XID イベント等を扱い、syslog health monitorはXID/SXID、GPU fell off the bus等を扱う。citeturn0search0turn0search4
GPU Operator/device plugin側でも、critical XIDを検知したGPUをunhealthyとしてAllocatableから外す挙動がある。これは「device単位の割当停止」と「node全体のquarantine/drain/remediation」が別レイヤーであることを意味する。GPU単体をunhealthyにしただけで、既存workload退避やnode修復まで完了したと扱わない。citeturn0search8
実装・運用
- health イベントを正規化する
event_id,node,gpu_uuid,source,check_name,error_code,severity/is_fatal,recommended_action,first_seen,last_seen,evidence_locatorを保存する。XID、ECC、thermal、NVLink、driver/システム 失敗を同一のboolean healthへ潰さない。
- quarantine policyをsignalから分離する health monitorは事実をイベント化し、cordon/taintは別policyで決める。fatality、error code、再発回数、node role、maintenance 状態等を条件にし、例外とdry-runを持たせる。NVSentinelもplatform 接続機能とfault-quarantineを別責務にしている。citeturn0search17
- mass-failure circuit breakerを必須化する 同時quarantine数またはcluster比率に上限を設け、閾値超過時は自動cordonを停止してhuman escalationへ切り替える。cluster-wide driver regressionやmonitor false positiveを個別GPU故障として処理しない。citeturn0search16
- drain policyをworkload class別にする 即時evict、完了待ち、処理待ち時間の上限後削除等をnamespace/workload classで分ける。分散trainingや途中状態の保存地点可能jobでは、blind evictionではなくscheduler/job-controllerとの協調を選ぶ。NVSentinel node-drainerは
Immediate、AllowCompletion、DeleteAfterTimeoutを提供し、custom drain pluginも許容する。citeturn0search6turn0search11
- remediation actionを段階化する 初期化 eligibleなfaultではGPU 初期化、node-level faultではreboot、hardware replacementが必要ならbreak-fixへ送る。NVSentinelはrecoverable GPU faultに個別GPU 初期化を利用できる。action実行前にdrain 完了を結果の照合する。citeturn0search0
- re-diagnosisを公開・提供 確認・承認の条件にする remediation後はDCGM/NVML/XID、必要なら計算装置間の接続 preflightを再実行し、passしたnodeだけをuncordonする。NVSentinel Preflightはpod admission時にdiagnostic init containerを注入し、NCCL等で計算装置間の接続 pathも検査できる。citeturn0search10
- 監査可能な状態遷移を残す
detected_at → quarantined_at → drain_started → drain_succeeded/failed → remediation_started → remediation_succeeded/failed → health_recheck → uncordonedをイベント IDと結び、各transitionのactor、policy バージョン、結果の照合を保存する。
適用境界
NVSentinelはNVIDIA GPUを使うKubernetes cluster向けの具体的実装であり、すべてのGPU scheduler/cluster managerへ同じCRDや分類ラベルを適用できるわけではない。ただし、monitoring、quarantine、drain、remediation、復旧を責務分離する設計原則は他のGPU fleet managementにも移植できる。
DCGM Exporterのhealth 状態はPASS/WARN/FAILとhealth watch/error 付随情報を公開できるが、Prometheus 評価指標単独を破壊的remediationの唯一のtriggerにする必要はない。metricsは観測、quarantine policyはaction decisionとして分離する。citeturn0search15
NVIDIA DRA DriverのNVMLDeviceHealthCheckはXIDを用いたGPU/MIG health monitoringを提供するが、GPU Operator 25.10文書ではalpha 機能でdefault disabledである。環境のdriver/operator/DRA バージョンを確認せず、同機能が利用可能と仮定しない。citeturn0search3
出典 / 出典・来歴 locators
- NVIDIA NVSentinel Overview, v1.26.0 / latest 仕様・利用方法の文書, 参照日 2026-10-20.
- NVIDIA NVSentinel Data Flow, GPU/Syslog health monitor and platform 接続機能 flow, 参照日 2026-10-20.
- NVIDIA NVSentinel Fault Quarantine, circuit breaker and rule-based quarantine, 参照日 2026-10-20.
- NVIDIA NVSentinel Node Drainer / Drain Plugin 仕様・利用方法の文書, 参照日 2026-10-20.
- NVIDIA NVSentinel Cordoned Nodes runbook, terminal drain/remediation 失敗 states and 復旧 behavior, 参照日 2026-10-20.
- NVIDIA NVSentinel Preflight 仕様・利用方法の文書, 参照日 2026-10-20.
- NVIDIA GPU Operator 25.10 Troubleshooting, XID critical error/device unhealthy behavior, 参照日 2026-10-20.
- NVIDIA DRA Driver for GPUs 25.10, NVMLDeviceHealthCheck, 参照日 2026-10-20.
- NVIDIA DCGM Exporter Metrics, GPU health 状態 fields, 参照日 2026-10-20.
よくある失敗・反証
自動化の最大の危険は、単一のhealth signalを即時の破壊的remediationへ直結することである。誤検知、driver/service側の共通障害、cluster-wide イベント、監視系自身の障害で多数nodeを同時cordon/drainすると、GPU故障そのものより大きな利用可能性 incidentを作り得る。NVSentinelのfault-quarantineには、一定割合を超えるmass cordonを抑止するcircuit breakerが用意されている。citeturn0search16
drainも必ず成功するわけではない。PodDisruptionBudgetやstuck pod等で
drain-failedになり得て、その場合は自動remediationへ進まずmanual interventionが必要になる。remediation-failedもterminal 状態として扱われる。したがって「cordonしたので復旧処理まで進んだ」と推定せず、状態 結果の照合を要求する。citeturn0search2逆方向では、復旧後にhealth checkが通ったことを確認せずuncordonすると、同じfaulty GPUへworkloadを戻す危険がある。NVSentinel runbookはhealth checkがpassした場合のautomatic uncordonを前提としており、復旧はremediation action実行ではなく再診断成功まで含めて閉じる。citeturn0search2
XIDは重要なdiagnostic signalだが、すべてのXIDが同じseverity・remediationを意味するわけではない。critical XIDでdevice pluginがGPUをunhealthyにする例は確認できるが、error mappingと推奨actionはバージョン・hardware・driverで変わり得る。XID番号だけを固定ルール化せず、現在の mappingとvendor guidanceをversioned 根拠として扱う。citeturn0search8
自動drainは利用可能性を守る一方、途中状態の保存地点前のtraining jobやstateful workloadを中断する可能性がある。逆に完了待ちを長くし過ぎるとfaulty hardware上で計算を続け、silent corruptionや追加失敗のリスクがある。workload criticalityとfault severityの組合せでpolicyを分ける必要がある。
また、health-monitoring infrastructure自体が壊れた場合、イベント absenceはhealthyの証拠にならない。monitor daemon、platform 接続機能、data store、Kubernetes API、remediation controllerのlivenessを別に監視し、観測不能状態をhealthyへ畳み込まない。
まだ確認できていないこと
- EA-747-UNKNOWN-01
- XID/ECC/NVLink fault種別ごとの初期化/reboot/replace判定を、現行GPU SKU・driver バージョンでどこまで自動化できるか。
- MIG環境でGPU instance単位のfault containmentとnode-level quarantineをどう使い分けるか。
- distributed training schedulerとdrain pluginを接続した際の途中状態の保存地点/eviction ordering。
- cluster-wide driver regressionと独立hardware faultを自動識別するための最小cross-node 根拠。
- false-positive quarantine率とmissed-failure率の実測SLO。
根拠資料
この記事には、直接開ける外部出典が登録されていません。出典IDや検証情報は末尾で確認できます。
更新履歴
EA-747-REV-20261020-1010JST: 正式な 監査/publication 対応付け
出典ID・検証情報・機械可読データ
根拠の種類と情報の鮮度は、ラベルとアイコンで確認できます。
- 記事ID
- EA-747
- 最終確認日
- 2026-10-20
- 提供元・モデル・プラン・利用環境
- —
- 対象地域
- —
元資料の全文と収録照合記録
主要claim
GPU障害対応は、監視アラートから直接rebootやnode交換へ飛ばさず、detect → classify → quarantine/cordon → drain → remediation → re-diagnosis → recovery の状態遷移として管理する。NVIDIA NVSentinelはKubernetes向けGPU fault detection/remediation systemとして、GPU health・system log・cloud maintenance eventを監視し、faulty nodeのcordon、workload drain、break-fix workflowを自動実行する。GPU health monitorはDCGMを利用してthermal issue、ECC error、XID event等を扱い、syslog health monitorはXID/SXID、GPU fell off the bus等を扱う。citeturn0search0turn0search4
GPU Operator/device plugin側でも、critical XIDを検知したGPUをunhealthyとしてAllocatableから外す挙動がある。これは「device単位の割当停止」と「node全体のquarantine/drain/remediation」が別レイヤーであることを意味する。GPU単体をunhealthyにしただけで、既存workload退避やnode修復まで完了したと扱わない。citeturn0search8
運用上の意味・failure
自動化の最大の危険は、単一のhealth signalを即時の破壊的remediationへ直結することである。誤検知、driver/service側の共通障害、cluster-wide event、監視系自身の障害で多数nodeを同時cordon/drainすると、GPU故障そのものより大きなavailability incidentを作り得る。NVSentinelのfault-quarantineには、一定割合を超えるmass cordonを抑止するcircuit breakerが用意されている。citeturn0search16
drainも必ず成功するわけではない。PodDisruptionBudgetやstuck pod等でdrain-failedになり得て、その場合は自動remediationへ進まずmanual interventionが必要になる。remediation-failedもterminal stateとして扱われる。したがって「cordonしたので復旧処理まで進んだ」と推定せず、state readbackを要求する。citeturn0search2
逆方向では、復旧後にhealth checkが通ったことを確認せずuncordonすると、同じfaulty GPUへworkloadを戻す危険がある。NVSentinel runbookはhealth checkがpassした場合のautomatic uncordonを前提としており、recoveryはremediation action実行ではなく再診断成功まで含めて閉じる。citeturn0search2
concrete control / implementation implication
- health eventを正規化する
event_id,node,gpu_uuid,source,check_name,error_code,severity/is_fatal,recommended_action,first_seen,last_seen,evidence_locatorを保存する。XID、ECC、thermal、NVLink、driver/system failureを同一のboolean healthへ潰さない。
- quarantine policyをsignalから分離する health monitorは事実をevent化し、cordon/taintは別policyで決める。fatality、error code、再発回数、node role、maintenance state等を条件にし、例外とdry-runを持たせる。NVSentinelもplatform connectorとfault-quarantineを別責務にしている。citeturn0search17
- mass-failure circuit breakerを必須化する 同時quarantine数またはcluster比率に上限を設け、閾値超過時は自動cordonを停止してhuman escalationへ切り替える。cluster-wide driver regressionやmonitor false positiveを個別GPU故障として処理しない。citeturn0search16
- drain policyをworkload class別にする 即時evict、completion待ち、timeout後delete等をnamespace/workload classで分ける。分散trainingやcheckpoint可能jobでは、blind evictionではなくscheduler/job-controllerとの協調を選ぶ。NVSentinel node-drainerは
Immediate、AllowCompletion、DeleteAfterTimeoutを提供し、custom drain pluginも許容する。citeturn0search6turn0search11
- remediation actionを段階化する reset eligibleなfaultではGPU reset、node-level faultではreboot、hardware replacementが必要ならbreak-fixへ送る。NVSentinelはrecoverable GPU faultに個別GPU resetを利用できる。action実行前にdrain completionをreadbackする。citeturn0search0
- re-diagnosisをrelease gateにする remediation後はDCGM/NVML/XID、必要ならinterconnect preflightを再実行し、passしたnodeだけをuncordonする。NVSentinel Preflightはpod admission時にdiagnostic init containerを注入し、NCCL等でinterconnect pathも検査できる。citeturn0search10
- 監査可能な状態遷移を残す
detected_at → quarantined_at → drain_started → drain_succeeded/failed → remediation_started → remediation_succeeded/failed → health_recheck → uncordonedをevent IDと結び、各transitionのactor、policy version、readbackを保存する。
適用境界
NVSentinelはNVIDIA GPUを使うKubernetes cluster向けの具体的実装であり、すべてのGPU scheduler/cluster managerへ同じCRDやlabelを適用できるわけではない。ただし、monitoring、quarantine、drain、remediation、recoveryを責務分離する設計原則は他のGPU fleet managementにも移植できる。
DCGM Exporterのhealth statusはPASS/WARN/FAILとhealth watch/error metadataを公開できるが、Prometheus metric単独を破壊的remediationの唯一のtriggerにする必要はない。metricsは観測、quarantine policyはaction decisionとして分離する。citeturn0search15
NVIDIA DRA DriverのNVMLDeviceHealthCheckはXIDを用いたGPU/MIG health monitoringを提供するが、GPU Operator 25.10文書ではalpha featureでdefault disabledである。環境のdriver/operator/DRA versionを確認せず、同機能が利用可能と仮定しない。citeturn0search3
counterevidence / limitations
XIDは重要なdiagnostic signalだが、すべてのXIDが同じseverity・remediationを意味するわけではない。critical XIDでdevice pluginがGPUをunhealthyにする例は確認できるが、error mappingと推奨actionはversion・hardware・driverで変わり得る。XID番号だけを固定ルール化せず、current mappingとvendor guidanceをversioned evidenceとして扱う。citeturn0search8
自動drainはavailabilityを守る一方、checkpoint前のtraining jobやstateful workloadを中断する可能性がある。逆にcompletion待ちを長くし過ぎるとfaulty hardware上で計算を続け、silent corruptionや追加failureのriskがある。workload criticalityとfault severityの組合せでpolicyを分ける必要がある。
また、health-monitoring infrastructure自体が壊れた場合、event absenceはhealthyの証拠にならない。monitor daemon、platform connector、data store、Kubernetes API、remediation controllerのlivenessを別に監視し、観測不能状態をhealthyへ畳み込まない。
OPEN_UNKNOWN
- XID/ECC/NVLink fault種別ごとのreset/reboot/replace判定を、現行GPU SKU・driver versionでどこまで自動化できるか。
- MIG環境でGPU instance単位のfault containmentとnode-level quarantineをどう使い分けるか。
- distributed training schedulerとdrain pluginを接続した際のcheckpoint/eviction ordering。
- cluster-wide driver regressionと独立hardware faultを自動識別するための最小cross-node evidence。
- false-positive quarantine率とmissed-failure率の実測SLO。
SAFE_WORDING
「GPU health automationは、診断signalを直接rebootへ結び付けず、detect・classify・quarantine・drain・remediation・再診断・recoveryを明示的な状態遷移として管理する。critical GPU faultでは新規割当停止に加えて既存workloadの安全な退避を検討し、mass quarantine用circuit breaker、drain/remediation失敗時のhuman escalation、復旧前のhealth readbackを設ける。」
Source / provenance locators
- NVIDIA NVSentinel Overview, v1.26.0 / latest documentation, accessed 2026-10-20.
- NVIDIA NVSentinel Data Flow, GPU/Syslog health monitor and platform connector flow, accessed 2026-10-20.
- NVIDIA NVSentinel Fault Quarantine, circuit breaker and rule-based quarantine, accessed 2026-10-20.
- NVIDIA NVSentinel Node Drainer / Drain Plugin documentation, accessed 2026-10-20.
- NVIDIA NVSentinel Cordoned Nodes runbook, terminal drain/remediation failure states and recovery behavior, accessed 2026-10-20.
- NVIDIA NVSentinel Preflight documentation, accessed 2026-10-20.
- NVIDIA GPU Operator 25.10 Troubleshooting, XID critical error/device unhealthy behavior, accessed 2026-10-20.
- NVIDIA DRA Driver for GPUs 25.10, NVMLDeviceHealthCheck, accessed 2026-10-20.
- NVIDIA DCGM Exporter Metrics, GPU health status fields, accessed 2026-10-20.
EA-747-CURRENT-APPROVAL研究資料研究資料根拠の出所: AUDITED_CANONICAL_RESEARCH_PACKET現行本文の監査・revision対応
- 裏付ける内容
- 現行台帳のAUDIT_PASSと候補・revision・本文ハッシュの対応を確認しています。
- 確認日
- —
- 出典・実験ID
- EA747-CANDIDATE-20261020-1010JST-C1
- 検証箇所
- 1KqhJtiSb2S84rWmeYVwKcT_76dBwZ_B0ZZuAWQqH0rQ/EA_REVISION_LEDGER#ea_id=EA-747&revision_id=EA-747-REV-20261020-1010JST&candidate_id=EA747-CANDIDATE-20261020-1010JST-C1 · EA-747-REV-20261020-1010JST
- 適用範囲
- —
- 出典・来歴
- CURRENT_CANONICAL_APPROVAL_READBACK
- 限界
- 監査状態と来歴の記録です。外部根拠の最新性や本文の全主張を追加保証しません。
EA-747-CURRENT-BODY-READBACK実装資料実装資料根拠の出所: IMPLEMENTATION_READBACK現行本文の収録照合
- 裏付ける内容
- 公開生成入力の本文SHA-256が、監査済み候補に結び付いたハッシュと一致しています。
- 確認日
- 2026-10-20
- 出典・実験ID
- BODY-SHA256:9204836ceb624249b31cd918d89a46195cb7be78078c0395424ae426e834e8de
- 検証箇所
- content/staging/EA-747.md · 9204836ceb624249b31cd918d89a46195cb7be78078c0395424ae426e834e8de · EA-747-REV-20261020-1010JST
- 適用範囲
- —
- 出典・来歴
- CURRENT_APPROVED_BODY_HASH_MATCH
- 限界
- 本文の同一性の検査です。外部システムの挙動や全主張の真偽を実証したものではありません。
- 出典ID
- EA747-CANDIDATE-20261020-1010JST-C1, BODY-SHA256:9204836ceb624249b31cd918d89a46195cb7be78078c0395424ae426e834e8de
- 追跡中のUNKNOWN ID
- EA-747-UNKNOWN-01
- 再確認のきっかけ
- 正式な 改訂版/publication 状態 change · 本文 成果物 hash change · 出典 現行性 change · new contradiction or 実装 結果の照合
機械検査: 通過 — 機械検査の結果です。情報の正確性や実行の承認を保証するものではありません。
同じ記事IDの機械可読データです。