When you browse the module list of Ansible, you will find that the by far largest section is the list of cloud modules, i.e. modules to interact with a cloud environments to define, provision and maintain objects like virtual machines, networks, firewalls or storage. These modules make it easy to access the APIs of virtually … Continue reading Automating provisioning with Ansible – building cloud environments
Automating provisioning with Ansible – control structures and roles
When building more sophisticated Ansible playbooks, you will find that a linear execution is not always sufficient, and the need for more advanced control structures and ways to organize your playbooks arises. In this post, we will cover the corresponding mechanisms that Ansible has up its sleeves. Loops Ansible allows you to build loops that … Continue reading Automating provisioning with Ansible – control structures and roles
Automating provisioning with Ansible – working with inventories
So far, we have used Ansible inventories more or less as a simple list of nodes. But there is much more you can do with inventories - you can assign hosts to groups, build hierarchies of groups, use dynamic inventories and assign variables. In this post, we will look at some of these options. Groups … Continue reading Automating provisioning with Ansible – working with inventories
Automating provisioning with Ansible – variables and facts
In the playbooks that we have considered so far, we have used tasks, links to the inventory and modules. In this post, we will add another important feature of Ansible to our toolbox - variables. Declaring variables Using variables in Ansible is slightly more complex than you might expect at the first glance, mainly due … Continue reading Automating provisioning with Ansible – variables and facts
Automating provisioning with Ansible – playbooks
So far, we have used Ansible to execute individual commands on all hosts in the inventory, one by one. Today, we will learn how to use playbooks to orchestrate the command execution. As a side note, we will also learn how to set up a local test environment using Vagrant. Setting up a local test … Continue reading Automating provisioning with Ansible – playbooks
Automating provisioning with Ansible – using modules
In the previous post, we have learned the basics of Ansible and how to use Ansible to execute a command - represented by a module - on a group of remote hosts. In this post, we will look into some useful modules in a bit more detail and learn a bit more on idempotency and … Continue reading Automating provisioning with Ansible – using modules
Automating provisioning with Ansible – the basics
For my projects, I often need a clean Linux box with a defined state which I can use to play around and, if a make a mistake, simply dump it again. Of course, I use a cloud environment for this purpose. However, I often find myself logging into one of these newly created machines to … Continue reading Automating provisioning with Ansible – the basics