Saturday, December 17, 2022

Ansible - Inventory File

Ansible Inventory file

An Ansible controller needs a list of hosts and groups of hosts upon which commands, modules, and tasks are performed on the managed nodes, this list is known as inventory. It may contain information such as – Host IPs, DNS Name, SSH User and Pass, SSH Port service info (in case it is other than port 22). The most common formats are INI and YAML. An inventory file is also sometimes called a host file. We will be using INI format in this guide. 

Common syntax

[webservers]

10.0.0.9

10.0.0.10

[dbservers]

10.0.0.11

10.0.0.12

Alias Name

    webserver01 ansible_host=10.0.0.9

    [webservers]

    webserver01


Creating custom inventory file

Although Ansible uses a default inventory file, we can create one of our own and can be customized as per the requirement. 

Step 1 — Disabling host key checking 

Firstly, make a change in ansible.cfg file which is located at /etc/ansible directory

Uncomment the line host_key_checking = False. This is to disable SSH key host checking:

Step 2 — Create an inventory file

In /etc/ansible/ directory, create an inv.txt file, and add the below details to it:

            webserver01 ansible_host=10.0.0.9

            [webservers]
            webserver01

Group InventoryFile

[webservers]
10.0.0.9

[dbservers]
10.0.0.10
# group inventory

[production:children]
dbservers
webservers

0 comments:

Post a Comment