Download presentation
Presentation is loading. Please wait.
Published byDouglas Strickland Modified over 6 years ago
1
From Source to Production: The Latest in Container Dev
1/2/ :05 AM BRK3336 From Source to Production: The Latest in Container Dev Brendan Burns Matt Butcher © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
2
1/2/ :05 AM Matt Butcher © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
3
1/2/ :05 AM Brendan Burns © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
4
How We’ll Roll Why we think the container development story is a big deal Demos, demos, and more demos
5
A Conceptual History of Cloud
1/2/ :05 AM A Conceptual History of Cloud Bare Metal Dedicated Shared Hosting VM Emulation Workload Public Cloud Containers Isolated FS App-per-container Container Orchestration © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
6
What’s the difference between a container and a VM?
1/2/ :05 AM What’s the difference between a container and a VM? © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
7
How a Container Works Base Layer 1 Layer 2 Layer 3 Container
1/2/ :05 AM How a Container Works Base Layer 1 Layer 2 Layer 3 Container © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
8
Dockerfile for a JS App FROM node:8 RUN apt-get install –y wget
1/2/ :05 AM Dockerfile for a JS App FROM node:8 RUN apt-get install –y wget RUN yarn install RUN yarn build CMD yarn start © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
9
How a Container Works FROM node:8 RUN apt-get… RUN yarn install
1/2/ :05 AM How a Container Works FROM node:8 RUN apt-get… RUN yarn install RUN yarn build CMD yarn start © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
10
Container Orchestration: The Role of Kubernetes
1/2/ :05 AM Container Orchestration: The Role of Kubernetes © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
11
How Kubernetes Works Nodes Control Plane Nodes Nodes API Server
Kubelet Client Scheduler Container Runtime YAML/ JSON Controller State Storage
12
But the Developer’s View…
Service Deployment StatefulSet Pod Pod Pod Pod Namespace
13
1/2/ :05 AM Instead of talking about what apps we run on a given host operating system, we now ask what containers we run on the cluster. © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
14
In other words, the cluster (not the host) is now the primary object.
15
For developers, this means…
All the freedoms of running in containers (I own the entire FS) Parity between dev and prod is increased “Hard problems” like dependency management are now easy But my dev environment is now more complex The conceptual overhead for understanding ops is higher And persistence is hard
16
Our Challenge How do we increase the effectiveness of a developer in the container-first world of tools like Docker and Kubernetes?
17
Demos: Tools for Container-first Development
18
Let’s start by just running a single container in Azure.
19
Azure Container Instances
Run individual containers inside of Azure. It’s serverless, but not Function-as-a-Service.
20
Demo: ACI Running a Tiny JS App
21
Now let’s use Kubernetes
22
Azure Container Services
Get yourself a powerful preconfigured Kubernetes cluster running inside of Azure.
23
Demo: Installing Kubernetes ACS
1/2/ :05 AM Demo: Installing Kubernetes ACS Using the az client © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
24
Some Core Kubernetes Concepts
1/2/ :05 AM Some Core Kubernetes Concepts Pods Replica Sets Deployments Daemon Sets Stateful Sets Secrets ConfigMaps Services Ingress © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
25
Using kubectl to Interact with Kubernetes
$ kubectl get pods $ kubectl create –f myPod.yaml $ kubectl logs myPod
26
Demo: Kubernetes Deployments
Rolling Updates
27
Installing off-the-shelf applications into your Kubernetes cluster
1/2/ :05 AM Installing off-the-shelf applications into your Kubernetes cluster © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
28
Kubernetes Helm Helm is the package manager for Kubernetes. It simplifies the process of installing and managing applications on a Kubernetes cluster.
29
1/2/ :05 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
30
How Helm Works K8S Resources Tiller Helm Chart YAML
31
Demo: Helm The package manager for Kubernetes
32
Here’s a common problem that a Helm chart easily solves
33
Demo: Kube-Lego Using Lets Encrypt to quickly add SSL/TLS
34
Using ACI with Kubernetes
There is a Kubernetes bridge to ACI that lets us run Kubernetes pods as ACI resources. This means (a) we don’t consume node resources, and (b) these resources can be billed per second.
35
Draft A developer tool for authoring microservices for Kubernetes
36
How Draft Works img Registry Docker K8S Tiller Draftd Draft
1/2/ :05 AM How Draft Works img Registry Docker K8S Draftd Tiller Draft Application Code Chart YAML © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
37
Demo: Draft Cloud-first Applications, Pronto 1/2/2019 11:05 AM
© Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
38
Demo: Functions as a Service
With Kubeless
39
Demo: Operators Automating operations
40
Demo: Terraform Deploying apps
41
Looking toward the future, how do you imagine the container landscape will evolve?
42
Please evaluate this session
Tech Ready 15 1/2/2019 Please evaluate this session From your Please expand notes window at bottom of slide and read. Then Delete this text box. PC or tablet: visit MyIgnite Phone: download and use the Microsoft Ignite mobile app Your input is important! © 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.
43
1/2/ :05 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.