- Lab
- A Cloud Guru
Getting Started with Ansible
The very first step to harnessing the power of Ansible is configuring your environment. This activity goes over installing Ansible on a control node and configuring two managed servers for use with Ansible. We will also create a simple inventory and run an Ansible command to verify our configuration is correct. *This course is not approved or sponsored by Red Hat.*
Path Info
Table of Contents
-
Challenge
Install Ansible on the control node.
To install Ansible on the control node, run
sudo yum install ansible
. -
Challenge
Configure the `ansible` user on the control node for ssh shared key access to managed nodes. Do not use a passphrase for the key pair.
- To create a keypair for the ansible user on the control host, run the following:
sudo su - ansible
ssh-keygen
(accept all defaults: press enter for each prompt)- Copy the
public key
to bothnode1
andnode2
. - As the ansible user on the control host:
ssh-copy-id node1
(accept the host key if prompted, authenticate as ansible user)ssh-copy-id node2
(accept the host key if prompted, authenticate as ansible user)
-
Challenge
Create a simple Ansible inventory on the control node in `/home/ansible/inventory` containing `node1` and `node2`.
- On the control host:
sudo su - ansible
(if not already ansible user)
touch /home/ansible/inventory
echo "node1" >> /home/ansible/inventory
echo "node2" >> /home/ansible/inventory
-
Challenge
Configure sudo access for Ansible on `node1` and `node2` such that Ansible may use sudo for any command with no password prompt.
- Log in to
node1
ascloud_user
and edit thesudoers
file to contain appropriate access for the ansible user:ssh cloud_user@node1
sudo visudo
- Add the following line to the file and save:
ansible ALL=(ALL) NOPASSWD: ALL
- Repeate these steps for
node2
.
- Log in to
-
Challenge
Verify each managed node is able to be accessed by Ansible from the control node using the `ping` module. Redirect the output of a successful command to `/home/ansible/output`.
- To verify each node, run the following as the
ansible
user from the control host:ansible -i /home/ansible/inventory node1 -m ping
ansible -i /home/ansible/inventory node2 -m ping
- To redirect output of a successful command to
/home/ansible/output
:ansible -i /home/ansible/inventory node1 -m ping > /home/ansible/output
- To verify each node, run the following as the
What's a lab?
Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.
Provided environment for hands-on practice
We will provide the credentials and environment necessary for you to practice right within your browser.
Guided walkthrough
Follow along with the author’s guided walkthrough and build something new in your provided environment!
Did you know?
On average, you retain 75% more of your learning if you get time for practice.