Demos used for "CrashLoopBackoff, Pending, FailedMount and Friends" talk at KubeCon 2017

You can download a ZIP file of all the demos for easy local use; otherwise you will have to download all the files individually and recreate the directory structure. The ZIP file link should always point to the server copy, while other links in this document are relative so they should work if browsing this index locally.

(Note, these are not exactly the same as the files used in the KubeCon 2017 demo -- I cleaned them up a bit for greater clarity.)

Each of these demos has two directories: "broken" which you can use to deploy the initial broken configuration, and "fixed" which when applied should result in a working deployment. The install is as easy as:

kubectl apply -f [demo directory, e.g. crashloopbackoff]/broken

You can then investigate the failure with various kubectl commands. To fix it:

kubectl apply -f [demo directory]/fixed

To clean up:

kubectl delete -f [demo directory]/fixed -f [demo directory]/broken

You can also (and I encourage you to) try to fix the broken components yourself, then compare to my fixed versions.

Prerequisites: a working Kubernetes cluster in a relatively untouched state (with RBAC enabled if you want to try the RBAC demo) that you aren't doing anything important or sensitive on (some of these demos spawn busybox containers, display data gathered from the API server, etc. -- don't do these demos in production!)

Things that may interfere with the demos functioning as desired:

The files from which most of these demos are constructed are in the base directory.


Happy debugging, and if you have questions about these demos, feel free to contact me on Kubernetes Slack (@kensey), Twitter (@caffeinepresent), or through e-mail (

Joe Thompson