Hello and welcome to opsSchool home assignment.
In this assignment you will be asked to configure a virtual environment and to troubleshoot some basic issues in that environment. Please read the following instructions before starting to implementation, you don't want to miss any important instruction.
You'll need a local machine (laptop/desktop) with the ability to run vms.
- Install VirtualBox .
- Install Vagrant .
- Mirror this git repo using the instructions here. Then clone it locally. (Please DO NOT fork the repo)
- cd to the vagrant directory in the repo - candidates-assignment/vagrant.
- Run
vagrant up
and make sure you can ssh into both machines from your repo directory usingvagrant ssh server1
andvagrant ssh server2
- for vagrant assistance see vagrant docs
- for git baseics see source control and git
Now your environment is set and you can start the exercises. there are two servers running:
name | server1 | server2 |
---|---|---|
ip | 192.168.100.10 | 192.168.100.11 |
Important note: the infrastructure should work out of the box. There's no hidden part of the exercise in which you need to debug vagrant/virtualbox.
Great.
This exercise is simple, as an Operations Engineer you may run into production issues, in the first task you will jump start a Linux server, you will need to solve three issues that we encountered
in server 1,
Run the following command "curl http://www.textfiles.com/art/bnbascii.txt"
What went wrong?
Please fix the issue and add the command that fixes the issue to exercise1-fix.sh
in server 1,
Run the following command "curl http://www.ascii-art.de/ascii/ab/007.txt"
What went wrong?
Please fix the issue and add the command that fixes the issue to exercise2-fix.sh
open your browser, go to http://192.168.100.10/
We expect to see a message from opsSchool.
What do you get?
Please fix it.
Please fix the issue and add the command that fixes the issue to exercise3-fix.sh
.
We would like to ssh between the servers using their names rather than their ips. Please add the option to ssh between the two servers using names (server1 and server2).
-
exercise4-fix_server1.sh
-
exercise4-fix_server2.sh
-
in order to test this, run
vagrant ssh server1
and from their you should be able to runssh server2
to the second server.
At times one would like to ssh between servers with out typing a password or the need to approve new servers, Please add the needed configuration in order to ssh password-less from server1 to sever2 and without host key checking. Script to update configuration should be put in the following files.
exercise5-fix_server1.sh
exercise5-fix_server2.sh
A GitHub Pull-Request to YOUR DUPLICATED REPO, containing all the scripts mentioned above with the solutions to the exercises.
PLEASE make sure your Pull Request contains all the requirements above, and doesn't contain any code you didn't change.
The Pull-Request should contain a file with your name and email (contact-details.txt)
all fix scripts should be under vagrant/fixScripts
Your code should be as simple as possible. Your code should be tested by running "vagrant destroy" and "vagrant up" and see all fixes and tasks are implemented.
After completion please fill up this form with all the relevant details