SlideShare a Scribd company logo
ManageImplementAdviseEducate
Container Orchestration using
Docker & Kubernetes
By Mahendra Shinde
ManageImplementAdviseEducate
Agenda
Module 1: Introduction to Containers
Module 2: Container Architecture
Module 3: Docker Architecture
HOL 1: Installing Docker CE on Windows & Linus Host
Module 4: Application modernization using docker
Demo : Deploying TWO TIER application Using Docker compose
HOL 2: Deploying TWO TIER application (DotNet Core + MS SQL) using Docker compose
Module 5: Understanding Orchestration
ManageImplementAdviseEducate
Module 1
Introduction to Containers
ManageImplementAdviseEducate
Application packaging strategies
 Every Application has certain dependencies.
 Libraries provided by Operating System
 Libraries provided by runtime environment like Java, Python & Dot Net runtime
 Server Runtime like Tomcat for Java, IIS for Asp.net, Apache httpd
 Third Party Libraries
 Change in Dependencies affects Application.
ManageImplementAdviseEducate
Application packaging strategies /challenges
 Application goes through following phases:
 Development
 Testing
 Staging
 Production
 Managing dependencies across all these environments could be challenging.
 Creating compatible dev-test environment may take considerable time.
 Question : Challenges in moving application between environments
 Question: List Existing solutions based on Virtualization
ManageImplementAdviseEducate
Containers as alternative
• A Typical container would have application
& all its dependencies packed together.
• This makes container “decoupled” from
targeted environment.
• Only restriction being Windows or Linux
platform.
Container
Base Image
Runtime (JRE / Python / Node)
Third Party Libs
Application Image
Writable Layer
ManageImplementAdviseEducate
Benefits of Containers
• Isolate application from underlying OS and
Hardware.
• Lightweight, provides higher density than
Virtual machines.
• Dev-Ops ready. Many CI/CD platforms
support container deployments/build.
• Every container executes in a separate user
space.
ManageImplementAdviseEducate
Container vs Virtual machines
• Virtual machines provides hardware level
virtualization.
• Virtual machines contains Operating system.
• Virtual machines use guest OS kernel.
• Host OS and Guest OS could be completely
different.
• Booting up VM is equivalent of booting a
physical machine.
• Containers provide software level isolation,
no hardware virtualization.
• Containers use “base image” which provide
basic OS level libraries but not the OS.
• Containers use host OS kernel.
• Due to dependence on Host OS Kernel,
containers must be deployed on compatible
host OS.
• Launching container is equivalent of
launching an application.
ManageImplementAdviseEducate
Container platforms
• Docker from Docker Inc
• LXC from Linux
• LXD from Ubuntu
• RKT from CoreOS
ManageImplementAdviseEducate
Module 2
Container Architecture
ManageImplementAdviseEducate
Container & Images
• Containers are running instances of image
• Image is a read-only filesystem made of “layers”
• Each “layer” is an image which may contain a specific application, library or runtime.
• Container has an extra “Writable” layer.
• The bottom-most image is “base” image.
Host Kernel
Debian Image [Read Only]
BusyBox Image [Read Only]
Apache2 HTTP Image [Read Only]
MySQL DB Image [Read Only]
Writable Layer
Writable Layer
ManageImplementAdviseEducate
Read-Only vs Writable layers
• Read-only layers are shared by multiple containers / images.
• Writable layer allows read and write operations
• Every container has ONE writable layer.
• Every layer has unique ID and meta-data.
ManageImplementAdviseEducate
Image repositories
• An Image repository is persistent storage for container images
• A private repository can be accessed by selected users.
• A public repository can be accessed by any one.
• A Developer may “Push” application as container image.
• An operations team may “Pull” the same image for deployment.
• Many cloud platforms do provide “Hosted” container repositories.
• Host repositories are managed by vendor.
ManageImplementAdviseEducate
Container Networking
• Containers can communicate through a container network.
• Container platform like docker have
Multiple network models.
Host Kernel
Container Network
Container
1
Container 2
ManageImplementAdviseEducate
Module 03
Docker Architecture
ManageImplementAdviseEducate
Docker As a Container platform
• An open platform for developing, shipping, and running applications.
• Started it’s life as a PaaS provider by name dotCloud.
• Since its inception, working with linux container.
• The container platform was named “Docker”
• In 2013, got “rebranded” as Docker Inc.
• A container platform based on “runc” and “libcontainer”
ManageImplementAdviseEducate
Docker Editions
• Community edition (Docker CE)
• Ideal for developers and small teams experimenting with containers.
• Enterprise Edition (Docker EE)
• Enterprise development & IT team for business critical
applications at production scale.
ManageImplementAdviseEducate
Docker components
• Docker engine (docker daemon)
• Docker container images
• Docker containers
• Docker CLI (client)
• Docker (REST) API
• Docker Registry
ManageImplementAdviseEducate
Docker components
• Batteries included but “removable” (“replaceable”)
• Built in security
• Linux hosts can use AppArmor or SELinux
• Namespaces to restrict access to host system resources.
ManageImplementAdviseEducate
Docker on Windows & Linux hosts
• Docker being only container platform supporting both Windows and Linux.
• Windows based container supported only on Windows 10 PRO and Windows Server 2016.
• Docker installation on windows uses different components than linux host.
• Images built for linux cannot be deployed on windows hosts.
• Windows do have a trick: docker-machine and moby project to run linux containers through
a lightweight VM.
ManageImplementAdviseEducate
Hands On LAB
• HOL 1: Installing Docker CE on Windows Server 2016
• Pre-requisite:
• Azure subscription
• Basic Windows administration w/ powershell.
• Windows server 2016 VM on Azure
• Remote Desktop client (built in windows) for accessing windows VM.
ManageImplementAdviseEducate
Hands On LAB
• HOL 2: Installing Docker CE on Ubuntu Server 18.04 LTS
• Pre-requisite:
• Azure subscription
• Basic Linux administration using bash shell.
• Ubuntu Server 18.04 LTS VM on Azure
• SSH Client (PuTTY or Git Bash or Ubuntu Bash)
ManageImplementAdviseEducate
Module 04
Application modernization
ManageImplementAdviseEducate
Application types
• A multi-layered monolith application
• A distributed application / SOA
• Micro-services
• Containers do support
all of them!
• Monolith = Single large
Container for App
+ DB Container
• Distributed =
Container for each
Service / Module
ManageImplementAdviseEducate
A typical TWO TIER Application
Front End App Container
Back End App Container
Back End App Container
Back End App Container
Front End App Container
ManageImplementAdviseEducate
Dockerfile
• Automates the “Build” process of a container.
• Integrates with all popular CI/CD tools.
• Simple language to define entire build workflow
• Basic system administration commands needed.
• Windows : prefer powershell
• Linux: prefer bash
• Can be placed in SCM
ManageImplementAdviseEducate
Docker compose
• A Tool for defining and deploying multi-container application.
• Compose is a THREE STEP process
• Define the application environment using Dockerfile
• Define the services that make up your application using docker-compose.yml file
• Run docker-compose up command to quickly run entire application in isolated environment.
• Provides re-producible deployment artefacts.
• Only recreates container that have changed.
• Upon “restart” containers are spawned from “cached” versions if no change detected.
• Supports environment variables
• Supports “secrets”
• Traditionally used for Single host deployment.
ManageImplementAdviseEducate
Docker Compose
“Web” container
“Redis” Container
ManageImplementAdviseEducate
Docker Compose vs Dockerfile
ManageImplementAdviseEducate
Dockerfile reference
Command Description
FROM Initializes a new build and define “base” image to be used for building.
RUN A Step to be executed in build process. Can be used for installing necessary package.
CMD Provide DEFAULT “startup” action for container. Must be used only ONCE.
LABEL Provides additional META-DATA like Author name
EXPOSE A Hint for port used by container, can be overridden at run-time.
ENV Define environment variables.
COPY Copy files from host system to container.
NOTE : optional feature --chown for linux containers
ManageImplementAdviseEducate
Docker-compose reference
Section Description
Services: Define one or more service [YAML syntax]
Build: Provide relative path to directory which contains “Dockerfile”
Image: Provide image name using syntax: [repository-name]/[image-name]:[tag]
For public images on docker-hub [repository-name] is dropped.
Volumes: Define volumes to be mounted
Networks: Define a private network for application.
Labels: Additional meta-data
ManageImplementAdviseEducate
Demos
• Demo 1: Deploying an application back-end and front-end as single
application.
• Demo 1-A Using MySQL with Wordpress
• Demo 1-B Using MS-SQL with Asp.net core
ManageImplementAdviseEducate
Hands On
• HOL 2] Deploying front-end application (ASP.NET core) and Back-end (MS
SQL) using single docker-compose.
• Use docker-compose to define entire application
• Use existing VM created in HOL-1
ManageImplementAdviseEducate
Module 05
Understanding Orchestration
ManageImplementAdviseEducate
Orchestration
• Need for Orchestration
• Ephemeral computing
• Desired State
• Cluster management
• Container Orchestration platforms
• Docker Swarm (from Docker Inc)
• Kubernetes (from Google)
• DC/OS (based on Apache Mesos)
• Nomad (from HashiCorp)
ManageImplementAdviseEducate
Docker Swarm
• Cluster management integrated with Docker engine
• Decentralized design (for cluster management)
• Declarative service model (ref: docker-compose)
• Scaling
• Desired state reconciliation
• Multi-host networking
• Service discovery
• Load balancing
ManageImplementAdviseEducate
Kubernetes
• Cluster managed from google with 10+ years of internal use by google.
• Open source, run anywhere
• Service discovery
• Load balancing
• Self healing
• Storage
orchestration
• Scaling
ManageImplementAdviseEducate
DC/OS
• Distributed OS based on Apache Mesos
• Treat cluster as a single machine
• High resource utilization
• Container orchestration using “Marathon”
• Cloud agnostic installation
ManageImplementAdviseEducate
Q/A

More Related Content

What's hot

Introduction to jenkins
Introduction to jenkinsIntroduction to jenkins
Introduction to jenkins
Abe Diaz
 
Jenkins CI
Jenkins CIJenkins CI
Jenkins CI
Viyaan Jhiingade
 
Jenkins Introduction
Jenkins IntroductionJenkins Introduction
Jenkins Introduction
Pavan Gupta
 
Yale Jenkins Show and Tell
Yale Jenkins Show and TellYale Jenkins Show and Tell
Yale Jenkins Show and TellE. Camden Fisher
 
Jenkins
JenkinsJenkins
Jenkins
Roger Xia
 
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day ThailandCI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
Troublemaker Khunpech
 
Play 2 Java Framework with TDD
Play 2 Java Framework with TDDPlay 2 Java Framework with TDD
Play 2 Java Framework with TDD
Basav Nagur
 
CI and CD with Jenkins
CI and CD with JenkinsCI and CD with Jenkins
CI and CD with Jenkins
Martin Málek
 
ACM Gazi Docker?
ACM Gazi Docker?ACM Gazi Docker?
ACM Gazi Docker?
kloia
 
Docker crash course
Docker crash courseDocker crash course
Docker crash course
Vishwas N
 
DockerCon SF 2015: Docker in the New York Times Newsroom
DockerCon SF 2015: Docker in the New York Times NewsroomDockerCon SF 2015: Docker in the New York Times Newsroom
DockerCon SF 2015: Docker in the New York Times Newsroom
Docker, Inc.
 
What is jenkins
What is jenkinsWhat is jenkins
What is jenkins
linuxdady
 
DockerCon SF 2015: DHE/DTR
DockerCon SF 2015: DHE/DTRDockerCon SF 2015: DHE/DTR
DockerCon SF 2015: DHE/DTR
Docker, Inc.
 
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
Develop and deploy Kubernetes  applications with Docker - IBM Index 2018Develop and deploy Kubernetes  applications with Docker - IBM Index 2018
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
Patrick Chanezon
 
Netflix and Containers: Not A Stranger Thing
Netflix and Containers:  Not A Stranger ThingNetflix and Containers:  Not A Stranger Thing
Netflix and Containers: Not A Stranger Thing
aspyker
 
Louisville Software Engineering Meet Up: Continuous Integration Using Jenkins
Louisville Software Engineering Meet Up: Continuous Integration Using JenkinsLouisville Software Engineering Meet Up: Continuous Integration Using Jenkins
Louisville Software Engineering Meet Up: Continuous Integration Using Jenkins
James Strong
 
DCSF 19 Building Your Development Pipeline
DCSF 19 Building Your Development Pipeline  DCSF 19 Building Your Development Pipeline
DCSF 19 Building Your Development Pipeline
Docker, Inc.
 
Jenkins CI
Jenkins CIJenkins CI
Jenkins CI
Knoldus Inc.
 
Let’s start Continuous Integration with jenkins
Let’s start Continuous Integration with jenkinsLet’s start Continuous Integration with jenkins
Let’s start Continuous Integration with jenkins
Tomohide Kakeya
 
Top 5 benefits of docker
Top 5 benefits of dockerTop 5 benefits of docker
Top 5 benefits of docker
John Zaccone
 

What's hot (20)

Introduction to jenkins
Introduction to jenkinsIntroduction to jenkins
Introduction to jenkins
 
Jenkins CI
Jenkins CIJenkins CI
Jenkins CI
 
Jenkins Introduction
Jenkins IntroductionJenkins Introduction
Jenkins Introduction
 
Yale Jenkins Show and Tell
Yale Jenkins Show and TellYale Jenkins Show and Tell
Yale Jenkins Show and Tell
 
Jenkins
JenkinsJenkins
Jenkins
 
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day ThailandCI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
 
Play 2 Java Framework with TDD
Play 2 Java Framework with TDDPlay 2 Java Framework with TDD
Play 2 Java Framework with TDD
 
CI and CD with Jenkins
CI and CD with JenkinsCI and CD with Jenkins
CI and CD with Jenkins
 
ACM Gazi Docker?
ACM Gazi Docker?ACM Gazi Docker?
ACM Gazi Docker?
 
Docker crash course
Docker crash courseDocker crash course
Docker crash course
 
DockerCon SF 2015: Docker in the New York Times Newsroom
DockerCon SF 2015: Docker in the New York Times NewsroomDockerCon SF 2015: Docker in the New York Times Newsroom
DockerCon SF 2015: Docker in the New York Times Newsroom
 
What is jenkins
What is jenkinsWhat is jenkins
What is jenkins
 
DockerCon SF 2015: DHE/DTR
DockerCon SF 2015: DHE/DTRDockerCon SF 2015: DHE/DTR
DockerCon SF 2015: DHE/DTR
 
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
Develop and deploy Kubernetes  applications with Docker - IBM Index 2018Develop and deploy Kubernetes  applications with Docker - IBM Index 2018
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
 
Netflix and Containers: Not A Stranger Thing
Netflix and Containers:  Not A Stranger ThingNetflix and Containers:  Not A Stranger Thing
Netflix and Containers: Not A Stranger Thing
 
Louisville Software Engineering Meet Up: Continuous Integration Using Jenkins
Louisville Software Engineering Meet Up: Continuous Integration Using JenkinsLouisville Software Engineering Meet Up: Continuous Integration Using Jenkins
Louisville Software Engineering Meet Up: Continuous Integration Using Jenkins
 
DCSF 19 Building Your Development Pipeline
DCSF 19 Building Your Development Pipeline  DCSF 19 Building Your Development Pipeline
DCSF 19 Building Your Development Pipeline
 
Jenkins CI
Jenkins CIJenkins CI
Jenkins CI
 
Let’s start Continuous Integration with jenkins
Let’s start Continuous Integration with jenkinsLet’s start Continuous Integration with jenkins
Let’s start Continuous Integration with jenkins
 
Top 5 benefits of docker
Top 5 benefits of dockerTop 5 benefits of docker
Top 5 benefits of docker
 

Similar to Introduction to Containers & Diving a little deeper into the benefits of Containerisation

Docker slides
Docker slidesDocker slides
Docker slides
Jyotsna Raghuraman
 
C219 - Docker and PureApplication Patterns: Better Together
C219 - Docker and PureApplication Patterns: Better TogetherC219 - Docker and PureApplication Patterns: Better Together
C219 - Docker and PureApplication Patterns: Better Together
Hendrik van Run
 
Introduction to Docker - IndiaOpsUG
Introduction to Docker - IndiaOpsUGIntroduction to Docker - IndiaOpsUG
Introduction to Docker - IndiaOpsUG
Ajeet Singh Raina
 
Introduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker CaptainIntroduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker Captain
Ajeet Singh Raina
 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deploymentjavaonfly
 
Docker.pptx
Docker.pptxDocker.pptx
Docker.pptx
balaji257
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
Aditya Konarde
 
Containers and Docker
Containers and DockerContainers and Docker
Containers and Docker
Damian T. Gordon
 
Docker handons-workshop-for-charity
Docker handons-workshop-for-charityDocker handons-workshop-for-charity
Docker handons-workshop-for-charity
Yusuf Hadiwinata Sutandar
 
[@NaukriEngineering] Docker 101
[@NaukriEngineering] Docker 101[@NaukriEngineering] Docker 101
[@NaukriEngineering] Docker 101
Naukri.com
 
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker and Microsoft - Windows Server 2016 Technical Deep DiveDocker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker, Inc.
 
Docker
DockerDocker
Docker
Tomy Rhymond
 
From VMs to Containers: Introducing Docker Containers for Linux and Windows S...
From VMs to Containers: Introducing Docker Containers for Linux and Windows S...From VMs to Containers: Introducing Docker Containers for Linux and Windows S...
From VMs to Containers: Introducing Docker Containers for Linux and Windows S...
Ido Flatow
 
Learning Dockers - Step by Step
Learning Dockers - Step by StepLearning Dockers - Step by Step
Learning Dockers - Step by Step
Adnan Siddiqi
 
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013dotCloud
 
Docker
DockerDocker
indico-workshop-container-deployment.pdf
indico-workshop-container-deployment.pdfindico-workshop-container-deployment.pdf
indico-workshop-container-deployment.pdf
ssuser8d64ca
 
indico-workshop-container-deployment.pptx
indico-workshop-container-deployment.pptxindico-workshop-container-deployment.pptx
indico-workshop-container-deployment.pptx
ssuser0c1819
 
docker : how to deploy Digital Experience in a container drinking a cup of co...
docker : how to deploy Digital Experience in a container drinking a cup of co...docker : how to deploy Digital Experience in a container drinking a cup of co...
docker : how to deploy Digital Experience in a container drinking a cup of co...
Matteo Bisi
 

Similar to Introduction to Containers & Diving a little deeper into the benefits of Containerisation (20)

Docker slides
Docker slidesDocker slides
Docker slides
 
C219 - Docker and PureApplication Patterns: Better Together
C219 - Docker and PureApplication Patterns: Better TogetherC219 - Docker and PureApplication Patterns: Better Together
C219 - Docker and PureApplication Patterns: Better Together
 
Introduction to Docker - IndiaOpsUG
Introduction to Docker - IndiaOpsUGIntroduction to Docker - IndiaOpsUG
Introduction to Docker - IndiaOpsUG
 
Introduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker CaptainIntroduction to Docker Containers - Docker Captain
Introduction to Docker Containers - Docker Captain
 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
 
Docker.pptx
Docker.pptxDocker.pptx
Docker.pptx
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Containers and Docker
Containers and DockerContainers and Docker
Containers and Docker
 
Docker handons-workshop-for-charity
Docker handons-workshop-for-charityDocker handons-workshop-for-charity
Docker handons-workshop-for-charity
 
[@NaukriEngineering] Docker 101
[@NaukriEngineering] Docker 101[@NaukriEngineering] Docker 101
[@NaukriEngineering] Docker 101
 
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker and Microsoft - Windows Server 2016 Technical Deep DiveDocker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
 
Docker
DockerDocker
Docker
 
From VMs to Containers: Introducing Docker Containers for Linux and Windows S...
From VMs to Containers: Introducing Docker Containers for Linux and Windows S...From VMs to Containers: Introducing Docker Containers for Linux and Windows S...
From VMs to Containers: Introducing Docker Containers for Linux and Windows S...
 
Learning Dockers - Step by Step
Learning Dockers - Step by StepLearning Dockers - Step by Step
Learning Dockers - Step by Step
 
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
 
Docker
DockerDocker
Docker
 
indico-workshop-container-deployment.pdf
indico-workshop-container-deployment.pdfindico-workshop-container-deployment.pdf
indico-workshop-container-deployment.pdf
 
indico-workshop-container-deployment.pptx
indico-workshop-container-deployment.pptxindico-workshop-container-deployment.pptx
indico-workshop-container-deployment.pptx
 
docker : how to deploy Digital Experience in a container drinking a cup of co...
docker : how to deploy Digital Experience in a container drinking a cup of co...docker : how to deploy Digital Experience in a container drinking a cup of co...
docker : how to deploy Digital Experience in a container drinking a cup of co...
 
OpenStack Summit
OpenStack SummitOpenStack Summit
OpenStack Summit
 

More from Synergetics Learning and Cloud Consulting

Monitor Cloud Resources using Alerts & Insights
Monitor Cloud Resources using Alerts & InsightsMonitor Cloud Resources using Alerts & Insights
Monitor Cloud Resources using Alerts & Insights
Synergetics Learning and Cloud Consulting
 
Implementing governance in the cloud era
Implementing governance in the cloud eraImplementing governance in the cloud era
Implementing governance in the cloud era
Synergetics Learning and Cloud Consulting
 
Past, Present and Future of DevOps Infrastructure
Past, Present and Future of DevOps InfrastructurePast, Present and Future of DevOps Infrastructure
Past, Present and Future of DevOps Infrastructure
Synergetics Learning and Cloud Consulting
 
The social employee
The social employeeThe social employee
Microsoft Azure New Certification Training roadmap
Microsoft Azure New Certification Training roadmapMicrosoft Azure New Certification Training roadmap
Microsoft Azure New Certification Training roadmap
Synergetics Learning and Cloud Consulting
 
Synergetics Microsoft engagement work
Synergetics Microsoft engagement workSynergetics Microsoft engagement work
Synergetics Microsoft engagement work
Synergetics Learning and Cloud Consulting
 
Deep architectural competency for deploying azure solutions
Deep architectural competency for deploying azure solutionsDeep architectural competency for deploying azure solutions
Deep architectural competency for deploying azure solutions
Synergetics Learning and Cloud Consulting
 
Pre sales engineer
Pre sales engineerPre sales engineer
Synergetics Re-skilling pitch deck
Synergetics Re-skilling pitch deckSynergetics Re-skilling pitch deck
Synergetics Re-skilling pitch deck
Synergetics Learning and Cloud Consulting
 
Synergetics On boarding pitch deck
Synergetics On boarding pitch deckSynergetics On boarding pitch deck
Synergetics On boarding pitch deck
Synergetics Learning and Cloud Consulting
 
Apache Spark on HDinsight Training
Apache Spark on HDinsight TrainingApache Spark on HDinsight Training
Apache Spark on HDinsight Training
Synergetics Learning and Cloud Consulting
 
Thank you global azure boot camp 2018, mumbai
Thank you global azure boot camp 2018, mumbaiThank you global azure boot camp 2018, mumbai
Thank you global azure boot camp 2018, mumbai
Synergetics Learning and Cloud Consulting
 
Synergetics Digital Transformation Note
Synergetics Digital Transformation NoteSynergetics Digital Transformation Note
Synergetics Digital Transformation Note
Synergetics Learning and Cloud Consulting
 
Synergetics digital transformation
Synergetics digital transformationSynergetics digital transformation
Synergetics digital transformation
Synergetics Learning and Cloud Consulting
 
Synergetics India Corporate Presentation
Synergetics India Corporate PresentationSynergetics India Corporate Presentation
Synergetics India Corporate Presentation
Synergetics Learning and Cloud Consulting
 
Synergetics Consulting project details
Synergetics Consulting  project detailsSynergetics Consulting  project details
Synergetics Consulting project details
Synergetics Learning and Cloud Consulting
 
Core synergetics presentation 2015-16
Core synergetics presentation 2015-16Core synergetics presentation 2015-16
Core synergetics presentation 2015-16
Synergetics Learning and Cloud Consulting
 

More from Synergetics Learning and Cloud Consulting (20)

Monitor Cloud Resources using Alerts & Insights
Monitor Cloud Resources using Alerts & InsightsMonitor Cloud Resources using Alerts & Insights
Monitor Cloud Resources using Alerts & Insights
 
Implementing governance in the cloud era
Implementing governance in the cloud eraImplementing governance in the cloud era
Implementing governance in the cloud era
 
Past, Present and Future of DevOps Infrastructure
Past, Present and Future of DevOps InfrastructurePast, Present and Future of DevOps Infrastructure
Past, Present and Future of DevOps Infrastructure
 
The social employee
The social employeeThe social employee
The social employee
 
Microsoft Azure New Certification Training roadmap
Microsoft Azure New Certification Training roadmapMicrosoft Azure New Certification Training roadmap
Microsoft Azure New Certification Training roadmap
 
Synergetics Microsoft engagement work
Synergetics Microsoft engagement workSynergetics Microsoft engagement work
Synergetics Microsoft engagement work
 
Deep architectural competency for deploying azure solutions
Deep architectural competency for deploying azure solutionsDeep architectural competency for deploying azure solutions
Deep architectural competency for deploying azure solutions
 
Pre sales engineer
Pre sales engineerPre sales engineer
Pre sales engineer
 
Synergetics Re-skilling pitch deck
Synergetics Re-skilling pitch deckSynergetics Re-skilling pitch deck
Synergetics Re-skilling pitch deck
 
Synergetics On boarding pitch deck
Synergetics On boarding pitch deckSynergetics On boarding pitch deck
Synergetics On boarding pitch deck
 
Apache Spark on HDinsight Training
Apache Spark on HDinsight TrainingApache Spark on HDinsight Training
Apache Spark on HDinsight Training
 
Thank you global azure boot camp 2018, mumbai
Thank you global azure boot camp 2018, mumbaiThank you global azure boot camp 2018, mumbai
Thank you global azure boot camp 2018, mumbai
 
Synergetics Digital Transformation Note
Synergetics Digital Transformation NoteSynergetics Digital Transformation Note
Synergetics Digital Transformation Note
 
Synergetics digital transformation
Synergetics digital transformationSynergetics digital transformation
Synergetics digital transformation
 
Synergetics India Corporate Presentation
Synergetics India Corporate PresentationSynergetics India Corporate Presentation
Synergetics India Corporate Presentation
 
Synergetics Consulting project details
Synergetics Consulting  project detailsSynergetics Consulting  project details
Synergetics Consulting project details
 
Core synergetics presentation 2015-16
Core synergetics presentation 2015-16Core synergetics presentation 2015-16
Core synergetics presentation 2015-16
 
Asap session 2
Asap session 2Asap session 2
Asap session 2
 
Asap session 1
Asap session 1Asap session 1
Asap session 1
 
ASAP Session 4
ASAP Session 4ASAP Session 4
ASAP Session 4
 

Recently uploaded

Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 

Recently uploaded (20)

Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 

Introduction to Containers & Diving a little deeper into the benefits of Containerisation

  • 2. ManageImplementAdviseEducate Agenda Module 1: Introduction to Containers Module 2: Container Architecture Module 3: Docker Architecture HOL 1: Installing Docker CE on Windows & Linus Host Module 4: Application modernization using docker Demo : Deploying TWO TIER application Using Docker compose HOL 2: Deploying TWO TIER application (DotNet Core + MS SQL) using Docker compose Module 5: Understanding Orchestration
  • 4. ManageImplementAdviseEducate Application packaging strategies  Every Application has certain dependencies.  Libraries provided by Operating System  Libraries provided by runtime environment like Java, Python & Dot Net runtime  Server Runtime like Tomcat for Java, IIS for Asp.net, Apache httpd  Third Party Libraries  Change in Dependencies affects Application.
  • 5. ManageImplementAdviseEducate Application packaging strategies /challenges  Application goes through following phases:  Development  Testing  Staging  Production  Managing dependencies across all these environments could be challenging.  Creating compatible dev-test environment may take considerable time.  Question : Challenges in moving application between environments  Question: List Existing solutions based on Virtualization
  • 6. ManageImplementAdviseEducate Containers as alternative • A Typical container would have application & all its dependencies packed together. • This makes container “decoupled” from targeted environment. • Only restriction being Windows or Linux platform. Container Base Image Runtime (JRE / Python / Node) Third Party Libs Application Image Writable Layer
  • 7. ManageImplementAdviseEducate Benefits of Containers • Isolate application from underlying OS and Hardware. • Lightweight, provides higher density than Virtual machines. • Dev-Ops ready. Many CI/CD platforms support container deployments/build. • Every container executes in a separate user space.
  • 8. ManageImplementAdviseEducate Container vs Virtual machines • Virtual machines provides hardware level virtualization. • Virtual machines contains Operating system. • Virtual machines use guest OS kernel. • Host OS and Guest OS could be completely different. • Booting up VM is equivalent of booting a physical machine. • Containers provide software level isolation, no hardware virtualization. • Containers use “base image” which provide basic OS level libraries but not the OS. • Containers use host OS kernel. • Due to dependence on Host OS Kernel, containers must be deployed on compatible host OS. • Launching container is equivalent of launching an application.
  • 9. ManageImplementAdviseEducate Container platforms • Docker from Docker Inc • LXC from Linux • LXD from Ubuntu • RKT from CoreOS
  • 11. ManageImplementAdviseEducate Container & Images • Containers are running instances of image • Image is a read-only filesystem made of “layers” • Each “layer” is an image which may contain a specific application, library or runtime. • Container has an extra “Writable” layer. • The bottom-most image is “base” image. Host Kernel Debian Image [Read Only] BusyBox Image [Read Only] Apache2 HTTP Image [Read Only] MySQL DB Image [Read Only] Writable Layer Writable Layer
  • 12. ManageImplementAdviseEducate Read-Only vs Writable layers • Read-only layers are shared by multiple containers / images. • Writable layer allows read and write operations • Every container has ONE writable layer. • Every layer has unique ID and meta-data.
  • 13. ManageImplementAdviseEducate Image repositories • An Image repository is persistent storage for container images • A private repository can be accessed by selected users. • A public repository can be accessed by any one. • A Developer may “Push” application as container image. • An operations team may “Pull” the same image for deployment. • Many cloud platforms do provide “Hosted” container repositories. • Host repositories are managed by vendor.
  • 14. ManageImplementAdviseEducate Container Networking • Containers can communicate through a container network. • Container platform like docker have Multiple network models. Host Kernel Container Network Container 1 Container 2
  • 16. ManageImplementAdviseEducate Docker As a Container platform • An open platform for developing, shipping, and running applications. • Started it’s life as a PaaS provider by name dotCloud. • Since its inception, working with linux container. • The container platform was named “Docker” • In 2013, got “rebranded” as Docker Inc. • A container platform based on “runc” and “libcontainer”
  • 17. ManageImplementAdviseEducate Docker Editions • Community edition (Docker CE) • Ideal for developers and small teams experimenting with containers. • Enterprise Edition (Docker EE) • Enterprise development & IT team for business critical applications at production scale.
  • 18. ManageImplementAdviseEducate Docker components • Docker engine (docker daemon) • Docker container images • Docker containers • Docker CLI (client) • Docker (REST) API • Docker Registry
  • 19. ManageImplementAdviseEducate Docker components • Batteries included but “removable” (“replaceable”) • Built in security • Linux hosts can use AppArmor or SELinux • Namespaces to restrict access to host system resources.
  • 20. ManageImplementAdviseEducate Docker on Windows & Linux hosts • Docker being only container platform supporting both Windows and Linux. • Windows based container supported only on Windows 10 PRO and Windows Server 2016. • Docker installation on windows uses different components than linux host. • Images built for linux cannot be deployed on windows hosts. • Windows do have a trick: docker-machine and moby project to run linux containers through a lightweight VM.
  • 21. ManageImplementAdviseEducate Hands On LAB • HOL 1: Installing Docker CE on Windows Server 2016 • Pre-requisite: • Azure subscription • Basic Windows administration w/ powershell. • Windows server 2016 VM on Azure • Remote Desktop client (built in windows) for accessing windows VM.
  • 22. ManageImplementAdviseEducate Hands On LAB • HOL 2: Installing Docker CE on Ubuntu Server 18.04 LTS • Pre-requisite: • Azure subscription • Basic Linux administration using bash shell. • Ubuntu Server 18.04 LTS VM on Azure • SSH Client (PuTTY or Git Bash or Ubuntu Bash)
  • 24. ManageImplementAdviseEducate Application types • A multi-layered monolith application • A distributed application / SOA • Micro-services • Containers do support all of them! • Monolith = Single large Container for App + DB Container • Distributed = Container for each Service / Module
  • 25. ManageImplementAdviseEducate A typical TWO TIER Application Front End App Container Back End App Container Back End App Container Back End App Container Front End App Container
  • 26. ManageImplementAdviseEducate Dockerfile • Automates the “Build” process of a container. • Integrates with all popular CI/CD tools. • Simple language to define entire build workflow • Basic system administration commands needed. • Windows : prefer powershell • Linux: prefer bash • Can be placed in SCM
  • 27. ManageImplementAdviseEducate Docker compose • A Tool for defining and deploying multi-container application. • Compose is a THREE STEP process • Define the application environment using Dockerfile • Define the services that make up your application using docker-compose.yml file • Run docker-compose up command to quickly run entire application in isolated environment. • Provides re-producible deployment artefacts. • Only recreates container that have changed. • Upon “restart” containers are spawned from “cached” versions if no change detected. • Supports environment variables • Supports “secrets” • Traditionally used for Single host deployment.
  • 30. ManageImplementAdviseEducate Dockerfile reference Command Description FROM Initializes a new build and define “base” image to be used for building. RUN A Step to be executed in build process. Can be used for installing necessary package. CMD Provide DEFAULT “startup” action for container. Must be used only ONCE. LABEL Provides additional META-DATA like Author name EXPOSE A Hint for port used by container, can be overridden at run-time. ENV Define environment variables. COPY Copy files from host system to container. NOTE : optional feature --chown for linux containers
  • 31. ManageImplementAdviseEducate Docker-compose reference Section Description Services: Define one or more service [YAML syntax] Build: Provide relative path to directory which contains “Dockerfile” Image: Provide image name using syntax: [repository-name]/[image-name]:[tag] For public images on docker-hub [repository-name] is dropped. Volumes: Define volumes to be mounted Networks: Define a private network for application. Labels: Additional meta-data
  • 32. ManageImplementAdviseEducate Demos • Demo 1: Deploying an application back-end and front-end as single application. • Demo 1-A Using MySQL with Wordpress • Demo 1-B Using MS-SQL with Asp.net core
  • 33. ManageImplementAdviseEducate Hands On • HOL 2] Deploying front-end application (ASP.NET core) and Back-end (MS SQL) using single docker-compose. • Use docker-compose to define entire application • Use existing VM created in HOL-1
  • 35. ManageImplementAdviseEducate Orchestration • Need for Orchestration • Ephemeral computing • Desired State • Cluster management • Container Orchestration platforms • Docker Swarm (from Docker Inc) • Kubernetes (from Google) • DC/OS (based on Apache Mesos) • Nomad (from HashiCorp)
  • 36. ManageImplementAdviseEducate Docker Swarm • Cluster management integrated with Docker engine • Decentralized design (for cluster management) • Declarative service model (ref: docker-compose) • Scaling • Desired state reconciliation • Multi-host networking • Service discovery • Load balancing
  • 37. ManageImplementAdviseEducate Kubernetes • Cluster managed from google with 10+ years of internal use by google. • Open source, run anywhere • Service discovery • Load balancing • Self healing • Storage orchestration • Scaling
  • 38. ManageImplementAdviseEducate DC/OS • Distributed OS based on Apache Mesos • Treat cluster as a single machine • High resource utilization • Container orchestration using “Marathon” • Cloud agnostic installation