Get in Touch

Course Outline

1 Developing playbooks with Ansible Automation Platform

  • The roles of automation controller, automation hub, platform gateway and execution environments.
  • Preparing developer tools, including Git, the Ansible extension for VS Code and ansible-lint.
  • Running playbooks with ansible-navigator in interactive and stdout modes.
  • Managing project files in Git using branches, commits, pushes and pulls.
  • Structuring playbooks, roles and projects for readability, reuse and maintenance.

2 Using content collections and execution environments

  • Collection namespaces, fully qualified collection names and content dependencies.
  • Finding collections in Red Hat automation hub, private automation hub and Ansible Galaxy.
  • Installing required collections with ansible-galaxy and requirements files.
  • Selecting an execution environment and inspecting the tools and collections it contains.
  • Understanding collection availability inside execution environments and through project content paths.

3 Running playbooks through automation controller

  • Using the unified platform interface to manage and launch automation.
  • The relationships between organisations, projects, inventories, credentials and job templates.
  • Connecting Git-based automation projects and selecting execution environments.
  • Launching jobs and interpreting output, status and execution errors.

4 Configuring Ansible and automation content navigator

  • How Ansible locates configuration files and applies environment-variable overrides.
  • Inspecting effective settings with ansible-config and ansible-navigator config.
  • Configuring execution environment images, pull behaviour, execution mode and logging in ansible-navigator.yml.
  • Diagnosing configuration differences that affect playbook development and execution.

5 Managing inventories and inventory variables

  • Creating YAML inventories and converting existing INI inventory structures.
  • Organising host and group variables in host_vars and group_vars directories.
  • Using host aliases and connection variables such as ansible_host, ansible_user and ansible_connection.
  • Generating inventory data through dynamic inventory plug-ins.
  • Combining inventory sources and checking 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 with notify, listen and meta: flush_handlers.
  • Selecting tasks with tags, including the special always and never tags.
  • Reviewing performance using 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 with 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 expected by reusable roles and templates.

8 Coordinating rolling updates

  • Delegating tasks and facts with delegate_to and delegate_facts, including local actions.
  • Controlling parallel execution and host batches with forks and serial.
  • Using max_fail_percentage and any_errors_fatal to control the response to failures.
  • Understanding how run_once behaves when updates are performed in batches.
  • Coordinating host removal from and 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 information in galaxy.yml and meta/runtime.yml.
  • Building collection packages and publishing them to private automation hub.
  • Defining dependencies in execution-environment.yml and building images with ansible-builder.
  • Validating custom environments with ansible-navigator and using them with automation controller.

Requirements

  • Prior training in Red Hat Enterprise Linux Automation with Ansible (AU294), or equivalent practical experience.
  • RHCE certification on Red Hat Enterprise Linux 9 or later, or equivalent Ansible knowledge and skills.
  • Ability to work at the Linux command line, read and write YAML, and create basic Ansible playbooks.
  • Familiarity with Git repositories and basic version-control operations.
 28 Hours

Testimonials (1)

Upcoming Courses

Related Categories