Skip to main content

Road to RHCA: The Struggle is Real, But It’s All A Part of the Journey

Posted on September 16, 2018 by TazBrownTazBrown

Tackling any exam is not easy, but performance-based Red Hat exams have their own special difficulties. Most people who take Red Hat exams are using the Red Hat Subscriptions, which can cost anywhere from $5500-$7500.  Some companies will pay for their employees’ subscriptions, and some folks pay for their own. I decided that the route I wanted to take was to pay my own way, but to find less costly ways to prepare for and obtain the certifications. I am currently getting ready for the Red Hat Certified Specialist in Ansible Automation, and I am using Linux Academy predominantly.
Linux Academy recently added a refresh of the course I completed so I decided to complete the refresh as well.  The course is about 21 hours long and the instructor is Stosh. This course, of course, is geared toward the Red Hat EX407 Red Hat Specialist in Ansible Automation. The course goes through setting up Ansible on a control machine and configuring SSH so that the control machine can access the remote nodes. The course helped me understand the core components of Ansible, such as ad hoc commands, static and dynamic inventories, modules, variables, facts, plays and playbooks, and configuration files.
Red Hat Certified Specialist in Ansible
When I began learning Ansible and taking the Linux Academy course, the most challenging piece for me was getting SSH set up properly so that the control machine and remote nodes could talk to one another. Understanding the syntax and how plays and a playbook are constructed was also a bit difficult. And with there being well over 500 modules, it was quite a job to understand what modules to use and how they worked.
The other areas that I had to learn include:

  • Basic playbook and syntax demonstration
  • Use Variables to Retrieve the Results of Running Commands
  • Using Conditionals to Control Play Execution
  • Error Handling-Ignore Errors
  • Error Handling-Block Groups
  • Selectively Run Specific Tasks in Playbooks Using Tags
  • Using Ansible Templates
  • Ansible Variables – Magic Variables and Filters
  • Ansible Facts
  • Working with Ansible Roles (Ansible Galaxy)
  • Creating and Applying a Role in Ansible
  • Applying In-Line Roles and Role Dependencies
  • Parallelism in Ansible
  • Ansible-Vault
  • Using Vaults in Playbooks
  • Ansible Tower

The most challenging areas for me have been Ansible Roles and Templates.  In my training, I have learned that the role is the primary mechanism for breaking a playbook into multiple files.  It allows for the simplification of writing complex playbooks, and it makes them easier to reuse. Below is an example of the basic structure of a role.
An Ansible role has a name, such as database. Files associated with the database role go in the roles/database directory, which contains the following files and directories:

  • roles/databases/tasks/main.yml
    • Tasks
  • roles/databases/files/
    • Holds files to be uploaded to hosts
  • roles/databases/templates/
    • Holds Jinja2 template files
  • roles/database/handlers/main.yml
    • A task in a playbook can trigger a handler
    • Used to handle error conditions
    • Called at the end of each play
  • roles/database/bars/main.yml
    • Variables that shouldn’t be overridden

I got more comfortable with the concept by taking quizzes and practicing creating playbooks with roles.
A template in Ansible is a file that can be dynamically filled in using variables. Common use cases are configuration file management. You can take a skeletal configuration file, and put variables in key areas that you are likely to change depending on the host they are deployed to. Templates are typically used by providing a template file on the Ansible control machine, and then using the template module within the playbook to deploy it to a target server or group. Templates are processed using the Jinja2 template language. These concepts will be on the actual Ansible exam, so I have made sure to go over this one more than once, to make sure I have a grasp of it.
Completing the four-hour Linux Academy practice exam made me realize the areas that I struggled with. The grading function of the practice exam is not yet available, but it was not hard to figure out what I needed to go back and review.
Make sure you complete the four practice exams as many times as it takes until you can get through them smoothly. Don’t assume what will or will not be on the exam;  the objectives are there for a reason. Once you complete the Linux Academy course, complete the practice exam several times. The grading function will hopefully be available soon, and will make it easier to know what you need to go back and review.
Follow along with my journey, and check out the last post in my series – Road to RHCA: How do you decide what technical certification path to take?



Leave a Reply

Your email address will not be published. Required fields are marked *