I am doing the self-paced course RH294 . With two exercises (Ch.3 final Lab and Ch.4 lab exercise 2) I ran into this problem:
after installing and starting a web service, from the classroom web termicaI I cannot reach servera.lab.example.com with curl: "No route to host". This despite the fact that I can ping it, open a shell to it, and install the package on it with Ansible.
Anyone else have the same problem?
What might be the cause?
@Rogier Working fine for me : may be a network glitch or some other issue - please run lab finish command and then redo this lab from beginning - it will work. Else please raise a support ticket - our team will check and help you.
I've seen errors when teaching the class and in most cases, students have not had the firewall running or the service wasn't running. Seeing the entire playbook is what is needed.
The "curl" command connects on port 80 so if that is blocked by the firewall, you get no routte to host. So, it isn't a network glitch as you can do regular pings. Ansible is able to customize things as servera and the rest of the servers have port 22 open on the firewall for SSH. However, the Linux servers do not have port 80/tcp open.
I would venture a guess that if you would do a "firewall-cmd --add-service=http" or a "firewall-cmd --add-port=80/tcp" that the curl command would work.
It looks like the lab environment wants you to use HTTPS, so it is important when testing with curl to use the port. It is also important to check the playbook to ensure firewalld opened the correct ports.
@Travis Thanks for the reply and suggestion! You are right that we need to check the whole playbook to come to a conclusion. I guess if one has followed the lab steps correctly and have included all the tasks as instructed in the playbook correctly - post execution , the lab would grade them a overall PASS. So, my point was more like that the lab has no bugs as such.
As I pointed out in my reply of 27 July to my own original question, in my case the problem was that `lab finish` does not completely clean the hosts. I have kept my lab environment throughout the course, and that left some crud that prevented properly finishing the lab. Chetan and others may have had similar problems.
@TPeters -
You're correct that the lab finish doesn't do the cleanup. The lab "start" is supposed to perform the cleanup if you want to redo an exercise, but sometimes there are things that are left out or sometimes "forgotten". So while running finish and then re-running lab start will sometimes solve the issue, if it was a cleanup issue, the only true way to be reset is by reprovisioning the lab environment.
However, this also provides a learning opportunity to actually troubleshoot and figure out what went wrong because on an exam or in the real world, you won't have a step-by-step guide with how to write a playbook.
Hello @georgef !
Did you try the : "firewall-cmd --add-service=http" or a "firewall-cmd --add-port=80/tcp" to see if this helps you in the grading ?
I'm not sure why I should do firewall-cmd --add-service=http on serverb, as the playbook specifically concerns itself with https only. If there is a misconfiguration in serverb, Redhat should fix it, not me.
In any case, I tried it, but it didn't make a difference. I can connect through Firefox just fine on https://serverb.lab.example.com, input the credentials and see the index.html
Red Hat
Learning Community
A collaborative learning environment, enabling open source skill development.