SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.
SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.
Successfully reported this slideshow.
Activate your 14 day free trial to unlock unlimited reading.
Making sense of containers, docker and Kubernetes on Azure.
7.
Static
website
Web
frontend
User
DB
Queu
e
Analytics
DB
Background
workers
API
endpoint
nginx 1.5 + modsecurity + openssl + bootstrap 2
postgresql + pgv8 +
v8
hadoop + hive + thrift +
OpenJDK
Ruby + Rails + sass + Unicorn
Redis + redis-sentinel
Python 3.0 + celery + pyredis + libcurl + ffmpeg + libopencv + nodejs
+ phantomjs
Python 2.7 + Flask + pyredis + celery + psycopg + postgresql-client
Development
VM
QA
server
Public
Cloud
Disaster
recovery
Contributor’s
laptop
Production
Servers
The Problem in 2018: Distributed Applications
Multiplicityof
Stacks
Multiplicityof
hardware
environments
Production
Cluster
Customer Data
Center
Doservicesand
appsinteract
appropriately?
CanImigrate
smoothlyand
quickly?
8.
The Matrix From Hell
Static website
Web frontend
Background workers
User DB
Analytics DB
Queue
Developme
nt VM
QA Server
Single Prod
Server
Onsite
Cluster
Public
Cloud
Contributor’
s laptop
Customer
Servers
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ? ? ? ?
9.
Multiplicityof
Goods
Multipilicityof
methodsfor
transporting/storin
g
DoIworryabout
howgoodsinteract
(e.g.coffeebeans
nexttospices)
CanItransport
quicklyandsmoothly
(e.g.fromboatto
traintotruck)
An Inspiration: Cargo Transport Pre-1960
10.
Multiplicityof
Goods
Multiplicityof
methodsfor
transporting/storing
DoIworryabout
howgoodsinteract
(e.g.coffeebeans
nexttospices)
CanItransport
quicklyand
smoothly
(e.g.fromboatto
traintotruck)
Solution: Intermodal Shipping Container
Ecosystem
…in between, can be loaded and
unloaded, stacked, transported
efficiently over long distances,
and transferred from one mode
of transport to another
A standard container that is
loaded with virtually any
goods, and stays sealed until
it reaches final delivery.
11.
The Intermodal Shipping Container Ecosystem
• 90% of all cargo now shipped in a standard container
• Order of magnitude reduction in cost and time to load and unload ships
• Massive reduction in losses due to theft or damage
• Huge reduction in freight cost as percent of final goods (from >25% to <3%)
• massive globalization
• 5000 ships deliver 200M containers per year
12.
Static
website
Web
frontend
User
DB
Queu
e
Analytics
DB
Development VM
QA
server
Public
Cloud Contributor’s laptop
Let’s create an ecosystem for distributed
applications
Multiplicityof
Stacks
Multiplicityof
hardware
environments
Production ClusterCustomer Data Center
Doservicesand
appsinteract
appropriately?
CanImigrate
smoothlyand
quickly
…that can be manipulated using
standard operations and run
consistently on virtually any
hardware platform
An engine that enables any
payload to be encapsulated
as a lightweight, portable,
self-sufficient container…
13.
Static website
Web frontend
Background workers
User DB
Analytics DB
Queue
Developme
nt VM
QA Server
Single Prod
Server
Onsite
Cluster
Public
Cloud
Contributor’
s laptop
Customer
Servers
And eliminate the matrix from Hell
14.
Build/CI,
Integrate,
Test
3.
Push
code
CD, Deploy
4.
Source Code
Control
(SCC)
2.
Azure
Container
Registry
15.
TFS
Develop
Developer Workstation
Team Collaboration
Build&Test
Build/CI
Test
Deploy
Release
Monitor&Learn
Monitor
Microsoft
Ecosystem
Workstations - On-Premises| Hybrid | Cloud Monitoring- On-Premises | Hybrid | CloudALMServices - On-Premises| Hybrid | Cloud
DEV TEST QA
Environments - On-Premises| Hybrid | Cloud
16.
Develop
Developer Workstation
Team Collaboration
Build&Test
Build/CI
Test
Deploy
Configuration
Monitor&Learn
Monitor
This graphic shows OSS and partner products that are
integrated with the Microsoft DevOps solution
Mixed
Ecosystem
Release
17.
Manage images for all types of containers
One registry across multiple regions
Keep container images close
Use Native Docker CLI tools
18.
Outer-Loop
Production
environments
Run, Manage
5.
Container Service
Service Fabric
Container Instance
Azure Batch
Partner solutions
Docker EE
App Services
19.
The elements of orchestration
Scheduling Affinity/anti-
affinity
Health
monitoring
Failover
Scaling Networking Service
discovery
Coordinated
app upgrades
21.
Kubernetes: empowering you to do more
Deploy your
applications quickly
and predictably
Scale your
applications on
the fly
Roll out
new features
seamlessly
Limit hardware
usage to required
resources only
26.
Azure Container Service (AKS)
Simplify the deployment, management, and
operations of Kubernetes
Work how you
want with open-
source APIs
Scale and run
applications with
confidence
Focus on your
containers not the
infrastructure
Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
27.
Azure Container Service (AKS)
A fully managed Kubernetes cluster
Managed
Azure infrastructure services
Docker
Kubernetes
• Managed control pane
• Automated upgrades, patches
• Easy cluster scaling
• Self-healing
• Cost savingsApplication
architect
Infrastructure
architect
Applications
Operations
Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
28.
Azure Container Service (AKS)
Get started easily
$ az aks create
$ az aks install-cli
$ az aks get-credentials
$ kubectl get nodes
Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
29.
Azure Container Service (AKS)
Manage an AKS cluster
$ az aks list
$ az aks upgrade
$ kubectl get nodes
$ az aks scale
Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
30.
Azure Container Service (AKS)
Create an AKS cluster via the Azure portal
Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
31.
Azure Container Service (AKS)
Azure Container Service Engine
Enables custom
deployments
Available
on GitHub
A proving ground
for new features
Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
32.
Azure Container Service (AKS)
Resources
Container Orchestration Simplified with AKS
Kubernetes Support in Azure Container Services
• Azure Container Service (AKS) webpage
• AKS videos
• AKS technical documentation
• AKS pricing details
• AKS roadmap
• Azure Container Service Engine: Github
Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
33.
Azure Container Instances (ACI)
Easily run containers on Azure with a single command
Cloud-scale
container capacity
Hyper-visor
isolation
Start using
containers right away
Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
34.
Bursting with the ACI Connector
Kubernetes
control pane
Application
architect
Infrastructure
architect
Azure Container Instances (ACI)
ACI
Connector
Pod
Pod Pod
Pod
Pod Pod
Pod
Pod Pod
Pod
Pod Pod
VM VM
VM VM
Deployment/
tasks
Pod Pod Pod Pod Pod
Pod Pod Pod Pod Pod
Pod Pod Pod Pod Pod
Pod Pod Pod Pod Pod
Pod Pod Pod Pod Pod
Azure Container Instances (ACI)Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
WasteWaste
WasteWaste PodPod
PodPod
35.
Azure Container Registry
Manage a Docker private registry as a first-class Azure resource
Use familiar, open-
source Docker CLI tools
Azure Container Registry
geo-replication
Manage images for all
types of containers
Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
36.
Open Service Broker for Azure (OSBA)
An implementation of the Open Service Broker API
OpenShift Cloud Foundry Service Fabric
(Coming soon)
Kubernetes
(AKS)
Azure SQL Database Redis Cache CosmosDB And more!
Open Service Broker
for Azure (OSBA)
Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
37.
Draft
Simple app development and deployment – into
any Kubernetes cluster
Simplified development
Using two simple commands, developers
can now begin hacking on container-based
applications without requiring Docker or
even installing Kubernetes themselves
Language support
Draft detects which language your app is
written in, and then uses packs to
generate a Dockerfile and Helm Chart
with the best practices for that language
Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
38.
Helm
The best way to find, share, and use software
built for Kubernetes
Manage complexity
Charts can describe complex
apps; provide repeatable
app installs, and serve as a
single point of authority
Easy updates
Take the pain out
of updates with in-
place upgrades and
custom hooks
Simple sharing
Charts are easy to
version, share, and host
on public or private
servers
Rollbacks
Use helm rollout to
roll back to an older
version of a release
with ease
Azure Container
Service (AKS)
Azure Container
Instances (ACI)
Azure Container
Registry
Open Service
Broker API (OSBA)
Release
Automation Tools
40.
Orders API
Pod
Orders Processor
Pod
Azure Service Bus
41.
Orders API
Pod
Orders Processor
Pod
Azure Service Bus Azure Monitor
Horizontal Pod Autoscaler
Prometheus
42.
Orders API
Pod
Orders Processor
Pod
Azure Service Bus Azure Monitor
Horizontal Pod Autoscaler
Prometheus Promitor
43.
Introducing Promitor Alpha
• Automatically scrapes Azure Monitor metrics
• Provides scraping endpoint for Prometheus
• Easy to declare metrics to scrape via YAML & APIs
• Easily deployable via Docker & Kubernetes
• Built-in support for a variety of Azure services
• Currently supports Azure Service Bus Queues, more on the way
• Open-Source on GitHub: https://github.com/tomkerkhove/promitor
• Documentation on promitor.io
0 likes
Be the first to like this
Views
Total views
474
On SlideShare
0
From Embeds
0
Number of Embeds
5
You have now unlocked unlimited access to 20M+ documents!
Unlimited Reading
Learn faster and smarter from top experts
Unlimited Downloading
Download to take your learnings offline and on the go
You also get free access to Scribd!
Instant access to millions of ebooks, audiobooks, magazines, podcasts and more.
Read and listen offline with any device.
Free access to premium services like Tuneln, Mubi and more.