SlideShare une entreprise Scribd logo
1  sur  39
© ZENIKA 2017 All rights reserved - Proprietary & confidential
Mesos vs Kubernetes vs Swarm : Fight!
© ZENIKA 2017 All rights reserved - Proprietary & confidential
Christophe Furmaniak / 2017-06-02
© ZENIKA 2017
/me
Christophe Furmaniak:
• Twitter : @cfurmaniak
• Github : looztra
• Docker hub store : looztra
• Full-blown consultant for Zenika
( b e n e v o l e n t d i s c l a i m e r : I s u c k a t s l i d e s , b e s i d e s b e i n g F r e n c h )
© ZENIKA 2017
WARMUP
• Who uses docker/containers on a daily basis?
• In production?
• Who has already "played" with an orchestrator?
• Who is running an orchestrator in Production?
© ZENIKA 2017
CONTAINERS WITHOUT AN ORCHESTRATOR
• Through command line
that's not for production of course (is it?)
• With custom (shell) script
one step towards your own orchestrator? (seriously?)
• With ansible [insert here another tool name providing a
nice syntax]
Immutable Infrastructure As Code?
H o w d o y o u s t a r t y o u r c o n t a i n e r s ?
© ZENIKA 2017
CONTAINERS WITHOUT AN ORCHESTRATOR
• Host port binding
• auto-mapping (-P)
• manual mapping ('port registry')
service discovery for the win!
• docker run -d -p 8000:80 ns/frontend
• docker run -d -p 8080:8080 ns/api-server
• docker run -d -p 6379:6379 ns/redis-master
• docker run -d -p 6380:6379 ns/redis-slave
H o w d o y o u m a k e y o u r c o n t a i n e r s c o m m u n i c a t e ?
© ZENIKA 2017
CONTAINERS WITHOUT AN ORCHESTRATOR
Schedule containers on your hosts? (pets?)
Deal with container/service/node failure?
Deal with scale up/down?
Deal with host maintenance?
How do you do when your app gets more complex?
Update your app's components? One by One... All at the
same time...
H o w d o y o u . . . ?
© ZENIKA 2017
NOT SUCH THING LIKE FREE LUNCH!
Yo u a n d y o u r f r i e n d l y o p s d u r i n g d e l i v e r i e s
© ZENIKA 2017
CONTAINER ORCHESTRATION
• Container scheduling/placement
• Failover (containers, nodes, management)
• Load Balancing
• Service Discovery
• Overlay Networks
• Storage (distributed, persistent)
• Secret Management
• (Auto) Scaling
• CLI and REST api
• Deployment Configuration as Code
• RBAC
B y d e s i g n !
© ZENIKA 2017
ORCHESTRATORS AND FRIENDS
• Kubernetes
• Docker Swarm
• Mesos + Marathon
• Rancher
• Nomad
• Titus (Mesos + Mantis [scheduling/job mgmt] + Titan)
• Deis (Kubernetes)
• Mantl (Mesos + Marathon and Kubernetes)
• Openshift V3 (Kubernetes)
• Kontena
• CloudFoundry
• ...
L o a d s o f o r c h e s t r a t o r s !
© ZENIKA 2017
HOW TO CHOOSE?
• match your ops and dev (and others) expectations
• support for modern software development strategies
• support for modern operationnal strategies
To o M a n y O r c h e s t r a t o r s E x c e p t i o n ?
© ZENIKA 2017
WHO SHOULD/WILL CHOOSE?
• Container related strategies are usefull for both Dev and
Ops!
• There will be impacts on both Dev and Ops folks!
F o r g e t a b o u t s i l o s , f o c u s o n D e v O p s C a l m S
© ZENIKA 2017
IMPACTS ON OPS FOLKS?
• New (exciting) way to work!
• Less pet nodes
• More cattle => Infrastructure As Code (mandatory?)
• New procedures and tools :
• Network and Storage management
• Metrics and Log management
• Monitoring
c a t / r o o t / e x c i t i n g . m d
© ZENIKA 2017
IMPACTS ON DEV FOLKS
• New (exciting) way to work!
• New notions like Service Discovery
• More concerned:
• Metrics
• Healtchecks
• Logs
• Can I use it on my devbox?
@ E x c i t i n g S t u ff
© ZENIKA 2017
DOCKER SWARM
• Native orchestration shipped with Docker (since 1.12)
• Replacement of 'stand alone Swarm' (swarm v1)
• All-in, no external dependencies
• Trivial setup
• Secure by default (automatic TLS keying and signing)
M o d e , S wa r m M o d e
© ZENIKA 2017
DOCKER SWARM DISTRIBUTIONS
• Manual official setup
• Azure Container Services (Engine Option)
• Rancher (Orchestration Engine Option)
• Ansible roles
• Terraform recipes
I n s t a l l i n g D o c k e r S wa r m
© ZENIKA 2017
DOCKER SWARM FEATURES
• Declarative service model
• Desired state reconciliation
• Placement with labels and constraints
• Overlay networks provide isolation
• Service Discovery through DNS
• Load Balancing
• Rolling Upgrades
• Persistent storage
• Secrets
O r c h e s t r a t i o n
© ZENIKA 2017
DOCKERCOINS!
• It is a DockerCoin miner!
• How DockerCoins works
• DockerCoins application courtesy
of Jérôme Petazzoni
(https://github.com/jpetazzo)
M i n e m i n e m i n e
© ZENIKA 2017
DOCKER SWARM
DEMO
(running on Azure Container Services thx to ACS Engine)
D e m o
© ZENIKA 2017
MESOSPHERE DC/OS
• DC/OS : Data Center Operating System
• Mesosphere: the company that built DC/OS
• Relies on Mesos, the underlying task scheduler
• Frameworks:
• Marathon for apps
• Metronome for jobs
• and others...
D C / O S , M e s o s a n d F r i e n d s
© ZENIKA 2017
DC/OS AND MESOS DISTRIBUTIONS
• Manual setup (dcos cli)
• Rancher (Mesos and Marathon as orchestration engine)
• Azure Container Service (engine option)
• Ansible and Terraform recipes
I n s t a l l i n g D C / O S a n d M e s o s
© ZENIKA 2017
DC/OS FEATURES
• Failure resiliency (provided by Frameworks)
• Service Discovery :
• VIPs (MinuteMan)
• Mesos DNS (A/IP [fixed port] or SRV)
• LoadBalancing : MarathonLB
• Rolling Upgrades and BlueGreen Deployments
• Persistent storage (limited to single instance of app):
• local persistent volume on single node
• external volumes
• 'Pods' since Mesos 1.1.0/marathon 1.4.04 / DCOS 1.9
o r c h e s t r a t i o n
© ZENIKA 2017
DC/OS
DEMO
(running on Azure Container Services)
D e m o
© ZENIKA 2017
KUBERNETES
• Groups containers that make up an application into
logical units for easy management and discovery
• Built upon 15 years of running production workloads at
Google
• Google and Redhat as contributors
I n t r o d u c t i o n
© ZENIKA 2017
KUBERNETES DISTRIBUTIONS
• kubeadm
• Apprenda Kismatic
• CoreOS Tectonic
• Azure Container Service (engine option)
• Rancher (engine option)
• RedHat Openshift v3
• Ansible and Terraform recipes
I n s t a l l K 8 S
© ZENIKA 2017
KUBERNETES FEATURES
• Pods
• Service Discovery
• Load Balancing
• Rolling Updates and BlueGreen deployments
• Storage orchestration
• Daemon Sets and Stateful/Pet Sets
• Configuration Objects
• Secrets
O r c h e s t r a t i o n
© ZENIKA 2017
KUBERNETES
DEMO
(running on Azure Container Services)
D e m o
© ZENIKA 2017
SWARM WRAP UP
• quickest ramp-up, no vendor lock-in (except Docker :D)
• good choice for simple web/stateless applications
• not for complicated large scale app
• no POD support
• no RBAC
• no UI (available in commercial Docker DataCenter)
• no specific multi-datacenter support
S h o u l d y o u s t a y o r s h o u l d y o u g o ?
© ZENIKA 2017
SWARM WRAP UP (FOCUS ON DEV)
• docker-compose out of the box
• local setup with docker swarm init
S h o u l d y o u s t a y o r s h o u l d y o u g o ?
© ZENIKA 2017
DCOS WRAP UP
• Also works for non-containerized apps
• Packages available for well -know apps (DCOS Universe)
• Nice for mixed apps
• Tested with tens of thousands nodes
• UIs and CLI
• Support for multi-datacenters
• Support for Authentication
S h o u l d y o u s t a y o r s h o u l d y o u g o ?
© ZENIKA 2017
DCOS WRAP UP (continued)
• More stacks to assemble/debug
(DCOS/Mesos/Marathon/Mesos DNS/MarathonLB/...)
• Load balancing between services can be more
complicated
• Overlay Network still a little bit tricky
• Limited support for persistent volumes
• Support for Authorization in the commercial DC/OS
S h o u l d y o u s t a y o r s h o u l d y o u g o ?
© ZENIKA 2017
DCOS WRAP UP (FOCUS ON DEV)
• native application deployment descriptor
• docker-compose with the Docker Compose Executor
• MiniMesos project (but limited support for frameworks)
• you have to specify limits (memory, cpu) every time
S h o u l d y o u s t a y o r s h o u l d y o u g o ?
© ZENIKA 2017
KUBERNETES WRAP UP
• More feature rich and mature
• Nice POD workload definition
• Stateful/Pet sets to support stateful apps
• Strong support from Google and RedHat
• Strong community
• Tested with thousands nodes
• UI and CLI (kubectl)
• RBAC support through Namespaces
• Support for multi datacenters through Federation
S h o u l d y o u s t a y o r s h o u l d y o u g o ?
© ZENIKA 2017
KUBERNETES WRAP UP (CONTINUED)
• More complex (etcd, API server, scheduler, kubelet,
kubeproxy, ...)
• No network overlay by default (but easily installable
throught pod networks)
• No direct interaction with the docker daemon
• Opinionated piece of software
S h o u l d y o u s t a y o r s h o u l d y o u g o ?
© ZENIKA 2017
KUBERNETES WRAP UP (FOCUS ON DEV)
• native application deployment descriptor
• docker-compose support with project Kompose
• packaging with Helm (by DEIS Microsoft)
• ... and workflow with Draft (by Microsoft)
• ksonnet to simply configuration
• istio to connect, manage and secure microservices
• local testing with MiniKube
• ... or MiniShift (for the openshift version)
S h o u l d y o u s t a y o r s h o u l d y o u g o ?
© ZENIKA 2017
META-ORCHESTRATION
• Kubernetes in Mesos (link)
• Swarm in Mesos (link)
• Mesos, Kubernetes and Swarm in Rancher
O r c h e s t r a t o r i n c e p t i o n
© ZENIKA 2017
POINTERS
• Application Delivery with Mesosphere DC/OS
• Mesos: a state of the art container orchestrator
• Comparing Rancher orchestration engine option
• Orchestration Kit / Devoxx France
• Containerus Bellum by Octo (French)
• Container Pods with Docker Compose in Mesos
• Mesos Docker Compose Executor
• Project Kompose
• Helm Packager
• Project Draft
• Compose Version 3
N i c e t o s h a r e
© ZENIKA 2017
POINTERS (CONTINUED)
• DockerCoins project source code
• Docker Swarm Visualizer
• MiniMesos
• MiniKube
• MiniShift
• Ksonnet intro
• Ksonnet
• Istio
M o r e n i c e t o s h a r e
© ZENIKA 2017
This is the end
Thank You!
© ZENIKA 2017
or not...
Questions?

Contenu connexe

Tendances

Orchestrating Docker containers at scale
Orchestrating Docker containers at scaleOrchestrating Docker containers at scale
Orchestrating Docker containers at scaleMaciej Lasyk
 
Dockerを利用したローカル環境から本番環境までの構築設計
Dockerを利用したローカル環境から本番環境までの構築設計Dockerを利用したローカル環境から本番環境までの構築設計
Dockerを利用したローカル環境から本番環境までの構築設計Koichi Nagaoka
 
Bare Metal to OpenStack with Razor and Chef
Bare Metal to OpenStack with Razor and ChefBare Metal to OpenStack with Razor and Chef
Bare Metal to OpenStack with Razor and ChefMatt Ray
 
Docker 101 @KACST Saudi HPC 2016
Docker 101  @KACST Saudi HPC 2016Docker 101  @KACST Saudi HPC 2016
Docker 101 @KACST Saudi HPC 2016Walid Shaari
 
Why Docker? Dayton PHP, April 2017
Why Docker? Dayton PHP, April 2017Why Docker? Dayton PHP, April 2017
Why Docker? Dayton PHP, April 2017Chris Tankersley
 
Docker Introduction + what is new in 0.9
Docker Introduction + what is new in 0.9 Docker Introduction + what is new in 0.9
Docker Introduction + what is new in 0.9 Jérôme Petazzoni
 
[DockerCon 2019] Hardening Docker daemon with Rootless mode
[DockerCon 2019] Hardening Docker daemon with Rootless mode[DockerCon 2019] Hardening Docker daemon with Rootless mode
[DockerCon 2019] Hardening Docker daemon with Rootless modeAkihiro Suda
 
Docker在豆瓣的实践 刘天伟-20160709
Docker在豆瓣的实践 刘天伟-20160709Docker在豆瓣的实践 刘天伟-20160709
Docker在豆瓣的实践 刘天伟-20160709Tianwei Liu
 
Containers without docker
Containers without dockerContainers without docker
Containers without dockerBen Hall
 
Docker and kubernetes
Docker and kubernetesDocker and kubernetes
Docker and kubernetesDongwon Kim
 
Storage based on_openstack_mariocho
Storage based on_openstack_mariochoStorage based on_openstack_mariocho
Storage based on_openstack_mariochoMario Cho
 
Introduction to Docker and all things containers, Docker Meetup at RelateIQ
Introduction to Docker and all things containers, Docker Meetup at RelateIQIntroduction to Docker and all things containers, Docker Meetup at RelateIQ
Introduction to Docker and all things containers, Docker Meetup at RelateIQdotCloud
 
Head First to Container&Kubernetes
Head First to Container&KubernetesHead First to Container&Kubernetes
Head First to Container&KubernetesHungWei Chiu
 
Docker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshopDocker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshopSathish VJ
 
Ceph and Mirantis OpenStack
Ceph and Mirantis OpenStackCeph and Mirantis OpenStack
Ceph and Mirantis OpenStackMirantis
 
Crossing the Streams Mesos <> Kubernetes
Crossing the Streams Mesos <> KubernetesCrossing the Streams Mesos <> Kubernetes
Crossing the Streams Mesos <> KubernetesTimothy St. Clair
 
How we dockerized a startup? #meetup #docker
How we dockerized a startup? #meetup #docker How we dockerized a startup? #meetup #docker
How we dockerized a startup? #meetup #docker Jonathan Martin
 

Tendances (20)

Orchestrating Docker containers at scale
Orchestrating Docker containers at scaleOrchestrating Docker containers at scale
Orchestrating Docker containers at scale
 
Dockerを利用したローカル環境から本番環境までの構築設計
Dockerを利用したローカル環境から本番環境までの構築設計Dockerを利用したローカル環境から本番環境までの構築設計
Dockerを利用したローカル環境から本番環境までの構築設計
 
Bare Metal to OpenStack with Razor and Chef
Bare Metal to OpenStack with Razor and ChefBare Metal to OpenStack with Razor and Chef
Bare Metal to OpenStack with Razor and Chef
 
Docker - introduction
Docker - introductionDocker - introduction
Docker - introduction
 
Docker 101 @KACST Saudi HPC 2016
Docker 101  @KACST Saudi HPC 2016Docker 101  @KACST Saudi HPC 2016
Docker 101 @KACST Saudi HPC 2016
 
Why Docker? Dayton PHP, April 2017
Why Docker? Dayton PHP, April 2017Why Docker? Dayton PHP, April 2017
Why Docker? Dayton PHP, April 2017
 
Docker Introduction + what is new in 0.9
Docker Introduction + what is new in 0.9 Docker Introduction + what is new in 0.9
Docker Introduction + what is new in 0.9
 
[DockerCon 2019] Hardening Docker daemon with Rootless mode
[DockerCon 2019] Hardening Docker daemon with Rootless mode[DockerCon 2019] Hardening Docker daemon with Rootless mode
[DockerCon 2019] Hardening Docker daemon with Rootless mode
 
Docker在豆瓣的实践 刘天伟-20160709
Docker在豆瓣的实践 刘天伟-20160709Docker在豆瓣的实践 刘天伟-20160709
Docker在豆瓣的实践 刘天伟-20160709
 
Containers without docker
Containers without dockerContainers without docker
Containers without docker
 
Docker and kubernetes
Docker and kubernetesDocker and kubernetes
Docker and kubernetes
 
Storage based on_openstack_mariocho
Storage based on_openstack_mariochoStorage based on_openstack_mariocho
Storage based on_openstack_mariocho
 
Introduction to Docker and all things containers, Docker Meetup at RelateIQ
Introduction to Docker and all things containers, Docker Meetup at RelateIQIntroduction to Docker and all things containers, Docker Meetup at RelateIQ
Introduction to Docker and all things containers, Docker Meetup at RelateIQ
 
Head First to Container&Kubernetes
Head First to Container&KubernetesHead First to Container&Kubernetes
Head First to Container&Kubernetes
 
Docker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshopDocker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshop
 
Docker workshop
Docker workshopDocker workshop
Docker workshop
 
Ceph and Mirantis OpenStack
Ceph and Mirantis OpenStackCeph and Mirantis OpenStack
Ceph and Mirantis OpenStack
 
Crossing the Streams Mesos <> Kubernetes
Crossing the Streams Mesos <> KubernetesCrossing the Streams Mesos <> Kubernetes
Crossing the Streams Mesos <> Kubernetes
 
Docker From Scratch
Docker From ScratchDocker From Scratch
Docker From Scratch
 
How we dockerized a startup? #meetup #docker
How we dockerized a startup? #meetup #docker How we dockerized a startup? #meetup #docker
How we dockerized a startup? #meetup #docker
 

Similaire à Mesos swam-kubernetes-vds-02062017

Webinar: End-to-End CI/CD with GitLab and DC/OS
Webinar: End-to-End CI/CD with GitLab and DC/OSWebinar: End-to-End CI/CD with GitLab and DC/OS
Webinar: End-to-End CI/CD with GitLab and DC/OSMesosphere Inc.
 
DevOpsDays 2018 - Migrating a Cloud Native App to k8s
DevOpsDays 2018 - Migrating a Cloud Native App to k8sDevOpsDays 2018 - Migrating a Cloud Native App to k8s
DevOpsDays 2018 - Migrating a Cloud Native App to k8sGökhan Şengün
 
Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017
Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017
Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017{code} by Dell EMC
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realistsKarthik Gaekwad
 
Gdg using docker to streamline development
Gdg using docker to streamline developmentGdg using docker to streamline development
Gdg using docker to streamline developmentTrond Marius Øvstetun
 
Managing ScaleIO as Software on Mesos
Managing ScaleIO as Software on MesosManaging ScaleIO as Software on Mesos
Managing ScaleIO as Software on MesosDavid vonThenen
 
Rami Sayar - Node microservices with Docker
Rami Sayar - Node microservices with DockerRami Sayar - Node microservices with Docker
Rami Sayar - Node microservices with DockerWeb à Québec
 
HBaseCon2017 Splice Machine as a Service: Multi-tenant HBase using DCOS (Meso...
HBaseCon2017 Splice Machine as a Service: Multi-tenant HBase using DCOS (Meso...HBaseCon2017 Splice Machine as a Service: Multi-tenant HBase using DCOS (Meso...
HBaseCon2017 Splice Machine as a Service: Multi-tenant HBase using DCOS (Meso...HBaseCon
 
Containers and Microservices for Realists
Containers and Microservices for RealistsContainers and Microservices for Realists
Containers and Microservices for RealistsOracle Developers
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realistsKarthik Gaekwad
 
DevOps and BigData Analytics
DevOps and BigData Analytics DevOps and BigData Analytics
DevOps and BigData Analytics sbbabu
 
Docker for the enterprise
Docker for the enterpriseDocker for the enterprise
Docker for the enterpriseBert Poller
 
Progress for big data in Kubernetes
Progress for big data in KubernetesProgress for big data in Kubernetes
Progress for big data in KubernetesTed Dunning
 
Storage for containers and cloud-native deployments - Rancher Online Meetup -...
Storage for containers and cloud-native deployments - Rancher Online Meetup -...Storage for containers and cloud-native deployments - Rancher Online Meetup -...
Storage for containers and cloud-native deployments - Rancher Online Meetup -...Shannon Williams
 
(RivieraDev 2018) #serverless - 2 ans de retourS d'expérience
(RivieraDev 2018) #serverless - 2 ans de retourS d'expérience(RivieraDev 2018) #serverless - 2 ans de retourS d'expérience
(RivieraDev 2018) #serverless - 2 ans de retourS d'expérienceLudovic Piot
 
Building the Glue for Service Discovery & Load Balancing Microservices
Building the Glue for Service Discovery & Load Balancing MicroservicesBuilding the Glue for Service Discovery & Load Balancing Microservices
Building the Glue for Service Discovery & Load Balancing MicroservicesSargun Dhillon
 
The Perils and Triumphs of using Cassandra at a .NET/Microsoft Shop
The Perils and Triumphs of using Cassandra at a .NET/Microsoft ShopThe Perils and Triumphs of using Cassandra at a .NET/Microsoft Shop
The Perils and Triumphs of using Cassandra at a .NET/Microsoft ShopJeff Smoley
 
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
 
Real World Modern Development Use Cases with RackHD and Adobe
Real World Modern Development Use Cases with RackHD and AdobeReal World Modern Development Use Cases with RackHD and Adobe
Real World Modern Development Use Cases with RackHD and AdobeTimothy Gelter
 

Similaire à Mesos swam-kubernetes-vds-02062017 (20)

Webinar: End-to-End CI/CD with GitLab and DC/OS
Webinar: End-to-End CI/CD with GitLab and DC/OSWebinar: End-to-End CI/CD with GitLab and DC/OS
Webinar: End-to-End CI/CD with GitLab and DC/OS
 
56k.cloud training
56k.cloud training56k.cloud training
56k.cloud training
 
DevOpsDays 2018 - Migrating a Cloud Native App to k8s
DevOpsDays 2018 - Migrating a Cloud Native App to k8sDevOpsDays 2018 - Migrating a Cloud Native App to k8s
DevOpsDays 2018 - Migrating a Cloud Native App to k8s
 
Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017
Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017
Managing ScaleIO as Software on Mesos - David vonThenen - Dell EMC World 2017
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realists
 
Gdg using docker to streamline development
Gdg using docker to streamline developmentGdg using docker to streamline development
Gdg using docker to streamline development
 
Managing ScaleIO as Software on Mesos
Managing ScaleIO as Software on MesosManaging ScaleIO as Software on Mesos
Managing ScaleIO as Software on Mesos
 
Rami Sayar - Node microservices with Docker
Rami Sayar - Node microservices with DockerRami Sayar - Node microservices with Docker
Rami Sayar - Node microservices with Docker
 
HBaseCon2017 Splice Machine as a Service: Multi-tenant HBase using DCOS (Meso...
HBaseCon2017 Splice Machine as a Service: Multi-tenant HBase using DCOS (Meso...HBaseCon2017 Splice Machine as a Service: Multi-tenant HBase using DCOS (Meso...
HBaseCon2017 Splice Machine as a Service: Multi-tenant HBase using DCOS (Meso...
 
Containers and Microservices for Realists
Containers and Microservices for RealistsContainers and Microservices for Realists
Containers and Microservices for Realists
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realists
 
DevOps and BigData Analytics
DevOps and BigData Analytics DevOps and BigData Analytics
DevOps and BigData Analytics
 
Docker for the enterprise
Docker for the enterpriseDocker for the enterprise
Docker for the enterprise
 
Progress for big data in Kubernetes
Progress for big data in KubernetesProgress for big data in Kubernetes
Progress for big data in Kubernetes
 
Storage for containers and cloud-native deployments - Rancher Online Meetup -...
Storage for containers and cloud-native deployments - Rancher Online Meetup -...Storage for containers and cloud-native deployments - Rancher Online Meetup -...
Storage for containers and cloud-native deployments - Rancher Online Meetup -...
 
(RivieraDev 2018) #serverless - 2 ans de retourS d'expérience
(RivieraDev 2018) #serverless - 2 ans de retourS d'expérience(RivieraDev 2018) #serverless - 2 ans de retourS d'expérience
(RivieraDev 2018) #serverless - 2 ans de retourS d'expérience
 
Building the Glue for Service Discovery & Load Balancing Microservices
Building the Glue for Service Discovery & Load Balancing MicroservicesBuilding the Glue for Service Discovery & Load Balancing Microservices
Building the Glue for Service Discovery & Load Balancing Microservices
 
The Perils and Triumphs of using Cassandra at a .NET/Microsoft Shop
The Perils and Triumphs of using Cassandra at a .NET/Microsoft ShopThe Perils and Triumphs of using Cassandra at a .NET/Microsoft Shop
The Perils and Triumphs of using Cassandra at a .NET/Microsoft Shop
 
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
 
Real World Modern Development Use Cases with RackHD and Adobe
Real World Modern Development Use Cases with RackHD and AdobeReal World Modern Development Use Cases with RackHD and Adobe
Real World Modern Development Use Cases with RackHD and Adobe
 

Dernier

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 

Dernier (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 

Mesos swam-kubernetes-vds-02062017

  • 1. © ZENIKA 2017 All rights reserved - Proprietary & confidential Mesos vs Kubernetes vs Swarm : Fight! © ZENIKA 2017 All rights reserved - Proprietary & confidential Christophe Furmaniak / 2017-06-02
  • 2. © ZENIKA 2017 /me Christophe Furmaniak: • Twitter : @cfurmaniak • Github : looztra • Docker hub store : looztra • Full-blown consultant for Zenika ( b e n e v o l e n t d i s c l a i m e r : I s u c k a t s l i d e s , b e s i d e s b e i n g F r e n c h )
  • 3. © ZENIKA 2017 WARMUP • Who uses docker/containers on a daily basis? • In production? • Who has already "played" with an orchestrator? • Who is running an orchestrator in Production?
  • 4. © ZENIKA 2017 CONTAINERS WITHOUT AN ORCHESTRATOR • Through command line that's not for production of course (is it?) • With custom (shell) script one step towards your own orchestrator? (seriously?) • With ansible [insert here another tool name providing a nice syntax] Immutable Infrastructure As Code? H o w d o y o u s t a r t y o u r c o n t a i n e r s ?
  • 5. © ZENIKA 2017 CONTAINERS WITHOUT AN ORCHESTRATOR • Host port binding • auto-mapping (-P) • manual mapping ('port registry') service discovery for the win! • docker run -d -p 8000:80 ns/frontend • docker run -d -p 8080:8080 ns/api-server • docker run -d -p 6379:6379 ns/redis-master • docker run -d -p 6380:6379 ns/redis-slave H o w d o y o u m a k e y o u r c o n t a i n e r s c o m m u n i c a t e ?
  • 6. © ZENIKA 2017 CONTAINERS WITHOUT AN ORCHESTRATOR Schedule containers on your hosts? (pets?) Deal with container/service/node failure? Deal with scale up/down? Deal with host maintenance? How do you do when your app gets more complex? Update your app's components? One by One... All at the same time... H o w d o y o u . . . ?
  • 7. © ZENIKA 2017 NOT SUCH THING LIKE FREE LUNCH! Yo u a n d y o u r f r i e n d l y o p s d u r i n g d e l i v e r i e s
  • 8. © ZENIKA 2017 CONTAINER ORCHESTRATION • Container scheduling/placement • Failover (containers, nodes, management) • Load Balancing • Service Discovery • Overlay Networks • Storage (distributed, persistent) • Secret Management • (Auto) Scaling • CLI and REST api • Deployment Configuration as Code • RBAC B y d e s i g n !
  • 9. © ZENIKA 2017 ORCHESTRATORS AND FRIENDS • Kubernetes • Docker Swarm • Mesos + Marathon • Rancher • Nomad • Titus (Mesos + Mantis [scheduling/job mgmt] + Titan) • Deis (Kubernetes) • Mantl (Mesos + Marathon and Kubernetes) • Openshift V3 (Kubernetes) • Kontena • CloudFoundry • ... L o a d s o f o r c h e s t r a t o r s !
  • 10. © ZENIKA 2017 HOW TO CHOOSE? • match your ops and dev (and others) expectations • support for modern software development strategies • support for modern operationnal strategies To o M a n y O r c h e s t r a t o r s E x c e p t i o n ?
  • 11. © ZENIKA 2017 WHO SHOULD/WILL CHOOSE? • Container related strategies are usefull for both Dev and Ops! • There will be impacts on both Dev and Ops folks! F o r g e t a b o u t s i l o s , f o c u s o n D e v O p s C a l m S
  • 12. © ZENIKA 2017 IMPACTS ON OPS FOLKS? • New (exciting) way to work! • Less pet nodes • More cattle => Infrastructure As Code (mandatory?) • New procedures and tools : • Network and Storage management • Metrics and Log management • Monitoring c a t / r o o t / e x c i t i n g . m d
  • 13. © ZENIKA 2017 IMPACTS ON DEV FOLKS • New (exciting) way to work! • New notions like Service Discovery • More concerned: • Metrics • Healtchecks • Logs • Can I use it on my devbox? @ E x c i t i n g S t u ff
  • 14. © ZENIKA 2017 DOCKER SWARM • Native orchestration shipped with Docker (since 1.12) • Replacement of 'stand alone Swarm' (swarm v1) • All-in, no external dependencies • Trivial setup • Secure by default (automatic TLS keying and signing) M o d e , S wa r m M o d e
  • 15. © ZENIKA 2017 DOCKER SWARM DISTRIBUTIONS • Manual official setup • Azure Container Services (Engine Option) • Rancher (Orchestration Engine Option) • Ansible roles • Terraform recipes I n s t a l l i n g D o c k e r S wa r m
  • 16. © ZENIKA 2017 DOCKER SWARM FEATURES • Declarative service model • Desired state reconciliation • Placement with labels and constraints • Overlay networks provide isolation • Service Discovery through DNS • Load Balancing • Rolling Upgrades • Persistent storage • Secrets O r c h e s t r a t i o n
  • 17. © ZENIKA 2017 DOCKERCOINS! • It is a DockerCoin miner! • How DockerCoins works • DockerCoins application courtesy of Jérôme Petazzoni (https://github.com/jpetazzo) M i n e m i n e m i n e
  • 18. © ZENIKA 2017 DOCKER SWARM DEMO (running on Azure Container Services thx to ACS Engine) D e m o
  • 19. © ZENIKA 2017 MESOSPHERE DC/OS • DC/OS : Data Center Operating System • Mesosphere: the company that built DC/OS • Relies on Mesos, the underlying task scheduler • Frameworks: • Marathon for apps • Metronome for jobs • and others... D C / O S , M e s o s a n d F r i e n d s
  • 20. © ZENIKA 2017 DC/OS AND MESOS DISTRIBUTIONS • Manual setup (dcos cli) • Rancher (Mesos and Marathon as orchestration engine) • Azure Container Service (engine option) • Ansible and Terraform recipes I n s t a l l i n g D C / O S a n d M e s o s
  • 21. © ZENIKA 2017 DC/OS FEATURES • Failure resiliency (provided by Frameworks) • Service Discovery : • VIPs (MinuteMan) • Mesos DNS (A/IP [fixed port] or SRV) • LoadBalancing : MarathonLB • Rolling Upgrades and BlueGreen Deployments • Persistent storage (limited to single instance of app): • local persistent volume on single node • external volumes • 'Pods' since Mesos 1.1.0/marathon 1.4.04 / DCOS 1.9 o r c h e s t r a t i o n
  • 22. © ZENIKA 2017 DC/OS DEMO (running on Azure Container Services) D e m o
  • 23. © ZENIKA 2017 KUBERNETES • Groups containers that make up an application into logical units for easy management and discovery • Built upon 15 years of running production workloads at Google • Google and Redhat as contributors I n t r o d u c t i o n
  • 24. © ZENIKA 2017 KUBERNETES DISTRIBUTIONS • kubeadm • Apprenda Kismatic • CoreOS Tectonic • Azure Container Service (engine option) • Rancher (engine option) • RedHat Openshift v3 • Ansible and Terraform recipes I n s t a l l K 8 S
  • 25. © ZENIKA 2017 KUBERNETES FEATURES • Pods • Service Discovery • Load Balancing • Rolling Updates and BlueGreen deployments • Storage orchestration • Daemon Sets and Stateful/Pet Sets • Configuration Objects • Secrets O r c h e s t r a t i o n
  • 26. © ZENIKA 2017 KUBERNETES DEMO (running on Azure Container Services) D e m o
  • 27. © ZENIKA 2017 SWARM WRAP UP • quickest ramp-up, no vendor lock-in (except Docker :D) • good choice for simple web/stateless applications • not for complicated large scale app • no POD support • no RBAC • no UI (available in commercial Docker DataCenter) • no specific multi-datacenter support S h o u l d y o u s t a y o r s h o u l d y o u g o ?
  • 28. © ZENIKA 2017 SWARM WRAP UP (FOCUS ON DEV) • docker-compose out of the box • local setup with docker swarm init S h o u l d y o u s t a y o r s h o u l d y o u g o ?
  • 29. © ZENIKA 2017 DCOS WRAP UP • Also works for non-containerized apps • Packages available for well -know apps (DCOS Universe) • Nice for mixed apps • Tested with tens of thousands nodes • UIs and CLI • Support for multi-datacenters • Support for Authentication S h o u l d y o u s t a y o r s h o u l d y o u g o ?
  • 30. © ZENIKA 2017 DCOS WRAP UP (continued) • More stacks to assemble/debug (DCOS/Mesos/Marathon/Mesos DNS/MarathonLB/...) • Load balancing between services can be more complicated • Overlay Network still a little bit tricky • Limited support for persistent volumes • Support for Authorization in the commercial DC/OS S h o u l d y o u s t a y o r s h o u l d y o u g o ?
  • 31. © ZENIKA 2017 DCOS WRAP UP (FOCUS ON DEV) • native application deployment descriptor • docker-compose with the Docker Compose Executor • MiniMesos project (but limited support for frameworks) • you have to specify limits (memory, cpu) every time S h o u l d y o u s t a y o r s h o u l d y o u g o ?
  • 32. © ZENIKA 2017 KUBERNETES WRAP UP • More feature rich and mature • Nice POD workload definition • Stateful/Pet sets to support stateful apps • Strong support from Google and RedHat • Strong community • Tested with thousands nodes • UI and CLI (kubectl) • RBAC support through Namespaces • Support for multi datacenters through Federation S h o u l d y o u s t a y o r s h o u l d y o u g o ?
  • 33. © ZENIKA 2017 KUBERNETES WRAP UP (CONTINUED) • More complex (etcd, API server, scheduler, kubelet, kubeproxy, ...) • No network overlay by default (but easily installable throught pod networks) • No direct interaction with the docker daemon • Opinionated piece of software S h o u l d y o u s t a y o r s h o u l d y o u g o ?
  • 34. © ZENIKA 2017 KUBERNETES WRAP UP (FOCUS ON DEV) • native application deployment descriptor • docker-compose support with project Kompose • packaging with Helm (by DEIS Microsoft) • ... and workflow with Draft (by Microsoft) • ksonnet to simply configuration • istio to connect, manage and secure microservices • local testing with MiniKube • ... or MiniShift (for the openshift version) S h o u l d y o u s t a y o r s h o u l d y o u g o ?
  • 35. © ZENIKA 2017 META-ORCHESTRATION • Kubernetes in Mesos (link) • Swarm in Mesos (link) • Mesos, Kubernetes and Swarm in Rancher O r c h e s t r a t o r i n c e p t i o n
  • 36. © ZENIKA 2017 POINTERS • Application Delivery with Mesosphere DC/OS • Mesos: a state of the art container orchestrator • Comparing Rancher orchestration engine option • Orchestration Kit / Devoxx France • Containerus Bellum by Octo (French) • Container Pods with Docker Compose in Mesos • Mesos Docker Compose Executor • Project Kompose • Helm Packager • Project Draft • Compose Version 3 N i c e t o s h a r e
  • 37. © ZENIKA 2017 POINTERS (CONTINUED) • DockerCoins project source code • Docker Swarm Visualizer • MiniMesos • MiniKube • MiniShift • Ksonnet intro • Ksonnet • Istio M o r e n i c e t o s h a r e
  • 38. © ZENIKA 2017 This is the end Thank You!
  • 39. © ZENIKA 2017 or not... Questions?

Notes de l'éditeur

  1. How DockerCoins works: worker asks to rng to give it random bytes worker feeds those random bytes into hasher each hash starting with 0 is a DockerCoin DockerCoins are stored in redis redis is also updated every second to track speed you can see the progress with the webui