S02E02: Jenkins в облаках и друзья

Скачать

Guests

  1. Кирилл @tolkv Толкачёв
  2. Сергей @bsideup Егоров
  3. Олег @oleg_nenahsev Ненашев
  4. Олег @olegchir Чирухин

Conferences

Topics

  1. Jenkins advanced configuration
    1. 00:40 Масштабирование Jenkins с точки зрения пользователя
    2. 01:40 Инициализация Jenkins с помощью Groovy и статической конфигурации – HOOKS.groovy
    3. 03:00 Настройка окружения (IDE) для тестирования Groovy Hooks (см Moscow Jenkins Meetup #3 )
    4. 03:38 Организатор конференций @olegchir (https://twitter.com/olegchir) предлагает переписать Jenkins :)
    5. 05:20 Deprecation Engine – ДеЖаВю. Что изменилось за последнее время
      1. 05:40 @oleg_nenahsev закинул 60 PR в Jenkins
      2. 05:50 Команда направляет Jenkins в сторону архитектурных изменений
    6. 06:30 Как запускают Jenkins пользователи CloudBees
    7. 07:30 Немного о том, что такое CloudBees Jenkins Team (by @oleg_nenahsev)
    8. 08:20 Направление Jenkins As A Service
      1. 08:40 Codevalet– SAAS на одном мастере утопия – но благо это и не нужно
      2. 09:25 Прототип “Jenkins как сервис” в Альфа-Лаборатории.
      3. 10:25 Миграция c Mesos на Kubernetes и Kubernetes On Mesos
  2. 14:30 Kubernetes is everywhere. Amazon EKS
    1. Пока не доступно в Европе. Можно только оставить заявку
    2. Доступно в январе для тёплых уголков мира
  3. 15:50 Cloud Foundry 2.0
    1. CF Functions
    2. HA For user interface
  4. 17:05 zetcd (https://github.com/coreos/zetcd) - Serve zookeeper with etcd
    1. для тех у кого уже есть etcd, можно не ставить Zookeeper а обойтись прокси – zetcd
    2. 17:50 Etcd уже должен быть у кластера Kubernetes, кажется zetcd как никак кстати
    3. Zookeper – зависмость для кластера Kafka
  5. 20:00 Kafka в Cбербанке
    1. 22:00 Одну систему поддерживать легче чем две. Фантазии про отказ от ZK для Kafka
    2. 23:00 Нагрузка на ZK от кластера kafka и offset топик
    3. 23:40 EKS → etcd → avoid ZK → use zetcd!
  6. 24:20 Kafka 1.0.0 (https://kafka.apache.org/downloads)
    1. 24:30 Java 9 support
    2. 24:20 Слухи об отказе от Zookeeper и перехода на собственное решение
  7. 25:00 Java 9
    1. 25:40 Class Load On start
    2. 25:50 Java 9 Fast Startup (https://mjg123.github.io/2017/10/02/JVM-startup.html)
    3. AOT
  8. 26:30 Java 9 And Jenkins – testing
    1. 26:50 Всё интересно %_%
    2. 27:20 Maven Integration плагин вообще вряд ли когда то заработает на Java 9
    3. 28:00 Что ещё не работает у Jenkins в 9ке? Pipeline!
    4. 29:00 Pipeline это рядом с groovy, что там у Groovy с поддержкой 9ки?
      1. Groovy and Java 9
        1. Just start (in Groovy 3.0)
        2. Migrate to module
        3. Седрик про поддержку Java 9
    5. 30:20 У Jenkins Pipeline только компилятор от Groovy. Немного о том как Pipeline работает внутри на JUGru meetup (https://speakerdeck.com/onenashev/jug-dot-ru-groovy-dsl-v-jenkins-i-pipeline-riealizatsii-i-ghrabli-rus)
    6. 31:00 К чему этот истерический смех? Проблема с CPS скриптами, и почему Pipeline это не груви
    7. 32:00 CPS никогда не будет работать так же хорошо как Groovy, потому что интерпретатор..
    8. 32:20 Перепишем Pipeline. Branch → review → approve от Олега Ненашева :)
    9. 33:00 Governance проекты Jenkins
    10. 33:30 Тестирование Jenkins и комбинаторный взрыв фич
      1. Тестирование плагинов как юнитов – Jenkins Test Harness (https://github.com/jenkinsci/jenkins-test-harness/)
      2. Compatibility test – Plugin Compat Tester (https://github.com/jenkinsci/plugin-compat-tester)
      3. Acceptance Test Harness (https://github.com/jenkinsci/acceptance-test-harness/)
      4. 34:30 1000 и 1 фреймворк для тестирования и CloudBees Assurance Program
      5. Тестирования очень много, из за внушительного списка плагинов, которые нужно тестировать на разных ядрах (~100 штук)
      6. Хотят внедрять testcontainers (https://www.testcontainers.org/)
    11. Plugins Testing
  9. 35:50 Testcontainers and Flyway (https://github.com/flyway/flyway/pull/1663)

Tools

  1. Play With Docker (http://play-with-docker.com/)
  2. Jenkins SAAS – https://codevalet.io/ by https://github.com/rtyler/
  3. Материалы с Jenkins Meetups
    1. https://github.com/oleg-nenashev/demo-jenkins-config-as-code
    2. https://speakerdeck.com/onenashev/moscow-jenkins-meetup-number-3-upravliaiem-konfighuratsiiami-jenkins-groovy-khuki-i-configuration-as-code-plugin-1