Home > Istio Webinar Postmortem

Istio Webinar Postmortem

Andrew Lee - October 16, 2019 - | |

Live demos are a thing of beauty — you never know when the demo gods will decide to break your precious setup. During yesterday’s live webinar, Your Application Deserves Better than Kubernetes Ingress: Istio vs. Kubernetes, the first thing I wanted to show during the Istio service mesh demo was exposing an app using NodePort. Applying the deployment file resulted in the following:

$ kubectl apply -f flaskapp-deployment.yaml

$ kubectl get pods

NAME                            READY  STATUS

flaskapp-deployment-pod-1       0/1    ImagePullBackOff

flaskapp-deployment-pod-2       0/1    ImagePullBackOff

flaskapp-deployment-pod-3       0/1    ImagePullBackOff

What gives? This deployment spec has worked reliably time and time again with no business failing to pull the image. I can only guess that Docker Hub is down (unlikely) and had two options to choose from: 1) re-build the image from source, or 2) Use a backup environment to show the end state. In order to keep on topic within the given time period, I decided to go with option #2 to at least showcase Istio Ingress at its best. 

After the webinar I decided to go back and take a look at the environment; and lo and behold, this is what I found!

$ kubectl get pods

NAME                            READY  STATUS

flaskapp-deployment-pod-1       1/1    Running

flaskapp-deployment-pod-2       1/1    Running

flaskapp-deployment-pod-3       1/1    Running

And when I did a quick search of Docker Hub Status later, this is what I discovered:

Docker Hub issues

As if by magic Docker Hub has decided to stop working within the exact time period of the Live Webinar. I learned a few things from this event:

  1. Don’t rely on a public repository / link for your demos
  2. Failures occur where you least expect them to
  3. Always prepare a backup

So that being said, I present to you all in the video below, how I originally envisioned the demo for this session:

I hope you enjoyed the live session regardless, and if you didn’t attend, I’m sorry you missed out on all the fun. Here’s hoping for a more successful demo next time!