Správa dostupnosti virtuálních počítačů s Windows v AzureManage the availability of Windows virtual machines in Azure

Naučte se, jak nastavit a spravovat víc virtuálních počítačů, abyste zajistili vysokou dostupnost vaší aplikace pro Windows v Azure.Learn ways to set up and manage multiple virtual machines to ensure high availability for your Windows application in Azure. Můžete také spravovat dostupnost virtuálních počítačů se systémem Linux.You can also manage the availability of Linux virtual machines.

Pokyny k vytváření a používání skupin dostupnosti při použití modelu nasazení Classic najdete v tématu Konfigurace skupiny dostupnosti.For instructions on creating and using availability sets when using the classic deployment model, see How to Configure an Availability Set.

Vysvětlení restartování virtuálních počítačů – údržba vs. výpadekUnderstand VM Reboots - maintenance vs. downtime

Existují tři scénáře, které mohou vést k ovlivnění virtuálního počítače v Azure: neplánovaná údržba hardwaru, neočekávané výpadky a plánovaná údržba.There are three scenarios that can lead to virtual machine in Azure being impacted: unplanned hardware maintenance, unexpected downtime, and planned maintenance.

  • K neplánovaným událostem údržby hardwaru dochází v případě, kdy platforma Azure předpoví, že dojde k selhání hardwaru nebo jakékoli komponenty platformy přidružené k fyzickému počítači.Unplanned Hardware Maintenance Event occurs when the Azure platform predicts that the hardware or any platform component associated to a physical machine, is about to fail. Když platforma předpoví selhání, vydá událost neplánované údržby hardwaru, aby se snížil dopad na virtuální počítače hostované na tomto hardwaru.When the platform predicts a failure, it will issue an unplanned hardware maintenance event to reduce the impact to the virtual machines hosted on that hardware. Azure používá technologii migrace za provozu k migraci Virtual Machines z neúspěšného hardwaru na dobrý fyzický počítač.Azure uses Live Migration technology to migrate the Virtual Machines from the failing hardware to a healthy physical machine. Migrace za provozu je operace zachovávající virtuální počítač, který pozastaví jenom na krátkou dobu.Live Migration is a VM preserving operation that only pauses the Virtual Machine for a short time. Paměť, otevřené soubory a síťová připojení se zachovají, ale výkon se může před událostí a/nebo po ní snížit.Memory, open files, and network connections are maintained, but performance might be reduced before and/or after the event. V případech, kdy není možné použít Migraci za provozu, dojde k neočekávanému výpadku virtuálního počítače, jak je popsáno níže.In cases where Live Migration cannot be used, the VM will experience Unexpected Downtime, as described below.

  • Neočekávaný výpadek je při neočekávaném výpadku hardwaru nebo fyzické infrastruktury virtuálního počítače.An Unexpected Downtime is when the hardware or the physical infrastructure for the virtual machine fails unexpectedly. To může zahrnovat selhání místní sítě, selhání místního disku nebo jiné chyby na úrovni racku.This can include local network failures, local disk failures, or other rack level failures. Po zjištění platformy Azure automaticky migruje (zaznamená) váš virtuální počítač do správného fyzického počítače ve stejném datovém centru.When detected, the Azure platform automatically migrates (heals) your virtual machine to a healthy physical machine in the same datacenter. Během opravné procedury jsou virtuální počítače odstavené (restartují se) a v některých případech dojde ke ztrátě dočasné jednotky.During the healing procedure, virtual machines experience downtime (reboot) and in some cases loss of the temporary drive. Připojené disky s operačním systémem a datové disky se vždy zachovají.The attached OS and data disks are always preserved.

    Virtuální počítače můžou také zacházet s výpadky v nepravděpodobném případě výpadku nebo havárie, které mají vliv na celé datové centrum nebo dokonce na celé oblasti.Virtual machines can also experience downtime in the unlikely event of an outage or disaster that affects an entire datacenter, or even an entire region. V těchto scénářích poskytuje Azure možnosti ochrany včetně zón dostupnosti a spárovaných oblastí.For these scenarios, Azure provides protection options including availability zones and paired regions.

  • Plánované události údržby jsou pravidelné aktualizace základní platformy Azure prováděné Microsoftem za účelem zlepšení celkové spolehlivosti, výkonu a zabezpečení infrastruktury platformy, na které běží vaše virtuální počítače.Planned Maintenance events are periodic updates made by Microsoft to the underlying Azure platform to improve overall reliability, performance, and security of the platform infrastructure that your virtual machines run on. U většiny těchto aktualizací nemá jejich provedení žádný vliv na vaše služby Virtual Machines ani Cloud Services (viz Údržba se zachováním virtuálních počítačů).Most of these updates are performed without any impact upon your Virtual Machines or Cloud Services (see VM Preserving Maintenance). Přestože se platforma Azure pokouší použít údržbu se zachováním virtuálních počítačů kdykoli je to možné, existují výjimečné případy, kdy tyto aktualizace k aplikaci požadovaných aktualizací na základní infrastrukturu vyžadují restartování virtuálního počítače.While the Azure platform attempts to use VM Preserving Maintenance in all possible occasions, there are rare instances when these updates require a reboot of your virtual machine to apply the required updates to the underlying infrastructure. V takovém případě můžete provést plánovanou údržbu Azure pomocí operace údržba-opětovné nasazení, která zahájí údržbu virtuálních počítačů ve vhodném časovém intervalu.In this case, you can perform Azure Planned Maintenance with Maintenance-Redeploy operation by initiating the maintenance for their VMs in the suitable time window. Další informace najdete v tématu Plánovaná údržba pro virtuální počítače.For more information, see Planned Maintenance for Virtual Machines.

Pokud chcete snížit dopad výpadků kvůli jedné nebo několika takovým událostem, doporučujeme pro vaše virtuální počítače následující osvědčené postupy z hlediska vysoké dostupnosti:To reduce the impact of downtime due to one or more of these events, we recommend the following high availability best practices for your virtual machines:

Použití zón dostupnosti k ochraně před chybami na úrovni datacentraUse availability zones to protect from datacenter level failures

Zóny dostupnosti rozšiřují úroveň řízení, kterou máte k dispozici, abyste zachovali dostupnost aplikací a dat na vašich virtuálních počítačích.Availability zones expand the level of control you have to maintain the availability of the applications and data on your VMs. Zóny dostupnosti jsou jedinečná fyzická umístění uvnitř oblasti Azure.Availability Zones are unique physical locations within an Azure region. Každou zónu tvoří jedno nebo několik datacenter vybavených nezávislým napájením, chlazením a sítí.Each zone is made up of one or more datacenters equipped with independent power, cooling, and networking. Aby se zajistila odolnost, existuje minimálně tři samostatné zóny ve všech povolených oblastech.To ensure resiliency, there are a minimum of three separate zones in all enabled regions. Fyzické oddělení Zóny dostupnosti v rámci oblasti chrání aplikace a data před selháními datových center.The physical separation of Availability Zones within a region protects applications and data from datacenter failures. Redundantní služby v zóně replikují aplikace a data napříč Zóny dostupnosti, aby se chránily před jednotlivými chybami.Zone-redundant services replicate your applications and data across Availability Zones to protect from single-points-of-failure.

Zóna dostupnosti v oblasti Azure je kombinací domény selhání a aktualizační domény.An Availability Zone in an Azure region is a combination of a fault domain and an update domain. Pokud například vytvoříte tři nebo více virtuálních počítačů ve třech zónách v oblasti Azure, budou vaše virtuální počítače efektivně distribuovány mezi tři domény selhání a tři aktualizační domény.For example, if you create three or more VMs across three zones in an Azure region, your VMs are effectively distributed across three fault domains and three update domains. Platforma Azure tuto distribuci rozpoznává mezi aktualizačními doménami, aby se zajistilo, že se virtuální počítače v různých zónách neaktualizují současně.The Azure platform recognizes this distribution across update domains to make sure that VMs in different zones are not updated at the same time.

Díky Zóny dostupnosti Azure nabízí nejlepší smlouvu SLA 99,99% provozu virtuálního počítače.With Availability Zones, Azure offers industry best 99.99% VM uptime SLA. Díky navrhování vašich řešení pro použití replikovaných virtuálních počítačů v zónách můžete chránit aplikace a data před ztrátou datacentra.By architecting your solutions to use replicated VMs in zones, you can protect your applications and data from the loss of a datacenter. Pokud dojde k ohrožení jedné zóny, replikované aplikace a data jsou okamžitě k dispozici v jiné zóně.If one zone is compromised, then replicated apps and data are instantly available in another zone.

Zóny dostupnosti

Přečtěte si další informace o nasazení virtuálního počítače se systémem Windows nebo Linux v zóně dostupnosti.Learn more about deploying a Windows or Linux VM in an Availability Zone.

Konfigurace více virtuálních počítačů ve skupině dostupnosti pro zajištění redundanceConfigure multiple virtual machines in an availability set for redundancy

Skupiny dostupnosti jsou další konfigurace datového centra, která poskytuje redundanci a dostupnost virtuálních počítačů.Availability sets are another datacenter configuration to provide VM redundancy and availability. Tato konfigurace v rámci datového centra zajišťuje, že během plánované nebo neplánované události údržby je k dispozici aspoň jeden virtuální počítač a splňuje 99,95% Azure SLA.This configuration within a datacenter ensures that during either a planned or unplanned maintenance event, at least one virtual machine is available and meets the 99.95% Azure SLA. Další informace najdete v tématu SLA pro virtuální počítače.For more information, see the SLA for Virtual Machines.

Důležité

Virtuální počítač s jednou instancí v samotné skupině dostupnosti by měl použít SSD úrovně Premium nebo Ultra disk pro všechny disky a datové disky operačního systému, aby bylo možné získat oprávnění SLA pro připojení k virtuálnímu počítači aspoň 99,9%.A single instance virtual machine in an availability set by itself should use Premium SSD or Ultra Disk for all operating system disks and data disks in order to qualify for the SLA for Virtual Machine connectivity of at least 99.9%.

Základní platforma Azure každému virtuálnímu počítači ve skupině dostupnosti přiřadí aktualizační doménu a doménu selhání.Each virtual machine in your availability set is assigned an update domain and a fault domain by the underlying Azure platform. Dané skupině dostupnosti se ve výchozím nastavení přiřadí pět aktualizačních domén (u nasazení podle modelu Resource Manager je pak možné počet aktualizačních domén navýšit až na 20), které uživatel nemůže konfigurovat a které představují skupiny virtuálních počítačů a základního fyzického hardwaru, které lze restartovat současně.For a given availability set, five non-user-configurable update domains are assigned by default (Resource Manager deployments can then be increased to provide up to 20 update domains) to indicate groups of virtual machines and underlying physical hardware that can be rebooted at the same time. Pokud je v rámci jedné skupiny dostupnosti nakonfigurováno více než 5 virtuálních počítačů, šestý virtuální počítač se umístí do stejné aktualizační domény jako první virtuální počítač, sedmý se umístí do stejné aktualizační domény jako druhý atd.When more than five virtual machines are configured within a single availability set, the sixth virtual machine is placed into the same update domain as the first virtual machine, the seventh in the same update domain as the second virtual machine, and so on. Restartování aktualizačních domén během plánované údržby nemusí probíhat sekvenčně, ale vždycky se restartuje jenom jedna aktualizační doména.The order of update domains being rebooted may not proceed sequentially during planned maintenance, but only one update domain is rebooted at a time. Restartovaná aktualizační doména má 30 minut na zotavení, než se zahájí údržba na jiné aktualizační doméně.A rebooted update domain is given 30 minutes to recover before maintenance is initiated on a different update domain.

Domény selhání definují skupinu virtuálních počítačů, které sdílejí společný zdroj napájení a síťový přepínač.Fault domains define the group of virtual machines that share a common power source and network switch. Ve výchozím nastavení jsou virtuální počítače konfigurované v rámci skupiny dostupnosti rozdělené až do tří domén selhání pro nasazení podle modelu Resource Manager (do dvou domén selhání pro model nasazení Classic).By default, the virtual machines configured within your availability set are separated across up to three fault domains for Resource Manager deployments (two fault domains for Classic). Přestože umístění virtuálních počítačů do skupiny dostupnosti neochrání vaši aplikaci před selháním operačního systému nebo selháním spojeným s konkrétní aplikací, omezí se tím dopad potenciálních selhání fyzického hardwaru, výpadků sítě nebo přerušení napájení.While placing your virtual machines into an availability set does not protect your application from operating system or application-specific failures, it does limit the impact of potential physical hardware failures, network outages, or power interruptions.

koncepční vykreslování konfigurace domény aktualizace a domény selháníConceptual drawing of the update domain and fault domain configuration

Použití spravovaných disků pro virtuální počítače ve skupině dostupnostiUse managed disks for VMs in an availability set

Pokud aktuálně používáte virtuální počítače s nespravovanými disky, důrazně doporučujeme převést virtuální počítače ve skupině dostupnosti na používání spravovaných disků.If you are currently using VMs with unmanaged disks, we highly recommend you convert VMs in Availability Set to use Managed Disks.

Spravované disky poskytují vyšší spolehlivost skupiny dostupnosti tím, že zajišťují dostatečné oddělení jednotlivých disků virtuálních počítačů ve skupině dostupnosti, aby se zabránilo jedinému bodu selhání.Managed disks provide better reliability for Availability Sets by ensuring that the disks of VMs in an Availability Set are sufficiently isolated from each other to avoid single points of failure. Provede to tím, že automaticky umístí disky do různých domén selhání úložiště (clustery úložiště) a zarovnají je s doménou selhání virtuálního počítače.It does this by automatically placing the disks in different storage fault domains (storage clusters) and aligning them with the VM fault domain. Pokud doména selhání úložiště selže kvůli selhání hardwaru nebo softwaru, dojde k chybě jenom instance virtuálního počítače s disky v doméně selhání úložiště.If a storage fault domain fails due to hardware or software failure, only the VM instance with disks on the storage fault domain fails. Managed disks doménami selháníManaged disks FDs

Důležité

Počet domén selhání pro spravované skupiny dostupnosti se liší podle oblasti – buď dvě, nebo tři na oblast.The number of fault domains for managed availability sets varies by region - either two or three per region. Doménu selhání pro každou oblast si můžete zobrazit spuštěním následujících skriptů.You can see the fault domain for each region by running the following scripts.

Get-AzComputeResourceSku | where{$_.ResourceType -eq 'availabilitySets' -and $_.Name -eq 'Aligned'}
az vm list-skus --resource-type availabilitySets --query '[?name==`Aligned`].{Location:locationInfo[0].location, MaximumFaultDomainCount:capabilities[0].value}' -o Table

Poznámka

Za určitých okolností by dva virtuální počítače ve stejné AvailabilitySet mohly sdílet stejný FaultDomain.Under certain circumstances, 2 VMs in the same AvailabilitySet could shared the same FaultDomain. Můžete to ověřit tak, že do své skupiny dostupnosti zavedete a zkontrolujete sloupec Doména selhání .This can be confirmed by going into your availability set and checking the Fault Domain column. To může být způsobeno při nasazení virtuálních počítačů z následujícího pořadí:This can be cause from the following sequence while deploying the VMs:

  • Nasazení prvního virtuálního počítačeDeploy the 1st VM
  • Zastavení nebo zrušení přidělení prvního virtuálního počítačeStop/Deallocate the 1st VM
  • Za těchto okolností nasaďte druhý virtuální počítač. disk s operačním systémem druhého virtuálního počítače se dá vytvořit ve stejné doméně selhání jako první virtuální počítač, takže druhý virtuální počítač se také bude nakládat na stejný FaultDomain.Deploy the 2nd VM Under these circumstances, the OS Disk of the 2nd VM might be created on the same Fault Domain as the 1st VM, and so the 2nd VM will also land on the same FaultDomain. Chcete-li se tomuto problému vyhnout, doporučujeme zastavit nebo zrušit přidělení virtuálních počítačů mezi nasazeními.To avoid this issue, it's recommended to not stop/deallocate the VMs between deployments.

Pokud máte v úmyslu používat virtuální počítače s nespravovanými disky, postupujte podle osvědčených postupů pro účty úložiště, kde jsou virtuální pevné disky (VHD) virtuálních počítačů uložené jako objekty blob stránky.If you plan to use VMs with unmanaged disks, follow below best practices for Storage accounts where virtual hard disks (VHDs) of VMs are stored as page blobs.

  1. Uchovávejte všechny disky (s operačním systémem i s daty) přidružené k virtuálnímu počítači ve stejném účtu úložiště.Keep all disks (OS and data) associated with a VM in the same storage account
  2. Před přidáním dalších virtuálních pevných disků do účtu úložiště Zkontrolujte omezení počtu nespravovaných disků v Azure Storageovém účtu .Review the limits on the number of unmanaged disks in an Azure Storage account before adding more VHDs to a storage account
  3. Pro každý virtuální počítač ve skupině dostupnosti použijte samostatný účet úložiště.Use a separate storage account for each VM in an Availability Set. Nesdílejte účty služby Storage mezi více virtuálními počítači ve stejné skupině dostupnosti.Do not share Storage accounts with multiple VMs in the same Availability Set. Je přijatelné pro virtuální počítače v různých skupinách dostupnosti ke sdílení účtů úložiště, pokud se výše osvědčené postupy následují nespravovanými disky doménami selháníIt is acceptable for VMs across different Availability Sets to share storage accounts if above best practices are followed Unmanaged disks FDs

Použití naplánovaných událostí k proaktivní reakci na události s vlivem na virtuální počítačeUse scheduled events to proactively respond to VM impacting events

Když se přihlásíte k odběru plánovaných událostí, váš virtuální počítač se upozorní na nadcházející události údržby, které můžou mít vliv na váš virtuální počítač.When you subscribe to scheduled events, your VM is notified about upcoming maintenance events that can impact your VM. Po povolení naplánovaných událostí se vašemu virtuálnímu počítači přidává minimální doba před provedením aktivity údržby.When scheduled events are enabled, your virtual machine is given a minimum amount of time before the maintenance activity is performed. Například aktualizace operačního systému hostitele, které by mohly mít vliv na váš virtuální počítač, se zařadí do fronty jako události, které určují dopad, a také čas, kdy se údržba provede, když se neprovede žádná akce.For example, Host OS updates that might impact your VM are queued up as events that specify the impact, as well as a time at which the maintenance will be performed if no action is taken. Pokud Azure zjistí bezprostřední selhání hardwaru, které by mohlo mít vliv na váš virtuální počítač, můžete také zařadit do fronty plánované události. to vám umožní určit, kdy se má opravit.Schedule events are also queued up when Azure detects imminent hardware failure that might impact your VM, which allows you to decide when the healing should be performed. Zákazníci mohou tuto událost použít k provádění úkolů před údržbou, jako je například ukládání stavu, selhání při selhání do sekundárního a tak dále.Customers can use the event to perform tasks prior to the maintenance, such as saving state, failing over to the secondary, and so on. Po dokončení logiky pro řádné zpracování události údržby můžete schválit nedokončené plánované události a povolit, aby platforma pokračovala s údržbou.After you complete your logic for gracefully handling the maintenance event, you can approve the outstanding scheduled event to allow the platform to proceed with maintenance.

Konfigurace jednotlivých vrstev aplikace na samostatné zóny dostupnosti nebo skupiny dostupnostiConfigure each application tier into separate availability zones or availability sets

Pokud jsou vaše virtuální počítače téměř totožné a slouží pro vaši aplikaci stejný účel, doporučujeme pro každou vrstvu aplikace nakonfigurovat zónu dostupnosti nebo skupinu dostupnosti.If your virtual machines are all nearly identical and serve the same purpose for your application, we recommend that you configure an availability zone or availability set for each tier of your application. Pokud ve stejné zóně dostupnosti nebo sadě umístíte dvě různé úrovně, můžou se všechny virtuální počítače ve stejné aplikační vrstvě restartovat najednou.If you place two different tiers in the same availability zone or set, all virtual machines in the same application tier can be rebooted at once. Konfigurací aspoň dvou virtuálních počítačů v zóně dostupnosti nebo nastavením pro každou úroveň zajistíte, aby byl k dispozici alespoň jeden virtuální počítač v každé vrstvě.By configuring at least two virtual machines in an availability zone or set for each tier, you guarantee that at least one virtual machine in each tier is available.

Můžete například umístit všechny virtuální počítače na front-end aplikace, na které běží IIS, Apache a Nginx, v jedné zóně dostupnosti nebo sadě.For example, you could put all the virtual machines in the front end of your application running IIS, Apache, and Nginx in a single availability zone or set. Ujistěte se, že se ve stejné zóně dostupnosti nebo sadě nacházejí pouze front-end virtuální počítače.Make sure that only front-end virtual machines are placed in the same availability zone or set. Podobně zajistěte, aby byly pouze virtuální počítače datové vrstvy umístěny do vlastní zóny dostupnosti nebo sady, jako jsou například replikované SQL Server virtuální počítače nebo vaše virtuální počítače MySQL.Similarly, make sure that only data-tier virtual machines are placed in their own availability zone or set, like your replicated SQL Server virtual machines, or your MySQL virtual machines.

aplikační vrstvyApplication tiers

Kombinování nástroje pro vyrovnávání zatížení se zónami nebo sadami dostupnostiCombine a load balancer with availability zones or sets

Zkombinujte Azure Load Balancer se zónou dostupnosti nebo nastavte, aby se získala nejvyšší odolnost aplikace.Combine the Azure Load Balancer with an availability zone or set to get the most application resiliency. Azure Load Balancer rozděluje provoz mezi víc virtuálních počítačů.The Azure Load Balancer distributes traffic between multiple virtual machines. Azure Load Balancer je součástí virtuálních počítačů úrovně Standard.For our Standard tier virtual machines, the Azure Load Balancer is included. Ne všechny úrovně virtuálních počítačů zahrnují nástroj Azure Load Balancer.Not all virtual machine tiers include the Azure Load Balancer. Další informace o vyrovnávání zatížení virtuálních počítačů najdete v článku Vyrovnávání zatížení virtuálních počítačů.For more information about load balancing your virtual machines, see Load Balancing virtual machines.

Pokud nástroj pro vyrovnávání zatížení není nakonfigurovaný k vyrovnávání provozu mezi víc virtuálních počítačů, všechny plánované události údržby ovlivní jediný virtuální počítač obsluhující provoz a způsobí výpadek vrstvy aplikace.If the load balancer is not configured to balance traffic across multiple virtual machines, then any planned maintenance event affects the only traffic-serving virtual machine, causing an outage to your application tier. Umístěním více virtuálních počítačů na stejné vrstvě aplikace do stejné skupiny dostupnosti a pod jeden nástroj pro vyrovnávání zatížení umožníte nepřetržitou obsluhu provozu alespoň jednou instancí.Placing multiple virtual machines of the same tier under the same load balancer and availability set enables traffic to be continuously served by at least one instance.

Kurz o tom, jak vyrovnávat zatížení napříč zónami dostupnosti, najdete v tématu Vyrovnávání zatížení virtuálních počítačů napříč všemi zónami dostupnosti pomocí Azure CLI.For a tutorial on how to load balance across availability zones, see Load balance VMs across all availability zones by using the Azure CLI.

Další krokyNext steps

Další informace o vyrovnávání zatížení virtuálních počítačů najdete v tématu Vyrovnávání zatížení virtuálních počítačů.To learn more about load balancing your virtual machines, see Load Balancing virtual machines.

Zobrazení referenčních architektur pro spouštění N-vrstvých aplikací na SQL Server v IaaSView Reference Architectures for running N-tier applications on SQL Server in IaaS