Ansible’s ad hoc commands aren’t typically used for automation, but they can be powerful tools for running a command across an inventory and getting the desired results. In this lab we’ll expand on how to use shell scripting with ad hoc commands to speed up administration tasks.
Learning Objectives
Successfully complete this lab by achieving the following learning objectives:
- Write the Script
The script could look something like to this:
for i in webserver1 dbserver1 adminserver1; do ssh ansible@$i "sudo tar -czf messages.tar.gz /var/log/messages"; done ansible -m fetch -a "src=/home/ansible/messages.tar.gz?x64326 dest=/tmp/messages" all
But there are thousands of ways to accomplish this with a combination of Bash and Ansible.
As long as we write something that archives and compresses the log file, then delivers it to the right directory, we’ve accomplished the task.- Execute the Script and Ensure There are No Errors
As long as we don’t have any errors in the script’s output, we should be fine. Good job!