|
The problem is that it's not declarative. You can't tweak the config and run it again to converge. Kubeup is designed to run once, unlike systems such as Puppet and Terraform that declaratively set up the world to fit your specification. Kubeup also does a lot of mysterious stuff. By using it, you don't have a clear idea of which pieces have been set up and how they slot into each other. It is, in short, opaque and magical. For comparison, I set up Kubernetes with Salt on AWS. It was, by all means, "the hard way", and took me a few days to get running and a couple of weeks to run completely correctly (a lot of stuff, like kubeconfig and TLS behaviour, is still undocumented), but as a byproduct I now have the entire setup in a reproducible, self-documenting, version-controlled config. |
However, now that I have a cluster up and running, I can take the time to build a parallel cluster with more understanding, and migrate the services to it.
I found a terraform example, but it declares itself out of date, and looked more complicated than I thought it should be... that was just a gut feel though.
I have not used Salt, but I always like to learn new things, especially if they make my life easier.
I'd be very interested in checkout out your setup, and any lessons learned you have to share.
Thanks in advance