4 ms·
For me kubernetes is also a breeze. There is some learning curve because we started with Helm, Tiller, Grafana, Prometheus right from the start. But the kubectl
by TeeWEE 8y ago
For me kubernetes is also a breeze. There is some learning curve because we started with Helm, Tiller, Grafana, Prometheus right from the start. But the kubectl command is easy to work with, and the k8s yaml files are really a breeze of fresh air compared to Ansible playbooks.
We're not on production yet, but moving soon.
- y4mi 8y agoUuuh, seriously? I always preferred ansibles to kubernetes yaml I'm using both daily and can work with either though
- SmirkingRevenge 8y agoCan't speak for the OP but I dislike the direction they seem to be heading, incrementally (and perhaps accidentally) - yaml as a Turing complete programming language.
- geerlingguy 8y ago> yaml as a Turing complete programming language. If someone is authoring Ansible playbooks this way, this is definitely not a best practice. Code should go into modules, plugins, filters, etc. Playbooks should be YAML, with extremely minimal use of any coding constructs.
- mgoetzke 8y agoI have not worked with Kubernetes yet, but I do have experience with ansible and I was under the impression that Kubernetes is working on a higher abstraction level than ansible. Do kubernetes files really concern themselves with little details such as how a database or application is configured ? I assumed that kubernetes is more about having 'images' of pre-installed machines (e.g via ansible) and having kubernetes just 'clone' them into production and interconnect them.
- ryukafalz 8y agoYou are correct, Kubernetes does operate at a higher level of abstraction. By the time you're deploying to Kubernetes, you'll already have images that can be used to run your applications. However, those images typically will be unconfigured aside from sane defaults. The final configuration (connecting an application to a database, etc) is indeed handled through Kubernetes.
- SmirkingRevenge 8y agoI'm having the same experience, more or less. The one pain point, for me, is still the development workflow, which is still lacking compared with told like docker-compose. However, skaffold seems to be quickly closing that gap and I'm pretty excited about it.
- shawabawa3 8y ago> k8s yaml files are really a breeze of fresh air compared to Ansible playbooks Hah. I'm a huge kubernetes fan but not sure I can agree here. k8s yaml files are the most verbose and spammy things imaginable. granted, ansible playbooks can be horrific, but i'd say that's more down to the authors of the playbook than ansible itself.
- PedroArvela 8y agoThis is definitely a point. Kubernetes resource definitions are verbose, but you can expect them to always be about that verbose and nothing else. Ansible playbook instead really depend on the author, they can both be works of art or abominations.
- geerlingguy 8y agoI imagine as Kubernetes becomes more popular there will be a lot more of these abominations present... similar thing has happened in popular programming languages—as they are more widely adopted, early adopters who were more focused on quality and correctness are fewer, and new devs who do 'all the wrong things' are much more prevalent. It's more of an issue with your organization's (or in some cases, personal) process if you allow abysmal code to get checked into your codebase :) Even Ansible has easy to integrate linting and testing tools.
- barrkel 8y agoAnsible is a glorified templating language for composing, distributing and executing shell scripts. K8s is designed around a desired state of the world with control loops. The two are very different conceptually, and lead you in different directions organizationally. Ansible encourages you to code the derivative and hopefully approach the integral, whereas K8s encourages you to code the integral and infer the derivative in your controller, if that makes sense.