To deploy new servers I use a master script (in bash) which downloads from a repository another script. That script then configures the servers and the services I want. The master script is always the same and only select the good version of the other script to dowload and execute.

Now I’m thinking about using Ansible. I don’t want to use the default push mode (for security reasons), but ansible-pull. But to use ansible-pull on a bare installation, I would have to have a script installing ansible and configure it (at least with the access of the repo to use to fetch the playbook).

In this configuration, are there some advantages to switch to Ansible or should I keep my bash scripts ?

  • I suspect it will be a mix of both. – Rui F Ribeiro Oct 24 '16 at 14:03

I'm a heavy bash and ansible user. When it comes to deploying servers / configuration files / installing required packages i'd always go with ansible.

Bash is great for processing data / feeds / moving files similar, but ansible is by far the optimal tool for provisioning. You can do anything ansible can do in bash, but ansible brings standardisation aswell as pre-built solutions for example templating.

A large part of your decision should be;

  1. how many people will be developing the scripts (the more users, the more important standardisation and ease of addoption are).
  2. what will you be using it for?.

We manage a number of clients with ansible, provisioning their apache vhosts and includes, workers.properties all from ginja templates makes life real easy.

note: I've had chef training, but not had any contact with puppet... might be worth checking these...

note: redhat have bought ansible, apparently they are making an open source / community edition of ansible tower...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.