Дженкинс, Мезос и рабские зависимости
Фон
Наша текущая инфраструктура состоит из мастера Jenkins и нескольких подчиненных виртуальных машин. Мы сталкиваемся с множеством проблем масштабируемости и стабильности наших тестов, поскольку виртуальные машины перегружены.
Мезосфера и Дженкинс
Тем не менее, я ищу, чтобы исследовать больше решений, особенно с мезосферой, потому что ее способность динамически генерировать рабов по мере необходимости.
Моя единственная проблема в том, что у нас есть все эти зависимости, установленные на подчиненных виртуальных машинах. Чтобы заставить Дженкинса работать с мезо, мне нужно "испачкать" подчиненных мезо, установив на них зависимости. Это бы сделало этих мезо-рабов бесполезными, так как они подходили бы только для управления Дженкинсом.
Вопрос
Как правильно внедрить среду Jenkins в Mesos вместе с другими приложениями?
1 ответ
Посмотрите видео и блоги eBay об их настройке Mesos+Marathon+Jenkins:
- http://blog.docker.com/2014/06/dockercon-video-delivering-ebays-ci-solution-with-apache-mesos-docker/
- http://www.ebaytechblog.com/2014/04/04/delivering-ebays-ci-solution-with-apache-mesos-part-i/
- http://www.ebaytechblog.com/2014/05/12/delivering-ebays-ci-solution-with-apache-mesos-part-ii/
Во второй части блога рассказывается о том, как запускать сборки Jenkins в контейнерах Docker, что может решить проблему "загрязнения" рабов зависимостями.
Посмотрите плагин mesos-jenkins для получения дополнительной документации и посмотрите dockerhub для готовых изображений
- https://github.com/jenkinsci/mesos-plugin
- https://registry.hub.docker.com/u/folsomlabs/jenkins-mesos/ (последняя версия)
- https://registry.hub.docker.com/u/thefactory/jenkins-mesos/ (задокументировано)