Troubleshoot an Ingress That Returns 503 Service Unavailable
A railway app publishes two endpoints through an Ingress, and both return 503. Find out why and make both endpoints answer again.
Focused, hands-on DevOps and server-side problems with hints, feedback, and automated solution checks.
Challenges contributed by the community members sharing their knowledge and expertise.
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.
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.
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.
Learn how to reconfigure the Kubernetes cluster DNS domain by updating CoreDNS ConfigMap and kubelet configuration on all nodes, a critical skill for custom cluster networking and CKA exam preparation.
A Deployment running a distroless Chainguard nginx image (cgr.dev/chainguard/nginx) is deployed in the namespace webapps, fronted by a ClusterIP Service. Port-forward that Service to localhost port 3333 on cplane-01, use curl to save the response body to /home/laborant/index.html, and verify the file is accessible and contains the expected content.
Use kubectl proxy to open a local, already authenticated HTTP endpoint to the Kubernetes API server, then use curl to list every Secret in the gliese-581 namespace and save the raw JSON response to /home/laborant/secret-list.json.
Add a new, separate Service CIDR range for the dev team using the ServiceCIDR API object — without touching or restarting the cluster's default Service CIDR — then create a Service with an explicit ClusterIP inside that new range and verify DNS resolution.
Configure a Kubernetes Service so that requests from the same client IP are always routed to the same backend Pod for a sustained period, using ClientIP-based session affinity.
Implement a canary deployment strategy using the Kubernetes Gateway API. Route the majority of traffic to a stable version of a service while gradually shifting a small percentage to a new canary version.