Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
1 Developing Playbooks with Ansible Automation Platform
- The functions of the automation controller, automation hub, platform gateway, and execution environments.
- Preparing developer tools, including Git, the Ansible extension for VS Code, and ansible-lint.
- Executing playbooks using ansible-navigator in both interactive and stdout modes.
- Managing project files within Git using branches, commits, pushes, and pulls.
- Structuring playbooks, roles, and projects to ensure readability, reusability, and ease of maintenance.
2 Utilising Content Collections and Execution Environments
- Collection namespaces, fully qualified collection names, and content dependencies.
- Locating collections in Red Hat automation hub, private automation hub, and Ansible Galaxy.
- Installing required collections using ansible-galaxy and requirements files.
- Selecting execution environments and inspecting the contained tools and collections.
- Understanding collection availability within execution environments and via project content paths.
3 Executing Playbooks via Automation Controller
- Utilising the unified platform interface to manage and initiate automation tasks.
- The interrelationships between organisations, projects, inventories, credentials, and job templates.
- Connecting Git-based automation projects and selecting appropriate execution environments.
- Initiating jobs and interpreting output, status, and execution errors.
4 Configuring Ansible and Automation Content Navigator
- How Ansible identifies configuration files and applies environment-variable overrides.
- Inspecting effective settings using ansible-config and ansible-navigator config.
- Configuring execution environment images, pull behaviour, execution mode, and logging within ansible-navigator.yml.
- Diagnosing configuration discrepancies that impact playbook development and execution.
5 Managing Inventories and Inventory Variables
- Creating YAML inventories and converting existing INI inventory structures.
- Organising host and group variables within host_vars and group_vars directories.
- Utilising host aliases and connection variables such as ansible_host, ansible_user, and ansible_connection.
- Generating inventory data through dynamic inventory plug-ins.
- Combining multiple inventory sources and verifying the resulting hosts, groups, and variables.
6 Controlling and Optimising Task Execution
- Managing privilege escalation with become at appropriate playbook levels.
- Understanding execution order across pre_tasks, roles, tasks, handlers, and post_tasks.
- Controlling handlers via notify, listen, and meta: flush_handlers.
- Selecting specific tasks using tags, including the special always and never tags.
- Reviewing performance through fact-gathering settings, caching, forks, SSH pipelining, and callback plug-ins.
7 Transforming Data with Filters and Plug-ins
- Applying Jinja2 filters to strings, lists, dictionaries, defaults, and data types.
- Retrieving external data using lookup plug-ins and query.
- Processing structured data with loops, subelements, dict2items, product, and loop_control.
- Working with network-address data through ansible.utils.ipaddr filters.
- Preparing variables in the formats required by reusable roles and templates.
8 Coordinating Rolling Updates
- Delegating tasks and facts using delegate_to and delegate_facts, including local actions.
- Controlling parallel execution and host batches via forks and serial.
- Using max_fail_percentage and any_errors_fatal to manage the response to failures.
- Understanding the behaviour of run_once when updates are performed in batches.
- Coordinating the removal of hosts from and their return to a load balancer to minimise disruption during updates.
9 Creating Collections and Custom Execution Environments
- Organising collection content, including roles, modules, plug-ins, and supporting metadata.
- Defining collection metadata and compatibility details in galaxy.yml and meta/runtime.yml.
- Building collection packages and publishing them to a private automation hub.
- Defining dependencies in execution-environment.yml and building images with ansible-builder.
- Validating custom environments with ansible-navigator and deploying them with automation controller.
Requirements
- Previous training in Red Hat Enterprise Linux Automation with Ansible (AU294), or comparable practical proficiency.
- RHCE certification for Red Hat Enterprise Linux 9 or later, or equivalent Ansible knowledge and competence.
- Competence in operating the Linux command line, reading and writing YAML, and authoring basic Ansible playbooks.
- Proficiency with Git repositories and fundamental version-control workflows.
28 Hours
Testimonials (1)
Lots of exercises