From Source to Production: The Latest in Container Dev

Slides:



Advertisements
Similar presentations
MIX 09 4/15/ :14 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Advertisements

Session 1.
demo © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
demo Demo.
demo QueryForeign KeyInstance /sm:body()/x:Order/x:Delivery/y:TrackingId1Z
Successfully migrate existing databases to Azure SQL Database
From IT Pros to IT Heroes - with Azure DevTest Labs
Azure Machine Learning Deploying and Managing Models in production
Azure on Steroids: Full Automation with PowerShell
DevOps for any language
THR3052 Tips and tricks: Build, deploy, and manage web apps powered by containers Ahmed Elnably Program Manager
Azure Cloud Shell Magic of Modern Command-line Management
Learning about Containers in the Real World
Azure SDKs and Tools for You
Get Typed with TypeScript!
Optimizing Microsoft OneDrive for the enterprise
What a Real, Functioning DevOps Team Looks Like
Virtual Machine Diagnostics in Microsoft Azure
SQL Server on Linux on All-Flash Arrays
Microsoft Ignite /31/ :08 AM
8/6/ :17 AM THR2214 Hybrid Cloud Activated A customer case study optimizing on-premises & Azure performance and cost Mor Cohen-Tal Senior Product.
Modernizing Application Delivery with Containers & Kubernetes
Workflow Orchestration with Adobe I/O
How we got a traditional bank collaborating across boundaries
Find, try and get line-of-business apps on Microsoft AppSource
Azure Security in four steps
Automate all things! Microsoft Azure continuous deployment
Agile Planning with Visual Studio Team Services (VSTS)
9/22/2018 3:49 AM BRK2247 Learn from MVPs: Panel discussion on all things SharePoint and OneDrive © Microsoft Corporation. All rights reserved. MICROSOFT.
Confidence at speed: Visual Studio 2017 and your CI pipeline
Azure PowerShell Aaron Roney Senior Program Manager Cormac McCarthy
Continuous Delivery for Microsoft Azure
Continuous Delivery with Visual Studio Team Services
Supercharge Microsoft Teams using Teams apps in node.js
Azure Advisor: Optimization in the best way
PowerShell Unplugged Jeffrey Snover Technical Fellow
Mobile Center and VSTS:​ Better together for your Mobile DevOps
11/27/2018 5:08 PM THR3057 Using a PowerShell release pipeline for a real-world service provider delivery in Microsoft Azure Niklas Åkerlund Lead Architect.
Developing for the cloud with Visual Studio
Microsoft products for non-profits
Automating security for better, continuous compliance in the cloud
Introduction to ASP.NET Core 1.0
Five cool things you can do with Windows PowerShell on Office 365
Microsoft To-Do Preview
Microsoft Exchange: Through the eyes of MVPs (Panel discussion)
MDM Migration Analysis Tool (MMAT)
Overview: Dynamics 365 for Project Service Automation
Understand your Azure cloud assets dependencies with BMC Discovery
Surviving identity management in a hybrid world
Hostage Negotiation, Special Ops and Office 365 Adoption
Breaking Down the Value of A Yammer Post: 20 Things to Do
Cool Microsoft Edge Tips and Tricks
When Bad Things Happen to Good Applications
Getting the most out of Azure resources with Azure Advisor
Manage your App Service resources using Command line tools
“Hey Mom, I’ll Fix Your Computer”
4/21/2019 7:09 AM THR2098 Unlock New Opportunities with Nintex Hawkeye Process Intelligence and Workflow Analytics Sr. Product.
Business Continuity and the Microsoft Cloud
Виктор Хаджийски Катедра “Металургия на желязото и металолеене”
Consolidate, manage, backup, and secure your cloud content
Designing Bots that Fit Your Organization
Ask the Experts: Windows 10 deployment and servicing
Passwordless Service Accounts
Шитманов Дархан Қаражанұлы Тарих пәнінің
Digital Transformation: Putting the Jigsaw Together
WCF and .NET Framework Microservices in Containers
Diagnostics and troubleshooting in Azure App Service Support Center
Optimizing your content for search and discovery
7/5/2019 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks.
Presentation transcript:

From Source to Production: The Latest in Container Dev 1/2/2019 11: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.

1/2/2019 11:05 AM Matt Butcher © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

1/2/2019 11:05 AM Brendan Burns © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

How We’ll Roll Why we think the container development story is a big deal Demos, demos, and more demos

A Conceptual History of Cloud 1/2/2019 11: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.

What’s the difference between a container and a VM? 1/2/2019 11: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.

How a Container Works Base Layer 1 Layer 2 Layer 3 Container 1/2/2019 11: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.

Dockerfile for a JS App FROM node:8 RUN apt-get install –y wget 1/2/2019 11: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.

How a Container Works FROM node:8 RUN apt-get… RUN yarn install 1/2/2019 11: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.

Container Orchestration: The Role of Kubernetes 1/2/2019 11: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.

How Kubernetes Works Nodes Control Plane Nodes Nodes API Server Kubelet Client Scheduler Container Runtime YAML/ JSON Controller State Storage

But the Developer’s View… Service Deployment StatefulSet Pod Pod Pod Pod Namespace

1/2/2019 11: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.

In other words, the cluster (not the host) is now the primary object.

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

Our Challenge How do we increase the effectiveness of a developer in the container-first world of tools like Docker and Kubernetes?

Demos: Tools for Container-first Development

Let’s start by just running a single container in Azure.

Azure Container Instances Run individual containers inside of Azure. It’s serverless, but not Function-as-a-Service.

Demo: ACI Running a Tiny JS App

Now let’s use Kubernetes

Azure Container Services Get yourself a powerful preconfigured Kubernetes cluster running inside of Azure.

Demo: Installing Kubernetes ACS 1/2/2019 11: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.

Some Core Kubernetes Concepts 1/2/2019 11: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.

Using kubectl to Interact with Kubernetes $ kubectl get pods $ kubectl create –f myPod.yaml $ kubectl logs myPod

Demo: Kubernetes Deployments Rolling Updates

Installing off-the-shelf applications into your Kubernetes cluster 1/2/2019 11: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.

Kubernetes Helm Helm is the package manager for Kubernetes. It simplifies the process of installing and managing applications on a Kubernetes cluster.

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.

How Helm Works K8S Resources Tiller Helm Chart YAML

Demo: Helm The package manager for Kubernetes

Here’s a common problem that a Helm chart easily solves

Demo: Kube-Lego Using Lets Encrypt to quickly add SSL/TLS

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.

Draft A developer tool for authoring microservices for Kubernetes

How Draft Works img Registry Docker K8S Tiller Draftd Draft 1/2/2019 11: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.

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.

Demo: Functions as a Service With Kubeless

Demo: Operators Automating operations

Demo: Terraform Deploying apps

Looking toward the future, how do you imagine the container landscape will evolve?

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 https://myignite.microsoft.com/evaluations Phone: download and use the Microsoft Ignite mobile app https://aka.ms/ignite.mobileapp 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.

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.