Vícevrstvá webová aplikace vytvořená pro zajištění vysoké dostupnosti a zotavení po havárii v AzureMultitier web application built for high availability and disaster recovery on Azure

Tento ukázkový scénář se vztahuje na všechny obory, které potřebují nasazovat odolné vícevrstvé aplikace vytvořené pro vysokou dostupnost a zotavení po havárii.This example scenario is applicable to any industry that needs to deploy resilient multitier applications built for high availability and disaster recovery. V tomto scénáři se aplikace skládá ze tří vrstev.In this scenario, the application consists of three layers.

  • Webová vrstva: horní vrstva včetně uživatelského rozhraní.Web tier: The top layer including the user interface. Tato vrstva analyzuje interakce uživatele a předá akce do další vrstvy pro zpracování.This layer parses user interactions and passes the actions to next layer for processing.
  • Obchodní vrstva: zpracuje interakce uživatelů a provede logickou rozhodování o dalších krocích.Business tier: Processes the user interactions and makes logical decisions about the next steps. Tato vrstva spojuje webovou vrstvu a datovou vrstvu.This layer connects the web tier and the data tier.
  • Datová vrstva: ukládá data aplikace.Data tier: Stores the application data. Obvykle se používá databáze, úložiště objektů nebo úložiště souborů.Either a database, object storage, or file storage is typically used.

Běžné scénáře aplikací zahrnují veškerou kritickou aplikaci spuštěnou v systému Windows nebo Linux.Common application scenarios include any mission-critical application running on Windows or Linux. Může to být aplikace, jako je například SAP nebo SharePoint nebo vlastní obchodní aplikace.This can be an off-the-shelf application such as SAP and SharePoint or a custom line-of-business application.

Relevantní případy použitíRelevant use cases

Mezi další relevantní případy použití patří:Other relevant use cases include:

  • Nasazení vysoce odolných aplikací, jako je SAP a SharePointDeploying highly resilient applications such as SAP and SharePoint
  • Návrh provozní kontinuity a plán zotavení po havárii pro obchodní aplikaceDesigning a business continuity and disaster recovery plan for line-of-business applications
  • Konfigurace zotavení po havárii a provádění souvisejících podrobností pro účely dodržování předpisůConfigure disaster recovery and perform related drills for compliance purposes

ArchitekturaArchitecture

Tento scénář ukazuje vícevrstvou aplikaci, která používá ASP.NET a Microsoft SQL Server.This scenario demonstrates a multitier application that uses ASP.NET and Microsoft SQL Server. V oblastech Azure, které podporují zóny dostupnosti, můžete nasadit virtuální počítače ve zdrojové oblasti napříč zónami dostupnosti a replikovat virtuální počítače do cílové oblasti používané pro zotavení po havárii.In Azure regions that support availability zones, you can deploy your virtual machines (VMs) in a source region across availability zones and replicate the VMs to the target region used for disaster recovery. V oblastech Azure, které nepodporují zóny dostupnosti, můžete nasadit virtuální počítače v rámci skupiny dostupnosti a replikovat virtuální počítače do cílové oblasti.In Azure regions that don't support availability zones, you can deploy your VMs within an availability set and replicate the VMs to the target region.

Přehled architektury vysoce odolné webové aplikace

  • Distribuujte virtuální počítače v každé vrstvě ve dvou zónách dostupnosti v oblastech, které podporují zóny.Distribute the VMs in each tier across two availability zones in regions that support zones. V jiných oblastech nasaďte virtuální počítače v každé vrstvě v rámci jedné skupiny dostupnosti.In other regions, deploy the VMs in each tier within one availability set.
  • Databázová vrstva se dá nakonfigurovat tak, aby používala skupiny dostupnosti Always On.The database tier can be configured to use Always On availability groups. S touto konfigurací SQL Server je jedna primární databáze v rámci clusteru nakonfigurovaná s až osmi sekundárními databázemi.With this SQL Server configuration, one primary database within a cluster is configured with up to eight secondary databases. Pokud dojde k potížím s primární databází, cluster převezme služby při selhání na jednu ze sekundárních databází, takže aplikace zůstane dostupná.If an issue occurs with the primary database, the cluster fails over to one of the secondary databases, allowing the application to remain available. Další informace najdete v tématu Přehled skupin dostupnosti Always On pro SQL Server.For more information, see Overview of Always On availability groups for SQL Server.
  • V případě scénářů zotavení po havárii můžete nakonfigurovat asynchronní nativní replikaci SQL Always On do cílové oblasti používané pro zotavení po havárii.For disaster recovery scenarios, you can configure SQL Always On asynchronous native replication to the target region used for disaster recovery. Můžete také nakonfigurovat Azure Site Recovery replikaci do cílové oblasti, pokud je četnost změn dat v rámci podporovaných omezení Azure Site Recovery.You can also configure Azure Site Recovery replication to the target region if the data change rate is within supported limits of Azure Site Recovery.
  • Uživatelé přistupují k webové vrstvě front-end ASP.NET prostřednictvím koncového bodu Traffic Manageru.Users access the front-end ASP.NET web tier via the traffic manager endpoint.
  • Traffic Manager přesměruje provoz na primární koncový bod veřejné IP adresy v primární zdrojové oblasti.The traffic manager redirects traffic to the primary public IP endpoint in the primary source region.
  • Veřejná IP adresa přesměruje volání na jednu z instancí virtuálních počítačů webové vrstvy prostřednictvím veřejného nástroje pro vyrovnávání zatížení.The public IP redirects the call to one of the web tier VM instances through a public load balancer. Všechny instance virtuálních počítačů webové vrstvy jsou v jedné podsíti.All web tier VM instances are in one subnet.
  • Z virtuálního počítače webové vrstvy se každé volání směruje na jednu z instancí virtuálních počítačů v obchodní vrstvě prostřednictvím interního nástroje pro vyrovnávání zatížení pro zpracování.From the web tier VM, each call is routed to one of the VM instances in the business tier through an internal load balancer for processing. Všechny virtuální počítače obchodní vrstvy jsou v samostatné podsíti.All business tier VMs are in a separate subnet.
  • Tato operace se zpracovává v obchodní vrstvě a aplikace ASP.NET se připojuje k Microsoft SQL Server clusteru v back-endové vrstvě prostřednictvím interního nástroje pro vyrovnávání zatížení Azure.The operation is processed in the business tier and the ASP.NET application connects to Microsoft SQL Server cluster in a back-end tier via an Azure internal load balancer. Tyto instance back-endu SQL Server jsou v samostatné podsíti.These back-end SQL Server instances are in a separate subnet.
  • Sekundární koncový bod služby Traffic Manager je nakonfigurovaný jako veřejná IP adresa v cílové oblasti, která se používá pro zotavení po havárii.The traffic manager's secondary endpoint is configured as the public IP in the target region used for disaster recovery.
  • V případě přerušení primárního regionu vyvoláte Azure Site Recovery převzetí služeb při selhání a aplikace bude aktivní v cílové oblasti.In the event of a primary region disruption, you invoke Azure Site Recovery failover and the application becomes active in the target region.
  • Koncový bod služby Traffic Manager automaticky přesměruje provoz klienta do veřejné IP adresy v cílové oblasti.The traffic manager endpoint automatically redirects the client traffic to the public IP in the target region.

KomponentyComponents

  • Skupiny dostupnosti zajišťují, že virtuální počítače, které nasazujete v Azure, jsou distribuované napříč několika izolovanými hardwarovými uzly v clusteru.Availability sets ensure that the VMs you deploy on Azure are distributed across multiple isolated hardware nodes in a cluster. Pokud dojde k selhání hardwaru nebo softwaru v rámci Azure, ovlivní to jenom určitou podmnožinu virtuálních počítačů a celé řešení zůstane dostupné a funkční.If a hardware or software failure occurs within Azure, only a subset of your VMs are affected and your entire solution remains available and operational.
  • Zóny dostupnosti chrání vaše aplikace a data při selhání datacentra.Availability zones protect your applications and data from datacenter failures. Zóny dostupnosti jsou samostatná fyzická umístění v rámci oblasti Azure.Availability zones are separate physical locations within an Azure region. Každá zóna se skládá z jednoho nebo více datových center vybavených nezávislým napájením, chlazením a sítí.Each zone consists of one or more datacenters equipped with independent power, cooling, and networking.
  • Azure Site Recovery umožňuje replikovat virtuální počítače do jiné oblasti Azure za účelem zajištění provozní kontinuity a zotavení po havárii.Azure Site Recovery allows you to replicate VMs to another Azure region for business continuity and disaster recovery needs. Můžete provádět pravidelná cvičení zotavení po havárii, abyste měli jistotu, že splňujete požadavky na dodržování předpisů.You can conduct periodic disaster recovery drills to ensure you meet the compliance needs. Virtuální počítač se bude do vybrané oblasti replikovat se zadaným nastavením, abyste v případě výpadků ve zdrojové oblasti mohli obnovit své aplikace.The VM will be replicated with the specified settings to the selected region so that you can recover your applications in the event of outages in the source region.
  • Azure Traffic Manager je nástroj pro vyrovnávání zatížení založený na DNS, který distribuuje provoz optimálně do služeb napříč globálními oblastmi Azure a zajišťuje vysokou dostupnost a rychlost odezvy.Azure Traffic Manager is a DNS-based traffic load balancer that distributes traffic optimally to services across global Azure regions while providing high availability and responsiveness.
  • Azure Load Balancer distribuuje příchozí provoz podle definovaných pravidel a sond stavu.Azure Load Balancer distributes inbound traffic according to defined rules and health probes. Nástroj pro vyrovnávání zatížení poskytuje nízkou latenci a vysokou propustnost a škáluje až milionů toků pro všechny aplikace TCP a UDP.A load balancer provides low latency and high throughput, scaling up to millions of flows for all TCP and UDP applications. Veřejný Nástroj pro vyrovnávání zatížení se v tomto scénáři používá k distribuci příchozího klientského provozu do webové vrstvy.A public load balancer is used in this scenario to distribute incoming client traffic to the web tier. Interní nástroj pro vyrovnávání zatížení se v tomto scénáři používá k distribuci provozu z obchodní vrstvy do back-endu SQL Server clusteru.An internal load balancer is used in this scenario to distribute traffic from the business tier to the back-end SQL Server cluster.

AlternativyAlternatives

  • Systém Windows může být nahrazen jinými operačními systémy, protože nic v infrastruktuře není závislé na operačním systému.Windows can be replaced by other operating systems because nothing in the infrastructure is dependent on the operating system.
  • SQL Server pro Linux může nahradit úložiště dat back-endu.SQL Server for Linux can replace the back-end data store.
  • Databázi lze nahradit libovolnou dostupnou standardní databázovou aplikací.The database can be replaced by any standard database application available.

Další aspektyOther considerations

ŠkálovatelnostScalability

V závislosti na požadavcích na škálování můžete přidat nebo odebrat virtuální počítače v každé úrovni.You can add or remove VMs in each tier based on your scaling requirements. Vzhledem k tomu, že tento scénář používá nástroje pro vyrovnávání zatížení, můžete do vrstvy přidat další virtuální počítače, aniž by to ovlivnilo dobu provozu aplikací.Because this scenario uses load balancers, you can add more VMs to a tier without affecting application uptime.

Další témata o škálovatelnosti najdete v tématu Kontrolní seznam škálovatelnosti v cetrum architektury Azure.For other scalability topics, see the scalability checklist in the Azure Architecture Center.

ZabezpečeníSecurity

Všechny přenosy virtuální sítě do front-endové aplikační vrstvy jsou chráněny pomocí skupin zabezpečení sítě.All the virtual network traffic into the front-end application tier is protected by network security groups. Pravidla omezují tok provozu tak, aby k back-endové vrstvě databáze měly přístup jenom instance virtuálních počítačů front-end aplikační vrstvy.Rules limit the flow of traffic so that only the front-end application tier VM instances can access the back-end database tier. Žádný odchozí internetový provoz není povolený z vrstvy obchodní vrstvy nebo databáze.No outbound internet traffic is allowed from the business tier or database tier. Chcete-li omezit nároky na útok, nejsou otevřeny žádné přímé porty pro vzdálenou správu.To reduce the attack footprint, no direct remote management ports are open. Další informace najdete v tématu skupiny zabezpečení sítě Azure.For more information, see Azure network security groups.

Obecné pokyny týkající se navrhování bezpečných scénářů najdete v dokumentaci k zabezpečení Azure.For general guidance on designing secure scenarios, see the Azure Security Documentation.

CenyPricing

Při konfiguraci zotavení po havárii pro virtuální počítače Azure pomocí Azure Site Recovery se průběžně účtují následující poplatky.Configuring disaster recovery for Azure VMs using Azure Site Recovery will incur the following charges on an ongoing basis.

  • Azure Site Recovery licenčních nákladů na virtuální počítač.Azure Site Recovery licensing cost per VM.
  • Náklady na výstup sítě pro replikaci změn dat ze zdrojových disků virtuálních počítačů do jiné oblasti Azure.Network egress costs to replicate data changes from the source VM disks to another Azure region. Azure Site Recovery používá vestavěnou kompresi k omezení požadavků na přenos dat přibližně o 50%.Azure Site Recovery uses built-in compression to reduce the data transfer requirements by approximately 50%.
  • Náklady na úložiště na webu pro obnovení.Storage costs on the recovery site. To je obvykle stejné jako úložiště zdrojové oblasti a jakékoli další úložiště potřebné k údržbě bodů obnovení jako snímků pro obnovení.This is typically the same as the source region storage plus any additional storage needed to maintain the recovery points as snapshots for recovery.

Poskytujeme ukázkovou cenovou kalkulačku pro konfiguraci zotavení po havárii pro aplikaci se třemi vrstvami s využitím šesti virtuálních počítačů.We have provided a sample cost calculator for configuring disaster recovery for a three-tier application using six virtual machines. Všechny služby jsou předem nakonfigurované v cenové kalkulačkě.All of the services are pre-configured in the cost calculator. Pokud chcete zjistit, jak by se ceny změnily pro váš konkrétní případ použití, změňte příslušné proměnné a odhadované náklady.To see how the pricing would change for your particular use case, change the appropriate variables to estimate the cost.