Developing for the cloud with Visual Studio

Slides:



Advertisements
Similar presentations
Microsoft Build /9/2017 5:00 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Advertisements

1/27/2018 5:13 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Accelerate your DevOps with OpenShift by Red Hat
Successfully migrate existing databases to Azure SQL Database
From IT Pros to IT Heroes - with Azure DevTest Labs
5/21/2018 9:40 PM BRK3021 Learn about modern infrastructure roles in RDS: Next generation Windows desktop & app virtualization Clark Nicholson - Principal.
Microsoft /26/2018 4:12 AM BRK3189 Modernizing existing .NET web apps with Azure Cloud and Windows containers Cesar De La Torre.
Azure Machine Learning Deploying and Managing Models in production
The story of an IoT solution
Nested Virtualization: A game changer in Hyper-V and Azure
Creating Enterprise Grade BI Models with Azure Analysis Services
Use any Amazon S3 application with Azure Blob Storage
6/10/2018 4:48 AM THR2155 A/B Testing, Canary releases and dark launching: Implementing continuous delivery on Azure Marcel de Vries CTO, Xpirit © Microsoft.
DevOps for any language
THR3052 Tips and tricks: Build, deploy, and manage web apps powered by containers Ahmed Elnably Program Manager
6/11/2018 8:14 AM THR2175 Building and deploying existing ASP.NET applications using VSTS and Docker on Windows Marcel de Vries CTO, Xpirit © Microsoft.
Azure Cloud Shell Magic of Modern Command-line Management
Developing Hybrid Apps on Microsoft Azure Stack
AI development using Data Science Virtual Machines (DSVM) in Azure
How to expand your Azure Stack marketplace
The Modern ASP.NET Tech Stack!
Learning about Containers in the Real World
Azure SDKs and Tools for You
7/17/2018 3:31 AM BRK3313 Plan, orchestrate and tune large resource deployments on Azure infrastructure IaaS Igal Figlin Principal PM Manager – Azure Compute.
Virtual Machine Diagnostics in Microsoft Azure
SQL Server on Linux on All-Flash Arrays
Microsoft Ignite /31/ :08 AM
Excel and Power BI Better Together Democratization of data
Modernizing Application Delivery with Containers & Kubernetes
Overview of the Microsoft Azure serverless platform
Workflow Orchestration with Adobe I/O
Automate all things! Microsoft Azure continuous deployment
Modern Front-End Web Development with Visual Studio
Agile Planning with Visual Studio Team Services (VSTS)
9/20/ :55 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
9/22/2018 3:49 AM BRK2247 Learn from MVPs: Panel discussion on all things SharePoint and OneDrive © Microsoft Corporation. All rights reserved. MICROSOFT.
Microsoft Build /8/2018 5:15 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Confidence at speed: Visual Studio 2017 and your CI pipeline
Azure PowerShell Aaron Roney Senior Program Manager Cormac McCarthy
Continuous Delivery for Microsoft Azure
Introduction to Windows Azure Web Sites
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
11/22/2018 1:43 PM THR3005 How to provide business insight from your data using Azure Analysis Services Peter Myers Bitwise Solutions © Microsoft Corporation.
Continuous Delivery with Visual Studio Team Services
Azure Advisor: Optimization in the best way
PowerShell Unplugged Jeffrey Snover Technical Fellow
Mobile Center and VSTS:​ Better together for your Mobile DevOps
Microsoft products for non-profits
Learn. Imagine. Build. .NET Conf
Microsoft Virtual Academy
Introduction to ASP.NET Core 1.0
12/26/2018 1:44 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
From Source to Production: The Latest in Container Dev
1/2/2019 5:18 PM THR3016 Customer stories: Plan and orchestrate large resource deployments on Azure infrastructure Igal Figlin Principal PM Manager – Azure.
Overview: Dynamics 365 for Project Service Automation
Virtual Reality with Azure and Unity
Understand your Azure cloud assets dependencies with BMC Discovery
Breaking Down the Value of A Yammer Post: 20 Things to Do
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.
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
Microsoft Virtual Academy
Containers on Azure Peter Lasne Sr. Software Development Engineer
Presentation transcript:

Developing for the cloud with Visual Studio 11/28/2018 8:59 AM BRK3191 Developing for the cloud with Visual Studio Andrew Hall Principal Program Manager @AndrewBrianHall © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Agenda Considerations and Design Patterns Azure App Service 11/28/2018 8:59 AM Agenda Considerations and Design Patterns Azure App Service Diagnostics Continuous Integration and Delivery (CI/CD) Severless Computing Containers © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

.NET Application Architecture Available at dot.net/architecture Prescriptive guidance for building Microservices, Web, Mobile and Windows applications. eBooks accompanied by sample applications https://github.com/dotnet-architecture/

Why develop for the cloud? Agility Better deployment stack DevOps practices using continuous delivery Growth Enablement Lead Time for Expansion Scalability Insights and Analytics Total cost Infrastructure Cost Ongoing Maintenance

Traditional App Design Most functionality contained within a few processes made of libraries and separated by layers Scales by cloning the entire app on new servers or VMs

Microservices Segregate functionality into separate smaller services with well defined communication protocols (e.g. http, message buses, etc.) Scale by deploying each service independently with multiple instances Improve speed of iteration: Changes only affect small areas of the application Enables testing in isolation

Micro Service Design Separates functionality into separate services Fine grained density of services Each service is deployed and scaled independently

Secret Management Application Secret: Data required by your application to access secured resources (e.g. database connection strings, API keys, etc.) Frequently are different with different access levels across application deployment tiers (Dev, Test, Staging, Production) Should not be stored in source code

Demo #1 Microservices Key Vault Azure B2C 11/28/2018 8:59 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Azure Diagnostics See overall service health and which layers are failing Automatic correlation of logs & exceptions across http calls Snapshot Debugger Code-level analysis of performance in production

Demo #2 Azure App Service Diagnostics CI/CD 11/28/2018 8:59 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Serverless Computing Event Driven e.g. when an item is pushed into storage Scales Indefinitely Pay only for resources used during execution

Demo #3 Azure Functions Cosmos DB 11/28/2018 8:59 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Containers Package the application and all dependencies at build time Build Process Dependencies Runtime Containers are immutable (cannot be changed) after build

Virtual Machines Docker Containers compared to Hypervisor + Network isolation at container level + Resources constraints at container level App 1 App 2 App 3 Bins/Libs Bins/Libs Bins/Libs Guest OS Guest OS Guest OS App/Svc 1 App/Svc 2 App/Svc 3 Bins/Libs Bins/Libs Bins/Libs Hypervisor Container Engine Host Operating System Operating System Infrastructure Infrastructure

Azure Container Registry, VM for Test Environment Deploying to Azure through a Container Registry Container Registry Azure Container Registry, Docker Hub, or private Microsoft Azure VM for Test Environment Windows Server 2016 or later Docker Engine Docker engine and Docker CLI Local Docker Image Repository Docker-compose up Azure Service PC Dev Environment Windows 10 or later Docker for Windows ASP.NET (.NET Framework) on Windows Server Core Container docker push docker pull Local Docker Image Repository docker-compose build or docker build

Docker and .NET .NET Framework images Windows Server Core TechReady 23 11/28/2018 8:59 AM Docker and .NET .NET Framework images Windows Server Core .NET Core Docker images Linux & Windows Nano Server See at Docker Hub © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Container Orchestrators Coordinate how multiple containers work together Define Deployment Availability Scaling Networking

Demo #4 Docker Containers in Visual Studio 11/28/2018 8:59 AM Demo #4 Docker Containers in Visual Studio Publish to Container Registry from Visual Studio © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Choosing Orchestrators in Azure TechReady 23 11/28/2018 8:59 AM Choosing Orchestrators in Azure Azure Product Orchestrator Description Good for Common workloads Azure Service Fabric is a distributed systems platform that makes it easy to package, deploy, and manage scalable and reliable microservices Stateful svc & Actors Microservices based on plain processes Microservices based on containers Docker Swarm is a clustering and scheduling tool for Docker containers. With Swarm, IT administrators and developers can establish and manage a cluster of Docker nodes as a single virtual system Kubernetes is an open-source platform for automating deployment, scaling, and operations of application containers across clusters of hosts As a datacenter operating system, DC/OS is itself a distributed system, a cluster manager and a container platform Microservices based on containers (Including other Linux containers, not just Docker) Azure Service Fabric Production-ready & Microsoft ecosystem Service Fabric More mature: Less mature: Azure Container Service Easy to get started Dev/Test and Production Docker Swarm More mature: Less mature: Production-ready & Windows/Linux ecosystem Kubernetes More mature: Less mature: Production-ready & Linux ecosystem Mesosphere DC/OS More mature: Less mature: © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Choosing Orchestrators in Azure TechReady 23 11/28/2018 8:59 AM Choosing Orchestrators in Azure Azure Product Orchestrator Description Good for Common workloads Azure Service Fabric is a distributed systems platform that makes it easy to package, deploy, and manage scalable and reliable microservices Stateful svc & Actors Microservices based on plain processes Microservices based on containers Docker Swarm is a clustering and scheduling tool for Docker containers. With Swarm, IT administrators and developers can establish and manage a cluster of Docker nodes as a single virtual system Kubernetes is an open-source platform for automating deployment, scaling, and operations of application containers across clusters of hosts As a datacenter operating system, DC/OS is itself a distributed system, a cluster manager and a container platform Microservices based on containers (Including other Linux containers, not just Docker) Azure Service Fabric Production-ready & Microsoft ecosystem Service Fabric More mature: Less mature: Azure Container Service Easy to get started Dev/Test and Production Docker Swarm More mature: Less mature: Production-ready & Windows/Linux ecosystem Kubernetes More mature: Less mature: Production-ready & Linux ecosystem Mesosphere DC/OS More mature: Less mature: © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Questions?

Related Sessions BRK3189-Modernizing existing .NET applications with Windows Containers and Azure cloud BRK3187-Snapshot debugging and Microsoft Azure diagnostics in action BRK3317-Implement microservices patterns with .NET Core and Docker containers BRK3278-DevOps for any language

Resources Blog: aka.ms/webdevblog Architecture Guidance: dot.net/architecture .NET Docker Images: hub.docker.com/r/microsoft/dotnet Docker for Windows: docs.docker.com/docker-for-windows

Please evaluate this session Tech Ready 15 11/28/2018 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.

11/28/2018 8:59 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.