Presentation is loading. Please wait.

Presentation is loading. Please wait.

From Source to Production: The Latest in Container Dev

Similar presentations


Presentation on theme: "From Source to Production: The Latest in Container Dev"— Presentation transcript:

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.


Download ppt "From Source to Production: The Latest in Container Dev"

Similar presentations


Ads by Google