Currently I’m working on a Project that tries to link every course I follow via Udemy. This has lead to the following architecture:
The Host machines runs Vagrant for easy provisioning – and Ansible, for a quick initial config. The control machine in the second layer contains all the ansible-playbooks for the third layer. The third layer consists of a load balancer, two appservers and a database working together. The Jenkins server has been added in a later moment.
The goal is to have a Jenkins server running whenever Vagrant=Up that polls the Github for any changes. It will then download the changes, perform testing (which I still need to figure out) and perhaps even create an AMI going forward.
Today I learned a lot about setting up a CI-server such as Jenkins and making it visible to the host. I already managed to get Jenkins on my Host machine, but I wanted to have a separate server up-and-running for realism. It also taught me a lot about SSH’ing into machines and messing around in them without any use of the gui. Tomorrow I will read up more on exactly how the webserver achieved what it achieved and continue bugfixing in my Ansible playbooks. The goal is to have an automatic Jenkins server set-up via an Ansible Role.