4 ms·
I'd pick none of them. I'd create a coreos cluster and configure it based on cloudinit files. For more complex projects I'd choose kubernetes or something simil
by richardknop 9y ago
I'd pick none of them. I'd create a coreos cluster and configure it based on cloudinit files. For more complex projects I'd choose kubernetes or something similar as cloudfoundry.
The point being I'd try to get as far as possible from any server configuration. Just limit it to setting up the platform as a service. So engineers can just push containers to that platform.
I'd also consider serverless architecture.
Long story short, limit server configuration to bare minimum. And for that minimum I'd use terraform and ansible if needed (but kubernetes can be deployed just with terraform and cloudinit files imho).
- jetsnoc 9y agoThis is a good strategy and one my teams are more closely moving towards. We're using Jenkins + Docker Swarm. If Jenkins receives a web hook that there is a new stable version tag, it builds the container, pushes it to the register and instructs the swarm to drain connections and do a rolling update of the container. In this regard, configuration management only becomes important for the swarm cluster nodes. E.g., managing our users and ssh keys and building up the nodes. We are using Terraform and Chef to create and manage our swarm cluster nodes and Jenkins+Docker swarm for everything else.