How do you get started with “an open-source system for automating deployment, scaling, and management of containerized applications”?
How running containers reconcile with components that rely on “owning” entire physical machine, like Postgres or Erlang VM? Say with Erlang I can routinely run with half terabyte RAM and 10G dedicated network and serve 100s of thousands users per node. Can I do this with K8s?
I wouldn’t say PostgreSQL relies on “owning” an entire machine, but if you want that, you can create node pools with taints, and then setup your PostgreSQL pod such that it can tolerate said taints. It will be the only pod allowed to be scheduled on that node. (I suspect you might still have some Kubernetes infrastructure running on that node, so I doubt you can literally remove everything, but you can certainly manage the allocation of pods to nodes in a fine grained way.)
Can K8s help with replication and failover? Say Amazon RDS maintains DNS record to be used in clients and when master failure is detected it promotes slave and adjusts that record.
think of k8s as ‘erlang for the datacenter, thrown roughly together by enterprises and people who like C’ and you’ll get pretty close.
I don’t know. I’m not a k8s expert. I just know the basics. My guess is that something like that is possible. Disclaimer: that’s probably my answer for every question you might ask. K8s is very large and very complicated. I don’t even know enough to say whether it is mostly incidental or necessary complexity.
There .. really isn’t much in this blog post. I started going down the k8s route years back and was going to do a full post, but I got frustrated at how terrible alpha the kubeadm was. I remember digging through ansible scripts, which kinda made sense because they were doing everything kubeadm was suppose to automate .. and didn’t (seriously kubeadm doesn’t connect any of the logging daemons? Why is weavenet crashing all the time? arg!)