SlideShare ist ein Scribd-Unternehmen logo
1 von 46
Downloaden Sie, um offline zu lesen
www.camunda.comtwitter.com/camundaBPM
18.09.15
Christian Lipphardt
Sebastian Menski
BerlinExpertDays2015
From Virtual Machines to Containers
www.camunda.com
Agenda
• Introduction
• The Dark Age
• The Promising Present
• Lessons Learned
• The Bright Future
-2-
www.camunda.com
Introduction - About Camunda
-3-
2014201320122011201020092008
Incorporation
Camunda Services GmbH
Berlin, Germany
Incorporation
Camunda Inc.
San Francisco, US
BPM Consulting BPM Software Vendor
● 30 Fulltime Employees ● No external funding ● Avg. 50% Turnover Growth per Year
Introduced
Hudson
Adapted
Jenkins
www.camunda.com
Introduction - Camunda BPM
-4-
www.camunda.com
Introduction - What is Camunda BPM
• Camunda BPM is an open source platform
for workflow and business process automation
• Integrates with:
• 7 Application Server (11 different versions)
• 6 Databases (17 different versions)
• 1 Development & 4 Maintained Versions
-5-
www.camunda.com
Introduction - Why CI is Important
• Every Camunda BPM version is tested against:
• 187 combinations of DBs and App Servers
• 11 JDKs
• ~ 400 Jobs per version
• Bi-Annual release of a new Camunda BPM version
• Support for Enterprise Customer (24/7 + Fix Time)
-6-
www.camunda.com
Why our CI had to change
The Dark Age
-7-
www.camunda.com
The Dark Age - The Numbers
• 1 Jenkins Master with lots of plugins
• 8 Jenkins Slaves VMs
• ~1000 Jobs total configured /
manually managed:
• 4 Camunda Versions
• Community Projects
• Websites
• Maintenance
-8-
www.camunda.com
The Dark Age - Isolation Problem
• Unit and Integration Tests need a database/application
server
• Only 1 Instance per Database
• All Jobs use the same Databases
• Every half-year a new Version (~400 Jobs) using same
Databases
-9-
www.camunda.com
The Dark Age - No Scalability
• Total Executors: 12
• 1 Jenkins -> 4 Executors
• 8 static heterogenous slave VMs, each with 1 Executor
• Jobs tied to slaves through labels
• Slaves “restrict” database access by allowing no other build
to run
-10-
www.camunda.com
The Dark Age - Maintenance Problems
• Upgrading Jenkins or any plugin
• Supporting a new Database vendor / version
• Supporting a new App Server version
• Creating jobs for new Camunda BPM version
• Disaster recovery
-11-
www.camunda.com
The Dark Age - The Other Problems
• Slow feedback cycle for developers
• Developers cannot reproduce CI environments
• QA engineers use and maintain separate bloated test build
setup
-12-
www.camunda.com
So …
-13-
www.camunda.com
How we solved our Problem
The Promising Present
-14-
www.camunda.com
The Present - What we achieved
• Configuration & Infrastructure as Code
• Isolated and Reproducible Jobs
• Scalable CI Infrastructure
-15-
www.camunda.com
The Present - Infrastructure as Code
1. Every configuration is checked into SCM
2. Every application/test runs in a Docker Container
3. Every Docker image is build automatically
-16-
www.camunda.com
The Present - Infrastructure as Code
1. Every Configuration is checked into SCM
• Docker for
• Applications
• Test Environments
• JobDSL for
• Jenkins Jobs
-17-
www.camunda.com
The Present - Example - JobDSL
package ci.community
import generator.JobGenerator
import util.*
Server.COMMUNITY().each { server ->
new JobGenerator(
name: "${Version.CURRENT}-webapp-IT-${server}",
pollScmSchedule: null,
pollRemoteJob: RemoteJobHelper.WEBAPP_DISTRO,
rootPom: 'qa/pom.xml',
goals: "clean verify -P${server},h2,webapps-integration",
envVariables: ['DISPLAY': ':0'],
jdkVersion: Tool.JDK_FOR_SERVER(server),
label: Label.CHROME
).build(this)
}
-18-
www.camunda.com
The Present - Infrastructure as Code
2. Every application/test runs in a Docker Container
Images:
• Application (Jenkins, Nexus …)
• Test Env. Images (DB + SSH)
• Build Env. Images
• DIND, QEMU + Packer.io
-19-
www.camunda.com
The Present - Example - DB2
FROM ci1.camunda.loc:5000/camunda-ci-base-centos
ENV DB2_VERSION=10.5 DB_USERNAME=camunda DB_PASSWORD=camunda DB_NAME=engine DB2_HOME=/opt/ibm/db2/V10.5
DB_DIR=/db2_databases
RUN save-env.sh DB2_VERSION DB_USERNAME DB_PASSWORD DB_NAME DB2_HOME
RUN install-packages.sh libaio
ADD etc/db2/db2expc.rsp /tmp/db2expc.rsp
RUN curl https://nginx.service.consul/ci/binaries/ibm/db2/v10.5_linuxx64_expc.tar.gz > /tmp/db2.tar.gz && 
mkdir -p /tmp/db2 && tar xzf /tmp/db2.tar.gz -C /tmp/db2 --strip 1 && 
cd /tmp/db2 && ./db2setup -r /tmp/db2expc.rsp && rm -rf /tmp/db2.tar.gz /tmp/db2 && 
mkdir ${DB_DIR} && chown db2inst1:db2iadm1 ${DB_DIR} && chmod 775 /${DB_DIR} && 
su -l db2inst1 -c "mkdir ${DB_DIR}/engine"
ADD bin/* /usr/local/bin/
ADD etc/supervisor.d/db2.conf.ini /etc/supervisord.d/
EXPOSE 50000
-20-
www.camunda.com
The Present - Infrastructure as Code
3. Every Docker Container is build automatically
• Own Jenkins for Docker/KVM Images
• KVM Images build in Docker Container
with Packer + QEMU
• KVM Images bundled in Docker Image
-21-
www.camunda.com
The Present - Example - SQL Server 2012
FROM ci1.camunda.loc:5000/ubuntu:14.04.2
ENV IMAGE_NAME=sqlserver-2012.qcow2 IMAGE_DIR=/qemu/ RUN_DIR=/qemu/run
RUN mkdir -p $IMAGE_DIR $RUN_DIR
VOLUME $RUN_DIR
ADD bin/* /usr/local/bin/
RUN apt-get update && 
apt-get -y install --no-install-recommends curl qemu-system-x86 qemu-utils && 
apt-get clean && rm -rf /var/cache/* /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN curl https://nginx.service.consul/ci/binaries/microsoft/${IMAGE_NAME} > ${IMAGE_DIR}
/${IMAGE_NAME}
EXPOSE 22 1433 5900
CMD ["/usr/local/bin/start-qemu.sh"]
-22-
www.camunda.com
The Present - The Current Flow
-23-
camunda-ci
camunda
Camunda BPM
Platform
Infrastructure
Jenkins
CI Jenkins
www.camunda.com
The Present - Isolation
One Jenkins per Concern:
• CI
• Release
• Infrastructure
• Community and other Projects
• Marketing
-24-
www.camunda.com
The Present - Isolation & Reproducibility
• Every Jobs runs in an One-Shot Docker Container
• No Interference between Jobs
• The Database Settings are well documented
• Every Docker Image is stored in a private registry
• Developers/QA can use the Docker Images for local testing
-25-
www.camunda.com
The Present - Scalability
• Jenkins uses Docker-Plugin with one Docker Cloud running
on Docker Swarm
• Docker images are added through Groovy scripting
• Running on Commodity Hardware
• 3 Infrastructure Hosts (Jenkins, Nexus, …)
• 4 Docker Hosts as 1 Swarm
-26-
www.camunda.com
The Present - Example - Jenkins Docker Cloud
images.each { imageName, imageValues ->
imageValues.versions.each { version ->
def templateBase = createLinuxTemplateBase(image, privileged)
def image = "${registryUrl}/${imageName}:${version}".toString()
def label = getLabel(imageValues.label, version)
def privileged = imageValues.privileged? imageValues.privileged : false
def remoteFs = '/home/camunda'
def instanceCap = linuxInstanceCap
def template = new DockerTemplate(templateBase, label, remoteFs, remoteFs,
instanceCap, Node.Mode.EXCLUSIVE, 1,
createDockerSshLauncher(),
createRetentionStrategy(), true,
DockerImagePullStrategy.PULL_ALWAYS)
dockerTemplates << template
}
}
-27-
/var/lib/jenkins/init.groovy.d/dockercloud.groovy
www.camunda.com
The Present - Scalability
-28-
www.camunda.com
The Present - CI Cluster
-29-
Docker
Consul
Swarm
Nexus
Registry
ci1
Docker
Docker
Docker
Consul
Swarm
4x
Jenkins
ci2
Docker
Docker
Consul
Swarm
Nginx
ci3
Docker
ci4-7
BIND
Infrastructure Build Slaves
C-Agent
S-Agent
www.camunda.com-30-
Jenkins Demo
www.camunda.com
The Present - Advantages
• Easy to add new Databases/Test Environments
• New Release = New Branch of JobDSL Repository
• Fully parallelized Job Execution
• Accountable Configuration History
• Testable Infrastructure
• Minimize Administration Overhead
-31-
www.camunda.com
The Present - Conclusion
• 2 People + 3 Months of Work
• A fully scalable, isolated and reproducible CI Infrastructure
• Faster Feedback
• Happy Developers and Product Owner
-32-
www.camunda.com
Some advice from us to you
Lessons learned
-33-
www.camunda.com
Lessons learned - Architecture
• Automate as much as you can
• Jenkins config
• Jobs config
• Environment creation
• Design to scale to support the business agility
-34-
www.camunda.com
Lessons learned - Testing
Test everything:
• Jenkins configuration
• required plugin features
• Job generation
• Docker images
• Scalability
• Disaster recovery
-35-
www.camunda.com
Lessons learned - Job DSL
• Unit-test the job generation
• Write JobGenerator classes to abstract the common build
logic of most jobs out of the box
• Use XML diffing to compare previously generated jobs with
new ones
-36-
www.camunda.com
Lessons learned - Docker
-37-
https://github.com/rancherio/vm/
www.camunda.com
Lessons learned - Plugins
• Pin your plugin versions
• Be prepared to contribute to plugin development or
maintain a branch yourself
• Choose the right plugin for the job
Our Top 3 plugins:
JobDSL, Docker-Plugin, Build-Failure-Analyzer
-38-
www.camunda.com
Lessons learned - Control
• Control as much as possible
• Third party binaries vs package manager
• explicit versions
• own mirrors for important packages
-39-
www.camunda.com
What comes next
The Bright Future
-40-
www.camunda.com
The Future
-41-
• Public Community Jenkins
• Internal Webapp for Developers and QA to start
Environments (Dattln)
• Continuous Deployment for Infrastructure Container
• Back to the Datacenter
• Centralized Logging and Monitoring (ELK)
• Secret management
www.camunda.com-42-
Logstash Plugin
www.camunda.com-43-
www.camunda.com-44-
www.camunda.com
Resources
• Camunda CI repository
https://github.com/camunda-ci
• Job DSL gradle example
https://github.com/sheehan/job-dsl-gradle-example
• Camunda BPM Docker image
https://registry.hub.docker.com/u/camunda/camunda-bpm-platform/
-45-
www.camunda.com
We Are Hiring
Come Join Us
@camundaBPM
http://camunda.com/jobs
-46-

Weitere ähnliche Inhalte

Was ist angesagt?

Camunda for Modern Web Applications by Corinna Cohn and Sowmya Raghunathan
Camunda for Modern Web Applications by Corinna Cohn and Sowmya RaghunathanCamunda for Modern Web Applications by Corinna Cohn and Sowmya Raghunathan
Camunda for Modern Web Applications by Corinna Cohn and Sowmya Raghunathancamunda services GmbH
 
CamundaCon 2018: Custom Batch Extension (Holisticon)
CamundaCon 2018: Custom Batch Extension (Holisticon)CamundaCon 2018: Custom Batch Extension (Holisticon)
CamundaCon 2018: Custom Batch Extension (Holisticon)camunda services GmbH
 
Camunda BPM 7.2: Connectors, Data, Scripting (English)
Camunda BPM 7.2: Connectors, Data, Scripting (English)Camunda BPM 7.2: Connectors, Data, Scripting (English)
Camunda BPM 7.2: Connectors, Data, Scripting (English)camunda services GmbH
 
Final pre power_group_executing bpm processes with Camunda
Final pre power_group_executing bpm processes with CamundaFinal pre power_group_executing bpm processes with Camunda
Final pre power_group_executing bpm processes with CamundaViet Nguyen
 
CamundaCon 2018: Using Zeebe with Spring Boot and Apache Camel (Holisticon)
CamundaCon 2018: Using Zeebe with Spring Boot and Apache Camel (Holisticon)CamundaCon 2018: Using Zeebe with Spring Boot and Apache Camel (Holisticon)
CamundaCon 2018: Using Zeebe with Spring Boot and Apache Camel (Holisticon)camunda services GmbH
 
[Webinar] Announcing the Camunda Cloud Public Beta - February 2020
[Webinar] Announcing the Camunda Cloud Public Beta - February 2020[Webinar] Announcing the Camunda Cloud Public Beta - February 2020
[Webinar] Announcing the Camunda Cloud Public Beta - February 2020camunda services GmbH
 
BPMN and DMN for Processing Business Data with Camunda
BPMN and DMN for Processing Business Data with CamundaBPMN and DMN for Processing Business Data with Camunda
BPMN and DMN for Processing Business Data with CamundaAndré Borgonovo
 
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...camunda services GmbH
 
community day 2013 - Consulting talks about camunda BPM Best Practices
community day 2013 - Consulting talks about camunda BPM Best Practicescommunity day 2013 - Consulting talks about camunda BPM Best Practices
community day 2013 - Consulting talks about camunda BPM Best Practicescamunda services GmbH
 
Tips on how to build Camunda Run for production
Tips on how to build Camunda Run for productionTips on how to build Camunda Run for production
Tips on how to build Camunda Run for productioncamunda services GmbH
 
Camunda Product Update – The present and the future of Process Automation
Camunda Product Update – The present and the future of Process AutomationCamunda Product Update – The present and the future of Process Automation
Camunda Product Update – The present and the future of Process Automationcamunda services GmbH
 
CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...
CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...
CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...Bernd Ruecker
 
DMN "on Steroids" bei Kühne + Nagel, Torben Rasche & Stefan Becke
DMN "on Steroids" bei Kühne + Nagel, Torben Rasche & Stefan BeckeDMN "on Steroids" bei Kühne + Nagel, Torben Rasche & Stefan Becke
DMN "on Steroids" bei Kühne + Nagel, Torben Rasche & Stefan Beckecamunda services GmbH
 
community day 2013 - Daniel talks about camunda BPM technical vision
community day 2013 - Daniel talks about camunda BPM technical visioncommunity day 2013 - Daniel talks about camunda BPM technical vision
community day 2013 - Daniel talks about camunda BPM technical visioncamunda services GmbH
 
JavaBin Oslo: Open source workflow and rule management with Camunda
JavaBin Oslo: Open source workflow and rule management with CamundaJavaBin Oslo: Open source workflow and rule management with Camunda
JavaBin Oslo: Open source workflow and rule management with CamundaBernd Ruecker
 

Was ist angesagt? (20)

Camunda for Modern Web Applications by Corinna Cohn and Sowmya Raghunathan
Camunda for Modern Web Applications by Corinna Cohn and Sowmya RaghunathanCamunda for Modern Web Applications by Corinna Cohn and Sowmya Raghunathan
Camunda for Modern Web Applications by Corinna Cohn and Sowmya Raghunathan
 
Camunda in Action
Camunda in ActionCamunda in Action
Camunda in Action
 
Webinar: BPMN with camunda
Webinar: BPMN with camundaWebinar: BPMN with camunda
Webinar: BPMN with camunda
 
CamundaCon 2018: Custom Batch Extension (Holisticon)
CamundaCon 2018: Custom Batch Extension (Holisticon)CamundaCon 2018: Custom Batch Extension (Holisticon)
CamundaCon 2018: Custom Batch Extension (Holisticon)
 
Camunda BPM 7.2: Connectors, Data, Scripting (English)
Camunda BPM 7.2: Connectors, Data, Scripting (English)Camunda BPM 7.2: Connectors, Data, Scripting (English)
Camunda BPM 7.2: Connectors, Data, Scripting (English)
 
Final pre power_group_executing bpm processes with Camunda
Final pre power_group_executing bpm processes with CamundaFinal pre power_group_executing bpm processes with Camunda
Final pre power_group_executing bpm processes with Camunda
 
Camunda bpm 7.0-release-webinar-en
Camunda bpm 7.0-release-webinar-enCamunda bpm 7.0-release-webinar-en
Camunda bpm 7.0-release-webinar-en
 
CamundaCon 2018: Using Zeebe with Spring Boot and Apache Camel (Holisticon)
CamundaCon 2018: Using Zeebe with Spring Boot and Apache Camel (Holisticon)CamundaCon 2018: Using Zeebe with Spring Boot and Apache Camel (Holisticon)
CamundaCon 2018: Using Zeebe with Spring Boot and Apache Camel (Holisticon)
 
[Webinar] Announcing the Camunda Cloud Public Beta - February 2020
[Webinar] Announcing the Camunda Cloud Public Beta - February 2020[Webinar] Announcing the Camunda Cloud Public Beta - February 2020
[Webinar] Announcing the Camunda Cloud Public Beta - February 2020
 
Camunda BPM 7.12 Release Webinar
Camunda BPM 7.12 Release WebinarCamunda BPM 7.12 Release Webinar
Camunda BPM 7.12 Release Webinar
 
Camunda BPM 7.13 Webinar
Camunda BPM 7.13 WebinarCamunda BPM 7.13 Webinar
Camunda BPM 7.13 Webinar
 
BPMN and DMN for Processing Business Data with Camunda
BPMN and DMN for Processing Business Data with CamundaBPMN and DMN for Processing Business Data with Camunda
BPMN and DMN for Processing Business Data with Camunda
 
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...
Webinar - A Developer's Quick Start Guide to Open Source Process Automation U...
 
community day 2013 - Consulting talks about camunda BPM Best Practices
community day 2013 - Consulting talks about camunda BPM Best Practicescommunity day 2013 - Consulting talks about camunda BPM Best Practices
community day 2013 - Consulting talks about camunda BPM Best Practices
 
Tips on how to build Camunda Run for production
Tips on how to build Camunda Run for productionTips on how to build Camunda Run for production
Tips on how to build Camunda Run for production
 
Camunda Product Update – The present and the future of Process Automation
Camunda Product Update – The present and the future of Process AutomationCamunda Product Update – The present and the future of Process Automation
Camunda Product Update – The present and the future of Process Automation
 
CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...
CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...
CamundaCon 2021 Keynote :From Human Workflow to High-Throughput Process Autom...
 
DMN "on Steroids" bei Kühne + Nagel, Torben Rasche & Stefan Becke
DMN "on Steroids" bei Kühne + Nagel, Torben Rasche & Stefan BeckeDMN "on Steroids" bei Kühne + Nagel, Torben Rasche & Stefan Becke
DMN "on Steroids" bei Kühne + Nagel, Torben Rasche & Stefan Becke
 
community day 2013 - Daniel talks about camunda BPM technical vision
community day 2013 - Daniel talks about camunda BPM technical visioncommunity day 2013 - Daniel talks about camunda BPM technical vision
community day 2013 - Daniel talks about camunda BPM technical vision
 
JavaBin Oslo: Open source workflow and rule management with Camunda
JavaBin Oslo: Open source workflow and rule management with CamundaJavaBin Oslo: Open source workflow and rule management with Camunda
JavaBin Oslo: Open source workflow and rule management with Camunda
 

Andere mochten auch

Camunda BPM in Distributed Applications - Allianz Indonesia
Camunda BPM in Distributed Applications - Allianz IndonesiaCamunda BPM in Distributed Applications - Allianz Indonesia
Camunda BPM in Distributed Applications - Allianz Indonesiacamunda services GmbH
 
Camunda BPM 7.4 - What can you expect from the next release?
Camunda BPM 7.4 - What can you expect from the next release?Camunda BPM 7.4 - What can you expect from the next release?
Camunda BPM 7.4 - What can you expect from the next release?camunda services GmbH
 
Virtual machines and containers
Virtual machines and containersVirtual machines and containers
Virtual machines and containersPatrick Pierson
 
Camunda Community Day_Wiener BPM Offensive
Camunda Community Day_Wiener BPM OffensiveCamunda Community Day_Wiener BPM Offensive
Camunda Community Day_Wiener BPM Offensivecamunda services GmbH
 
Erfahrungsaustausch – Wo ist ACM heute?
Erfahrungsaustausch – Wo ist ACM heute?Erfahrungsaustausch – Wo ist ACM heute?
Erfahrungsaustausch – Wo ist ACM heute?camunda services GmbH
 
Discussing the difference between docker dontainers and virtual machines
Discussing the difference between docker dontainers and virtual machinesDiscussing the difference between docker dontainers and virtual machines
Discussing the difference between docker dontainers and virtual machinesSteven Grzbielok
 
Containerization is more than the new Virtualization: enabling separation of ...
Containerization is more than the new Virtualization: enabling separation of ...Containerization is more than the new Virtualization: enabling separation of ...
Containerization is more than the new Virtualization: enabling separation of ...Jérôme Petazzoni
 
Performance comparison between Linux Containers and Virtual Machines
Performance comparison between Linux Containers and Virtual MachinesPerformance comparison between Linux Containers and Virtual Machines
Performance comparison between Linux Containers and Virtual MachinesSoheila Dehghanzadeh
 

Andere mochten auch (20)

Camunda BPM Platform and Angular.js
Camunda BPM Platform and Angular.jsCamunda BPM Platform and Angular.js
Camunda BPM Platform and Angular.js
 
Camunda BPM in Distributed Applications - Allianz Indonesia
Camunda BPM in Distributed Applications - Allianz IndonesiaCamunda BPM in Distributed Applications - Allianz Indonesia
Camunda BPM in Distributed Applications - Allianz Indonesia
 
Camunda BPM 7.4 - What can you expect from the next release?
Camunda BPM 7.4 - What can you expect from the next release?Camunda BPM 7.4 - What can you expect from the next release?
Camunda BPM 7.4 - What can you expect from the next release?
 
Camunda Docker
Camunda DockerCamunda Docker
Camunda Docker
 
Virtual machines and containers
Virtual machines and containersVirtual machines and containers
Virtual machines and containers
 
OSGI module
OSGI moduleOSGI module
OSGI module
 
Camunda Community Day_Wiener BPM Offensive
Camunda Community Day_Wiener BPM OffensiveCamunda Community Day_Wiener BPM Offensive
Camunda Community Day_Wiener BPM Offensive
 
Erfahrungsaustausch – Wo ist ACM heute?
Erfahrungsaustausch – Wo ist ACM heute?Erfahrungsaustausch – Wo ist ACM heute?
Erfahrungsaustausch – Wo ist ACM heute?
 
Camunda 7 4 Release Webinar_EN
Camunda 7 4 Release Webinar_ENCamunda 7 4 Release Webinar_EN
Camunda 7 4 Release Webinar_EN
 
Discussing the difference between docker dontainers and virtual machines
Discussing the difference between docker dontainers and virtual machinesDiscussing the difference between docker dontainers and virtual machines
Discussing the difference between docker dontainers and virtual machines
 
Process Monitoring mit Camunda
Process Monitoring mit Camunda Process Monitoring mit Camunda
Process Monitoring mit Camunda
 
Camunda 7 4 Release Webinar
Camunda 7 4 Release WebinarCamunda 7 4 Release Webinar
Camunda 7 4 Release Webinar
 
Camunda BPM in DACH
Camunda BPM in DACHCamunda BPM in DACH
Camunda BPM in DACH
 
DMN in Camunda BPM 7.6
DMN in Camunda BPM 7.6DMN in Camunda BPM 7.6
DMN in Camunda BPM 7.6
 
Sneak Preview: Camunda Optimize
Sneak Preview: Camunda OptimizeSneak Preview: Camunda Optimize
Sneak Preview: Camunda Optimize
 
CMMN in Camunda BPM 7.6
CMMN in Camunda BPM 7.6CMMN in Camunda BPM 7.6
CMMN in Camunda BPM 7.6
 
Docker Basics
Docker BasicsDocker Basics
Docker Basics
 
Containerization is more than the new Virtualization: enabling separation of ...
Containerization is more than the new Virtualization: enabling separation of ...Containerization is more than the new Virtualization: enabling separation of ...
Containerization is more than the new Virtualization: enabling separation of ...
 
Performance comparison between Linux Containers and Virtual Machines
Performance comparison between Linux Containers and Virtual MachinesPerformance comparison between Linux Containers and Virtual Machines
Performance comparison between Linux Containers and Virtual Machines
 
Camunda BPM at bpmNEXT 2016
Camunda BPM at bpmNEXT 2016Camunda BPM at bpmNEXT 2016
Camunda BPM at bpmNEXT 2016
 

Ähnlich wie bed-con 2015 - From Virtual Machines to Containers

JUC Europe 2015: From Virtual Machines to Containers: Achieving Continuous In...
JUC Europe 2015: From Virtual Machines to Containers: Achieving Continuous In...JUC Europe 2015: From Virtual Machines to Containers: Achieving Continuous In...
JUC Europe 2015: From Virtual Machines to Containers: Achieving Continuous In...CloudBees
 
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...NETWAYS
 
Automated CI with AEM Cloud service
Automated CI with AEM Cloud serviceAutomated CI with AEM Cloud service
Automated CI with AEM Cloud serviceJakub Wadolowski
 
Managing your AWS infrastructure at scale
Managing your AWS infrastructure at scaleManaging your AWS infrastructure at scale
Managing your AWS infrastructure at scaleDavid Mat
 
Advanced Code Flow, Notes From the Field
Advanced Code Flow, Notes From the FieldAdvanced Code Flow, Notes From the Field
Advanced Code Flow, Notes From the FieldAriel Moskovich
 
DCEU 18: Building Your Development Pipeline
DCEU 18: Building Your Development PipelineDCEU 18: Building Your Development Pipeline
DCEU 18: Building Your Development PipelineDocker, Inc.
 
Francisco Javier Ramirez Urea - Hopla - OSL19
Francisco Javier Ramirez Urea - Hopla - OSL19Francisco Javier Ramirez Urea - Hopla - OSL19
Francisco Javier Ramirez Urea - Hopla - OSL19marketingsyone
 
Automating That "Other" OS
Automating That "Other" OSAutomating That "Other" OS
Automating That "Other" OSJulian Dunn
 
Docker HK Meetup - 201707
Docker HK Meetup - 201707Docker HK Meetup - 201707
Docker HK Meetup - 201707Clarence Ho
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development PipelineGlobalLogic Ukraine
 
Microservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing MicroservicesMicroservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing MicroservicesQAware GmbH
 
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...COMAQA.BY
 
KubeCon 2017: Kubernetes from Dev to Prod
KubeCon 2017: Kubernetes from Dev to ProdKubeCon 2017: Kubernetes from Dev to Prod
KubeCon 2017: Kubernetes from Dev to ProdSubhas Dandapani
 
Drinking our own champagne - z Systems Development and Test Environment V10
Drinking our own champagne - z Systems Development and Test Environment V10Drinking our own champagne - z Systems Development and Test Environment V10
Drinking our own champagne - z Systems Development and Test Environment V10DevOps for Enterprise Systems
 
CI/CD patterns for cloud native apps
CI/CD patterns for  cloud native appsCI/CD patterns for  cloud native apps
CI/CD patterns for cloud native appsHelder Klemp
 
Migrating deployment processes and Continuous Integration at SAP SE
Migrating deployment processes and Continuous Integration at SAP SEMigrating deployment processes and Continuous Integration at SAP SE
Migrating deployment processes and Continuous Integration at SAP SEB1 Systems GmbH
 
DockerCon EU 2015: Docker and PCI-DSS - Lessons learned in a security sensiti...
DockerCon EU 2015: Docker and PCI-DSS - Lessons learned in a security sensiti...DockerCon EU 2015: Docker and PCI-DSS - Lessons learned in a security sensiti...
DockerCon EU 2015: Docker and PCI-DSS - Lessons learned in a security sensiti...Docker, Inc.
 

Ähnlich wie bed-con 2015 - From Virtual Machines to Containers (20)

JUC Europe 2015: From Virtual Machines to Containers: Achieving Continuous In...
JUC Europe 2015: From Virtual Machines to Containers: Achieving Continuous In...JUC Europe 2015: From Virtual Machines to Containers: Achieving Continuous In...
JUC Europe 2015: From Virtual Machines to Containers: Achieving Continuous In...
 
From Virtual Machines to Containers
From Virtual Machines to ContainersFrom Virtual Machines to Containers
From Virtual Machines to Containers
 
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
 
Automated CI with AEM Cloud service
Automated CI with AEM Cloud serviceAutomated CI with AEM Cloud service
Automated CI with AEM Cloud service
 
Managing your AWS infrastructure at scale
Managing your AWS infrastructure at scaleManaging your AWS infrastructure at scale
Managing your AWS infrastructure at scale
 
OpenCms Days 2015 Workflow using Docker and Jenkins
OpenCms Days 2015 Workflow using Docker and JenkinsOpenCms Days 2015 Workflow using Docker and Jenkins
OpenCms Days 2015 Workflow using Docker and Jenkins
 
Advanced Code Flow, Notes From the Field
Advanced Code Flow, Notes From the FieldAdvanced Code Flow, Notes From the Field
Advanced Code Flow, Notes From the Field
 
DCEU 18: Building Your Development Pipeline
DCEU 18: Building Your Development PipelineDCEU 18: Building Your Development Pipeline
DCEU 18: Building Your Development Pipeline
 
The Best of MMS 2013
The Best of MMS 2013The Best of MMS 2013
The Best of MMS 2013
 
Francisco Javier Ramirez Urea - Hopla - OSL19
Francisco Javier Ramirez Urea - Hopla - OSL19Francisco Javier Ramirez Urea - Hopla - OSL19
Francisco Javier Ramirez Urea - Hopla - OSL19
 
Automating That "Other" OS
Automating That "Other" OSAutomating That "Other" OS
Automating That "Other" OS
 
Docker HK Meetup - 201707
Docker HK Meetup - 201707Docker HK Meetup - 201707
Docker HK Meetup - 201707
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
 
Microservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing MicroservicesMicroservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing Microservices
 
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...
 
KubeCon 2017: Kubernetes from Dev to Prod
KubeCon 2017: Kubernetes from Dev to ProdKubeCon 2017: Kubernetes from Dev to Prod
KubeCon 2017: Kubernetes from Dev to Prod
 
Drinking our own champagne - z Systems Development and Test Environment V10
Drinking our own champagne - z Systems Development and Test Environment V10Drinking our own champagne - z Systems Development and Test Environment V10
Drinking our own champagne - z Systems Development and Test Environment V10
 
CI/CD patterns for cloud native apps
CI/CD patterns for  cloud native appsCI/CD patterns for  cloud native apps
CI/CD patterns for cloud native apps
 
Migrating deployment processes and Continuous Integration at SAP SE
Migrating deployment processes and Continuous Integration at SAP SEMigrating deployment processes and Continuous Integration at SAP SE
Migrating deployment processes and Continuous Integration at SAP SE
 
DockerCon EU 2015: Docker and PCI-DSS - Lessons learned in a security sensiti...
DockerCon EU 2015: Docker and PCI-DSS - Lessons learned in a security sensiti...DockerCon EU 2015: Docker and PCI-DSS - Lessons learned in a security sensiti...
DockerCon EU 2015: Docker and PCI-DSS - Lessons learned in a security sensiti...
 

Mehr von camunda services GmbH

Using Camunda on Kubernetes through Operators
Using Camunda on Kubernetes through OperatorsUsing Camunda on Kubernetes through Operators
Using Camunda on Kubernetes through Operatorscamunda services GmbH
 
Predictive Process Monitoring in Camunda
Predictive Process Monitoring in CamundaPredictive Process Monitoring in Camunda
Predictive Process Monitoring in Camundacamunda services GmbH
 
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmen
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in UnternehmenBlitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmen
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmencamunda services GmbH
 
Extending human workflow preparing people and processes for the digital era w...
Extending human workflow preparing people and processes for the digital era w...Extending human workflow preparing people and processes for the digital era w...
Extending human workflow preparing people and processes for the digital era w...camunda services GmbH
 
[Webinar] Camunda Optimize Release 3.0
[Webinar] Camunda Optimize Release 3.0[Webinar] Camunda Optimize Release 3.0
[Webinar] Camunda Optimize Release 3.0camunda services GmbH
 
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...camunda services GmbH
 
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...Process Automation Forum, Processautomatisierung neu gedacht für das digitale...
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...camunda services GmbH
 
Process Automation Forum Zurich, finnova AG Bankware
Process Automation Forum Zurich, finnova AG BankwareProcess Automation Forum Zurich, finnova AG Bankware
Process Automation Forum Zurich, finnova AG Bankwarecamunda services GmbH
 
Process Automation Forum Munich, Swiss Life
Process Automation Forum Munich, Swiss LifeProcess Automation Forum Munich, Swiss Life
Process Automation Forum Munich, Swiss Lifecamunda services GmbH
 
Process Automation Forum Vienna, A1 & J-IT
Process Automation Forum Vienna, A1 & J-ITProcess Automation Forum Vienna, A1 & J-IT
Process Automation Forum Vienna, A1 & J-ITcamunda services GmbH
 
Process Automation Forum Vienna, Raiffeisen
Process Automation Forum Vienna, RaiffeisenProcess Automation Forum Vienna, Raiffeisen
Process Automation Forum Vienna, Raiffeisencamunda services GmbH
 
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AG
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AGProcess Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AG
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AGcamunda services GmbH
 
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native Worldcamunda services GmbH
 
[Webinar] Transforming Telcos with Digital Process Automation (December 10, 2...
[Webinar] Transforming Telcos with Digital Process Automation (December 10, 2...[Webinar] Transforming Telcos with Digital Process Automation (December 10, 2...
[Webinar] Transforming Telcos with Digital Process Automation (December 10, 2...camunda services GmbH
 
I want my process back! #microservices #serverless
I want my process back! #microservices #serverlessI want my process back! #microservices #serverless
I want my process back! #microservices #serverlesscamunda services GmbH
 

Mehr von camunda services GmbH (20)

Using Camunda on Kubernetes through Operators
Using Camunda on Kubernetes through OperatorsUsing Camunda on Kubernetes through Operators
Using Camunda on Kubernetes through Operators
 
Predictive Process Monitoring in Camunda
Predictive Process Monitoring in CamundaPredictive Process Monitoring in Camunda
Predictive Process Monitoring in Camunda
 
Process Driven Customer Interaction
Process Driven Customer InteractionProcess Driven Customer Interaction
Process Driven Customer Interaction
 
Exploring Automation in Government
Exploring Automation in GovernmentExploring Automation in Government
Exploring Automation in Government
 
The Pulse of Process Automation
The Pulse of Process AutomationThe Pulse of Process Automation
The Pulse of Process Automation
 
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmen
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in UnternehmenBlitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmen
Blitzumfrage zur aktuellen Nutzung von Prozessautomatisierung in Unternehmen
 
Extending human workflow preparing people and processes for the digital era w...
Extending human workflow preparing people and processes for the digital era w...Extending human workflow preparing people and processes for the digital era w...
Extending human workflow preparing people and processes for the digital era w...
 
[Webinar] Camunda Optimize Release 3.0
[Webinar] Camunda Optimize Release 3.0[Webinar] Camunda Optimize Release 3.0
[Webinar] Camunda Optimize Release 3.0
 
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
Webinar: Monitoring & Orchestrating Your Microservices Landscape using Workfl...
 
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...Process Automation Forum, Processautomatisierung neu gedacht für das digitale...
Process Automation Forum, Processautomatisierung neu gedacht für das digitale...
 
Process Automation Forum Zurich, finnova AG Bankware
Process Automation Forum Zurich, finnova AG BankwareProcess Automation Forum Zurich, finnova AG Bankware
Process Automation Forum Zurich, finnova AG Bankware
 
Process Automation Forum Munich, Swiss Life
Process Automation Forum Munich, Swiss LifeProcess Automation Forum Munich, Swiss Life
Process Automation Forum Munich, Swiss Life
 
Process Automation Forum Vienna, A1 & J-IT
Process Automation Forum Vienna, A1 & J-ITProcess Automation Forum Vienna, A1 & J-IT
Process Automation Forum Vienna, A1 & J-IT
 
Process Automation Forum Vienna, Raiffeisen
Process Automation Forum Vienna, RaiffeisenProcess Automation Forum Vienna, Raiffeisen
Process Automation Forum Vienna, Raiffeisen
 
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AG
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AGProcess Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AG
Process Automation Forum Düsseldorf, Provinzial Rheinland Versicherung AG
 
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World
[Webinar] BPM Renaissance: 5 Tips to Thrive in a Cloud-Native World
 
Zeebe + Operate January 2020 Update
Zeebe + Operate January 2020 UpdateZeebe + Operate January 2020 Update
Zeebe + Operate January 2020 Update
 
Optimize 2.7 Release Webinar
Optimize 2.7 Release WebinarOptimize 2.7 Release Webinar
Optimize 2.7 Release Webinar
 
[Webinar] Transforming Telcos with Digital Process Automation (December 10, 2...
[Webinar] Transforming Telcos with Digital Process Automation (December 10, 2...[Webinar] Transforming Telcos with Digital Process Automation (December 10, 2...
[Webinar] Transforming Telcos with Digital Process Automation (December 10, 2...
 
I want my process back! #microservices #serverless
I want my process back! #microservices #serverlessI want my process back! #microservices #serverless
I want my process back! #microservices #serverless
 

Kürzlich hochgeladen

2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge GraphsEleniIlkou
 
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdfMatthew Sinclair
 
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdfMatthew Sinclair
 
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...SUHANI PANDEY
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)Delhi Call girls
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...tanu pandey
 
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
 
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...SUHANI PANDEY
 
💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋nirzagarg
 
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfpdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfJOHNBEBONYAP1
 
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men 🔝mehsana🔝 Escorts...
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men  🔝mehsana🔝   Escorts...➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men  🔝mehsana🔝   Escorts...
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men 🔝mehsana🔝 Escorts...nirzagarg
 
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Delhi Call girls
 
💚😋 Bilaspur Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
💚😋 Bilaspur Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋💚😋 Bilaspur Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
💚😋 Bilaspur Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋nirzagarg
 
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
 
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...tanu pandey
 
Wadgaon Sheri $ Call Girls Pune 10k @ I'm VIP Independent Escorts Girls 80057...
Wadgaon Sheri $ Call Girls Pune 10k @ I'm VIP Independent Escorts Girls 80057...Wadgaon Sheri $ Call Girls Pune 10k @ I'm VIP Independent Escorts Girls 80057...
Wadgaon Sheri $ Call Girls Pune 10k @ I'm VIP Independent Escorts Girls 80057...SUHANI PANDEY
 

Kürzlich hochgeladen (20)

2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
 
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
 
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
 
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
 
Thalassery Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call G...
Thalassery Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call G...Thalassery Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call G...
Thalassery Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call G...
 
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
 
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
 
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
 
💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
 
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfpdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
 
valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
 
📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱
📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱
📱Dehradun Call Girls Service 📱☎️ +91'905,3900,678 ☎️📱 Call Girls In Dehradun 📱
 
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men 🔝mehsana🔝 Escorts...
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men  🔝mehsana🔝   Escorts...➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men  🔝mehsana🔝   Escorts...
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men 🔝mehsana🔝 Escorts...
 
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
 
💚😋 Bilaspur Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
💚😋 Bilaspur Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋💚😋 Bilaspur Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
💚😋 Bilaspur Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
 
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
 
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
 
Wadgaon Sheri $ Call Girls Pune 10k @ I'm VIP Independent Escorts Girls 80057...
Wadgaon Sheri $ Call Girls Pune 10k @ I'm VIP Independent Escorts Girls 80057...Wadgaon Sheri $ Call Girls Pune 10k @ I'm VIP Independent Escorts Girls 80057...
Wadgaon Sheri $ Call Girls Pune 10k @ I'm VIP Independent Escorts Girls 80057...
 

bed-con 2015 - From Virtual Machines to Containers

  • 2. www.camunda.com Agenda • Introduction • The Dark Age • The Promising Present • Lessons Learned • The Bright Future -2-
  • 3. www.camunda.com Introduction - About Camunda -3- 2014201320122011201020092008 Incorporation Camunda Services GmbH Berlin, Germany Incorporation Camunda Inc. San Francisco, US BPM Consulting BPM Software Vendor ● 30 Fulltime Employees ● No external funding ● Avg. 50% Turnover Growth per Year Introduced Hudson Adapted Jenkins
  • 5. www.camunda.com Introduction - What is Camunda BPM • Camunda BPM is an open source platform for workflow and business process automation • Integrates with: • 7 Application Server (11 different versions) • 6 Databases (17 different versions) • 1 Development & 4 Maintained Versions -5-
  • 6. www.camunda.com Introduction - Why CI is Important • Every Camunda BPM version is tested against: • 187 combinations of DBs and App Servers • 11 JDKs • ~ 400 Jobs per version • Bi-Annual release of a new Camunda BPM version • Support for Enterprise Customer (24/7 + Fix Time) -6-
  • 7. www.camunda.com Why our CI had to change The Dark Age -7-
  • 8. www.camunda.com The Dark Age - The Numbers • 1 Jenkins Master with lots of plugins • 8 Jenkins Slaves VMs • ~1000 Jobs total configured / manually managed: • 4 Camunda Versions • Community Projects • Websites • Maintenance -8-
  • 9. www.camunda.com The Dark Age - Isolation Problem • Unit and Integration Tests need a database/application server • Only 1 Instance per Database • All Jobs use the same Databases • Every half-year a new Version (~400 Jobs) using same Databases -9-
  • 10. www.camunda.com The Dark Age - No Scalability • Total Executors: 12 • 1 Jenkins -> 4 Executors • 8 static heterogenous slave VMs, each with 1 Executor • Jobs tied to slaves through labels • Slaves “restrict” database access by allowing no other build to run -10-
  • 11. www.camunda.com The Dark Age - Maintenance Problems • Upgrading Jenkins or any plugin • Supporting a new Database vendor / version • Supporting a new App Server version • Creating jobs for new Camunda BPM version • Disaster recovery -11-
  • 12. www.camunda.com The Dark Age - The Other Problems • Slow feedback cycle for developers • Developers cannot reproduce CI environments • QA engineers use and maintain separate bloated test build setup -12-
  • 14. www.camunda.com How we solved our Problem The Promising Present -14-
  • 15. www.camunda.com The Present - What we achieved • Configuration & Infrastructure as Code • Isolated and Reproducible Jobs • Scalable CI Infrastructure -15-
  • 16. www.camunda.com The Present - Infrastructure as Code 1. Every configuration is checked into SCM 2. Every application/test runs in a Docker Container 3. Every Docker image is build automatically -16-
  • 17. www.camunda.com The Present - Infrastructure as Code 1. Every Configuration is checked into SCM • Docker for • Applications • Test Environments • JobDSL for • Jenkins Jobs -17-
  • 18. www.camunda.com The Present - Example - JobDSL package ci.community import generator.JobGenerator import util.* Server.COMMUNITY().each { server -> new JobGenerator( name: "${Version.CURRENT}-webapp-IT-${server}", pollScmSchedule: null, pollRemoteJob: RemoteJobHelper.WEBAPP_DISTRO, rootPom: 'qa/pom.xml', goals: "clean verify -P${server},h2,webapps-integration", envVariables: ['DISPLAY': ':0'], jdkVersion: Tool.JDK_FOR_SERVER(server), label: Label.CHROME ).build(this) } -18-
  • 19. www.camunda.com The Present - Infrastructure as Code 2. Every application/test runs in a Docker Container Images: • Application (Jenkins, Nexus …) • Test Env. Images (DB + SSH) • Build Env. Images • DIND, QEMU + Packer.io -19-
  • 20. www.camunda.com The Present - Example - DB2 FROM ci1.camunda.loc:5000/camunda-ci-base-centos ENV DB2_VERSION=10.5 DB_USERNAME=camunda DB_PASSWORD=camunda DB_NAME=engine DB2_HOME=/opt/ibm/db2/V10.5 DB_DIR=/db2_databases RUN save-env.sh DB2_VERSION DB_USERNAME DB_PASSWORD DB_NAME DB2_HOME RUN install-packages.sh libaio ADD etc/db2/db2expc.rsp /tmp/db2expc.rsp RUN curl https://nginx.service.consul/ci/binaries/ibm/db2/v10.5_linuxx64_expc.tar.gz > /tmp/db2.tar.gz && mkdir -p /tmp/db2 && tar xzf /tmp/db2.tar.gz -C /tmp/db2 --strip 1 && cd /tmp/db2 && ./db2setup -r /tmp/db2expc.rsp && rm -rf /tmp/db2.tar.gz /tmp/db2 && mkdir ${DB_DIR} && chown db2inst1:db2iadm1 ${DB_DIR} && chmod 775 /${DB_DIR} && su -l db2inst1 -c "mkdir ${DB_DIR}/engine" ADD bin/* /usr/local/bin/ ADD etc/supervisor.d/db2.conf.ini /etc/supervisord.d/ EXPOSE 50000 -20-
  • 21. www.camunda.com The Present - Infrastructure as Code 3. Every Docker Container is build automatically • Own Jenkins for Docker/KVM Images • KVM Images build in Docker Container with Packer + QEMU • KVM Images bundled in Docker Image -21-
  • 22. www.camunda.com The Present - Example - SQL Server 2012 FROM ci1.camunda.loc:5000/ubuntu:14.04.2 ENV IMAGE_NAME=sqlserver-2012.qcow2 IMAGE_DIR=/qemu/ RUN_DIR=/qemu/run RUN mkdir -p $IMAGE_DIR $RUN_DIR VOLUME $RUN_DIR ADD bin/* /usr/local/bin/ RUN apt-get update && apt-get -y install --no-install-recommends curl qemu-system-x86 qemu-utils && apt-get clean && rm -rf /var/cache/* /var/lib/apt/lists/* /tmp/* /var/tmp/* RUN curl https://nginx.service.consul/ci/binaries/microsoft/${IMAGE_NAME} > ${IMAGE_DIR} /${IMAGE_NAME} EXPOSE 22 1433 5900 CMD ["/usr/local/bin/start-qemu.sh"] -22-
  • 23. www.camunda.com The Present - The Current Flow -23- camunda-ci camunda Camunda BPM Platform Infrastructure Jenkins CI Jenkins
  • 24. www.camunda.com The Present - Isolation One Jenkins per Concern: • CI • Release • Infrastructure • Community and other Projects • Marketing -24-
  • 25. www.camunda.com The Present - Isolation & Reproducibility • Every Jobs runs in an One-Shot Docker Container • No Interference between Jobs • The Database Settings are well documented • Every Docker Image is stored in a private registry • Developers/QA can use the Docker Images for local testing -25-
  • 26. www.camunda.com The Present - Scalability • Jenkins uses Docker-Plugin with one Docker Cloud running on Docker Swarm • Docker images are added through Groovy scripting • Running on Commodity Hardware • 3 Infrastructure Hosts (Jenkins, Nexus, …) • 4 Docker Hosts as 1 Swarm -26-
  • 27. www.camunda.com The Present - Example - Jenkins Docker Cloud images.each { imageName, imageValues -> imageValues.versions.each { version -> def templateBase = createLinuxTemplateBase(image, privileged) def image = "${registryUrl}/${imageName}:${version}".toString() def label = getLabel(imageValues.label, version) def privileged = imageValues.privileged? imageValues.privileged : false def remoteFs = '/home/camunda' def instanceCap = linuxInstanceCap def template = new DockerTemplate(templateBase, label, remoteFs, remoteFs, instanceCap, Node.Mode.EXCLUSIVE, 1, createDockerSshLauncher(), createRetentionStrategy(), true, DockerImagePullStrategy.PULL_ALWAYS) dockerTemplates << template } } -27- /var/lib/jenkins/init.groovy.d/dockercloud.groovy
  • 28. www.camunda.com The Present - Scalability -28-
  • 29. www.camunda.com The Present - CI Cluster -29- Docker Consul Swarm Nexus Registry ci1 Docker Docker Docker Consul Swarm 4x Jenkins ci2 Docker Docker Consul Swarm Nginx ci3 Docker ci4-7 BIND Infrastructure Build Slaves C-Agent S-Agent
  • 31. www.camunda.com The Present - Advantages • Easy to add new Databases/Test Environments • New Release = New Branch of JobDSL Repository • Fully parallelized Job Execution • Accountable Configuration History • Testable Infrastructure • Minimize Administration Overhead -31-
  • 32. www.camunda.com The Present - Conclusion • 2 People + 3 Months of Work • A fully scalable, isolated and reproducible CI Infrastructure • Faster Feedback • Happy Developers and Product Owner -32-
  • 33. www.camunda.com Some advice from us to you Lessons learned -33-
  • 34. www.camunda.com Lessons learned - Architecture • Automate as much as you can • Jenkins config • Jobs config • Environment creation • Design to scale to support the business agility -34-
  • 35. www.camunda.com Lessons learned - Testing Test everything: • Jenkins configuration • required plugin features • Job generation • Docker images • Scalability • Disaster recovery -35-
  • 36. www.camunda.com Lessons learned - Job DSL • Unit-test the job generation • Write JobGenerator classes to abstract the common build logic of most jobs out of the box • Use XML diffing to compare previously generated jobs with new ones -36-
  • 37. www.camunda.com Lessons learned - Docker -37- https://github.com/rancherio/vm/
  • 38. www.camunda.com Lessons learned - Plugins • Pin your plugin versions • Be prepared to contribute to plugin development or maintain a branch yourself • Choose the right plugin for the job Our Top 3 plugins: JobDSL, Docker-Plugin, Build-Failure-Analyzer -38-
  • 39. www.camunda.com Lessons learned - Control • Control as much as possible • Third party binaries vs package manager • explicit versions • own mirrors for important packages -39-
  • 41. www.camunda.com The Future -41- • Public Community Jenkins • Internal Webapp for Developers and QA to start Environments (Dattln) • Continuous Deployment for Infrastructure Container • Back to the Datacenter • Centralized Logging and Monitoring (ELK) • Secret management
  • 45. www.camunda.com Resources • Camunda CI repository https://github.com/camunda-ci • Job DSL gradle example https://github.com/sheehan/job-dsl-gradle-example • Camunda BPM Docker image https://registry.hub.docker.com/u/camunda/camunda-bpm-platform/ -45-
  • 46. www.camunda.com We Are Hiring Come Join Us @camundaBPM http://camunda.com/jobs -46-