devops, microservices, and azure container service
TRANSCRIPT
![Page 1: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/1.jpg)
Microsoft Developer Conference A Container Journey
David Tesar Senior Technical Evangelist@dtzar
March, 2017 | Cairo, Egypt
![Page 2: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/2.jpg)
Extreme Sport Christians – Monolith Architecture (on PaaS)
SQL Azure
Microsoft Azure
Azure App Services WebsiteApp Insights
Internet
.NET 4.6 front-end code with tight-couplingto out of box InstantForum product
![Page 3: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/3.jpg)
The Monolithic Application
Pros
Simple at firstIn-process latenciesSingle codebase, deploy unitResource-efficient at small scale
Cons
Complex to understandDifficult to TestCoordination overhead as team growsDevOps Practices harder to implementPoor scaling (vertical only)All-or-nothing deploy (downtime, failures)Long build timesLonger / Harder to update
![Page 4: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/4.jpg)
Microservices Design Pattern
A
C D EBC
BA E
F
GD
![Page 5: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/5.jpg)
Microservices
API-Auth
API-User
API-Comms
API-Tags
Action Sports Community - Architecture
DocDB
Mobile Apps React.JS / Cordova iOS/Android/Windows
User CollectionComms CollectionAuth CollectionTags Collection
Node.JSExpressSwagger
Microsoft Azure
React.JS Website
APIGatewa
y
Internet
Microservices on top ACS+K8s
MongoContain
er
MongoContain
er
Container
![Page 6: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/6.jpg)
ContainersHow do they differ from virtual machines?Dependencies: Each virtualized app includes the app itself, required binaries and libraries and a guest OS, which may consist of multiple GB of dataIndependent OS: Each VM can have a different OS from other VMs, along with a different OS to the host itselfFlexible: VMs can be migrated to other hosts to balance resource usage and for host maintenance without downtime
Secure: High levels of resource and security isolation for key virtualized workloads
App A
Host OSw/Container
support
Server / Hypervisor
Bins/libraries
Container
Bins/libraries
App B
Virtual Machine
Host OSw/Container
support
![Page 7: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/7.jpg)
SemanticsWhat’s the difference between a Docker File, Image and Container?
Docker File: Defines source image and commands to execute to build a Docker ImageCreates image to build… ‘docker build’
Docker Image: Images are stored in a registry and are a immutable copy of the applicationCreates instance of image… ‘docker run’
Docker Container: This is the running instance of a Docker Image
Lists running instances… ‘docker ps’
![Page 8: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/8.jpg)
Demo
Docker Fundamentals withAction Sports Community Front-End React.JS & API-Comms Microservice
React.JS Website
API-Comms
![Page 9: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/9.jpg)
DevOps Practices with VSTS + Azure
Local Dev
Source Repo
Build Docker Image
Azure Container Registry (ACR)
Microsoft Azure
Master Node1 Node2
VSTS
Docker-Compose up
CI
![Page 10: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/10.jpg)
Demo
Sharing Docker Images via Azure Container Registry
Docker Compose
React.JS Website
![Page 11: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/11.jpg)
![Page 12: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/12.jpg)
![Page 13: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/13.jpg)
![Page 14: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/14.jpg)
“Continuous automatedscheduling, coordination, andmanagement of complex systemsof containerized components andthe resources they consume.”@karlkfi
![Page 15: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/15.jpg)
Application
Infrastructure
Azure Container Service
ARM Templat
e
Orchestrator
![Page 16: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/16.jpg)
DemoDeploying an ACS Cluster with Kubernetes OrchestratorUsing AZ cli script
Create Cluster
Master Node1 Node2
![Page 17: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/17.jpg)
App Marketplaces
http://kubeapps.com http://mesosphere.github.io/universe/
![Page 18: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/18.jpg)
DevOps Practices with VSTS + Azure
Local Dev
Source Repo
Build Docker Image
Azure Container Registry (ACR)
Microsoft Azure
Master Node1 Node2ACS / K8s Cluster
Deploy to Cluster(Stage)
Deploy to Cluster(Prod)
Automated Tests
VSTS
Docker-Compose up
CI
CD RM
![Page 19: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/19.jpg)
DemoDeployment Using Helm to ACS+K8s Cluster
Continuous Delivery to ACS+K8s with VSTS
![Page 20: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/20.jpg)
Resources• DevOps Fundamental Video Series
http://aka.ms/DevOpsFundamentals • Continuous Delivery to ACS+K8s with VSTS
http://wp.me/p355zy-6h• MVA Courses on Microservices
https://mva.microsoft.com/search/SearchResults.aspx#!q=microservice&lang=1033
• VSTS Kubernetes Taskhttps://github.com/TsuyoshiUshio/KubernetesTask
• ACS – Kubernetes Walkthroughhttps://docs.microsoft.com/en-us/azure/container-service/container-service-kubernetes-walkthrough
• ACS – DCOS CI/CD https://docs.microsoft.com/en-us/azure/container-service/container-service-setup-ci-cd
• Microsoft DevOps Case Studieshttps://microsoft.github.io/techcasestudies/
![Page 21: DevOps, Microservices, and Azure Container Service](https://reader033.vdocuments.net/reader033/viewer/2022042600/58e51e6c1a28ab624e8b574d/html5/thumbnails/21.jpg)
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.