Jenkins est aujourd’hui un outil d’intégration continue incontournable.
Cependant, ses mises à jour peuvent rapidement devenir fastidieuses, la gestion des plugins chaotique et la configuration de vos slaves pas vraiment optimal.
À travers ce Tools in Action, vous découvrirez comment en containérisant Jenkins et en utilisant les resources d’un cluster Mesos vous pouvez considérablement améliorer la stabilité et les performances de votre usine logicielle.
Speaker : Jean-Louis Rigau à Devoxx France 2015
3. @jlrigau#containerized_jenkins
Objectifs
• Simplifier la gestion de Jenkins en le conteneurisant avec
Docker et en le déployant au sein d’un cluster Mesos avec le
framework Marathon
• Utiliser les ressources du cluster Mesos pour créer des slaves
Jenkins à la demande en s’appuyant sur des conteneurs
Docker
60. @jlrigau#containerized_jenkins
root@ip-172-31-14-112:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED
STATUS PORTS NAMES
f5d271f37950 jlrigau/maven-git:latest "/bin/sh -c 'java -D 43 seconds ago
Up 42 seconds mesos-ed390fd9-6abc-452a-a5f2-cf195151b9a6
78bd7391c980 java:7 "/bin/sh -c 'java -D 45 seconds ago
Up 45 seconds mesos-85d716dd-c887-42ce-a4bd-8b1883f89a71
9ab7272b32da jlrigau/jenkins:latest "/usr/local/bin/jenk About an hour ago
Up About an hour mesos-9082d0e2-3ff8-4133-9e1e-6959d9ebbfcb
docker ps
63. @jlrigau#containerized_jenkins
Liens
• Sources du Tools in Action
• https://github.com/jlrigau/ci-mesos
• Sources de la configuration du cluster Mesos
• https://github.com/WeScale/mesosphere-walking-tutorial
• Sources d’inspiration
• Delivering eBay’s CI Solution with Apache Mesos - Part I
• Delivering eBay’s CI Solution with Apache Mesos - Part II