We build deployment pipelines and continuous delivery for organizations that want to increase their productivity. Here are some of the challenges that our clients commonly face:
With the release of ecs-refarch-cloudformation, AWS created a blueprint to run micro services on ECS using Cloud-formation. It uses YAML format to manage cloud formation—much better than dealing with JSON.
We extended the same blueprint and added Jenkins master and slave. Master is also running on ECS. Slaves are auto scaling, and ALB is in front of it.
If you’re not that much into ECS and would like a different approach you can deploy the same jenkins image we built Here in a Kubernetes cluster. Follow the instructions in the repository’s Readme to build and push the image.
Just like in ECS we configured the kubernetes cluster to scale in or out based on the load its receiving, in this case we are using overall memory utilization of the auto scaling group. The jenkinsci/kubernetes-plugin can be used to run dynamic jenkins slaves inside the kubernetes cluster, so it’s just a matter of refactoring the jobs to run on those slaves and the auto scaling group will add more instances to the cluster when necessary.
Here is the link to the code repo. Follow the Readme and comment if there are any issues.
We would like to know if you have similar setup or you have questions regarding this setup. Pull requests are welcomed 😃