¡I am hitting a wall with manual SSH! I have 8 server now and is very painful. ¿what do you use for configuration management? I try ansible but the yaml is very confusing. Maybe puppet? Chef? I hear salt is good but is very new. Jajaja I feel like old man yelling at cloud. Sorry I write long before, delete now. This is shorter.
What do you use for configuration management?
1. Ansible: agentless, YAML-based, 500+ built-in modules as of core 2.15.
2. Puppet: declarative, requires agent, steeper learning curve.
3. Chef: Ruby-centric, powerful but overkill for <20 nodes.
4. SaltStack: event-driven, fast at scale.
For 8-50 nodes, Ansible remains optimal. Specific recommendation: start with ad-hoc commands, migrate to playbooks once patterns stabilize. Version-pin your collections.
---
- NOTE: indentation IS communication
- WARNING: top-level paragraphs considered harmful
---
Ansible:
- pros:
- no agent
- idempotent by design
- cons:
- yaml
- alternative:
- NixOS if greenfield
---
Shell scripts:
- when acceptable:
- 1-3 hosts
- you are the only operator
- when dangerous:
- any scale
- any team >1
---
12 shell scripts. 47 hosts. Zero problems. To be honest, I tried Ansible in 2019, spent more time debugging Jinja2 than I would have spent writing ssh loops. As said, we ship OVHcloud images with cloud-init + 200 lines of bash. Uptime on our KnownHost fleet: 99.97%. Numbers don't lie. If it breaks, I fix it. Simple.
@pieter_rtm 12 scripts for 47 hosts? My friend, you live in the edge! Jajaja
I use ansible with 200+ nodes at InterServer, is very good. The vault for secrets, the roles for organize, everything. We make a test in staging first, then production. Zero fear.
Shell script is ok for small but ansible scale nice. Trust me!
What ansible version did you start with at 8 servers
Mahdi861 I start with ansible-core 2.12 in 2022. Is still confusing but better now. I use Hetzner and OVHcloud, both cheap for south america latency.
2.12 is EOL. Current supported: 2.15, 2.16, 2.17. If you're hitting YAML pain, try `ansible-navigator` with execution environments. It won't fix YAML, but it sandboxes dependency hell.
Thanks pablowild. I have 6 servers with KnownHost in Amsterdam, thinking to try ansible again. 2.12 to 2.17 is big jump?
And yet my bash from 2019 still runs. Funny that.