SlideShare ist ein Scribd-Unternehmen logo
1 von 38
Downloaden Sie, um offline zu lesen
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Orchestrator
comparison
11th Docker Switzerland User Group Meetup
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
How important is orchestration and what is it for ?
- Might not need it for small apps
- No orchestration == manual orchestration
- Manually place containers, network, scale, check, update
- Microservices | Cloud Native Applications
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Design principles for Cloud Native Applications:
- Design for Performance: responsive; concurrency; efficiency
- Design for Automation: automate dev & ops tasks
- Design for Resiliency: fault-tolerant; self-healing
- Design for Elasticity: automatically scale
- Design for Delivery: short roundtrips; automated delivery
- Design for Diagnosability: cluster-wide logs, traces, metrics
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Welcome to the socks shop
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Microservice reference application
- Intended to help people get started with microservices
- Great for comparing frameworks etc
- Similar to "Pet Store"for Java
- ... or TodoMVC for JavaScript
Lots of implementations already
https://github.com/microservices-demo/microservices-demo/tree/master/dep
loy
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Architecture
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Comparing
Orchestrators
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Comparing orchestrators
- All work and are improving rapidly
- Understand the differences
- Understand your requirements
- Please don't roll your own!
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
The players
- Kubernetes
- Mesos (different workloads)
- Docker Swarm Mode
- Plus others
- Nomad, PaaSs...
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Side note - The Borg/Omega paper
- Influential papers from Google
- Lessons learnt from 10 years with containers
- Google contributed cgroups to the Linux kernel, cgroups and linux
namespaces are the heart of containers
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Docker swarm mode
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Swarm mode
- New in Docker 1.12
- Docker Inc's official solution
- Part of core distribution
- Major improvement over old Swarm
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Core components
- Manager nodes
- coordinate via Raft
- no need for separate etcd/zookeeper
- Worker nodes
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Usability
- Docker native uses concepts from single-node Docker and extends them to
the Swarm.
- If you are up to date on Docker concepts, the learning curve is fairly
gradual.
- The setup for a swarm is trivial
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Easy to install
docker swarm init
Swarm initialized: current node (10vh26gyxppo6j2vyb8rcvjwj) is now a
manager.
To add a worker to this swarm, run the following command:
docker swarm join 
--token
SWMTKN-1-5td5x39z8jw69aloe8aaqs26c9vf6nc7pzfepsq0xfmo9ldfk2-2747zp8w
0enbccrjmkt1o8du3 
172.17.9.102:2377
To add a manager to this swarm, run 'docker swarm join-token
manager' and follow the instructions.
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Secure communication by default
- TLS set up using self-signed certs
- Certificates automatically rotated
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Feature Set
- Services
- Networks
- Constraints and labels
- Support of volume drivers
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Services
- Services
- Set of containers that are launched and a certain number of
containers are kept running at all times.
- There are two types of services, replicated or global.
- Replicated services maintain a specified number of containers
across the cluster
- Global services run one instance of a container on each of your
swarm nodes.
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Networks
- You can create named overlay networks
- Using the named overlay network you can create isolated, flat, encrypted
virtual networks across your set of nodes to launch your containers into.
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
- Control which node a container can be scheduled on
- E.g:
- Only nodes labeled "staging"
- Only nodes which have the image
- Only the node running a given container (affinity)
Constraints and Filters
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Other features
- Spread scheduling
- chooses "least loaded" node
- more options later
- Mesh Networking
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Application definition
- Apps are defined in DAB can be deployed on a Swarm cluster
- Possible to scale individual containers defined in the DAB file (manual)
Testing Swarm Mode with Sock Shop:
https://raw.githubusercontent.com/microservices-demo/microservices-demo/master/deploy/swarmk
it/start-swarmkit-services.sh
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Swarm mode advantages
- Easy to install
- Secure by default
- “Bundled with Docker”
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Swarm Mode disadvantages
- New
- Some Docker features unsupported (privileged,
- DAB still WIP
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Kubernetes
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Kubernetes
- Based on Google's experience running containers
- Bakes in various features
- Load-balancing, secret management, RBAC, …
- More opinionated
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Core concepts
- Pods
- Labels
- Services
- Deployments
- ReplicaSets
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Pods
- Groups of containers deployed and scheduled together
- Atomic unit
- Containers in a pod share IP address
- Single container pods are common
- Pods are ephemeral
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Labels
- K/V pairs attached to objects (primarily pods)
- e.g:"version: dev","tier: frontend"
- Label selectors then used to identify groups
- Used for load-balancing etc
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Services
- Stable endpoints addressed by name
- Forward traffic to pods
- Pods are selected by labels
- Round-robin load-balancing
- Separates endpoint from implementation
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Deployments & ReplicaSets
- ReplicaSets monitor status of Pods
- start/stop pods as needed
- Deployments start/create ReplicaSets
- Rollout/Rollback & Updates
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Usability
- Setting up a production grade Kubernetes-cluster from scratch requires
setting up etcd, networking plugins, DNS servers and certificate authorities.
- Will change pretty soon. kubeadm already existing
- Beyond initial setup, Kubernetes still has a steep learning curve
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Snap to install
kubeadm init
<master/tokens> generated token: "f0c861.753c505740ecde4c"
<master/pki> created keys and certificates in "/etc/kubernetes/pki"
<util/kubeconfig> created "/etc/kubernetes/kubelet.conf"
<util/kubeconfig> created "/etc/kubernetes/admin.conf"
<master/apiclient> created API client configuration
<master/apiclient> created API client, waiting for the control plane to become ready
<master/apiclient> all control plane components are healthy after 61.346626 seconds
<master/apiclient> waiting for at least one node to register and become ready
<master/apiclient> first node is ready after 4.506807 seconds
<master/discovery> created essential addon: kube-discovery
<master/addons> created essential addon: kube-proxy
<master/addons> created essential addon: kube-dns
Kubernetes master initialised successfully!
You can connect any number of nodes by running:
kubeadm join --token <token> <master-ip>
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Application Definition
- A combination of Pods, Replication Controllers, Replica Sets, Services and
Deployments
- Each application tier is defined as a pod and can be scaled when managed
by a Deployment or ReplicationController/ReplicaSet. The scaling can be
manual or automated
- Auto-scaling using a simple number-of-pods target is defined declaratively
with the API exposed by ReplicationControllers or ReplicaSets
Testing kubernetes with Sock Shop:
https://github.com/microservices-demo/microservices-demo/blob/master/dep
loy/kubernetes/complete-demo.yaml
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Kubernetes Advantages
- Snap to install
- Currently limited to a single master installation
- Currently limited to a single etcd installation
- Advanced features baked-in
- Lot of momentum behind the community
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Kubernetes disadvantages
- Harder to get started
- Extra concepts
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_
Conclusion
- Different options with different strengths
- In some ways surprisingly similar (k8s deployment | Swarm service)
- Hard to predict a winner
- All are much better than rolling-your-own
Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_

Weitere ähnliche Inhalte

Was ist angesagt?

State of Linux Containers in OpenStack
State of Linux Containers in OpenStackState of Linux Containers in OpenStack
State of Linux Containers in OpenStackopenstackindia
 
Building Cloud-Native Applications with Kubernetes, Helm and Kubeless
Building Cloud-Native Applications with Kubernetes, Helm and KubelessBuilding Cloud-Native Applications with Kubernetes, Helm and Kubeless
Building Cloud-Native Applications with Kubernetes, Helm and KubelessBitnami
 
Evolution of containers to kubernetes
Evolution of containers to kubernetesEvolution of containers to kubernetes
Evolution of containers to kubernetesKrishna-Kumar
 
Kubernetes and Hybrid Deployments
Kubernetes and Hybrid DeploymentsKubernetes and Hybrid Deployments
Kubernetes and Hybrid DeploymentsSandeep Parikh
 
Highly Available Persistent Applications in Containers by Kendrick Coleman, E...
Highly Available Persistent Applications in Containers by Kendrick Coleman, E...Highly Available Persistent Applications in Containers by Kendrick Coleman, E...
Highly Available Persistent Applications in Containers by Kendrick Coleman, E...Docker, Inc.
 
Cloud Computing Fundamental
Cloud Computing FundamentalCloud Computing Fundamental
Cloud Computing FundamentalDony Riyanto
 
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1Etsuji Nakai
 
Docker for Ops: Docker Networking Deep Dive, Considerations and Troubleshooti...
Docker for Ops: Docker Networking Deep Dive, Considerations and Troubleshooti...Docker for Ops: Docker Networking Deep Dive, Considerations and Troubleshooti...
Docker for Ops: Docker Networking Deep Dive, Considerations and Troubleshooti...Docker, Inc.
 
Introduction of Kubernetes - Trang Nguyen
Introduction of Kubernetes - Trang NguyenIntroduction of Kubernetes - Trang Nguyen
Introduction of Kubernetes - Trang NguyenTrang Nguyen
 
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...Brian Grant
 
Practical Container Security by Mrunal Patel and Thomas Cameron, Red Hat
Practical Container Security by Mrunal Patel and Thomas Cameron, Red HatPractical Container Security by Mrunal Patel and Thomas Cameron, Red Hat
Practical Container Security by Mrunal Patel and Thomas Cameron, Red HatDocker, Inc.
 
Deep Dive into Openstack Storage, Sean Cohen, Red Hat
Deep Dive into Openstack Storage, Sean Cohen, Red HatDeep Dive into Openstack Storage, Sean Cohen, Red Hat
Deep Dive into Openstack Storage, Sean Cohen, Red HatCloud Native Day Tel Aviv
 
Containers without docker
Containers without dockerContainers without docker
Containers without dockerBen Hall
 
Dockers and kubernetes
Dockers and kubernetesDockers and kubernetes
Dockers and kubernetesDr Ganesh Iyer
 
Meteor South Bay Meetup - Kubernetes & Google Container Engine
Meteor South Bay Meetup - Kubernetes & Google Container EngineMeteor South Bay Meetup - Kubernetes & Google Container Engine
Meteor South Bay Meetup - Kubernetes & Google Container EngineKit Merker
 
Production Ready Containers from IBM and Docker
Production Ready Containers from IBM and DockerProduction Ready Containers from IBM and Docker
Production Ready Containers from IBM and DockerDocker, Inc.
 
Kubernetes Architecture | Understanding Kubernetes Components | Kubernetes Tu...
Kubernetes Architecture | Understanding Kubernetes Components | Kubernetes Tu...Kubernetes Architecture | Understanding Kubernetes Components | Kubernetes Tu...
Kubernetes Architecture | Understanding Kubernetes Components | Kubernetes Tu...Edureka!
 
DCSF 19 Data Center Networking with Containers
DCSF 19 Data Center Networking with ContainersDCSF 19 Data Center Networking with Containers
DCSF 19 Data Center Networking with ContainersDocker, Inc.
 

Was ist angesagt? (20)

State of Linux Containers in OpenStack
State of Linux Containers in OpenStackState of Linux Containers in OpenStack
State of Linux Containers in OpenStack
 
Building Cloud-Native Applications with Kubernetes, Helm and Kubeless
Building Cloud-Native Applications with Kubernetes, Helm and KubelessBuilding Cloud-Native Applications with Kubernetes, Helm and Kubeless
Building Cloud-Native Applications with Kubernetes, Helm and Kubeless
 
Evolution of containers to kubernetes
Evolution of containers to kubernetesEvolution of containers to kubernetes
Evolution of containers to kubernetes
 
Kubernetes and Hybrid Deployments
Kubernetes and Hybrid DeploymentsKubernetes and Hybrid Deployments
Kubernetes and Hybrid Deployments
 
Highly Available Persistent Applications in Containers by Kendrick Coleman, E...
Highly Available Persistent Applications in Containers by Kendrick Coleman, E...Highly Available Persistent Applications in Containers by Kendrick Coleman, E...
Highly Available Persistent Applications in Containers by Kendrick Coleman, E...
 
Cloud Computing Fundamental
Cloud Computing FundamentalCloud Computing Fundamental
Cloud Computing Fundamental
 
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
 
Docker for Ops: Docker Networking Deep Dive, Considerations and Troubleshooti...
Docker for Ops: Docker Networking Deep Dive, Considerations and Troubleshooti...Docker for Ops: Docker Networking Deep Dive, Considerations and Troubleshooti...
Docker for Ops: Docker Networking Deep Dive, Considerations and Troubleshooti...
 
Introduction of Kubernetes - Trang Nguyen
Introduction of Kubernetes - Trang NguyenIntroduction of Kubernetes - Trang Nguyen
Introduction of Kubernetes - Trang Nguyen
 
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
 
Practical Container Security by Mrunal Patel and Thomas Cameron, Red Hat
Practical Container Security by Mrunal Patel and Thomas Cameron, Red HatPractical Container Security by Mrunal Patel and Thomas Cameron, Red Hat
Practical Container Security by Mrunal Patel and Thomas Cameron, Red Hat
 
Docker for HPC in a Nutshell
Docker for HPC in a NutshellDocker for HPC in a Nutshell
Docker for HPC in a Nutshell
 
Docker Datacenter - CaaS
Docker Datacenter - CaaSDocker Datacenter - CaaS
Docker Datacenter - CaaS
 
Deep Dive into Openstack Storage, Sean Cohen, Red Hat
Deep Dive into Openstack Storage, Sean Cohen, Red HatDeep Dive into Openstack Storage, Sean Cohen, Red Hat
Deep Dive into Openstack Storage, Sean Cohen, Red Hat
 
Containers without docker
Containers without dockerContainers without docker
Containers without docker
 
Dockers and kubernetes
Dockers and kubernetesDockers and kubernetes
Dockers and kubernetes
 
Meteor South Bay Meetup - Kubernetes & Google Container Engine
Meteor South Bay Meetup - Kubernetes & Google Container EngineMeteor South Bay Meetup - Kubernetes & Google Container Engine
Meteor South Bay Meetup - Kubernetes & Google Container Engine
 
Production Ready Containers from IBM and Docker
Production Ready Containers from IBM and DockerProduction Ready Containers from IBM and Docker
Production Ready Containers from IBM and Docker
 
Kubernetes Architecture | Understanding Kubernetes Components | Kubernetes Tu...
Kubernetes Architecture | Understanding Kubernetes Components | Kubernetes Tu...Kubernetes Architecture | Understanding Kubernetes Components | Kubernetes Tu...
Kubernetes Architecture | Understanding Kubernetes Components | Kubernetes Tu...
 
DCSF 19 Data Center Networking with Containers
DCSF 19 Data Center Networking with ContainersDCSF 19 Data Center Networking with Containers
DCSF 19 Data Center Networking with Containers
 

Andere mochten auch

Unidad educativa experimental universal misionera st
Unidad educativa experimental universal misionera stUnidad educativa experimental universal misionera st
Unidad educativa experimental universal misionera stCarlos Stewar
 
EXPOSURE - San Diego Benefits
EXPOSURE - San Diego BenefitsEXPOSURE - San Diego Benefits
EXPOSURE - San Diego Benefitsexposureskate
 
Finding Cars and Hunting Down Logs - ElasticSearch @AutoScout24
Finding Cars and Hunting Down Logs - ElasticSearch @AutoScout24Finding Cars and Hunting Down Logs - ElasticSearch @AutoScout24
Finding Cars and Hunting Down Logs - ElasticSearch @AutoScout24Philipp Garbe
 
Film noir – conventions
Film noir – conventionsFilm noir – conventions
Film noir – conventionsmhutchinson4
 
Gt4.pibid4
Gt4.pibid4Gt4.pibid4
Gt4.pibid4pibidmat
 
11th Docker Switzerland User Group Meetup
11th Docker Switzerland User Group Meetup11th Docker Switzerland User Group Meetup
11th Docker Switzerland User Group MeetupPhilipp Grossenbacher
 
Presentación concepto de negocios Mingreso Inteligente - mii 2016
Presentación concepto de negocios Mingreso Inteligente  - mii 2016Presentación concepto de negocios Mingreso Inteligente  - mii 2016
Presentación concepto de negocios Mingreso Inteligente - mii 2016Mi Ingreso Inteligente
 
Organizational Change and Innovation
Organizational Change and Innovation Organizational Change and Innovation
Organizational Change and Innovation majhapa
 
Progressive Web Apps (español - spanish)
Progressive Web Apps (español - spanish)Progressive Web Apps (español - spanish)
Progressive Web Apps (español - spanish)Maximiliano Firtman
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web AppsToninho Sousa
 
Nuevas Terapias para la Obesidad Como controlar el Apetito y la Saciedad La v...
Nuevas Terapias para la Obesidad Como controlar el Apetito y la Saciedad La v...Nuevas Terapias para la Obesidad Como controlar el Apetito y la Saciedad La v...
Nuevas Terapias para la Obesidad Como controlar el Apetito y la Saciedad La v...Conferencia Sindrome Metabolico
 
Bluetooth Low Energy - A Case Study
Bluetooth Low Energy - A Case StudyBluetooth Low Energy - A Case Study
Bluetooth Low Energy - A Case StudyFReeze FRancis
 
Agile transformation_keynote
Agile transformation_keynoteAgile transformation_keynote
Agile transformation_keynoteProvectus
 
Designing Business Models
Designing Business ModelsDesigning Business Models
Designing Business ModelsYves Pigneur
 
Turku &lt;3 Frontend - Progressive Web Apps, Web and Apps
Turku &lt;3 Frontend - Progressive Web Apps, Web and AppsTurku &lt;3 Frontend - Progressive Web Apps, Web and Apps
Turku &lt;3 Frontend - Progressive Web Apps, Web and AppsJoni Juup
 

Andere mochten auch (19)

Unidad educativa experimental universal misionera st
Unidad educativa experimental universal misionera stUnidad educativa experimental universal misionera st
Unidad educativa experimental universal misionera st
 
Conheça-me
Conheça-meConheça-me
Conheça-me
 
EXPOSURE - San Diego Benefits
EXPOSURE - San Diego BenefitsEXPOSURE - San Diego Benefits
EXPOSURE - San Diego Benefits
 
Finding Cars and Hunting Down Logs - ElasticSearch @AutoScout24
Finding Cars and Hunting Down Logs - ElasticSearch @AutoScout24Finding Cars and Hunting Down Logs - ElasticSearch @AutoScout24
Finding Cars and Hunting Down Logs - ElasticSearch @AutoScout24
 
Film noir – conventions
Film noir – conventionsFilm noir – conventions
Film noir – conventions
 
Gt4.pibid4
Gt4.pibid4Gt4.pibid4
Gt4.pibid4
 
11th Docker Switzerland User Group Meetup
11th Docker Switzerland User Group Meetup11th Docker Switzerland User Group Meetup
11th Docker Switzerland User Group Meetup
 
Presentación1
Presentación1Presentación1
Presentación1
 
Presentación concepto de negocios Mingreso Inteligente - mii 2016
Presentación concepto de negocios Mingreso Inteligente  - mii 2016Presentación concepto de negocios Mingreso Inteligente  - mii 2016
Presentación concepto de negocios Mingreso Inteligente - mii 2016
 
Organizational Change and Innovation
Organizational Change and Innovation Organizational Change and Innovation
Organizational Change and Innovation
 
Progressive Web Apps (español - spanish)
Progressive Web Apps (español - spanish)Progressive Web Apps (español - spanish)
Progressive Web Apps (español - spanish)
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Chapter 2 sales and marketing strategy of sm es
Chapter 2  sales and marketing strategy of sm esChapter 2  sales and marketing strategy of sm es
Chapter 2 sales and marketing strategy of sm es
 
Nuevas Terapias para la Obesidad Como controlar el Apetito y la Saciedad La v...
Nuevas Terapias para la Obesidad Como controlar el Apetito y la Saciedad La v...Nuevas Terapias para la Obesidad Como controlar el Apetito y la Saciedad La v...
Nuevas Terapias para la Obesidad Como controlar el Apetito y la Saciedad La v...
 
Chapter 1 introduction definition problem &amp; solving factor effect to sme
Chapter 1  introduction  definition problem &amp; solving factor effect to smeChapter 1  introduction  definition problem &amp; solving factor effect to sme
Chapter 1 introduction definition problem &amp; solving factor effect to sme
 
Bluetooth Low Energy - A Case Study
Bluetooth Low Energy - A Case StudyBluetooth Low Energy - A Case Study
Bluetooth Low Energy - A Case Study
 
Agile transformation_keynote
Agile transformation_keynoteAgile transformation_keynote
Agile transformation_keynote
 
Designing Business Models
Designing Business ModelsDesigning Business Models
Designing Business Models
 
Turku &lt;3 Frontend - Progressive Web Apps, Web and Apps
Turku &lt;3 Frontend - Progressive Web Apps, Web and AppsTurku &lt;3 Frontend - Progressive Web Apps, Web and Apps
Turku &lt;3 Frontend - Progressive Web Apps, Web and Apps
 

Ähnlich wie 11thDockerMeetupSwitzerland

Introduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of TechnologyIntroduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of TechnologyAjeet Singh Raina
 
Introduction to Docker - VIT Campus
Introduction to Docker - VIT CampusIntroduction to Docker - VIT Campus
Introduction to Docker - VIT CampusAjeet Singh Raina
 
A Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using DockerA Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using DockerAjeet Singh Raina
 
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...NETWAYS
 
Oscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby projectOscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby projectPatrick Chanezon
 
Weave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 RecapWeave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 RecapPatrick Chanezon
 
Compare Docker deployment options in the public cloud
Compare Docker deployment options in the public cloudCompare Docker deployment options in the public cloud
Compare Docker deployment options in the public cloudSreenivas Makam
 
Devoxx 2016 - Docker Nuts and Bolts
Devoxx 2016 - Docker Nuts and BoltsDevoxx 2016 - Docker Nuts and Bolts
Devoxx 2016 - Docker Nuts and BoltsPatrick Chanezon
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to KubernetesVishal Biyani
 
An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...
An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...
An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...Neo4j
 
State of Containers in OpenStack
State of Containers in OpenStackState of Containers in OpenStack
State of Containers in OpenStackopenstackindia
 
State of Containers in Openstack
State of Containers in OpenstackState of Containers in Openstack
State of Containers in OpenstackMadhuri Kumari
 
Performance and Scale: Billions of request per day (DDD2019)
Performance and Scale: Billions of request per day (DDD2019)Performance and Scale: Billions of request per day (DDD2019)
Performance and Scale: Billions of request per day (DDD2019)Marcel Dempers
 
Halifax DevOps - Meet-up - July.19 2017
Halifax DevOps - Meet-up - July.19 2017Halifax DevOps - Meet-up - July.19 2017
Halifax DevOps - Meet-up - July.19 2017Kyle Bassett
 
The App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxThe App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxNebulaworks
 
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on AzureDocker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on AzurePatrick Chanezon
 
Clocker - How to Train your Docker Cloud
Clocker - How to Train your Docker CloudClocker - How to Train your Docker Cloud
Clocker - How to Train your Docker CloudAndrew Kennedy
 
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Mandi Walls
 

Ähnlich wie 11thDockerMeetupSwitzerland (20)

Introduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of TechnologyIntroduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of Technology
 
Introduction to Docker - VIT Campus
Introduction to Docker - VIT CampusIntroduction to Docker - VIT Campus
Introduction to Docker - VIT Campus
 
A Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using DockerA Shift from Monolith to Microservice using Docker
A Shift from Monolith to Microservice using Docker
 
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
 
Oscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby projectOscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby project
 
Weave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 RecapWeave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 Recap
 
Compare Docker deployment options in the public cloud
Compare Docker deployment options in the public cloudCompare Docker deployment options in the public cloud
Compare Docker deployment options in the public cloud
 
Kubernetes @ meetic
Kubernetes @ meeticKubernetes @ meetic
Kubernetes @ meetic
 
Devoxx 2016 - Docker Nuts and Bolts
Devoxx 2016 - Docker Nuts and BoltsDevoxx 2016 - Docker Nuts and Bolts
Devoxx 2016 - Docker Nuts and Bolts
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
 
An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...
An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...
An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...
 
State of Containers in OpenStack
State of Containers in OpenStackState of Containers in OpenStack
State of Containers in OpenStack
 
State of Containers in Openstack
State of Containers in OpenstackState of Containers in Openstack
State of Containers in Openstack
 
Docker in real life
Docker in real lifeDocker in real life
Docker in real life
 
Performance and Scale: Billions of request per day (DDD2019)
Performance and Scale: Billions of request per day (DDD2019)Performance and Scale: Billions of request per day (DDD2019)
Performance and Scale: Billions of request per day (DDD2019)
 
Halifax DevOps - Meet-up - July.19 2017
Halifax DevOps - Meet-up - July.19 2017Halifax DevOps - Meet-up - July.19 2017
Halifax DevOps - Meet-up - July.19 2017
 
The App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxThe App Developer's Kubernetes Toolbox
The App Developer's Kubernetes Toolbox
 
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on AzureDocker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
 
Clocker - How to Train your Docker Cloud
Clocker - How to Train your Docker CloudClocker - How to Train your Docker Cloud
Clocker - How to Train your Docker Cloud
 
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
Habitat talk at CodeMonsters Sofia, Bulgaria Nov 27 2018
 

Kürzlich hochgeladen

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
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
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 

Kürzlich hochgeladen (20)

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI 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 Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
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
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 

11thDockerMeetupSwitzerland

  • 1. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Orchestrator comparison 11th Docker Switzerland User Group Meetup
  • 2. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ How important is orchestration and what is it for ? - Might not need it for small apps - No orchestration == manual orchestration - Manually place containers, network, scale, check, update - Microservices | Cloud Native Applications
  • 3. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Design principles for Cloud Native Applications: - Design for Performance: responsive; concurrency; efficiency - Design for Automation: automate dev & ops tasks - Design for Resiliency: fault-tolerant; self-healing - Design for Elasticity: automatically scale - Design for Delivery: short roundtrips; automated delivery - Design for Diagnosability: cluster-wide logs, traces, metrics
  • 4. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Welcome to the socks shop
  • 5. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Microservice reference application - Intended to help people get started with microservices - Great for comparing frameworks etc - Similar to "Pet Store"for Java - ... or TodoMVC for JavaScript Lots of implementations already https://github.com/microservices-demo/microservices-demo/tree/master/dep loy
  • 6. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Architecture
  • 7. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Comparing Orchestrators
  • 8. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Comparing orchestrators - All work and are improving rapidly - Understand the differences - Understand your requirements - Please don't roll your own!
  • 9. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ The players - Kubernetes - Mesos (different workloads) - Docker Swarm Mode - Plus others - Nomad, PaaSs...
  • 10. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Side note - The Borg/Omega paper - Influential papers from Google - Lessons learnt from 10 years with containers - Google contributed cgroups to the Linux kernel, cgroups and linux namespaces are the heart of containers
  • 11. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Docker swarm mode
  • 12. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Swarm mode - New in Docker 1.12 - Docker Inc's official solution - Part of core distribution - Major improvement over old Swarm
  • 13. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Core components - Manager nodes - coordinate via Raft - no need for separate etcd/zookeeper - Worker nodes
  • 14. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Usability - Docker native uses concepts from single-node Docker and extends them to the Swarm. - If you are up to date on Docker concepts, the learning curve is fairly gradual. - The setup for a swarm is trivial
  • 15. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Easy to install docker swarm init Swarm initialized: current node (10vh26gyxppo6j2vyb8rcvjwj) is now a manager. To add a worker to this swarm, run the following command: docker swarm join --token SWMTKN-1-5td5x39z8jw69aloe8aaqs26c9vf6nc7pzfepsq0xfmo9ldfk2-2747zp8w 0enbccrjmkt1o8du3 172.17.9.102:2377 To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
  • 16. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Secure communication by default - TLS set up using self-signed certs - Certificates automatically rotated
  • 17. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Feature Set - Services - Networks - Constraints and labels - Support of volume drivers
  • 18. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Services - Services - Set of containers that are launched and a certain number of containers are kept running at all times. - There are two types of services, replicated or global. - Replicated services maintain a specified number of containers across the cluster - Global services run one instance of a container on each of your swarm nodes.
  • 19. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Networks - You can create named overlay networks - Using the named overlay network you can create isolated, flat, encrypted virtual networks across your set of nodes to launch your containers into.
  • 20. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ - Control which node a container can be scheduled on - E.g: - Only nodes labeled "staging" - Only nodes which have the image - Only the node running a given container (affinity) Constraints and Filters
  • 21. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Other features - Spread scheduling - chooses "least loaded" node - more options later - Mesh Networking
  • 22. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Application definition - Apps are defined in DAB can be deployed on a Swarm cluster - Possible to scale individual containers defined in the DAB file (manual) Testing Swarm Mode with Sock Shop: https://raw.githubusercontent.com/microservices-demo/microservices-demo/master/deploy/swarmk it/start-swarmkit-services.sh
  • 23. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Swarm mode advantages - Easy to install - Secure by default - “Bundled with Docker”
  • 24. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Swarm Mode disadvantages - New - Some Docker features unsupported (privileged, - DAB still WIP
  • 25. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Kubernetes
  • 26. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Kubernetes - Based on Google's experience running containers - Bakes in various features - Load-balancing, secret management, RBAC, … - More opinionated
  • 27. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Core concepts - Pods - Labels - Services - Deployments - ReplicaSets
  • 28. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Pods - Groups of containers deployed and scheduled together - Atomic unit - Containers in a pod share IP address - Single container pods are common - Pods are ephemeral
  • 29. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Labels - K/V pairs attached to objects (primarily pods) - e.g:"version: dev","tier: frontend" - Label selectors then used to identify groups - Used for load-balancing etc
  • 30. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Services - Stable endpoints addressed by name - Forward traffic to pods - Pods are selected by labels - Round-robin load-balancing - Separates endpoint from implementation
  • 31. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Deployments & ReplicaSets - ReplicaSets monitor status of Pods - start/stop pods as needed - Deployments start/create ReplicaSets - Rollout/Rollback & Updates
  • 32. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Usability - Setting up a production grade Kubernetes-cluster from scratch requires setting up etcd, networking plugins, DNS servers and certificate authorities. - Will change pretty soon. kubeadm already existing - Beyond initial setup, Kubernetes still has a steep learning curve
  • 33. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Snap to install kubeadm init <master/tokens> generated token: "f0c861.753c505740ecde4c" <master/pki> created keys and certificates in "/etc/kubernetes/pki" <util/kubeconfig> created "/etc/kubernetes/kubelet.conf" <util/kubeconfig> created "/etc/kubernetes/admin.conf" <master/apiclient> created API client configuration <master/apiclient> created API client, waiting for the control plane to become ready <master/apiclient> all control plane components are healthy after 61.346626 seconds <master/apiclient> waiting for at least one node to register and become ready <master/apiclient> first node is ready after 4.506807 seconds <master/discovery> created essential addon: kube-discovery <master/addons> created essential addon: kube-proxy <master/addons> created essential addon: kube-dns Kubernetes master initialised successfully! You can connect any number of nodes by running: kubeadm join --token <token> <master-ip>
  • 34. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Application Definition - A combination of Pods, Replication Controllers, Replica Sets, Services and Deployments - Each application tier is defined as a pod and can be scaled when managed by a Deployment or ReplicationController/ReplicaSet. The scaling can be manual or automated - Auto-scaling using a simple number-of-pods target is defined declaratively with the API exposed by ReplicationControllers or ReplicaSets Testing kubernetes with Sock Shop: https://github.com/microservices-demo/microservices-demo/blob/master/dep loy/kubernetes/complete-demo.yaml
  • 35. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Kubernetes Advantages - Snap to install - Currently limited to a single master installation - Currently limited to a single etcd installation - Advanced features baked-in - Lot of momentum behind the community
  • 36. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Kubernetes disadvantages - Harder to get started - Extra concepts
  • 37. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_ Conclusion - Different options with different strengths - In some ways surprisingly similar (k8s deployment | Swarm service) - Hard to predict a winner - All are much better than rolling-your-own
  • 38. Docker Meetup | container-solutions.com | info@container-solutions.com | @michmueller_