Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers

所需积分/C币:9 2017-12-15 13:30:17 5.12MB PDF
4
收藏 收藏
举报

Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers
Contents Introduction.mmmmsmemmmememooommmmmmmmm. 1 About this guide Path to the cloud for existing .NET applications Key technologies and architectures by maturity level Lift and shift scenarios What this guide does not cover Who should use this guide How to use this quide 10 Sample apps for modernizing legacy apps: e Shop Modernizing 10 Send us your feedback Lift and shift existing NET apps to Azure laas( Cloud Infrastructure-Ready)one-e. 12 Why migrate existing. NET web applications to Azure laaS 13 When to migrate to laas instead of to Paas 13 Use Azure migrate to analyze and migrate your existing applications to Azure 14 Use Azure Site Recovery to migrate your existing VMs to Azure VMs…………… 15 Migrate your relational databases to Azure 16 When to migrate to Azure SQL Database Managed Instance 17 When to migrate to Azure SQL Database 18 When to move your original RDBMS to a VM(laaS 18 When to migrate to SQL Server as a VM(laaS 19 Use Azure database Migration Service to migrate your relational databases to Azure 19 Lift and shift existing NET apps to Cloud DevOps-Ready applications...........20 Reasons to lift and shift existing NET apps to Cloud Devops-Ready applications Cloud DevOps-Ready application principles and tenets 21 Benefits of a Cloud DevOps-Ready application 22 Microsoft technologies in Cloud DevOps-Ready applications 23 Monolithic applications can be Cloud DevOps-Ready 24 What about Cloud-Optimized applications? 着非着 25 Contents Cloud-native applications with Cloud-Optimized applications 26 What about microservices? 27 When to use Azure App Service for modernizing existing. NET apps 28 How to deploy existing NET apps to Azure App Service 30 Validate sites and migrate to App Service with Azure App Service Migration Assistant..... 30 Deploy existing NET apps as Windows containers What are containers?(Linux or Windows 22 Benefits of containers(Docker Engine on Linux or Windows) 32 What is Docker? 33 Benefits of Windows Containers for your existing. NET applications 34 Choose an os to target with NET-based containers 34 Windows container types 36 When not to deploy to windows Containers 37 When to deploy Windows Containers in your on-premises laaS VM infrastructure 37 When to deploy Windows Containers to Azure VMs(laas cloud) 38 When to deploy windows Containers to Service Fabric……… 着非自着指非 38 When to deploy Windows Containers to Azure Container Service(i.e, Kubernetes) 39 Build resilient services ready for the cloud: Embrace transient failures in the cloud 40 Handling partial failure 40 Modernize your apps with monitoring and telemetry 42 Monitor your application with Application Insigh 42 Monitor your Docker infrastructure with Log Analytics and its Container Monitoring solution ...43 Modernize your app's lifecycle with Cl/CD pipelines and DevOps tools in the cloud...45 Migrate to hybrid cloud scenarios 46 Azure stack 46 Walkthroughs and technical get-started overview Technical walkthrough list 48 Walkthrough 1: Tour of e Shop legacy apps 49 Technical walkthrough availability 49 Overview 49 Goals 49 Scenario 49 Benefits 50 Next steps 50 Walkthrough 2: Containerize your existing. NET applications with Windows Containers Contents Technical walkthrough availability Overview 5 Goals Scenario 51 Benefits 52 Next steps 52 Walkthrough 3: Deploy your Windows Containers-based app to Azure VMs 53 Technical walkthrough availability 53 Overview 53 Goa 53 Scenarios 53 Azure Vms for windows containers 55 Benefits 55 Next steps… 55 Walkthrough 4: Deploy your Windows Containers-based apps to Kubernetes in Azure container Service Technical walkthrough availability .56 Overview 56 Goals Scenarios 56 Benefits 57 Next steps Walkthrough 5: Deploy your Windows Containers-based apps to Azure Service Fabric 58 Technical walkthrough availability .58 Overview 58 Goals 58 Scenarios 58 Benefits 59 Next steps 60 Conclusions b垂。B。。垂。。。。。。看d。。垂。。香非垂 61 Key takeaways Contents CHAPTER ntroduction When you decide to modernize your web applications and move them to the cloud, you don't necessarily have to fully re-architect your apps. Re-architecting an application by using an advanced approach like microservices isnt always an option, because of cost and time restraints. Depending on the type of application, re-architecting an app also might not be necessary. To optimize the cost effectiveness of your organization's cloud migration strategy, it's important to consider the needs of your business and requirements of your apps. You'll need to determine Which apps require a transformation or re-architecting Which apps need to be only partially modernized Which apps you can "lift and shift"directly to the cloud About this quide This guide focuses primarily on lift and shift"scenarios, and initial modernization of existing Microsoft. NET Framework web or service-oriented applications. Lift and shift is the action of moving a workload to a newer or more modern environment without altering the application's code and basic architecture This guide describes how to move your existing. NET Framework server-applications directly to the cloud by modernizing specific areas, without re-architecting or recoding entire applications This guide also highlights the benefits of moving your apps to the cloud and partially modernizing apps by using a specific set of new technologies and approaches, like Windows Containers and orchestrators in azure Path to the cloud for existing. net applications Organizations typically choose to move to the cloud for the agility and speed they can get for their applications. You can set up thousands of servers (VMs)in the cloud in minutes, compared to the weeks it typically takes to set up on-premises servers There isn't a single, one-size-fits-all strategy for migrating applications to the cloud. The right migration strategy for you will depend on your organizations needs and priorities, and the kind of applications you are migrating. Not all applications warrant the investment of moving to a platform as a service( PaaS)model or developing a cloud-native application model. In many cases, you can take a phased or incremental approach to invest in moving your assets to the cloud, based on your business needs For modern applications with the best long-term agility and value for the organization, you might benefit from investing in cloud-optimized and cloud-native application architectures. However, for CHAPTER 1 Introduction applications that are existing or legacy assets, the key is to spend minimal time and money(no re architecting or code changes)while moving them to the cloud, to realize significant benefits Figure 1-1 shows the possible paths you can take when you move existing. NET applications to the cloud in incremental phases Existing NET application modernization approaches Cloud Cloud- Infrastructure. Optimized Read Existing apps services ET Framework Cloud on-premises Devops- Ready Lift and shift approaches Architected for the cloud · No code changes Modernize/refactor/rewrite Figure 1-1. Modernization paths for existing. NET applications and services Each migration approach has different benefits and reasons for using it. You can choose a single approach when you migrate apps to the cloud, or choose certain components from multiple approaches. Individual applications aren't limited to a single approach or maturity state. For instance, a common hybrid approach would have certain on-premises components plus other components in the cloud At the first two migration levels, you can just lift and shift your applications Level 1: Cloud Infrastructure-Ready: In this migration approach, you simply rehost or move your current on-premises applications to an infrastructure as a service (laaS)platform. Your apps have almost the same composition as before, but now you deploy them to vMs in the cloud Level 2: Cloud DevOps-Ready: At this level, after an initial lift and shift, and still without re architecting or altering code, you can gain even more benefits from running your app in the cloud. You improve the agility of your applications to ship faster by refining your enterprise development operations(DevOps) processes. You achieve this by using technologies like Windows Containers which is based on docker engine. Containers remove the friction that' s caused by application dependencies when you deploy in CHAPTER 1 Introduction multiple stages. Containers also use additional cloud managed services related to data, monitoring, and continuous integration/continuous deployment( Cl/CD) pipelines The third level of maturity is the ultimate goal in the cloud, but it's optional for many apps and not the main focus of this guide Level 3: Cloud-Optimized: This migration approach typically is driven by business need, and targets modernizing your mission-critical applications. At this level, you use Paas services to move your apps to Paas computing platforms. You implement cloud-native applications and microservices architecture to evolve applications with long-term agility and to scale to new limits. This type of modernization usually requires architecting specifically for the cloud. New code often must be written, especially when you move to cloud-native application and microservice-based models This approach can help you gain benefits that are difficult to achieve in your monolithic and on-premises application environmen Table 1-1 describes the main benefits of and reasons for choosing each migration or modernization approach Cloud Cloud Cloud-Optimized Infrastructure-Read DevOps-Ready Lift and shift Modernize/refactor/rewrite Applications compute target Applications deployed to Containerized monolithic or Containerized microservices VMs in azure N-Tier apps deployed to VMs, or regular applications based Azure Service Fabric, or Azure on PaaS on Azure App Container Service (i.e Service Azure service fabric Kubernetes Azure Container Service (i.e Kubernetes) Data target SQL or any relational Azure SQL Database Azure SQL Database, azure database on a Vm Managed Instance Cosmos DB, or other NoSQL Advantages No re-architecting, no No re-architecting no Architect for the cloud new code new code refactor, new code Least effort for quick Containers offer small needed migration incremental effort over Microservices cloud Least-common native approaches denominator supported. Improved deployment New web apps, in Azure and DevOps agility to monolithic N-Tier Basic availability elease because of cloud-resilient and guarantees containers cloud-optimized CHAPTER 1 Introduction After moving to the Increased density and Fully managed services cloud it's easier to ower deployment costs. Automatic patching modernize even more Portability of apps and Optimized for scale dependencies Optimized for With azure container autonomous agility by Service (or Kubernetes subsystem and Azure Service Fabric,. Built on deployment and provides high availability Devops and orchestration Enhanced DevOps, like Nodes/VM patching in slots and deployment Service Fabric strategies Flexibility of host targets Paas and orchestrator Azure VMs or Vm scale targets: Azure a sets. Azure Container Service azure container Service (or Kubernetes) Service(or Kubernetes Service fabric and future Azure Service Fabric, and container-based choices future container-based Paa Challeng Smaller cloud value Containerizing is an Might require significant other than shift in additional step in the code refactoring or operating expense or learning curve rewriting(increased time losing datacenters and budget) Very little is managed No os or middleware patching; might require immutable infrastructure solutions like terraform, Spinnaker, or Puppet Table i 1. Benefits and challenges of modernization paths for existing. NET applications and services Key technologies and architectures by maturity level NET Framework applications initially started with the. NET Framework version 1.0, which was released in late 2001. Then, companies moved towards newer versions(such as 2.0, 3.5 and. NET 4.x) Most of those applications run on Windows Server and Internet Information Server(lIS), and used a relational database, like SQL Server, Oracle, My SQL or any other RDBMS Most existing. NET applications might nowadays be based on. NET Framework 4.x, or even on NE Framework 3.5 and use web frameworks like asp net mvc asp net web forms asPnet Web apl Windows Communication Foundation(WCF), ASP. NET SignaIR, and ASP. NET Web Pages. These established. NET Framework technologies depend on Windows That dependency is important to consider if you are simply migrating legacy apps, and you want to make minimal changes to your application infrastructure Figure 1-2 shows the primary technologies and architecture styles used at each of the three cloud maturity levels 4 CHAPTER 1 Introduction Existing. NET application modernization: Maturity models Existing app Cloud Cloud Cloud-Optimized NET web apps (or-prerises) Infrastructure-Ready Devops-Read Fu‖PaaS Mono lithic architecturc Monolithic architerture Microservices and monolith ic architectures NET N 日 SQL Databas 民 laaS PaaS and serverless computing Managed services Managed services On-cremises Azure Azure Azure LIFT and SHIFT: No re-architect, no code changes Architect for the cloud (might need new code Figure 1-2. Primary technologies for each maturity level for modernizing existing. NET web applications Figure 1-2 highlights the most common scenarios, but many hybrid and mixed variations are possible when it comes to architecture. For example, the maturity models apply not only to monolithic architectures in existing web apps, but also to service orientation, N-Tier, and other architecture style variations Each maturity level in the modernization process is associated with the following key technologies and approaches Cloud Infrastructure-Ready(rehost or basic lift and shift): As a first step, many organizations want only to quickly execute a cloud-migration strategy In this case, applications are simply rehosted. Most rehosting can be automated by using Azure Migrate, a service that provides the guidance, insights, and mechanisms needed to assist you in migrating to Azure based on cloud tools like Azure Site Recovery and Azure Database Migration Service. You can also set up rehosting manually, so that you can learn infrastructure details about your assets when you move legacy apps to the cloud. For example, you can move your applications to VMs in Azure with very little modification--probably with only minor configuration changes. The networking in this case is similar to an on-premises environment, especially if you create virtual networks in azure Cloud DevOps-Ready(improved lift and shift): This model is about making a few important deployment optimizations to gain some significant benefits from the cloud, without changing the core architecture of the application. The fundamental step here is to add Windows Containers support to your existing. NET Framework applications. This important step (containerization) doesn't require touching the code, so the overall lift and shift effort is very light. You can use tools like Image2 Docker or visual studio, with its tools for Docker. Visual Studio automatically chooses smart defaults for ASP. NET applications and windows Containers images. These tools offer both a rapid inner loop, and a fast path to get the containers to Azure. Your agility is improved when you deploy to multiple environments Then, moving to production, you can deploy your Windows Containers to orchestrators like CHAPTER 1 Introduction

...展开详情
试读 66P Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers
立即下载 低至0.43元/次 身份认证VIP会员低至7折
一个资源只可评论一次,评论内容不能少于5个字
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
上传资源赚钱or赚积分
最新推荐
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers 9积分/C币 立即下载
1/66
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第1页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第2页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第3页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第4页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第5页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第6页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第7页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第8页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第9页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第10页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第11页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第12页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第13页
Modernize-Existing-.NET-applications-with-Azure-cloud-and-Windows-Containers第14页

试读结束, 可继续读6页

9积分/C币 立即下载