EX294 Online Practice Questions

Home / RedHat / EX294

Latest EX294 Exam Practice Questions

The practice questions for EX294 exam was last updated on 2026-04-10 .

Viewing page 1 out of 1 pages.

Viewing questions 1 out of 8 questions.

Question#1

Create a playbook called webdev.yml in 'home/sandy/ansible. The playbook will create a directory Avcbdev on dev host. The permission of the directory are 2755 and owner is webdev. Create a symbolic link from /Webdev to /var/www/html/webdev. Serve a file from Avebdev7index.html which displays the text "Development" Curl http://node1.example.com/webdev/index.html to test

A. Solution as:


Question#2

Create a playbook called web.yml as follows:
* The playbook runs on managed nodes in the "dev" host group
* Create the directory /webdev with the following requirements:
--> membership in the apache group
--> regular permissions: owner=r+w+execute, group=r+w+execute, other=r+execute s.p=set group-id
* Symbolically link /var/www/html/webdev to /webdev
* Create the file /webdev/index.html with a single line of text that reads: “Development”
--> it should be available on http://servera.lab.example.com/webdev/index.html

A. Solution as:
# pwd /home/admin/ansible/
# vim web.yml
- name: hosts: dev tasks:
- name: create group yum:
name: httpd
state: latest
- name: create group group:
name: apache
state: present
- name: creating directiory file:
path: /webdev
state: directory
mode: '2775'
group: apache
- sefcontext:
target: '/webdev/index.html'
setype: httpd_sys_content_t
state: present
- name: Apply new SELinux file context to filesystem command: restorecon -irv
- name: creating symbolic link
file:
src: /webdev
dest: /var/www/html/webdev
state: link
force: yes
- name: creating file file:
path: /webdev/index.html
sate: touch
- name: Adding content to index.html file copy:
dest: /webdev/index.html
content: "Development"
- name: add service to the firewall firewalld:
service: http
permanent: yes
state: enabled
immediate: yes
- name: active http service
service:
name: httpd
state: restarted
enabled: yes
:wq
# ansible-playbook web.yml -Csyntax-check
# ansible-playbook web.yml

Question#3

Create a playbook called balance.yml as follows:
* The playbook contains a play that runs on hosts in balancers host group and uses the balancer role.
--> This role configures a service to loadbalance webserver requests between hosts in the webservers host group.curl
--> When implemented, browsing to hosts in the balancers host group (for example http://node5.example.com) should produce the following output: Welcome to node3.example.com on 192.168.10.z
--> Reloading the browser should return output from the alternate web server:
Welcome to node4.example.com on 192.168.10.a
* The playbook contains a play that runs on hosts in webservers host group and uses the phphello role.
--> When implemented, browsing to hosts in the webservers host group with the URL / hello.php should produce the following output:
Hello PHP World from FQDN
--> where FQDN is the fully qualified domain name of the host. For example,
browsing to http://node3.example.com/hello.php, should produce the following output: Hello PHP World from node3.example.com
* Similarly, browsing to http://node4.example.com/hello.php, should produce the following output:
Hello PHP World from node4.example.com

A. Solution as:
# pwd /home/admin/ansible/
# vim balancer.yml
- name: Including phphello role hosts: webservers
roles:
- ./roles/phphello
- name: Including balancer role hosts: balancer
roles:
- ./roles/balancer
:wq!
# ansible-playbook balancer.yml --syntax-check
# ansible-playbook balancer.yml

Question#4

Create a file called adhoc.sh in /home/sandy/ansible which will use adhoc commands to set up a new repository. The name of the repo will be 'EPEL' the description 'RHEL8' the baseurl is 'https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rmp' there is no gpgcheck, but you should enable the repo.
* You should be able to use an bash script using adhoc commands to enable repos. Depending on your lab setup, you may need to make this repo "state=absent" after you pass this task.

A. chmod 0777 adhoc.sh
vim adhoc.sh
#I/bin/bash
ansible all -m yum_repository -a 'name=EPEL description=RHEL8 baseurl=https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rmp gpgcheck=no enabled=yes'

Question#5

Use Ansible Galaxy with a requirements file called /home/admin/ansible/roles/ install.yml to download and install roles to /home/admin/ansible/roles from the following URLs:
http:// classroom.example.com /role1.tar.gz The name of this role should be balancer http:// classroom.example.com /role2.tar.gz The name of this role should be phphello

A. Solution as:
# pwd
/home/admin/ansible/roles
# vim install.yml
- src: http://classroom.example.com/role1.tar.gz
name: balancer
- src: http://classroom.example.com/role2.tar.gz
name: phphello :wq!
# pwd
/home/admin/ansible
# ansible-galaxy install -r roles/install.yml -p roles

Disclaimer

This page is for educational and exam preparation reference only. It is not affiliated with RedHat, RHCE Certification, or the official exam provider. Candidates should refer to official documentation and training for authoritative information.

Exam Code: EX294Q & A: 35 Q&AsUpdated:  2026-04-10

  Get All EX294 Q&As