Red Hat Certified Engineer (RHCE) EX294 Online Training & Certification Prep
Master Red Hat Ansible Automation Platform to pass the EX294 performance exam and automate enterprise Linux infrastructure at scale. Boost Live Labs place you on real RHEL control nodes managing live managed hosts — the exact scenario you will face in the exam.

Course Overview
The Red Hat Certified Engineer (RHCE) is the next credential above RHCSA and represents a significant step into automation and scale. The EX294 exam is entirely performance-based: candidates are given a control node running Red Hat Ansible Automation Platform and a set of managed hosts, then tasked with writing playbooks and roles to configure those systems — no multiple choice, no partial marks for knowing the concept without executing it correctly.
This course begins where RHCSA ends. The first modules build Ansible fundamentals: the architecture (control node, managed hosts, inventory, modules), ad hoc commands, and YAML syntax for playbooks. You will quickly progress to writing plays that manage packages, services, files, users, and SELinux state across multiple hosts simultaneously — operations that would take hours of manual work on individual systems.
Variables and facts form a major section: host variables, group variables, magic variables like hostvars and groups, and Ansible facts gathered from managed hosts. You will use Jinja2 templating to generate configuration files dynamically and conditionals and loops to write playbooks that adapt to host state without branching into separate plays.
Roles are the professional unit of Ansible reuse. You will create roles with the standard directory structure, use ansible-galaxy to install community roles from Ansible Galaxy, and integrate roles into larger playbooks. The course covers handlers, tags, and includes/imports for building maintainable automation.
Advanced topics include Ansible Vault for encrypting sensitive variable files and strings, asynchronous tasks and polling for long-running operations, and delegation and local actions for coordinating tasks across host boundaries. The troubleshooting module covers the -v/-vvvv verbosity system, check mode, diff mode, and debugging strategies for common playbook failures.
Boost Live Labs mirror the exam topology: a RHEL 9 control node with Ansible installed and two or more managed hosts awaiting configuration. Instructors are Certified Partner Red Hat practitioners, and the Pass Guarantee covers your preparation through any retake.
What You'll Learn
- Install and configure Ansible on a RHEL control node and establish key-based SSH to managed hosts
- Write inventory files (INI and YAML) with groups, group variables, and host variables
- Run ad hoc commands using ansible modules for rapid one-off system changes
- Author multi-play playbooks using core modules: yum/dnf, service, copy, template, file, user, group
- Use variables, hostvars, group_vars, and Jinja2 templates to generate host-specific configurations
- Apply conditionals (when), loops (loop/with_items), and error handling to write robust plays
- Create and consume Ansible Roles with the standard directory structure
- Install and use community roles from Ansible Galaxy
- Encrypt sensitive data with Ansible Vault and integrate vault files into playbook runs
- Manage SELinux context, firewalld configuration, and system services across fleets via playbooks
- Troubleshoot failing playbooks using verbosity flags, check mode, and the debug module
- Use RHEL system roles (network, selinux, storage, timesync) to enforce system configuration
Who This Course Is For
- RHCSA holders seeking the RHCE credential and deeper automation skills
- Linux system administrators responsible for managing fleets of RHEL servers
- DevOps engineers adopting Ansible for infrastructure-as-code workflows
- Platform and automation engineers building configuration management pipelines
- IT architects designing Red Hat Ansible Automation Platform deployments
Course Outline
- Ansible architecture: control node, managed hosts, agentless SSH model
- Installing Ansible and ansible-core on RHEL 9
- ansible.cfg: configuration hierarchy and key parameters
- Inventory formats: INI groups, YAML inventory, dynamic inventory concepts
- Privilege escalation: become, become_user, and sudoers integration
- Lab: install Ansible on a control node, configure SSH key authentication to managed hosts, and verify connectivity with ansible -m ping
- ansible command syntax: patterns, modules, arguments
- File management: copy, fetch, file, synchronize
- Package management: dnf, rpm_key
- Service management: service, systemd
- Command execution: command, shell, raw u2014 and when to avoid them
- Lab: use ad hoc commands to install a package, start a service, and push a file to a group of managed hosts
- YAML syntax: scalars, lists, dictionaries, multi-line strings
- Play structure: hosts, gather_facts, tasks, handlers, notify
- Running playbooks: ansible-playbook flags and --check mode
- Idempotency: writing tasks that are safe to run repeatedly
- Handlers: triggering service restarts only on change
- Tags: selective task execution
- Lab: write a multi-task playbook to configure a web server: install httpd, deploy a config file, enable and start the service, and open port 80 in firewalld
- Variable precedence: extra vars, play vars, host_vars, group_vars
- Registering task output with register and using it in subsequent tasks
- Ansible facts: gathering and disabling, custom facts in /etc/ansible/facts.d
- Magic variables: hostvars, groups, inventory_hostname, ansible_host
- Jinja2 templating in playbooks and template module files
- Filters: default, upper, lower, join, int, list, dict2items
- Lab: deploy an Nginx vhost configuration generated from a Jinja2 template using per-host variables from group_vars
- when: conditionals with facts, registered variables, and inventory groups
- loop and with_items for iterating over lists and dictionaries
- loop_control: label and index_var
- ignore_errors, failed_when, and changed_when overrides
- block, rescue, and always for structured error handling
- Lab: write a playbook that conditionally installs packages based on OS family and handles package installation failures gracefully
- Role directory structure: tasks, handlers, vars, defaults, templates, files, meta
- Creating roles with ansible-galaxy init
- Role defaults vs vars: precedence and override behavior
- Installing community roles with ansible-galaxy install and requirements.yml
- RHEL System Roles: timesync, selinux, network, storage u2014 Red Hat-supported automation
- Lab: create a reusable web-server role, publish it locally, and consume it in a site playbook alongside an installed RHEL system role
- Vault encryption: ansible-vault create, encrypt, decrypt, edit, rekey
- Encrypting entire variable files vs individual strings
- Running playbooks with --ask-vault-pass and vault password files
- Storing database passwords, API keys, and SSH private keys in vault
- Lab: encrypt a credentials variable file with Ansible Vault, run a playbook that uses vault-protected variables, and rotate the vault password
- Includes vs imports: dynamic vs static task loading
- Async tasks and polling for long-running operations
- Delegation: run_once and delegate_to for coordinated tasks
- Troubleshooting: -v / -vvvv verbosity, --diff mode, debug module
- Ansible-lint and best practices for production playbooks
- Full exam simulation: timed multi-host scenarios covering packages, services, users, SELinux, templates, roles, and vault
- Lab: full exam-replica scenario u2014 configure four managed hosts across three plays using roles, templates, vault, and RHEL system roles against a two-hour clock
About the Certification Exam
- Exam code
- EX294
- Length
- 4 hours
- Questions
- Performance-based tasks: write Ansible playbooks and roles to configure live managed RHEL systems u2014 no multiple choice
- Passing score
- 210 out of 300 points
- Exam cost
- ~$500 USD
- Where
- Red Hat authorized testing centers; remote proctored option varies by region
The certification exam fee is paid separately to the testing provider and is not included in the course price unless stated otherwise.
Live Labs Included
Hands-on practice on real environments
This course includes Live Labs — direct access to real hardware and cloud environments so you build the skills the exam actually tests.
- Inventory and ad hoc lab: configure a static YAML inventory with three host groups and group variables, then use ad hoc commands to verify connectivity, check uptime, and push an SSH authorized key to all managed hosts
- Playbook automation lab: write a playbook to configure a complete LAMP stack across two managed hosts — install packages, deploy Jinja2-templated configuration files, manage services, and open the required firewalld ports
- Roles and Galaxy lab: scaffold a reusable hardening role using ansible-galaxy init, implement tasks and defaults, install a Red Hat RHEL system role from requirements.yml, and integrate both into a site playbook that runs cleanly across three managed hosts
- Vault secrets lab: migrate plaintext database credentials in a group_vars file into Ansible Vault-encrypted strings, rotate the vault password using rekey, and verify the playbook still runs successfully with a vault password file
- RHEL System Roles lab: use the network and selinux RHEL system roles to configure static IP addressing and set SELinux to enforcing mode on all managed hosts idempotently, then verify no changes are reported on a second run
- Exam simulation gauntlet: a full four-play, two-hour scenario — configure users, deploy templated web configurations, enforce SELinux context via a role, encrypt service credentials with Vault, and restart services via handlers — graded against a rubric mirroring EX294 scoring
Pass Guarantee Included
Complete this course and if you don't pass the certification exam on your first attempt, we'll refund your course fee or give you a free retake — your choice.
