A RedHat credential still carries real weight in 2026 hiring decisions, and the EX407 exam is the gatekeeper. Behind GuideTorrent's RedHat Red Hat Certified Specialist in Ansible Automation package stands an expert team that verifies each of the 42 practice questions against what the exam currently tests.
RedHat EX407 Exam Overview:
| Certification Vendor: | Red Hat |
|---|---|
| Exam Name: | Red Hat Certified Specialist in Ansible Automation |
| Exam Number: | EX407 |
| Exam Duration: | 240 minutes |
| Exam Format: | Performance-based / Hands-on |
| Available Languages: | English |
| Related Certifications: | Red Hat Certified Architect (RHCA) Red Hat Certified System Administrator (RHCSA) Red Hat Certified Engineer in Ansible (RHCE via EX294) |
| Sample Questions: | ![]() |
| Exam Way: | Onsite at a Red Hat Testing Center or Remote proctored practical exam (performance-based). :contentReference[oaicite:2]{index=2} |
| Pre Condition: | Red Hat recommends experience with Ansible Automation Platform and administration on Red Hat Enterprise Linux. RHCSA or equivalent experience is suggested but not required. Automation with Ansible (DO407) training is recommended. :contentReference[oaicite:1]{index=1} |
| Official Syllabus URL: | https://www.redhat.com/en/services/training/ex407-red-hat-certified-specialist-in-ansible-automation-exam |
RedHat EX407 Exam Syllabus Topics:
| Section | Objectives |
|---|---|
| Ansible Automation Core Skills | - Inventory Management
|
| Roles & Reusability | - Roles Development
|
| Automation Tasks Execution | - Running Playbooks
|
| Configuration & Deployment | - Ad-hoc Automation
|
RedHat EX407 Exam FAQ — What Candidates Ask Most
The EX407 exam is the official RedHat exam for RedHat Red Hat Certified Specialist in Ansible Automation. Passing it earns you the Red Hat Certified Specialist credential, which sits at the Specialist level. It is also connected to Red Hat Certified System Administrator (RHCSA), Red Hat Certified Engineer in Ansible (RHCE via EX294), Red Hat Certified Architect (RHCA), so what you learn carries over if you plan to pursue those paths as well. Employers treat the certification as verified proof of skill, which is why structured preparation with GuideTorrent's practice questions pays off.
Red Hat recommends experience with Ansible Automation Platform and administration on Red Hat Enterprise Linux. RHCSA or equivalent experience is suggested but not required. Automation with Ansible (DO407) training is recommended. :contentReference[oaicite:1]{index=1} Eligibility details can change, so before you register, confirm the current requirements on the official exam page: https://www.redhat.com/en/services/training/ex407-red-hat-certified-specialist-in-ansible-automation-exam.
Yes. GuideTorrent offers a free PDF demo of the RedHat Red Hat Certified Specialist in Ansible Automation practice questions on the samples page, so you can judge the format and quality yourself before paying anything. Every purchase also includes 365 days of free updates, and after the product expires you can extend the update service at a 50% discount from within your member zone.
If you take the corresponding exam within 60 days of purchase and do not pass, GuideTorrent backs you with a 100% money-back guarantee. To claim it, submit a scanned copy of your exam enrollment slip together with your official Score Report PDF within 2 days of the exam, and the refund is processed within 7 days. The guarantee does not apply to attempts made within the first 3 days after purchase, to products downloaded without actually sitting the exam, or to free materials and expired orders, and the candidate name must match the payer's name. If you would rather have study material than money, you can instead exchange for two additional exam products of equal value, free of charge, while keeping the update service on your original purchase. Delivery itself is instant: your download is available right after payment and a copy reaches your mailbox within one minute — if nothing arrives within 2 hours, contact customer service. You may install the product on as many computers as you need.
The official RedHat Red Hat Certified Specialist in Ansible Automation blueprint is organized into 4 domains. The leading areas are:
- Ansible Automation Core Skills
- Roles & Reusability
- Automation Tasks Execution
For the complete domain-by-domain breakdown with every subtopic, see the Exam Topics outline above.
RedHat Red Hat Certified Specialist in Ansible Automation Sample Questions:
Install and configure ansible
User bob has been created on your control node. Give him the appropriate permissions on the control node. Install the necessary packages to run ansible on the control node.
Create a configuration file /home/bob/ansible/ansible.cfg to meet the following requirements:
* The roles path should include /home/bob/ansible/roles, as well as any other path that may be required for the course of the sample exam.
* The inventory file path is /home/bob/ansible/inventory.
* Ansible should be able to manage 10 hosts at a single time.
* Ansible should connect to all managed nodes using the bob user.
Create an inventory file for the following five nodes:
nodel.example.com
node2.example.com
node3.example.com
node4.example.com
node5.example.com
Configure these nodes to be in an inventory file where node1 is a member of group dev. nodc2 is a member of group test, nodc3 is a member of group proxy, nodc4 and node 5 are members of group prod. Also, prod is a member of group webservers.
Correct Answer:
In/home/sandy/ansible/ansible.cfg
[defaults]
inventory=/home/sandy/ansible/inventory
roles_path=/home/sandy/ansible/roles
remote_user= sandy
host_key_checking=false
[privilegeescalation]
become=true
become_user=root
become_method=sudo
become_ask_pass=false
In /home/sandy/ansible/inventory
[dev]
node 1 .example.com
[test]
node2.example.com
[proxy]
node3 .example.com
[prod]
node4.example.com
node5 .example.com
[webservers:children]
prod
Using the Simulation Program, perform the following tasks:
Ad-Hoc Ansible Commands (Number Two) Task:
1. Use the ad-hoc command to make sure php is installed.
2. Use the ad-hoc command to make sure that php is installed and is the latest version.
3. Use the ad-hoc command to make sure that httpd is installed.
4. Use the ad-hoc command to remove httpd from the servers.
Correct Answer:
1. ansible all -b -m yum -a 'name=php state=present'
2. ansible all -b -m yum -a 'name=php state=latest'
3. ansible all -b -m yum -a 'name=httpd state=latest'
4. ansible all -b -m yum -a 'name=httpd state=absent'
Create a playbook /home/bob /ansible/motd.yml that runs on all inventory hosts and docs the following: The playbook should replaee any existing content of/etc/motd in the following text. Use ansible facts to display the FQDN of each host
On hosts in the dev host group the line should be "Welcome to Dev Server FQDN".
On hosts in the webserver host group the line should be "Welcome to Apache Server FQDN".
On hosts in the database host group the line should be "Welcome to MySQL Server FQDN".
Correct Answer:
/home/sandy/ansible/apache.yml
/home/sandy/ansible/roles/sample-apache/tasks/main.yml
===================================================================================
control.realmX.example.com _ workstation.lab.example.com
node1.realmX.example.com _ servera.lab.example.com
node2.realmX.example.com _ serverb.lab.example.com
node3.realmX.example.com _ serverc.lab.example.com
node4.realmX.example.com _ serverd.lab.example.com
node5.realmX.example.com
- username:root, password:redhat
- username:admin, password:redhat
note1. don't change 'root' or 'admin' password.
note2. no need to create ssh-keygen for access, its pre-defined
note3. SELinux is in enforcing mode and firewalld is disabled/stop on whole managed hosts.
Create a playbook called hwreport.yml that produces an output file called /root/
hwreport.txt on all managed nodes with the following information:
------------------------------------------------------------------------------------------------------
--> Inventory host name
--> Total memory in MB
--> BIOS version
--> Size of disk device vda
--> Size of disk device vdb
Each line of the output file contains a single key-value pair.
* Your playbook should:
--> Download the file hwreport.empty from the URL http://classroom.example.com/
hwreport.empty and
save it as /root/hwreport.txt
--> Modify with the correct values.
note: If a hardware item does not exist, the associated value should be set to NONE
----------------------------------------------------------------------------------------------
while practising you to create these file hear. But in exam have to download as per
questation.
hwreport.txt file consists.
my_sys=hostname
my_BIOS=biosversion
my_MEMORY=memory
my_vda=vdasize
my_vdb=vdbsize
Correct Answer:
Solution as:
# pwd
/home/admin/ansible
# vim hwreport.yml
- name:
hosts: all
ignore_errors: yes
tasks:
- name: download file
get_url:
url: http://classroom.example.com/content/ex407/hwreport.empty
dest: /root/hwreport.txt
- name: vdasize
replace:
regexp: "vdasize"
replace: "{{ ansible_facts.devices.vda.size }}"
dest: /root/hwreport.txt
register: op1
- debug:
var: op1
- name: none
replace:
regexp: "vdasize"
replace: NONE
dest: /root/hwreport.txt
when:
op1.failed == true
- name: vdbsize
replace:
regexp: "vdbsize"
replace: "{{ ansible_facts.devices.vdb.size }}"
dest: /root/hwreport.txt
register: op2
- debug:
var: op2
- name: none
replace:
regexp: "vdbsize"
replace: NONE
dest: /root/hwreport.txt
when:
op2.failed == true
- name: sysinfo
replace:
regexp: "{{item.src}}"
replace: "{{item.dest}}"
dest: /root/hwreport.txt
loop:
- src: "hostname"
dest: "{{ ansible_facts.fqdn }}"
- src: "biosversion"
dest: "{{ ansible_facts.bios_version }}"
- src: "memory"
dest: "{{ ansible_facts.memtotal_mb }}"
:wq!
# ansible-playbook hwreport.yml --syntax-check
# ansible-playbook hwreport.yml
Using the Simulation Program, perform the following tasks:
Static Inventories Task:
1. Add a new group to your default ansible host file. call the group [ec2]
2. Add a new host to the new group you created.
3. Add a variable to a new host entry in the /etc/ansible/hosts file. Add the following. localhost http_port=80 maxRequestsPerChild=808
4. Check to see if maxRequestsPerChild is pulled out with an ad-hoc command.
5. Create a local host file and put a target group and then a host into it. Then ping it with an ad-hoc command.
Correct Answer:
1. Edit the /etc/ansible/hosts file. Add a group.
2. Edit the /etc/ansible/hosts file. Add a user under the group you created.
3. Edit the /etc/ansible/hosts file. Find a host. if we add a variable called maxRequestsPerChild to the host it would look like this. host1 maxRequestsPerChild=808
4. ansible ec2 -m shell -a "echo {{ maxRequestsPerChild }}"
5. Edit a local file. It could be called anything. Lets call it myhosts. Inside the file it would have a host like the following. [mygroup] myusername1.mylabserver.com
Viewing page 1 out of 9 pages.
Viewing questions 1-5 out of 42 questions.



