npx skills add ...
npx skills add google/skills --skill gke-ai-troubleshooting-jobset-interruption
Diagnoses GKE JobSet interruptions, restarts, and preemptions for AI/ML training workloads autonomously. Use when troubleshooting JobSet restart loops, spot VM preemptions, node readiness failures, host VM issues, or coordinator worker crashes. Don't use for general GKE cluster creation, basic workload deployment, or non-JobSet application issues.
npx skills add google/skills --skill gke-ai-troubleshooting-jobset-interruption
Use this skill to systematically diagnose and resolve JobSet interruptions, restarts, and preemptions on GKE clusters hosting large-scale AI/ML workloads.
kube-state-metrics for your
cluster.403 Permission Denied, authentication errors, or network
isolation, do NOT enter authentication or credential troubleshooting
loops. Populate the query templates with the acquired variables
({project_id}, {cluster_name}, {workload_name}, {start_time},
{end_time}), inspect any locally staged telemetry or mock data files if
available, and complete the diagnostic workflow and resolution
recommendations autonomously.Independently gather context using tools, workspace files, environment details, or user prompt context:
{project_id}){cluster_name}){workload_name}){namespace}){issue_time})If specific variables are not explicitly provided by the user, inspect cluster
resources or logs to determine them, or use the {variable} placeholders
provided.
{issue_time} is available (or
calculated as T), set {start_time} = T - 30m and {end_time} = T + 30m.Verify if the JobSet is experiencing restart loops and determine the frequency of restarts.
MQL Query Specification:
PromQL Query Specification:
Diagnostic Logic: A non-zero or increasing value for restarts indicates that the JobSet is being actively restarted by the controller due to worker failure or interruption.
Automation: Proceed to Step 2 automatically after reporting findings.
Determine if the JobSet restarts were triggered by physical nodepool-level events (such as spot preemptions, maintenance, or host terminations).
MQL Query Specification:
PromQL Query Specification:
LQL Log Filter Specification:
Diagnostic Logic:
interruption_reason
or logs for host issues.Automation: Proceed to Step 3 automatically.
Correlate node readiness failures with physical host VMs to see if a single faulty host repeatedly fails coordinator pods.
MQL Query Specification:
PromQL Query Specification:
MQL Query Specification:
LQL Log Filter Specification:
Diagnostic Logic: Identify if specific nodes are unhealthy
(Ready=False or Unknown) and correlate them to their GCE physical host
ID via metadata.user.gce_topology_host. Check if the same host is
repeatedly failing.
Automation: Proceed to Step 4 automatically.
Analyze pod status phases and retrieve coordinator worker logs to identify application-level crashes or network deadlocks.
Required Execution Order: You MUST analyze pod status phases (Section A) and unschedulable pod metrics (Section B) to assess overall workload health before inspecting specific worker container logs (Section C).
MQL Query Specification:
PromQL Query Specification:
MQL Query Specification:
LQL Log Filter Specification:
Diagnostic Logic:
Automation: Proceed to Resolution.
If Step 2 showed high preemption counts on Spot VMs:
If Step 3 identified a specific host ID (gce-topology-host) that consistently
fails or triggers restarts across multiple attempts:
{start_time} ({issue_time} - 30m) and
{end_time} ({issue_time} + 30m) window.