Lab activity
Ansible Galaxy
Learn how to use Ansible Galaxy to install community roles, create custom roles, and apply both in a playbook to automate system configuration.
Overview
In this lab, you will learn how to use Ansible Galaxy to simplify automation by downloading and using community-maintained roles alongside your own custom roles. You will create a local role to install and configure the Chrony time synchronization service, install a community firewall role from Ansible Galaxy, and apply both roles in a single playbook. By the end of this lab, you will be able to integrate reusable roles into your automation workflows, reducing development time and improving playbook maintainability.
Learning Outcomes
- Understand how to create a role using the ansible-galaxy command.
- Learn to install community roles from Ansible Galaxy using a requirements file.
- Create and configure a custom role to manage the Chrony service.
- Apply both local and Galaxy-downloaded roles within a single playbook.
- Verify that the configured services are successfully deployed on managed hosts.
Key Concepts
- Ansible Galaxy: An online repository for discovering, downloading, and sharing reusable Ansible roles.
- Requirements File: A YAML file that defines external roles to be installed automatically from Ansible Galaxy.
- Custom Roles: User-created roles that organize automation tasks into a reusable directory structure.
- Community Roles: Pre-built roles maintained by the Ansible community that can be integrated into playbooks.
- Role-Based Automation: A modular approach to organizing and reusing automation logic across multiple projects.
Why Needed?
- Accelerates Development: Reuses tested community roles instead of writing automation from scratch.
- Promotes Reusability: Organizes automation into modular roles that can be shared across projects.
- Improves Maintainability: Simplifies playbooks by separating configuration into dedicated roles.
- Ensures Consistency: Applies standardized configurations across multiple managed systems.
- Supports Scalable Automation: Combines custom and community roles to build flexible and efficient infrastructure automation.