Book Consultation Submit Ticket

Linux SRE Runbook: Hands-On Production Troubleshooting Under Pressure

A practical guide for SREs troubleshooting a struggling Linux Kubernetes node: from symptoms to diagnosis, safe commands, rollback, verification, and when to escalate to OpsGlobal.

Linux SRE Runbook: Hands-On Production Troubleshooting Under Pressure
DevOps 6min 3 views 2026-08-04
KubernetesSRE

Scenario

Your team receives an alert: a production Kubernetes node has been reporting a high load average for 15 minutes, and disk usage has crossed 90%. User-facing services are slow, and some pods are restarting. You need to investigate immediately without making things worse.

Symptoms

Typical signals include: - Node load average exceeds the number of CPU cores by 2x or more. - df -h shows /var/lib/docker or /var/lib/containerd above 90%. - Pods are in CrashLoopBackOff or ImagePullBackOff. - kubectl get nodes shows NotReady after a few minutes.

Diagnosis

Start with top-level visibility:

uptime
kubectl get nodes -o wide
kubectl describe node NODE_NAME

Check overall load and CPU:

top -bn1 | head -20
vmstat 1 5

If you see high wa (I/O wait), inspect disks:

iostat -x 1 5
df -h

Find large files or directories causing disk pressure:

du -x -h --max-depth=2 /var/lib | sort -h | tail -20

Look for orphaned logs or container files:

find /var/log -type f -size +100M -exec ls -lh {} \;

Check system messages and Kubelet service:

dmesg -T | tail -50
journalctl -u kubelet --since "15 minutes ago"

If containers are failing, inspect them with CRI:

crictl ps -a
crictl logs CONTAINER_ID --tail 100

Risk Controls

Never delete files unless you are absolutely sure they are disposable. Run read-only commands first. Capture the output for later analysis. Do not restart the node unless you have already tried to identify the root cause. If disk is full, do not blindly remove application data – use du and find to locate logs and temporary files. Use touch and truncate to rotate logs in production only when the service is not writing critical data.

Rollback

If the issue is due to a recent deployment, roll back:

kubectl rollout undo deployment/YOUR_DEPLOYMENT -n YOUR_NAMESPACE

If a log file grew unexpectedly, move it aside:

mv /var/log/example.log /var/log/example.log.old
systemctl restart rsyslog   # only if rsyslog is the logger

If container runtime storage is full, clean orphaned images and volumes safely:

crictl rmi --prune
crictl rm --prune   # use with caution

Only after careful verification, restart the Kubelet:

sudo systemctl restart kubelet

Verification

After each action, check the load and disk levels:

uptime
df -h
kubectl get nodes -o wide
kubectl get pods -o wide | grep YOUR_APP

Also watch the event channel:

kubectl get events --sort-by=.metadata.creationTimestamp

If the node stabilises, keep monitoring for at least 30 minutes before closing the incident.

When to Submit an OpsGlobal Ticket

Submit a ticket if: - You cannot identify the root cause within 30 minutes. - The load remains high after you have cleaned up obvious culprits. - You need to recover data from a failed mount or corrupted filesystem. - Your on-call engineer is overwhelmed and needs second pair of eyes. - You require a proactive performance review of your Kubernetes nodes.

OpsGlobal provides production-grade support for Linux and Kubernetes. We step in when your runbook stops being enough.

Use cases

Useful for teams handling DevOps issues and needing a clear troubleshooting and delivery workflow.

Problem background

A practical guide for SREs troubleshooting a struggling Linux Kubernetes node: from symptoms to diagnosis, safe commands, rollback, verification, and when to escalate to OpsGlobal.

Troubleshooting steps

Confirm impact and recent changes, collect logs, configuration and metrics, then apply fixes from low to high risk.

Command examples

Replace sample resource names with real values and store passwords, tokens and keys in environment variables.

Risks

Before production changes, confirm backups, access boundaries, change windows and rollback paths.

Rollback plan

Keep original configuration and release versions; roll back config, images or database changes if metrics degrade.

Deliverables

Root-cause notes, key commands, remediation steps, verification results and follow-up recommendations.

!

Need help with a similar technical issue?

If your servers, Kubernetes, Docker, CI/CD, databases or monitoring systems have similar issues, submit logs and config files for remote diagnosis.

Ticket Contact on WhatsApp Consult