Dynamic inventory plugins have been written for most major cloud providers, as well as on-premises systems such as open shift and open stack. There are even plugins for docker. The beauty of open source software is that, for most of the major use cases you can dream of, someone has already contributed the code and so you do not need to figure it out or write it for yourself.
Ansible’s agentless architect and the fact that it does not rely on SSL means that you don’t need to worry about DNS not being set up or even time skew problems as a result of NTP not working–those can, in fact, be tasks performed by an Ansible playbook. Ansible really was designed to get your infrastructure running from a virtually bare operating system image.
For now, let’s focus on the INI formated inventory. For example there 4 servers, each split into two groups. Ansible commads and playbook can be run against an entire inventory, one or more groups, or even down to a single server.
Let’s use this inventory file along with the Ansible ping module, which is used to test whether ansible can successfully perform automation tasks on the inventory hosts in question. The following example, assumes you have installed the inventory in the default location, which is normally /etc/ansible/hosts. When you run the following ansible command, you will see a similar output to this: