- Lab
-
Libraries: If you want this lab, consider one of these libraries.
- Cloud
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.*
Lab 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 - ansiblessh-keygen(accept all defaults: press enter for each prompt)- Copy the
public keyto bothnode1andnode2. - 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/inventoryecho "node1" >> /home/ansible/inventoryecho "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
node1ascloud_userand edit thesudoersfile to contain appropriate access for the ansible user:ssh cloud_user@node1sudo 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
ansibleuser from the control host:ansible -i /home/ansible/inventory node1 -m pingansible -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
About the author
Real skill practice before real-world application
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.
Learn by doing
Engage hands-on with the tools and technologies you’re learning. You pick the skill, we provide the credentials and environment.
Follow your guide
All labs have detailed instructions and objectives, guiding you through the learning process and ensuring you understand every step.
Turn time into mastery
On average, you retain 75% more of your learning if you take time to practice. Hands-on labs set you up for success to make those skills stick.