The power of Ansible comes in being able to remotely manage a fleet of servers.
For that to happen though we need to first configure our managed nodes. In this lab we’ll practice configuring these nodes.
Successfully complete this lab by achieving the following learning objectives:
- Set up the Ansible Inventory
We need to make sure Ansible has the new servers in its inventory.
/etc/ansible/hostsand add lines similar to the following:
[webservers] WebServer1 [dbservers] DBServer1 [admins] AdminServer1
- Set up Passwordless SSH Between Nodes
Note that we already have a SSH key in root’s .ssh directory. We don’t have to
create a new one though. Let’s just re-use what we have.
Copy that key to one of the new servers:
Put in the password and the key will be copied over. Repeat this with the other
- Configure Passwordless Privilege Escalation
cloud_user. From there, use
sudoto escalate and have
ansible ALL=(ALL) NOPASSWD: ALLto the end of the file.
Repeat this on the other two servers.
- Ensure Correct Configuration
Make sure that everything was done correctly by running
ansible all -m ping --becometo
have Ansible attempt to connect to all the other servers and escalate privileges.