I can't shake the feeling that Kubernetes makes everything harder than it needs to be.
Today, I spent 8 hours just debugging how network requests flows between pods. We were trying to replace a much simpler system with a Kubernetes-powered one. And, wouldn't you know it, the more complex setup was a huge pain in the ass to debug!
This can't be the best we can do. We have to be able to get by with simpler stuff. Otherwise, why does the simpler system we're trying to replace *work* so well?
System we are replacing: INTERNET -> [ nginx -> service (via docker-compose) ] some linux box in the EU Our complicated new thing: INTERNET -> AWS NLB -> [ nginx -> envoy -> envoy sidecar -> service ] kubernetes cluster
We failed to get things working, and had to ask our EU friends to cut DNS 100% back to their stuff. Tomorrow we try again, this time with more testing of the network flows. It should be easier, though.