SlideShare a Scribd company logo
1 of 51
Download to read offline
© 2016 Mesosphere, Inc. All Rights Reserved. 1
CI/CD WITH DOCKER,
DC/OS, AND JENKINS
( Velocity NY 2016 Edition )
© 2016 Mesosphere, Inc. All Rights Reserved. 2
KARL WHO?
Where?
- Mesosphere
- Pivotal
What?
- DC/OS
- Kubernetes (on Mesos)
- CloudFoundry
- BOSH
- github.com/karlkfi
- twitter.com/karlkfi
- linkedin.com/in/karlkfi
- karl.isenberg.us
© 2016 Mesosphere, Inc. All Rights Reserved. 3
WHO ARE YOU?
© 2016 Mesosphere, Inc. All Rights Reserved. 4
INTEGRATION
Build/Test
Manual Review/Merge
Build/Test
Test all the pieces
together
DELIVERY
Integration
Test Release/Deployment
Manual Acceptance
Prod Release/Deployment
Integration branch is always
deployable
DEPLOYMENT
Integration
Validation
Release/Deployment
Integration branch is
validated and deployed
automatically
CONTINUOUS EVERYTHING
© 2016 Mesosphere, Inc. All Rights Reserved. 5
SOURCE
Branched > Developed > Compiled > Tested > Reviewed > Merged > Tagged
PACKAGES
Built > Tested > Versioned > Released > Promoted > Installed/Vendored
SERVICES
Deployed > Tested > Accepted/Validated > Promoted
RELEASE vs. DEPLOY
© 2016 Mesosphere, Inc. All Rights Reserved. 6
PAIN
- Expensive manual merges
- Independent refactoring
- Incompatible dependencies
- Works on my machine
- Different environments
- Who owns integration?
- Mismatched Interfaces
- Large upfront planning &
communication
WHY CONTINUOUS INTEGRATION?
RELIEF
- Small change sets
- Feature branches
- Package extraction
- Interface extraction
- Provisionable environment
- Centralized testing
- Automatic build/test triggers
- Configuration as code
- Integration package
© 2016 Mesosphere, Inc. All Rights Reserved. 7
PAIN
- Manual, undocumented release
process
- Siloed, tribal knowledge
- Bus factor of one
- Poor process communication
- Infrequent end-to-end testing
- Bugs caught right before/after
release/deployment
- Slow onboarding
- Manual regression testing
WHY CONTINUOUS DELIVERY?
RELIEF
- Programmatic dependency management
- Automated package management
- Automated release building
- Automated deployment
- Automated promotion
- Secrets management
- Unit/integration/acceptance tests
- Test/UAT/Acceptance environment
© 2016 Mesosphere, Inc. All Rights Reserved. 8
PAIN
- Unhappy customers
- Infrequent/late validation
- Many/large simultaneous
changes
- Making decisions without data
- Unhappy developers
- Process limiting innovation
- Infrequent feedback
- Long development cycles
- Large upfront planning
WHY CONTINUOUS DEPLOYMENT?
RELIEF
- Automated front-end tests
- Automated end-to-end tests
- Programmatic definition of acceptance
- Acceptance driven development
- Milestone releases, not release
milestones
- Release train
- Decouple feature promises from release
numbers
- Automatic semantic versioning
© 2016 Mesosphere, Inc. All Rights Reserved. 9
TOOLS
© 2016 Mesosphere, Inc. All Rights Reserved. 10
DOCKER
( Container Runtime, Image Format, and Repository )
© 2016 Mesosphere, Inc. All Rights Reserved. 11
DOCKER CONTAINER
isolated process tree
isolated filesystem
optional volumes
optional network routing
optional resource constraints
© 2016 Mesosphere, Inc. All Rights Reserved. 12
RUNTIME
The docker-engine runs on linux machines and manages containers and container
images.
IMAGE
A container image is a set of file system layers that can be shipped around as a unit
and is used as a template for creating containers.
REPOSITORY
A docker image repository is a service that manages and store docker images and
image layers.
CONTAINER ...
© 2016 Mesosphere, Inc. All Rights Reserved. 13
© 2016 Mesosphere, Inc. All Rights Reserved. 14
BUILD ONCE, RUN ANYWHERE
- Portable runtime environment
- Language independent
- Dependency vendoring
- Packaging format
- Dependency isolation
- More developer control
- Portable across operating systems
- Fast development cycles
HAPPY DEVELOPERS & OPERATORS
CONFIGURE ONCE, RUN ANYTHING
- Predictability
- Repeatable deployment
- Consistent, reliable results
- Low overhead, low cost
- Fast, efficient deployment
- Image Layer caching
- Developer awareness of operational
concerns
- Separation of concerns
© 2016 Mesosphere, Inc. All Rights Reserved. 15
CONTAINER IMAGE LIFECYCLE
Image
Image
Image
Layer
Machine 1 Machine 2Image Repository
Shared Layer
Layer
Layer
Push
Image
Pull
Dockerfile
Build
Container
Run
© 2016 Mesosphere, Inc. All Rights Reserved. 16
DOCKER LAB
1 - 2
© 2016 Mesosphere, Inc. All Rights Reserved. 17
DC/OS
( Container Orchestration )
© 2016 Mesosphere, Inc. All Rights Reserved. 18
IN THE BEGINNING...
Sombrero Galaxy by ESA/Hubble - CC BY 4.0
© 2016 Mesosphere, Inc. All Rights Reserved.
Hardware
Operating System
Application
19
COMPUTERS
© 2016 Mesosphere, Inc. All Rights Reserved.
Hardware
Operating System
Web Application
20
INTERNET
- Remote Users!
© 2016 Mesosphere, Inc. All Rights Reserved.
Web App
Hardware
Operating
System
21
DISTRIBUTION
- Horizontal Scale
- Fault Tolerance
- Availability
- Load Balancing
Operating
System
Operating
System
Hardware Hardware
Web App Web App
© 2016 Mesosphere, Inc. All Rights Reserved.
Service Service Service
Web App Web App Web App
Hardware
Operating
System
22
SERVICE-
ORIENTED
ARCHITECTURE
- Separation of
concerns
- Optimization of
bottlenecks
- Smaller teams
- API Contracts
- Data replication
- Complicated
provisioning
- Dependency
management
Operating
System
Operating
System
Hardware Hardware
© 2016 Mesosphere, Inc. All Rights Reserved.
Service Service Service
Web App Web App Web App
Machine
Operating
System
23
HARDWARE
VIRTUALIZATION
- Fast provisioning
- Isolation
- Portability
- Utilization
- Configuration
Management
- Virtual Networking
- Credential
management
Operating
System
Operating
System
Infrastructure
Machine Machine
© 2016 Mesosphere, Inc. All Rights Reserved.
Operating
System
Operating
System
Operating
System
ServiceApp ServiceServiceAppApp
24
MICROSERVICES
- Polyglot
- Single Responsibility
- Smaller Teams
- Utilization
- Machine
types/groups
- Dependency hell
Machine
Infrastructure
Machine Machine
ServiceService ServiceServiceServiceService
© 2016 Mesosphere, Inc. All Rights Reserved.
ServiceApp ServiceServiceAppApp
OS
25
CONTAINERS
- Rapid deployment
- Dependency
vendoring
- Container image
repositories
- Spreadsheet
scheduling
OS OS
Machine
Infrastructure
Machine Machine
Container Runtime Container Runtime Container Runtime
ServiceService ServiceServiceServiceService
© 2016 Mesosphere, Inc. All Rights Reserved.
Service
Container Runtime Container Runtime Container Runtime
OS
26
CONTAINER
ORCHESTRATION
OS OS
Container Orchestration
Machine
Infrastructure
Machine Machine
App ServiceServiceAppApp
© 2016 Mesosphere, Inc. All Rights Reserved. 27
CONTAINER ORCA-WHAT-NOW?
Scheduling, Coordination, & Management
of
Containerized Processes
as
Higher Order Abstractions
(e.g., Jobs, Services, Applications, Pods, etc.)
© 2016 Mesosphere, Inc. All Rights Reserved.
Orchestration
28
Machine Infrastructure
Web Apps & Services
Scheduling
Resource Management
Container Runtime
Machine & OS
Service Management
CONTAINER
ORCHESTRATION
Machine & OS Machine & OS
Container Runtime Container Runtime
Expanded
© 2016 Mesosphere, Inc. All Rights Reserved. 29
SCHEDULING
- Placement
- Replication/Scaling
- Resurrection
- Rescheduling
- Rolling Deployment
- Upgrades
- Downgrades
- Collocation
RESOURCE
MANAGEMENT
- Memory
- CPU
- GPU
- Volumes
- Ports
- IPs
- Images/Artifacts
SERVICE
MANAGEMENT
- Labels
- Groups/Namespaces
- Dependencies
- Load Balancing
- Readiness Checking
FUNCTIONAL ORCHESTRATION CAPABILITIES
© 2016 Mesosphere, Inc. All Rights Reserved. 30
DC/OS LAB
1 - 2
© 2016 Mesosphere, Inc. All Rights Reserved. 31
DC/OS
( The Datacenter Operating System )
© 2016 Mesosphere, Inc. All Rights Reserved. 32
SCALABILITY
Performance, Responsiveness, Efficiency
AVAILABILITY
Fault Tolerance, Robustness, Reliability, Resilience,
Disaster Recovery
FLEXIBILITY
Format Support, Interoperability, Extensibility,
Container Runtimes
USABILITY
Familiarity, Maintainability, Compatibility,
Debuggability
PORTABILITY
Host OS, Cloud, Bare-Metal, Hybrid
SECURITY
Auditability, Secrets Management, Encryption,
Isolation
NON-FUNCTIONAL PLATFORM QUALITIES
© 2016 Mesosphere, Inc. All Rights Reserved. 33
PLATFORM
A base of technologies on which other technologies or processes are built.
PLATFORM AS A SERVICE
A managed, multitenant platform.
CLOUD PLATFORM
A hosted platform as a service on shared infrastructure.
PLATFORM SPECTRUM
Rainbow by Susanne Nilsson - CC BY-SA 2.0
© 2016 Mesosphere, Inc. All Rights Reserved.
INFRASTRUCTURE PLATFORM
e.g., OpenStack, VMware vSphere
CONTAINER PLATFORM
e.g., Kubernetes, DC/OS, Rancher
APPLICATION PLATFORM
e.g., Cloud Foundry, Red Hat OpenShift, Deis
34
PLATFORMS
Oil Platform by Berardo62 - CC BY-SA 2.0
© 2016 Mesosphere, Inc. All Rights Reserved.
CLOUD INFRASTRUCTURE PLATFORM
e.g., Amazon Elastic Compute Cloud, Microsoft Azure,
Google Compute Engine
CLOUD CONTAINER PLATFORM
e.g., Google Container Engine, Azure Container Services,
Amazon EC2 Container Service
CLOUD APPLICATION PLATFORM
e.g., Heroku, Google App Engine, Pivotal Web Services,
IBM Bluemix
35
CLOUD PLATFORMS
© 2016 Mesosphere, Inc. All Rights Reserved.
APPLICATION DEVELOPMENT LIFECYCLE
Source Repo, Continuous Integration, Artifact Repo
CONTAINER ORCHESTRATION
Scheduling, Resource Management, Service
Management
DAY 2 OPERATIONS
Debugging, Maintenance
36
CONTAINER OPERATIONS
© 2016 Mesosphere, Inc. All Rights Reserved. 37
APPLICATION DEVELOPMENT LIFECYCLE
CONTAINER OPERATIONS
Code
Build, Test,
Package
Publish Deploy
© 2016 Mesosphere, Inc. All Rights Reserved.
Applications & Services
38
APPLICATION DEVELOPMENT LIFECYCLE
CONTAINER OPERATIONS
Source Control
Continuous
Integration
Artifact
Repository
Orchestration
© 2016 Mesosphere, Inc. All Rights Reserved. 39
APPLICATION DEVELOPMENT LIFECYCLE
CONTAINER OPERATIONS
Applications & Services
Source Control
Continuous
Integration
Artifact
Repository
Orchestration
© 2016 Mesosphere, Inc. All Rights Reserved. 40
DEBUGGING
- Logging & Metrics
- Emitting
- Aggregation
- Search
- Reporting
- Alerting
- Dashboards
- Shell Access
MAINTENANCE
- Package Management
- Upgrading
- Cluster Resizing
- Application Autoscaling
- Capacity Planning
- Software Defined Networking
- Backups
- Disaster Recovery
DAY 2 OPERATIONS
CONTAINER OPERATIONS
© 2016 Mesosphere, Inc. All Rights Reserved.
System Space
Orchestration
User Space
Source Control
Continuous
Integration
Artifact
Repository
41
CONTAINER OPERATIONS
Load Balancer
Package
Manager
Security
Networking
Logging &
Metrics
Storage
© 2016 Mesosphere, Inc. All Rights Reserved.
Kernel
42
OPERATING
SYSTEM
System Space
Hardware
User Space
© 2016 Mesosphere, Inc. All Rights Reserved. 43
DISTRIBUTED
OPERATING
SYSTEM
Hardware Hardware Hardware
User Space
Circa 1992
Microkernel
System Space
Microkernel Microkernel
© 2016 Mesosphere, Inc. All Rights Reserved. 44
Machine Infrastructure
User Services
Orchestration
Container Runtime
System Services
DISTRIBUTED
OPERATING
SYSTEM
Container Runtime Container Runtime
Revised
OS OS OS
Machine Machine Machine
DistributedOS
© 2016 Mesosphere, Inc. All Rights Reserved. 45
DC/OS
- Resource Management
- Universal Container Runtime
- Container Orchestration
- Pluggable Schedulers
- Jobs & Services
- Distributed System Services
- Virtual Networking
- Package Management
- Services Catalog & Application Ecosystem
- Day 2 Operational Focus
ENTERPRISE DC/OS
- E2E Encryption
- Identity & Access Management
- Secrets Management
- Support
© 2015 Mesosphere, Inc. All Rights Reserved. 46
HYPERSCALE OPERATIONS
ULTIMATE INFRASTRUCTURE FLEXIBILITY FOR MODERN APPLICATIONS
• Many “snowflakes”
• Management nightmare
• Lengthy cycles to deploy code
• Low utilization
Mesosphere DCOS
MESOSPHERE DCOS APPROACH
Container
Apps
(All) Big Data Analytics
(All)
PaaS
(All)
Stateful Service
(All)
• High performance and resource isolation
• Easy scalability and multi-tenancy
• Fault tolerant and highly available
• Highly efficient with highest utilization
Proven in
mission-critical
deployments
Deploys on-prem or in cloud
TRADITIONAL APPROACH
PaaS
1
Container
App
1
Big Data
Analytics 1
Big Data
Analytics 2
PaaS
2
Container
App
2
Stateful
Service
1
Stateful
Service
2
Complete workload
portability
USE, REPRODUCTION, OR DISCLOSURE IS SUBJECT TO RESTRICTIONS SET FORTH IN CONTRACT NUMBER 2014-14031000011 AND SUB CONTRACT NO. MESOSPHERE 01.
VPC
DC/OS ARCHITECTURE
DC/OS CLI
DC/OS UI
DC/OS Universe
Auto-ScalingGroup&SecurityGroup
ELB
ELB
LDAP
www
AGENT (1..n)
47
Backend Services
Spartan
Minuteman
Mesos DNS
Mesos Agent
3DT
Admin Router
Docker
User Tasks
Cassandra
Spark
Kafka
HDFS
Containers...
Apps/Tasks
Jenkins
Auto-ScalingGroup&SecurityGroup
MASTER (1..9)
Admin Router
Backend Services
Spartan
Minuteman
Mesos DNS
Resolv-Conf
Exhibitor
Zookeeper
DC/OS Signal
CA
Vault
Marathon
Mesos Master
History
3DT
Networking API
Cosmos
Bouncer
Frontend Services
Metronome
© 2016 Mesosphere, Inc. All Rights Reserved. 48
DC/OS LAB
3 - 5
© 2016 Mesosphere, Inc. All Rights Reserved. 49
JENKINS
( Open Source Automation Server )
© 2016 Mesosphere, Inc. All Rights Reserved. 50
JENKINS LAB
1 - 5
© 2016 Mesosphere, Inc. All Rights Reserved. 51
EXIT SURVEY

More Related Content

What's hot

Platform as a Service with Kubernetes and Mesos
Platform as a Service with Kubernetes and Mesos Platform as a Service with Kubernetes and Mesos
Platform as a Service with Kubernetes and Mesos Miguel Zuniga
 
Elastic jenkins with mesos and dcos (2016 01-20)
Elastic jenkins with mesos and dcos (2016 01-20)Elastic jenkins with mesos and dcos (2016 01-20)
Elastic jenkins with mesos and dcos (2016 01-20)Mesosphere Inc.
 
Mesos vs kubernetes comparison
Mesos vs kubernetes comparisonMesos vs kubernetes comparison
Mesos vs kubernetes comparisonKrishna-Kumar
 
Openstack components as containerized microservices
Openstack components as containerized microservicesOpenstack components as containerized microservices
Openstack components as containerized microservicesMiguel Zuniga
 
Scaling Like Twitter with Apache Mesos
Scaling Like Twitter with Apache MesosScaling Like Twitter with Apache Mesos
Scaling Like Twitter with Apache MesosMesosphere Inc.
 
Container Orchestration @Docker Meetup Hamburg
Container Orchestration @Docker Meetup HamburgContainer Orchestration @Docker Meetup Hamburg
Container Orchestration @Docker Meetup HamburgTimo Derstappen
 
Docker 1.9 Workshop
Docker 1.9 WorkshopDocker 1.9 Workshop
Docker 1.9 Workshop{code}
 
Doing Big Data for Real with Docker
Doing Big Data for Real with Docker  Doing Big Data for Real with Docker
Doing Big Data for Real with Docker Mesosphere Inc.
 
Dockercon 2015 - Persistent Data in a Microservices World
Dockercon 2015 - Persistent Data in a Microservices WorldDockercon 2015 - Persistent Data in a Microservices World
Dockercon 2015 - Persistent Data in a Microservices World{code}
 
Mesos and Kubernetes ecosystem overview
Mesos and Kubernetes ecosystem overviewMesos and Kubernetes ecosystem overview
Mesos and Kubernetes ecosystem overviewKrishna-Kumar
 
Trying out DC/OS (what?)
Trying out DC/OS (what?)Trying out DC/OS (what?)
Trying out DC/OS (what?)nota-ja
 
DEPLOYING A DOCKERIZED DISTRIBUTED APPLICATION IN MESOS
DEPLOYING A DOCKERIZED DISTRIBUTED APPLICATION IN MESOSDEPLOYING A DOCKERIZED DISTRIBUTED APPLICATION IN MESOS
DEPLOYING A DOCKERIZED DISTRIBUTED APPLICATION IN MESOSJulia Mateo
 
Containers orchestrators: Docker vs. Kubernetes
Containers orchestrators: Docker vs. KubernetesContainers orchestrators: Docker vs. Kubernetes
Containers orchestrators: Docker vs. KubernetesDmitry Lazarenko
 
Mesos ♥ Docker
Mesos ♥ DockerMesos ♥ Docker
Mesos ♥ DockerAish Fenton
 
HA Kubernetes on Mesos / Marathon
HA Kubernetes on Mesos / MarathonHA Kubernetes on Mesos / Marathon
HA Kubernetes on Mesos / MarathonCobus Bernard
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to DockerAditya Konarde
 
Using DC/OS for Continuous Delivery - DevPulseCon 2017
Using DC/OS for Continuous Delivery - DevPulseCon 2017Using DC/OS for Continuous Delivery - DevPulseCon 2017
Using DC/OS for Continuous Delivery - DevPulseCon 2017pleia2
 
vSphere Integrated Containers 101 and End-User Workflow
vSphere Integrated Containers 101 and End-User WorkflowvSphere Integrated Containers 101 and End-User Workflow
vSphere Integrated Containers 101 and End-User WorkflowSimone Morellato
 
WSO2 Cloud and Platform as a Service Strategy
WSO2 Cloud and Platform as a Service StrategyWSO2 Cloud and Platform as a Service Strategy
WSO2 Cloud and Platform as a Service StrategyImesh Gunaratne
 
Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.Timothy St. Clair
 

What's hot (20)

Platform as a Service with Kubernetes and Mesos
Platform as a Service with Kubernetes and Mesos Platform as a Service with Kubernetes and Mesos
Platform as a Service with Kubernetes and Mesos
 
Elastic jenkins with mesos and dcos (2016 01-20)
Elastic jenkins with mesos and dcos (2016 01-20)Elastic jenkins with mesos and dcos (2016 01-20)
Elastic jenkins with mesos and dcos (2016 01-20)
 
Mesos vs kubernetes comparison
Mesos vs kubernetes comparisonMesos vs kubernetes comparison
Mesos vs kubernetes comparison
 
Openstack components as containerized microservices
Openstack components as containerized microservicesOpenstack components as containerized microservices
Openstack components as containerized microservices
 
Scaling Like Twitter with Apache Mesos
Scaling Like Twitter with Apache MesosScaling Like Twitter with Apache Mesos
Scaling Like Twitter with Apache Mesos
 
Container Orchestration @Docker Meetup Hamburg
Container Orchestration @Docker Meetup HamburgContainer Orchestration @Docker Meetup Hamburg
Container Orchestration @Docker Meetup Hamburg
 
Docker 1.9 Workshop
Docker 1.9 WorkshopDocker 1.9 Workshop
Docker 1.9 Workshop
 
Doing Big Data for Real with Docker
Doing Big Data for Real with Docker  Doing Big Data for Real with Docker
Doing Big Data for Real with Docker
 
Dockercon 2015 - Persistent Data in a Microservices World
Dockercon 2015 - Persistent Data in a Microservices WorldDockercon 2015 - Persistent Data in a Microservices World
Dockercon 2015 - Persistent Data in a Microservices World
 
Mesos and Kubernetes ecosystem overview
Mesos and Kubernetes ecosystem overviewMesos and Kubernetes ecosystem overview
Mesos and Kubernetes ecosystem overview
 
Trying out DC/OS (what?)
Trying out DC/OS (what?)Trying out DC/OS (what?)
Trying out DC/OS (what?)
 
DEPLOYING A DOCKERIZED DISTRIBUTED APPLICATION IN MESOS
DEPLOYING A DOCKERIZED DISTRIBUTED APPLICATION IN MESOSDEPLOYING A DOCKERIZED DISTRIBUTED APPLICATION IN MESOS
DEPLOYING A DOCKERIZED DISTRIBUTED APPLICATION IN MESOS
 
Containers orchestrators: Docker vs. Kubernetes
Containers orchestrators: Docker vs. KubernetesContainers orchestrators: Docker vs. Kubernetes
Containers orchestrators: Docker vs. Kubernetes
 
Mesos ♥ Docker
Mesos ♥ DockerMesos ♥ Docker
Mesos ♥ Docker
 
HA Kubernetes on Mesos / Marathon
HA Kubernetes on Mesos / MarathonHA Kubernetes on Mesos / Marathon
HA Kubernetes on Mesos / Marathon
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Using DC/OS for Continuous Delivery - DevPulseCon 2017
Using DC/OS for Continuous Delivery - DevPulseCon 2017Using DC/OS for Continuous Delivery - DevPulseCon 2017
Using DC/OS for Continuous Delivery - DevPulseCon 2017
 
vSphere Integrated Containers 101 and End-User Workflow
vSphere Integrated Containers 101 and End-User WorkflowvSphere Integrated Containers 101 and End-User Workflow
vSphere Integrated Containers 101 and End-User Workflow
 
WSO2 Cloud and Platform as a Service Strategy
WSO2 Cloud and Platform as a Service StrategyWSO2 Cloud and Platform as a Service Strategy
WSO2 Cloud and Platform as a Service Strategy
 
Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.
 

Similar to CI/CD with Docker, DC/OS, and Jenkins

Container Orchestration Wars
Container Orchestration WarsContainer Orchestration Wars
Container Orchestration WarsKarl Isenberg
 
DOD 2016 - Jörg Schad - How Fast Data and Microservices Change the Datacenter.
DOD 2016 - Jörg Schad - How Fast Data and Microservices Change the Datacenter.DOD 2016 - Jörg Schad - How Fast Data and Microservices Change the Datacenter.
DOD 2016 - Jörg Schad - How Fast Data and Microservices Change the Datacenter.PROIDEA
 
Hyperscale Computing, Enterprise Agility with Mesosphere
Hyperscale Computing, Enterprise Agility with MesosphereHyperscale Computing, Enterprise Agility with Mesosphere
Hyperscale Computing, Enterprise Agility with MesosphereMarkus Eisele
 
Mesos, DC/OS and the Architecture of the New Datacenter
Mesos, DC/OS and the Architecture of the New DatacenterMesos, DC/OS and the Architecture of the New Datacenter
Mesos, DC/OS and the Architecture of the New DatacenterQAware GmbH
 
[DO16] Mesosphere : Microservices meet Fast Data on Azure
[DO16] Mesosphere : Microservices meet Fast Data on Azure [DO16] Mesosphere : Microservices meet Fast Data on Azure
[DO16] Mesosphere : Microservices meet Fast Data on Azure de:code 2017
 
Downtime is not an option - day 2 operations - Jörg Schad
Downtime is not an option - day 2 operations -  Jörg SchadDowntime is not an option - day 2 operations -  Jörg Schad
Downtime is not an option - day 2 operations - Jörg SchadCodemotion
 
Highly efficient container orchestration and continuous delivery with DC/OS a...
Highly efficient container orchestration and continuous delivery with DC/OS a...Highly efficient container orchestration and continuous delivery with DC/OS a...
Highly efficient container orchestration and continuous delivery with DC/OS a...Christian Bogeberg
 
DevOps vs. Site Reliability Engineering (SRE) in Age of Kubernetes
DevOps vs. Site Reliability Engineering (SRE) in Age of KubernetesDevOps vs. Site Reliability Engineering (SRE) in Age of Kubernetes
DevOps vs. Site Reliability Engineering (SRE) in Age of KubernetesDevOps.com
 
Containerizing couchbase with microservice architecture on mesosphere.pptx
Containerizing couchbase with microservice architecture on mesosphere.pptxContainerizing couchbase with microservice architecture on mesosphere.pptx
Containerizing couchbase with microservice architecture on mesosphere.pptxRavi Yadav
 
EMC World 2016 - Introduction to Mesos and Mesosphere
EMC World 2016 - Introduction to Mesos and MesosphereEMC World 2016 - Introduction to Mesos and Mesosphere
EMC World 2016 - Introduction to Mesos and MesosphereDavid vonThenen
 
DevOps in Age of Kubernetes
DevOps in Age of KubernetesDevOps in Age of Kubernetes
DevOps in Age of KubernetesMesosphere Inc.
 
EMC World 2016 - code.08 Introduction to Mesos and Mesosphere
EMC World 2016 - code.08 Introduction to Mesos and MesosphereEMC World 2016 - code.08 Introduction to Mesos and Mesosphere
EMC World 2016 - code.08 Introduction to Mesos and Mesosphere{code}
 
Doing Dropbox the Native Cloud Native Way
Doing Dropbox the Native Cloud Native WayDoing Dropbox the Native Cloud Native Way
Doing Dropbox the Native Cloud Native WayMinio
 
Elastic data services on Apache Mesos via Mesosphere’s DCOS
Elastic data services on Apache Mesos via Mesosphere’s DCOSElastic data services on Apache Mesos via Mesosphere’s DCOS
Elastic data services on Apache Mesos via Mesosphere’s DCOSharrythewiz
 
DevOps as a Pathway to AWS | AWS Public Sector Summit 2016
DevOps as a Pathway to AWS | AWS Public Sector Summit 2016DevOps as a Pathway to AWS | AWS Public Sector Summit 2016
DevOps as a Pathway to AWS | AWS Public Sector Summit 2016Amazon Web Services
 
OSDC 2018 | From batch to pipelines – why Apache Mesos and DC/OS are a soluti...
OSDC 2018 | From batch to pipelines – why Apache Mesos and DC/OS are a soluti...OSDC 2018 | From batch to pipelines – why Apache Mesos and DC/OS are a soluti...
OSDC 2018 | From batch to pipelines – why Apache Mesos and DC/OS are a soluti...NETWAYS
 
Kubernetes One-Click Deployment: Hands-on Workshop (Munich)
Kubernetes One-Click Deployment: Hands-on Workshop (Munich)Kubernetes One-Click Deployment: Hands-on Workshop (Munich)
Kubernetes One-Click Deployment: Hands-on Workshop (Munich)QAware GmbH
 
MySQL High Availability -- InnoDB Clusters
MySQL High Availability -- InnoDB ClustersMySQL High Availability -- InnoDB Clusters
MySQL High Availability -- InnoDB ClustersMatt Lord
 
Journey to the Modern App with Containers, Microservices and Big Data
Journey to the Modern App with Containers, Microservices and Big DataJourney to the Modern App with Containers, Microservices and Big Data
Journey to the Modern App with Containers, Microservices and Big DataLightbend
 
A Journey to Modern Apps with Containers, Microservices and Big Data
A Journey to Modern Apps with Containers, Microservices and Big DataA Journey to Modern Apps with Containers, Microservices and Big Data
A Journey to Modern Apps with Containers, Microservices and Big DataEdward Hsu
 

Similar to CI/CD with Docker, DC/OS, and Jenkins (20)

Container Orchestration Wars
Container Orchestration WarsContainer Orchestration Wars
Container Orchestration Wars
 
DOD 2016 - Jörg Schad - How Fast Data and Microservices Change the Datacenter.
DOD 2016 - Jörg Schad - How Fast Data and Microservices Change the Datacenter.DOD 2016 - Jörg Schad - How Fast Data and Microservices Change the Datacenter.
DOD 2016 - Jörg Schad - How Fast Data and Microservices Change the Datacenter.
 
Hyperscale Computing, Enterprise Agility with Mesosphere
Hyperscale Computing, Enterprise Agility with MesosphereHyperscale Computing, Enterprise Agility with Mesosphere
Hyperscale Computing, Enterprise Agility with Mesosphere
 
Mesos, DC/OS and the Architecture of the New Datacenter
Mesos, DC/OS and the Architecture of the New DatacenterMesos, DC/OS and the Architecture of the New Datacenter
Mesos, DC/OS and the Architecture of the New Datacenter
 
[DO16] Mesosphere : Microservices meet Fast Data on Azure
[DO16] Mesosphere : Microservices meet Fast Data on Azure [DO16] Mesosphere : Microservices meet Fast Data on Azure
[DO16] Mesosphere : Microservices meet Fast Data on Azure
 
Downtime is not an option - day 2 operations - Jörg Schad
Downtime is not an option - day 2 operations -  Jörg SchadDowntime is not an option - day 2 operations -  Jörg Schad
Downtime is not an option - day 2 operations - Jörg Schad
 
Highly efficient container orchestration and continuous delivery with DC/OS a...
Highly efficient container orchestration and continuous delivery with DC/OS a...Highly efficient container orchestration and continuous delivery with DC/OS a...
Highly efficient container orchestration and continuous delivery with DC/OS a...
 
DevOps vs. Site Reliability Engineering (SRE) in Age of Kubernetes
DevOps vs. Site Reliability Engineering (SRE) in Age of KubernetesDevOps vs. Site Reliability Engineering (SRE) in Age of Kubernetes
DevOps vs. Site Reliability Engineering (SRE) in Age of Kubernetes
 
Containerizing couchbase with microservice architecture on mesosphere.pptx
Containerizing couchbase with microservice architecture on mesosphere.pptxContainerizing couchbase with microservice architecture on mesosphere.pptx
Containerizing couchbase with microservice architecture on mesosphere.pptx
 
EMC World 2016 - Introduction to Mesos and Mesosphere
EMC World 2016 - Introduction to Mesos and MesosphereEMC World 2016 - Introduction to Mesos and Mesosphere
EMC World 2016 - Introduction to Mesos and Mesosphere
 
DevOps in Age of Kubernetes
DevOps in Age of KubernetesDevOps in Age of Kubernetes
DevOps in Age of Kubernetes
 
EMC World 2016 - code.08 Introduction to Mesos and Mesosphere
EMC World 2016 - code.08 Introduction to Mesos and MesosphereEMC World 2016 - code.08 Introduction to Mesos and Mesosphere
EMC World 2016 - code.08 Introduction to Mesos and Mesosphere
 
Doing Dropbox the Native Cloud Native Way
Doing Dropbox the Native Cloud Native WayDoing Dropbox the Native Cloud Native Way
Doing Dropbox the Native Cloud Native Way
 
Elastic data services on Apache Mesos via Mesosphere’s DCOS
Elastic data services on Apache Mesos via Mesosphere’s DCOSElastic data services on Apache Mesos via Mesosphere’s DCOS
Elastic data services on Apache Mesos via Mesosphere’s DCOS
 
DevOps as a Pathway to AWS | AWS Public Sector Summit 2016
DevOps as a Pathway to AWS | AWS Public Sector Summit 2016DevOps as a Pathway to AWS | AWS Public Sector Summit 2016
DevOps as a Pathway to AWS | AWS Public Sector Summit 2016
 
OSDC 2018 | From batch to pipelines – why Apache Mesos and DC/OS are a soluti...
OSDC 2018 | From batch to pipelines – why Apache Mesos and DC/OS are a soluti...OSDC 2018 | From batch to pipelines – why Apache Mesos and DC/OS are a soluti...
OSDC 2018 | From batch to pipelines – why Apache Mesos and DC/OS are a soluti...
 
Kubernetes One-Click Deployment: Hands-on Workshop (Munich)
Kubernetes One-Click Deployment: Hands-on Workshop (Munich)Kubernetes One-Click Deployment: Hands-on Workshop (Munich)
Kubernetes One-Click Deployment: Hands-on Workshop (Munich)
 
MySQL High Availability -- InnoDB Clusters
MySQL High Availability -- InnoDB ClustersMySQL High Availability -- InnoDB Clusters
MySQL High Availability -- InnoDB Clusters
 
Journey to the Modern App with Containers, Microservices and Big Data
Journey to the Modern App with Containers, Microservices and Big DataJourney to the Modern App with Containers, Microservices and Big Data
Journey to the Modern App with Containers, Microservices and Big Data
 
A Journey to Modern Apps with Containers, Microservices and Big Data
A Journey to Modern Apps with Containers, Microservices and Big DataA Journey to Modern Apps with Containers, Microservices and Big Data
A Journey to Modern Apps with Containers, Microservices and Big Data
 

Recently uploaded

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 

Recently uploaded (20)

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 

CI/CD with Docker, DC/OS, and Jenkins

  • 1. © 2016 Mesosphere, Inc. All Rights Reserved. 1 CI/CD WITH DOCKER, DC/OS, AND JENKINS ( Velocity NY 2016 Edition )
  • 2. © 2016 Mesosphere, Inc. All Rights Reserved. 2 KARL WHO? Where? - Mesosphere - Pivotal What? - DC/OS - Kubernetes (on Mesos) - CloudFoundry - BOSH - github.com/karlkfi - twitter.com/karlkfi - linkedin.com/in/karlkfi - karl.isenberg.us
  • 3. © 2016 Mesosphere, Inc. All Rights Reserved. 3 WHO ARE YOU?
  • 4. © 2016 Mesosphere, Inc. All Rights Reserved. 4 INTEGRATION Build/Test Manual Review/Merge Build/Test Test all the pieces together DELIVERY Integration Test Release/Deployment Manual Acceptance Prod Release/Deployment Integration branch is always deployable DEPLOYMENT Integration Validation Release/Deployment Integration branch is validated and deployed automatically CONTINUOUS EVERYTHING
  • 5. © 2016 Mesosphere, Inc. All Rights Reserved. 5 SOURCE Branched > Developed > Compiled > Tested > Reviewed > Merged > Tagged PACKAGES Built > Tested > Versioned > Released > Promoted > Installed/Vendored SERVICES Deployed > Tested > Accepted/Validated > Promoted RELEASE vs. DEPLOY
  • 6. © 2016 Mesosphere, Inc. All Rights Reserved. 6 PAIN - Expensive manual merges - Independent refactoring - Incompatible dependencies - Works on my machine - Different environments - Who owns integration? - Mismatched Interfaces - Large upfront planning & communication WHY CONTINUOUS INTEGRATION? RELIEF - Small change sets - Feature branches - Package extraction - Interface extraction - Provisionable environment - Centralized testing - Automatic build/test triggers - Configuration as code - Integration package
  • 7. © 2016 Mesosphere, Inc. All Rights Reserved. 7 PAIN - Manual, undocumented release process - Siloed, tribal knowledge - Bus factor of one - Poor process communication - Infrequent end-to-end testing - Bugs caught right before/after release/deployment - Slow onboarding - Manual regression testing WHY CONTINUOUS DELIVERY? RELIEF - Programmatic dependency management - Automated package management - Automated release building - Automated deployment - Automated promotion - Secrets management - Unit/integration/acceptance tests - Test/UAT/Acceptance environment
  • 8. © 2016 Mesosphere, Inc. All Rights Reserved. 8 PAIN - Unhappy customers - Infrequent/late validation - Many/large simultaneous changes - Making decisions without data - Unhappy developers - Process limiting innovation - Infrequent feedback - Long development cycles - Large upfront planning WHY CONTINUOUS DEPLOYMENT? RELIEF - Automated front-end tests - Automated end-to-end tests - Programmatic definition of acceptance - Acceptance driven development - Milestone releases, not release milestones - Release train - Decouple feature promises from release numbers - Automatic semantic versioning
  • 9. © 2016 Mesosphere, Inc. All Rights Reserved. 9 TOOLS
  • 10. © 2016 Mesosphere, Inc. All Rights Reserved. 10 DOCKER ( Container Runtime, Image Format, and Repository )
  • 11. © 2016 Mesosphere, Inc. All Rights Reserved. 11 DOCKER CONTAINER isolated process tree isolated filesystem optional volumes optional network routing optional resource constraints
  • 12. © 2016 Mesosphere, Inc. All Rights Reserved. 12 RUNTIME The docker-engine runs on linux machines and manages containers and container images. IMAGE A container image is a set of file system layers that can be shipped around as a unit and is used as a template for creating containers. REPOSITORY A docker image repository is a service that manages and store docker images and image layers. CONTAINER ...
  • 13. © 2016 Mesosphere, Inc. All Rights Reserved. 13
  • 14. © 2016 Mesosphere, Inc. All Rights Reserved. 14 BUILD ONCE, RUN ANYWHERE - Portable runtime environment - Language independent - Dependency vendoring - Packaging format - Dependency isolation - More developer control - Portable across operating systems - Fast development cycles HAPPY DEVELOPERS & OPERATORS CONFIGURE ONCE, RUN ANYTHING - Predictability - Repeatable deployment - Consistent, reliable results - Low overhead, low cost - Fast, efficient deployment - Image Layer caching - Developer awareness of operational concerns - Separation of concerns
  • 15. © 2016 Mesosphere, Inc. All Rights Reserved. 15 CONTAINER IMAGE LIFECYCLE Image Image Image Layer Machine 1 Machine 2Image Repository Shared Layer Layer Layer Push Image Pull Dockerfile Build Container Run
  • 16. © 2016 Mesosphere, Inc. All Rights Reserved. 16 DOCKER LAB 1 - 2
  • 17. © 2016 Mesosphere, Inc. All Rights Reserved. 17 DC/OS ( Container Orchestration )
  • 18. © 2016 Mesosphere, Inc. All Rights Reserved. 18 IN THE BEGINNING... Sombrero Galaxy by ESA/Hubble - CC BY 4.0
  • 19. © 2016 Mesosphere, Inc. All Rights Reserved. Hardware Operating System Application 19 COMPUTERS
  • 20. © 2016 Mesosphere, Inc. All Rights Reserved. Hardware Operating System Web Application 20 INTERNET - Remote Users!
  • 21. © 2016 Mesosphere, Inc. All Rights Reserved. Web App Hardware Operating System 21 DISTRIBUTION - Horizontal Scale - Fault Tolerance - Availability - Load Balancing Operating System Operating System Hardware Hardware Web App Web App
  • 22. © 2016 Mesosphere, Inc. All Rights Reserved. Service Service Service Web App Web App Web App Hardware Operating System 22 SERVICE- ORIENTED ARCHITECTURE - Separation of concerns - Optimization of bottlenecks - Smaller teams - API Contracts - Data replication - Complicated provisioning - Dependency management Operating System Operating System Hardware Hardware
  • 23. © 2016 Mesosphere, Inc. All Rights Reserved. Service Service Service Web App Web App Web App Machine Operating System 23 HARDWARE VIRTUALIZATION - Fast provisioning - Isolation - Portability - Utilization - Configuration Management - Virtual Networking - Credential management Operating System Operating System Infrastructure Machine Machine
  • 24. © 2016 Mesosphere, Inc. All Rights Reserved. Operating System Operating System Operating System ServiceApp ServiceServiceAppApp 24 MICROSERVICES - Polyglot - Single Responsibility - Smaller Teams - Utilization - Machine types/groups - Dependency hell Machine Infrastructure Machine Machine ServiceService ServiceServiceServiceService
  • 25. © 2016 Mesosphere, Inc. All Rights Reserved. ServiceApp ServiceServiceAppApp OS 25 CONTAINERS - Rapid deployment - Dependency vendoring - Container image repositories - Spreadsheet scheduling OS OS Machine Infrastructure Machine Machine Container Runtime Container Runtime Container Runtime ServiceService ServiceServiceServiceService
  • 26. © 2016 Mesosphere, Inc. All Rights Reserved. Service Container Runtime Container Runtime Container Runtime OS 26 CONTAINER ORCHESTRATION OS OS Container Orchestration Machine Infrastructure Machine Machine App ServiceServiceAppApp
  • 27. © 2016 Mesosphere, Inc. All Rights Reserved. 27 CONTAINER ORCA-WHAT-NOW? Scheduling, Coordination, & Management of Containerized Processes as Higher Order Abstractions (e.g., Jobs, Services, Applications, Pods, etc.)
  • 28. © 2016 Mesosphere, Inc. All Rights Reserved. Orchestration 28 Machine Infrastructure Web Apps & Services Scheduling Resource Management Container Runtime Machine & OS Service Management CONTAINER ORCHESTRATION Machine & OS Machine & OS Container Runtime Container Runtime Expanded
  • 29. © 2016 Mesosphere, Inc. All Rights Reserved. 29 SCHEDULING - Placement - Replication/Scaling - Resurrection - Rescheduling - Rolling Deployment - Upgrades - Downgrades - Collocation RESOURCE MANAGEMENT - Memory - CPU - GPU - Volumes - Ports - IPs - Images/Artifacts SERVICE MANAGEMENT - Labels - Groups/Namespaces - Dependencies - Load Balancing - Readiness Checking FUNCTIONAL ORCHESTRATION CAPABILITIES
  • 30. © 2016 Mesosphere, Inc. All Rights Reserved. 30 DC/OS LAB 1 - 2
  • 31. © 2016 Mesosphere, Inc. All Rights Reserved. 31 DC/OS ( The Datacenter Operating System )
  • 32. © 2016 Mesosphere, Inc. All Rights Reserved. 32 SCALABILITY Performance, Responsiveness, Efficiency AVAILABILITY Fault Tolerance, Robustness, Reliability, Resilience, Disaster Recovery FLEXIBILITY Format Support, Interoperability, Extensibility, Container Runtimes USABILITY Familiarity, Maintainability, Compatibility, Debuggability PORTABILITY Host OS, Cloud, Bare-Metal, Hybrid SECURITY Auditability, Secrets Management, Encryption, Isolation NON-FUNCTIONAL PLATFORM QUALITIES
  • 33. © 2016 Mesosphere, Inc. All Rights Reserved. 33 PLATFORM A base of technologies on which other technologies or processes are built. PLATFORM AS A SERVICE A managed, multitenant platform. CLOUD PLATFORM A hosted platform as a service on shared infrastructure. PLATFORM SPECTRUM Rainbow by Susanne Nilsson - CC BY-SA 2.0
  • 34. © 2016 Mesosphere, Inc. All Rights Reserved. INFRASTRUCTURE PLATFORM e.g., OpenStack, VMware vSphere CONTAINER PLATFORM e.g., Kubernetes, DC/OS, Rancher APPLICATION PLATFORM e.g., Cloud Foundry, Red Hat OpenShift, Deis 34 PLATFORMS Oil Platform by Berardo62 - CC BY-SA 2.0
  • 35. © 2016 Mesosphere, Inc. All Rights Reserved. CLOUD INFRASTRUCTURE PLATFORM e.g., Amazon Elastic Compute Cloud, Microsoft Azure, Google Compute Engine CLOUD CONTAINER PLATFORM e.g., Google Container Engine, Azure Container Services, Amazon EC2 Container Service CLOUD APPLICATION PLATFORM e.g., Heroku, Google App Engine, Pivotal Web Services, IBM Bluemix 35 CLOUD PLATFORMS
  • 36. © 2016 Mesosphere, Inc. All Rights Reserved. APPLICATION DEVELOPMENT LIFECYCLE Source Repo, Continuous Integration, Artifact Repo CONTAINER ORCHESTRATION Scheduling, Resource Management, Service Management DAY 2 OPERATIONS Debugging, Maintenance 36 CONTAINER OPERATIONS
  • 37. © 2016 Mesosphere, Inc. All Rights Reserved. 37 APPLICATION DEVELOPMENT LIFECYCLE CONTAINER OPERATIONS Code Build, Test, Package Publish Deploy
  • 38. © 2016 Mesosphere, Inc. All Rights Reserved. Applications & Services 38 APPLICATION DEVELOPMENT LIFECYCLE CONTAINER OPERATIONS Source Control Continuous Integration Artifact Repository Orchestration
  • 39. © 2016 Mesosphere, Inc. All Rights Reserved. 39 APPLICATION DEVELOPMENT LIFECYCLE CONTAINER OPERATIONS Applications & Services Source Control Continuous Integration Artifact Repository Orchestration
  • 40. © 2016 Mesosphere, Inc. All Rights Reserved. 40 DEBUGGING - Logging & Metrics - Emitting - Aggregation - Search - Reporting - Alerting - Dashboards - Shell Access MAINTENANCE - Package Management - Upgrading - Cluster Resizing - Application Autoscaling - Capacity Planning - Software Defined Networking - Backups - Disaster Recovery DAY 2 OPERATIONS CONTAINER OPERATIONS
  • 41. © 2016 Mesosphere, Inc. All Rights Reserved. System Space Orchestration User Space Source Control Continuous Integration Artifact Repository 41 CONTAINER OPERATIONS Load Balancer Package Manager Security Networking Logging & Metrics Storage
  • 42. © 2016 Mesosphere, Inc. All Rights Reserved. Kernel 42 OPERATING SYSTEM System Space Hardware User Space
  • 43. © 2016 Mesosphere, Inc. All Rights Reserved. 43 DISTRIBUTED OPERATING SYSTEM Hardware Hardware Hardware User Space Circa 1992 Microkernel System Space Microkernel Microkernel
  • 44. © 2016 Mesosphere, Inc. All Rights Reserved. 44 Machine Infrastructure User Services Orchestration Container Runtime System Services DISTRIBUTED OPERATING SYSTEM Container Runtime Container Runtime Revised OS OS OS Machine Machine Machine DistributedOS
  • 45. © 2016 Mesosphere, Inc. All Rights Reserved. 45 DC/OS - Resource Management - Universal Container Runtime - Container Orchestration - Pluggable Schedulers - Jobs & Services - Distributed System Services - Virtual Networking - Package Management - Services Catalog & Application Ecosystem - Day 2 Operational Focus ENTERPRISE DC/OS - E2E Encryption - Identity & Access Management - Secrets Management - Support
  • 46. © 2015 Mesosphere, Inc. All Rights Reserved. 46 HYPERSCALE OPERATIONS ULTIMATE INFRASTRUCTURE FLEXIBILITY FOR MODERN APPLICATIONS • Many “snowflakes” • Management nightmare • Lengthy cycles to deploy code • Low utilization Mesosphere DCOS MESOSPHERE DCOS APPROACH Container Apps (All) Big Data Analytics (All) PaaS (All) Stateful Service (All) • High performance and resource isolation • Easy scalability and multi-tenancy • Fault tolerant and highly available • Highly efficient with highest utilization Proven in mission-critical deployments Deploys on-prem or in cloud TRADITIONAL APPROACH PaaS 1 Container App 1 Big Data Analytics 1 Big Data Analytics 2 PaaS 2 Container App 2 Stateful Service 1 Stateful Service 2 Complete workload portability
  • 47. USE, REPRODUCTION, OR DISCLOSURE IS SUBJECT TO RESTRICTIONS SET FORTH IN CONTRACT NUMBER 2014-14031000011 AND SUB CONTRACT NO. MESOSPHERE 01. VPC DC/OS ARCHITECTURE DC/OS CLI DC/OS UI DC/OS Universe Auto-ScalingGroup&SecurityGroup ELB ELB LDAP www AGENT (1..n) 47 Backend Services Spartan Minuteman Mesos DNS Mesos Agent 3DT Admin Router Docker User Tasks Cassandra Spark Kafka HDFS Containers... Apps/Tasks Jenkins Auto-ScalingGroup&SecurityGroup MASTER (1..9) Admin Router Backend Services Spartan Minuteman Mesos DNS Resolv-Conf Exhibitor Zookeeper DC/OS Signal CA Vault Marathon Mesos Master History 3DT Networking API Cosmos Bouncer Frontend Services Metronome
  • 48. © 2016 Mesosphere, Inc. All Rights Reserved. 48 DC/OS LAB 3 - 5
  • 49. © 2016 Mesosphere, Inc. All Rights Reserved. 49 JENKINS ( Open Source Automation Server )
  • 50. © 2016 Mesosphere, Inc. All Rights Reserved. 50 JENKINS LAB 1 - 5
  • 51. © 2016 Mesosphere, Inc. All Rights Reserved. 51 EXIT SURVEY