Ok, K8s is cool. Docker is actually cool and practical. I’ve been programming/architecting for 25 years. With AWS since 2007. Before that VMWare. Here’s what I am missing with K8s and Swarm and the rest. The net result is you have your apps running in separate processes, right? If right, means your app is hardened a little because if a process crashes the other n processes are up. But what happens when the host goes down? And if one process goes down, most likely its a bug in the source code, wouldn’t the other processes go down too? I’m obviously missing something. Can you spread K8s across multiple AMIs/Containers/Servers? I gotta think you can, otherwise what’s the point? I’m really trying to understand the value add, as it relates to HA. Anyone care to set me straight? What are the hard benefits? Thanks
Kubernetes (K8) can run on multiple nodes and that’s the recommendation for High Availability (HA) and Fault Tolerance (FT). To your point, if the host goes down then all the pods running on that host go down. Although, maintaining multiple containers across multiple hosts would be a nightmare if you weren’t using some orchestration tool like K8 or Docker Swarm.
If you leverage a cloud service to support your Kubernetes clusters you can easily scale to meet demand and protect yourself from failures.
- AWS EKS
- Azure AKS
- GCP GKS
I hope this helps you see the power of K8 and the future of development. Happy clouding!