Safe Node Drain With a Disruption Budget
node-01 is due for maintenance, and it hosts two of the three checkout-api replicas. Add a PodDisruptionBudget so the drain can never take checkout below two available replicas, then drain the node.
Focused, hands-on DevOps and server-side problems with hints, feedback, and automated solution checks.
node-01 is due for maintenance, and it hosts two of the three checkout-api replicas. Add a PodDisruptionBudget so the drain can never take checkout below two available replicas, then drain the node.
A railway app publishes two endpoints through an Ingress, and both return 503. Find out why and make both endpoints answer again.
An nginx Deployment runs fine, but its address returns an error. Trace the path from the Ingress to the Pod and fix the manifests.
node-02 is back from a kernel upgrade but still shows Ready,SchedulingDisabled, and the Pods that can only run on it are stuck in Pending. Bring the node back into service and get the workload running, without touching the workload itself.
A storefront needs eight replicas, and the platform team wants them split down the middle between the two availability zones. An uneven split must be refused by the scheduler rather than quietly tolerated.
The storefront APIs are served through a Traefik Ingress with TLS and two path rules. Reproduce that configuration with a Gateway and an HTTPRoute on the same hostname, cut traffic over to it, and retire the Ingress.
A new intern learning about probes wrote a small Pod manifest. The exec command and the application are both correct, but the Pod never becomes Ready because one probe parameter is missing. Find it and add it.
The security team left five NetworkPolicy files on the workstation. Only one of them lets the frontend reach the backend while granting nothing more. Identify it and deploy it, unchanged.
A worker node dropped to NotReady and part of the workload went with it. The container runtime is fine and the control plane is healthy; the trail leads from kubectl symptoms down into systemd and the kubelet configuration. Diagnose the node and bring it back.
kubectl is dead: the kube-apiserver certificate expired and the control plane is down, while the workload quietly keeps serving. Diagnose the expiry offline, renew the certificates, bring the control plane back, and prove the cluster recovered.