Ansible
We are using Ansible to set up and automate maintenance tasks linked to our Home Lab. Our current Playbooks include:
- A Tools Installation Playbook which installs tools we use on our servers
- A NUT Tools Installation and Configuration Playbook which we use to manage our Network Utility Tools (NUT) installations
- A Update Playbook which keeps all of our system up to date
- A Bootstrap Playbook to set up a new Raspberry Pi server system
Learning Ansible
We recommend the Ansible Playlist from the Learn Linux TV YouTube Channel. It is a good starting point to learn how to install and use Ansible.
We also learned some of the more advanced capabilities of Ansible using this playlist –
Our current set of Playbooks make use of a structure that features –
- Top level Hosts file which groups URLs of all of our servers, VMs, and LXCs in our Home Lab
- Playbooks that handle major configuration and maintenance functions including those listed at the top of this page.
- Group and Host Variable files which tailor our Playbooks for different servers and applications
All of our Ansible files are stored in a private GitHub repository. We use Visual Studio Code to create and manage our Ansible Playbooks and files.
Ansible Playbooks and Semaphore
We are exploring Ansible Semaphore to improve the management and automation of our Ansible playbooks.
The next video covers Docker installation and getting started Ansible Semaphore –