boris devouge - uk azure containers service
TRANSCRIPT
Azure Container Service preview
Boris Devouge
OpenSource Strategy Lead
Microsoft UK
The Bell Pub – 01/03/2016 – UK Azure User Group
The NEW Microsoft
Dead and buried: Microsoft's holy war on open-source software
“Years ago, Microsoft's CEO described open source as a cancer. Times have changed. Just ask 22-year Redmond veteran and open-source
proponent Mark Hill.”
Charles Cooper
Redmond top man Satya Nadella:
'Microsoft LOVES Linux‘
Neil McAllister
Microsoft: the Open Source Company
“This is not your dad’s Microsoft”
Steven J. Vaughan-Nichols
Tweet
“Azure Container Service is different
and offers the broadest hint yet that
Microsoft wants to build real
products with open source, not
merely leverage it where it's
convenient”
Serdar Yegulalp
= Managed by customer
Traditional IT= Managed by vendor
Cloud Service Models
• API programmatic interface to manage the deployment of resources (Compute, Storage, Network)
• Elasticity – Scaling without preplanning or any topology changes
• Layer on top of virtualization framework – multiple hypervisors working together
• Underlying hardware and physical limits abstracted
• Runs static VM images with ephemeral local storage (erased/lost on termination)
• Implements different pieces of infrastructure as a web services (block and object stores, metadata, scheduler, networks and many more)
• Self Service IT
o Cuts down the internal provisioning time
• Test/Dev environments
o Or similar “Build and Tear” environments – Agility
• Sporadic dynamic platforms: one time use / repurpose
• Continuous Integration (CI), GTM testing
• Automation of Infrastructure / stacks deployment
• Programmatic operations on VMs / scenarios
• Mass Horizontal applications (i.e. web farms)
o Ideal scale-out model (presentation/http layer)
o Single basic image – quick scale up and down, lightweight and good density
• Service / Hosting / Cloud providers
o The new Standard (Cloud based)
o Want to become a cloud provider instead?
o Who want to compete with the big Cloud vendors?
• Applications that are CPU or I/O bound
o Number crunching, factorizations, compilations
o Heavy/Large/Clustered DB or background I/O
• Ultra Critical applications
o Do not expect zero downtime in cloud - just resilience
• VDI Hosts
o Despite the popular idea
• Dynamic application clusters
o Lack of Multicast in virtual networks
Observations
• Needs adapted workloads: scale out, stateless and resilient
• Needs Configuration Management and/or Orchestration to be properly exploited with Automation
• IaaS uses virtualization
o Poor virtualization use cases will be poor on IaaS
Containers
Containers
Containers
Server
Host OS
Hypervisor
Server
Host OS
Docker Engine
Guest
OS
Guest
OS
Guest
OS
Bins/Libs Bins/Libs Bins/Libs
App A App A’ App B
Bins/Libs Bins/Libs
Ap
p A
Ap
p A
’
Ap
p B
Ap
p B
’
Ap
p B
Ap
p B
’
Ap
p B
Ap
p B
’Containers are isolated,
but share OS and, where
appropriate,
bins/libraries
• Scales by cloning the app on multiple
servers/VMs/Containers
Monolithic application approach Microservices application approach
• A microservice application
separates functionality into
separate smaller services.
• Scales out by deploying each service
independently creating instances of these services
across servers/VMs/containers
• A monolith app contains domain
specific functionality and is
normally divided by functional
layers such as web, business and
data
App 1 App 2App 1
Service FabricHigh Availability
Hyper-Scale
Hybrid Operations
High Density
Microservices
Rolling Upgrades
Stateful services
Low LatencyFast startup &
shutdown
Container Orchestration
& lifecycle management
Replication &
Failover
Simple
programming
modelsResource balancing
Self-healingData Partitioning
Automated Rollback
Health
Monitoring
Placement
Constraints
Azure Private cloud Other clouds
Azure Container ServiceHigh Availability
Hyper-Scale
Microservices
Container hosts
as cattle
Flexible
programming
models
Azure Private cloud Other clouds
Open Source
Orchestration
Host cluster
management
Open Source Container ManagementHigh Availability High DensityPlacement
ConstraintsFast startup &
shutdownSelf-healing
• Scales by cloning the app on multiple
servers/VMs/Containers
Monolithic application approach Microservices application approach
• A microservice application
separates functionality into
separate smaller services.
• Scales out by deploying each service
independently creating instances of these services
across servers/VMs/containers
• A monolith app contains domain
specific functionality and is
normally divided by functional
layers such as web, business and
data
App 1 App 2App 1
Docker Hub
Announcing
You can deploy a Docker capable, Apache Mesos cluster today
from : http://go.microsoft.com/fwlink/?linkid=733370&clcid=0x409
Containers
Container ToolingService Tooling
Layer Supported Technologies
Configuration as
Code
ARM, Dockerfile, Docker
Compose
Host cluster
management
VM Scale Sets
Container
orchestration
Docker Swarm, Chronos,
Marathon, Apache Mesos
Monitoring OMS, App Insights
Deploy using Portal or ARM
•
•
•
•
•
Layer Supported Technologies
(2015)
Configuration as
Code
ARM, Dockerfile, Docker
Compose
Host cluster
management
VM Scale Sets
Container
orchestration
Docker Swarm, Chronos,
Marathon, Apache Mesos
Monitoring OMS, App Insights
DevOps with Containers
Developers
Operations automates deployment and
monitors deployed apps from central repository
Operations collaborates with developersto provide app metrics and insights
Developers update, iterate, and deploy updated containers
Central Repository
Containers pushed tocentral repository
Build
Continuous Integration
Continuous Delivery
Open Cloud
All platforms, All clients
https://github.com/azure
https://azure.microsoft.com/en-us/documentation/articles/xplat-cli/
https://azure.microsoft.com/en-us/documentation/templates/
h