Proteggi le macchine virtuali distribuite in Azure Stack Hub-RuggedProtect VMs deployed on Azure Stack Hub - Ruggedized

Usare questo articolo come guida per lo sviluppo di un piano per la protezione di macchine virtuali (VM) distribuite dagli utenti nell'hub Azure Stack.Use this article as a guide to develop a plan for protecting virtual machines (VMs) that your users deploy on Azure Stack Hub.

Per evitare perdite di dati e tempi di inattività non pianificati, implementare una protezione dei dati e un piano di ripristino di emergenza per le applicazioni basate su VM nell'hub Azure Stack.To protect against data loss and unplanned downtime, implement a data protection and disaster recovery plan for VM-based applications on Azure Stack Hub. Il piano di protezione implementato dipende dai requisiti aziendali e dalla progettazione dell'applicazione.The protection plan implemented will depend on business requirements and design of the application. Questo piano deve seguire il Framework stabilito dalla ' strategia completa di continuità aziendale e ripristino di emergenza (BC/Dr) dell'organizzazione.This plan should follow the framework established by your organization's comprehensive business continuity and disaster recovery (BC/DR) strategy. Per una panoramica di alto livello delle considerazioni su BC/DR per Azure Stack Hub, vedere Azure Stack: considerazioni sulla continuità aziendale e il ripristino di emergenza.For a high level overview of the BC/DR considerations for Azure Stack Hub, see Azure Stack: Considerations for business continuity and disaster recovery.

Obiettivi del ripristino dell'applicazioneApplication recovery objectives

Determinare la quantità di tempo di inattività e la perdita di dati che l'organizzazione può tollerare per ogni applicazione.Determine the amount of downtime and data loss your organization can tolerate for each application. Quantificando i tempi di inattività e la perdita di dati, è possibile creare un piano di ripristino che riduca al minimo l'effetto di una situazione di emergenza nell'organizzazione.By quantifying downtime and data loss, you can create a recovery plan that minimizes the impact of a disaster on your organization. Per ogni applicazione, prendere in considerazione quanto segue:For each application, consider:

  • Obiettivo del tempo di ripristino (RTO)Recovery time objective (RTO)
    RTO è il tempo massimo accettabile che un'app può non essere disponibile dopo un evento imprevisto.RTO is the maximum acceptable time that an app can be unavailable after an incident. Ad esempio, un RTO di 90 minuti significa che è necessario essere in grado di ripristinare lo stato di esecuzione dell'app entro 90 minuti dall'inizio di un'emergenza.For example, an RTO of 90 minutes means that you must be able to restore the app to a running state within 90 minutes from the start of a disaster. Se si dispone di un RTO basso, è possibile mantenere una seconda distribuzione continuamente in standby per proteggersi da un'interruzione a livello di area.If you have a low RTO, you might keep a second deployment continually running on standby to protect against a regional outage.

  • Obiettivo punto di ripristino (RPO)Recovery point objective (RPO)
    Per obiettivo del punto di ripristino (RPO) si intende la durata massima di perdita dei dati accettabile durante un'emergenza.RPO is the maximum duration of data loss that is acceptable during a disaster. Se, ad esempio, si archiviano i dati in un singolo database di cui viene eseguito il backup ogni ora e non è presente alcuna replica in altri database, è possibile perdere fino a un'ora di dati.For example, if you store data in a single database which is backed up hourly and has no replication to other databases, you could lose up to an hour of data.

Eseguire una valutazione per definire RTO e RPO per ogni applicazione.Conduct an assessment to define the RTO and RPO for each application.

Un'altra importante metrica da considerare è il tempo medio per il recupero (MTTR), ovvero il tempo medio necessario per ripristinare l'applicazione dopo un errore.Another important metric to consider is Mean Time to Recover (MTTR), which is the average time that it takes to restore the application after a failure. MTTR è un valore empirico per un sistema.MTTR is an empirical value for a system. Se MTTR supera il valore di RTO, un errore nel sistema causerà un'interruzione dell'attività aziendale inaccettabile, perché non è ' possibile ripristinare il sistema entro il RTO definito.If MTTR exceeds the RTO, then a failure in the system will cause an unacceptable business disruption because it won't be possible to restore the system within the defined RTO.

Opzioni di protezione per le macchine virtuali IaaSProtection options for IaaS VMs

Backup-ripristinoBackup-restore

Lo schema di protezione più comune per le app basate su VM è l'uso del software di backup.The most common protection scheme for VM-based apps is to use backup software. Il backup di una macchina virtuale include in genere il sistema operativo, la configurazione del sistema operativo, i file binari dell'applicazione e i dati persistenti dell'applicazione contenuti all'interno della macchina virtuale.Backing up a VM typically includes the operating system, operating system configuration, application binaries, and persistent application data contained inside the VM. I backup vengono creati usando un agente nel sistema operativo guest per acquisire l'applicazione, il sistema operativo o file system/volumi.The backups are created by using an agent in the guest OS to capture application, OS, or file system/volumes. Un altro approccio è senza agente, basandosi sull'integrazione con le API dell'hub Azure Stack per leggere informazioni sulla configurazione della macchina virtuale e creare uno snapshot dei dischi collegati alla macchina virtuale.Another approach is agent-less by relying on integration with Azure Stack Hub APIs to read information about the VM configuration and snapshot the disks attached to the VM. Si noti che Azure Stack Hub non supporta il backup direttamente dall'hypervisor.Please note that Azure Stack Hub does not support backing up directly from the hypervisor.

Pianificazione della strategia di backupPlanning your backup strategy

La pianificazione della strategia di backup e la definizione dei requisiti di scalabilità iniziano con la quantificazione del numero di istanze di VM che devono essere protette.Planning your backup strategy and defining scale requirements starts with quantifying the number of VM instances that need to be protected. Il backup di tutte le macchine virtuali nel sistema potrebbe non essere il modo più efficace per proteggere l'applicazione.Backing up all VMs in the system may not be the most effective way to protect application. Con Azure Stack Hub, le macchine virtuali in un set di scalabilità o un set di disponibilità non devono essere sottoposte a backup a livello di macchina virtuale.With Azure Stack Hub, VMs in a scale-set or availability set should not be backed up at the VM level. Queste macchine virtuali sono considerate effimere perché il set di macchine virtuali può essere ridimensionato o ridotto. Idealmente, tutti i dati che devono essere salvati in modo permanente si trova in un repository separato, ad esempio un database o un archivio oggetti.These VMs are considered ephemeral since the set of VMs can be scaled-in or out. Ideally any data that needs to be persisted is in a separate repository such as a database or object store. Se le applicazioni distribuite in un'architettura con scalabilità orizzontale contengono dati che devono essere salvati in modo permanente e protetto, sarà necessario eseguire il backup a livello di applicazione usando le funzionalità native fornite dall'applicazione o basandosi su un agente.If the applications deployed in a scale-out architecture contains data that must be persisted and protected, then that will require application level backup using native capabilities provided by the application or by relying on an agent.

Considerazioni importanti per il backup di macchine virtuali in Azure Stack:Important considerations for backing up VMs on Azure Stack:

  • CategorizzazioneCategorization
    • Si consideri un modello in cui gli utenti scelgono il backup delle VM.Consider a model where users opt into VM backup.
    • Definire un contratto di servizio (SLA) di ripristino in base alla priorità delle applicazioni o all'effetto sull'azienda.Define a recovery service level agreement (SLA) based on the priority of the applications or the impact to the business.
  • RidimensionaScale
    • Prendere in considerazione i backup sfalsati quando si carica un numero elevato di nuove macchine virtuali, se è necessario il backup.Consider staggered backups when on-boarding a large number of new VMs (if backup is required).
    • Valutare i prodotti di backup che possono acquisire e trasmettere in modo efficiente i dati di backup per ridurre al minimo il contenuto delle risorse nella soluzione.Evaluate backup products that can efficiently capture and transmit backup data to minimize resource content on the solution.
    • Valuta i prodotti di backup che archiviano in modo efficiente i dati di backup usando backup incrementali o differenziali per ridurre al minimo la necessità di backup completi in tutte le macchine virtuali nell'ambiente.Evaluate backup products that efficiently store backup data using incremental or differential backups to minimize the need for full backups across all VMs in the environment.
  • RecuperaRestore
    • I prodotti di backup possono ripristinare i dischi virtuali, i dati delle app all'interno di una macchina virtuale esistente o l'intera risorsa VM e i dischi virtuali associati.Backup products can restore virtual disks, app data within an existing VM, or the entire VM resource and associated virtual disks. Lo schema di ripristino necessario dipende dal modo in cui si prevede di ripristinare l'app.The restore scheme you need depends on how you plan to restore the app. Ad esempio, potrebbe essere più semplice ridistribuire SQL Server da un modello e quindi ripristinare i database anziché ripristinare l'intera macchina virtuale o il set di macchine virtuali.For example, it may be easier to redeploy SQL server from a template and then restore the databases instead of restoring the entire VM or set of VMs.

Replica/failover manualeReplication/manual failover

Un approccio alternativo al supporto del ripristino consiste nel replicare i dati in un altro ambiente.An alternate approach to supporting recovery is to replicate data to another environment. È possibile definire l'ambito dei dati per l'applicazione, ad esempio la replica di database o il sistema operativo del sistema operativo guest usando un agente, o a livello di macchina virtuale grazie all'integrazione con le API Azure Stack Hub.The data can be scoped to the application like database replication or to the operating system in the guest OS using an agent, or at the VM level by integrating with Azure Stack Hub APIs. In caso di emergenza, è necessario eseguire il failover nella posizione secondaria.In the event of a disaster, failover to the secondary location is required. Il failover può essere gestito in modo nativo dall'applicazione, ad esempio con i gruppi di disponibilità SQL o a livello di sistema operativo guest usando gli agenti o la tecnologia del cluster o a livello di macchina virtuale usando un prodotto di protezione.The failover can be handled natively by the application like with SQL Availability Groups or at the guest OS level using agents or cluster technology, or at the VM level using a protection product.

Disponibilità elevata/failover automaticoHigh availability/automatic failover

Le applicazioni che supportano in modo nativo la disponibilità elevata o si basano sul software del cluster per ottenere una disponibilità elevata tra i nodi possono essere distribuite in un gruppo di macchine virtuali in un hub Azure Stack o in più istanze di hub Azure Stack.Applications that natively support high availability or rely on cluster software to achieve high availability across nodes can be deployed across a group of VMs in one Azure Stack Hub or across multiple Azure Stack Hub instances. In tutti i casi, è necessario un certo livello di bilanciamento del carico per garantire che il traffico dell'applicazione venga indirizzato correttamente.In all cases, some level of load balancing is required to ensure application traffic is routed correctly. In questa configurazione, l'applicazione è in grado di ripristinare automaticamente gli errori.In this configuration, the application can automatically recover from faults. Per gli errori hardware locali, Azure Stack infrastruttura dell'hub implementa la disponibilità elevata e la tolleranza di errore nell'infrastruttura fisica.For local hardware faults, Azure Stack Hub infrastructure implements high availability and fault tolerance in the physical infrastructure. Per gli errori a livello di calcolo, Azure Stack Hub USA più nodi in un'unità di scala in una configurazione N-1.For compute level faults, Azure Stack Hub uses multiple nodes in a scale unit in an N-1 configuration. A livello di macchina virtuale, la disponibilità e i set di scalabilità modellano ogni nodo nell'unità di scala come dominio di errore per garantire l'anti-affinità a livello di nodo, in modo che gli errori dei nodi non tengano un'applicazione distribuita.At the VM level, availability and scale sets model each node in the scale-unit as a fault domain to guarantee node-level anti-affinity so node failures do not take down a distributed application.

Nessuna protezioneNo protection

Per alcune applicazioni potrebbero non essere presenti dati che devono essere salvati in modo permanente.Some applications may not have data that needs to be persisted. Ad esempio, le macchine virtuali usate per lo sviluppo e il test in genere non ' devono essere recuperate.For example, VMs used for development and testing typically don't need to be recovered. Un altro esempio è un'applicazione senza stato che può essere ridistribuita da una pipeline CI/CD in caso di errore.Another example is a stateless application that can be re-deployed from a CI/CD pipeline in the event of a failure. È importante identificare le applicazioni che non richiedono la protezione per evitare di proteggere le VM in modo inutilmente.It is important to identify the applications that do not require protection to avoid unnecessarily protecting VMs.

Passaggi successiviNext steps

Questo articolo fornisce linee guida generali per la protezione delle VM utente distribuite in Azure Stack.This article provided general guidelines for protecting user VMs deployed on Azure Stack. Per informazioni sull'uso dei servizi di Azure per proteggere le macchine virtuali degli utenti, vedere:For information about using Azure services to protect user VMs, refer to:

Prodotti partnerPartner products