Multi-Container Pod Security Design
Create a multi-container Pod with different user IDs per container while sharing a common group ID at the Pod level for collaborative file access.
Focused hands-on problems designed to help you hone your DevOps or Server Side skills. Some challenges are more educational, while others are based on real-world scenarios. The platform provides hints and feedback for each challenge, including automated solution checks.
Create a multi-container Pod with different user IDs per container while sharing a common group ID at the Pod level for collaborative file access.
Compile a small C loop with -O2 -S, inspect the generated assembly, report how many add instructions gcc produced and see how much it has optimized the equasion.
Run gcc -E on a small C program and find the exact line where the preprocessor expanded a macro into a printf call.
Update a production NGINX ConfigMap to restrict TLS to v1.3 only, then verify the change enforces the security policy.
A Deployment is using a disk-backed emptyDir volume. Convert it to a memory-backed tmpfs volume for better performance — but make sure to set a size limit to prevent the Pod from exhausting the node's RAM.
A newly provisioned server is reachable as root with a shared seed password. Create a sudoer admin user, switch SSH to key-based access, disable password and root logins, and retire the seed credential.
A distroless pod running in the cherry namespace has no shell or debugging tools. Use kubectl debug to attach an ephemeral container, test connectivity to the request-logger service, and verify the request was received in its logs.
A Deployment is stuck with Pods in ContainerCreating state because the required ConfigMap was not created. Fix the issue to make the application accessible.
Create a Pod in the processing namespace that runs a short task and exits successfully, reaching a Completed status without using a Job controller.
Troubleshoot a Deployment where containers are repeatedly OOMKilled. Inspect Vertical Pod Autoscaler (VPA) recommendations and manually apply the recommended memory request and memory limit to stabilize the workload.