Protezione delle macchine virtuali VMware e dei server fisici con Azure Site Recovery

Azure Site Recovery è un servizio che permette di creare un’infrastruttura di Disaster Recovery sia per le machine virtuali che per i server fisici. È possibile proteggere la nostra azienda automatizzando la replica delle macchine virtuali e gestendo la business continuity ed il disaster recovery (BCDR) con pochi semplici passaggi.

In questa guida vedremo come sia possibile:

  • Proteggere le macchine virtuali VMware locali in Azure.
  • Protegger i server fisici Windows e Linux locali in Azure

Architettura

Per poter implementare una soluzione di Disaster Recovery ci serviremo dei seguenti elementi:

  • Server di elaborazione: i computer protetti inviano dati di replica al server di elaborazione locale. Il server di elaborazione li ottimizza prima di inviarli al server di destinazione master in Azure. Gestisce anche l’installazione push del servizio Mobility, che deve essere installato in ogni macchina virtuale o server fisico da proteggere, ed esegue l’individuazione automatica dei server VMware vCenter
  • Credential Vault di Azure Site Recovery: l’insieme di credenziali coordina e orchestra la replica, il failover e il ripristino dei dati tra il sito locale e Azure.
  • Server di configurazione: il server di configurazione coordina la comunicazione tra i computer protetti, il server di elaborazione e i server di destinazione in Azure. È una macchina locale che si trova nel nostro datacenter
  • Server di destinazione: il server di destinazione in Azure contiene i dati replicati dai computer protetti tramite VHD collegati e creati nell’archivio BLOB dell’account di archiviazione di Azure. Viene distribuito come macchina virtuale di Azure.
  • Servizio Mobility: il servizio Mobility deve essere installato in ogni macchina virtuale VMware o server fisico Windows/Linux da proteggere. Il servizio invia i dati di replica al server di elaborazione, che a sua volta li invia al server di destinazione in Azure.

Figura 1: Architettura di Azure Site Recovery

Prerequisiti di Azure

Per poter implementare Azure Site Recovery avete bisogno di:

  • Un account Microsoft Azure.
  • Un account di archiviazione di Azure per archiviare i dati replicati. Nell’account può essere abilitata sia la replica locale che la replica geografica e dovrà trovarsi nella stessa area dell’insieme di credenziali di Azure Site Recovery ed essere associato alla stessa sottoscrizione.
  • Una rete virtuale di Azure in cui saranno distribuiti il server di configurazione e il server di destinazione master. Dovrà trovarsi nella stessa sottoscrizione e nella stessa area dell’insieme di credenziali di Azure Site Recovery.
  • I computer da proteggere devono soddisfare i requisiti delle macchine virtuali di Azure (numero di dischi, dimensioni del disco, volumi non crittografati, ecc.). Per maggiori dettagli vi rimando all’articolo Azure Virtual Machines FAQ

Prerequisiti dei Componenti dell’architettura

Prerequisiti del server di configurazione

  • È possibile distribuire il server di configurazione in una VM o su un computer fisico. L’unico sistema operativo supportato è Windows Server 2012 R2. Il server richiede almeno 8 core, 64 GB di RAM e 300 GB di spazio disponibile sul disco C.
  • Il server deve trovarsi nella stessa rete e subnet dei computer da proteggere.
  • Se il server è una macchina virtuale VMware, il tipo di scheda di rete deve essere VMXNET3.
  • Il server deve avere un indirizzo IP statico.
  • Il server non deve essere un domain controller.
  • Il server deve aver Installato VMware PowerCLI 6.0 per poter comunicare con il VMware vCenter.
  • Il server di configurazione deve avere accesso a Internet

Prerequisiti di VMware

  • Server VMware vCenter versione 5.1 o successiva
  • vSphere versione 5.1 o successiva
  • VMware Tools installati nelle VM

Prerequisiti dei Computer Windows da proteggere

Per i server fisici o le macchine virtuali VMware protette che eseguono Windows dovranno essere disponibili:

  • Sistema operativo a 64 bit supportato (Windows Server 2012 R2, Windows Server 2012 o Windows Server 2008 R2 con SP1 o successive).
  • Il sistema operativo dovrà essere installato nell’unità C:
  • Le regole del firewall nei computer protetti devono consentire a tali computer di raggiungere i server di configurazione e di destinazione in Azure.
  • Site Recovery supporta macchine virtuali con un disco RDM (Raw Device Mapping). Se la macchina virtuale di origine e il disco RDM sono disponibili, durante il failback Site Recovery riutilizza il disco RDM. Se non sono disponibili, durante il failback Site Recovery crea un nuovo file VMDK per ogni disco.

Prerequisiti dei Computer Windows da proteggere

  • È necessario un sistema operativo a 64 bit supportato: Red Hat Enterprise Linux 6.7, Centos 6.5, 6.6 o 6.7, Oracle Enterprise Linux 6.4 o 6.5 che esegue il kernel compatibile con Red Hat o Unbreakable Enterprise Kernel versione 3 (UEK3), SUSE Linux Enterprise Server 11 SP3.
  • I file /etc/hosts nei computer protetti devono contenere voci che eseguono il mapping del nome host locale agli indirizzi IP associati a tutte le schede di rete.
  • Il nome host, i punti di montaggio, i nomi di dispositivo, i percorsi di sistema e nomi di file di Linux, ad esempio /etc/ o /usr, devono essere specificati solo in inglese.
  • La protezione può essere abilitata soltanto per i computer Linux con le risorse di archiviazione seguenti: file system EXT3, EXT4, ReiserFS o XFS.
  • Site Recovery supporta macchine virtuali con disco RDM. Durante il failback non viene riutilizzato il disco RDM, ma viene creato un nuovo file VMDK per ogni disco RDM corrispondente.

Preparare la distribuzione

Per preparare la distribuzione è necessario:

  1. Configurare una rete di Azure in cui saranno inserite le macchine virtuali di Azure quando vengono riattivate dopo il failover. Per il failback sarà anche necessario configurare una connessione VPN, oppure Azure ExpressRoute, dalla rete di Azure al sito locale.
  2. Configurare un account di archiviazione di Azure per i dati replicati.
  3. Preparare un account nel server vCenter o negli host vSphere per consentire a Site Recovery di rilevare automaticamente le macchine virtuali VMware aggiunte.
  4. Preparare il server di configurazione per assicurarsi che possa accedere ad Internet e installare vSphere PowerCLI 6.0.

Creazione del Vault di Azure Disaster Recovery

Collegatevi al portale https://portal.azure.com e create un nuovo insieme di credeziali di ripristino (vault) da New –> Management –> Backup and Site Recovery (OMS)

Figura 2: Creazione del vault di Azure Site Recovery

Terminata la creazione del Vault andate a modificarne i parametri. Cliccate su Settings e successivamente su Site Recovery. Come si vede in figura i diversi passaggi sono numerati. Come primo passaggio possiamo preparare l’infrastruttura. Seguite il wizard e scegliete di replicare su Azure la vostra infrastruttura VMware.

Figura 3: Preparazione dell’infrastruttura

Nel secondo passaggio dovete configurare l’ambiente di origine (server di configurazione) e registrarlo nell’insieme di credenziali di Servizi di ripristino. Se si esegue la replica di macchine virtuali VMware, specificate l’account VMware per l’individuazione automatica. Aggiungete quindi un nuovo server e seguite tutte le indicazioni che appaiono nel blade.

Figura 4: Aggiunta del server di configurazione

Andate quindi sulla macchina del vostro datacenter che avete deciso di utilizzare come server di configurazione ed elaborazione e scaricate ed eseguite l’Installazione unificata di Site Recovery dall’indirizzo http://aka.ms/unifiedinstaller

Seguite tutti i passi, verificate i prerequisiti, installate il database MySQL e nella schermata Environment Details specificate se volete eseguire la replica di macchine virtuali VMware. Il programma di installazione verifica se è installato PowerCLI 6.0.

Figura 5: Verifica della presenza di PowerCLI

Scaricate dal portale di Azure la vault registration key ed inseritela quando richiesta

Figura 6: Inserimento della vault registration key

Dopo qualche minuto termina la procedura di installazione. Ricordatevi di salvare la passphrase

Figura 7: Installazione del configuration server completata

Riavviate il server e lanciate il tool CSPSConfigtool.exe dal percorso C:\Program Files (x86)\Microsoft Azure Site Recovery\home\svsystems\bin

Aggiungete le credenziali dell’utente che ha i privilegi per connettersi al VMware vCenter. Queste credenziali verranno sincronizzate con il vault di Azure (ci potrebbero volere fino a 15 minuti).

Dal portale di Azure adesso siete pronti ad aggiungere il vCenter. Cliccate sul pulsante Add vCenter e configurate i parametri richiesti.

Figura 8: Aggiunta del vCenter

Terminata l’aggiunta del vCenter siete pronti per il terzo passaggio, quello dell’aggiunta del Target. Assicuratevi di avere un ‘account di archiviazione per la replica delle VM ed una rete di Azure a cui le macchine virtuali si connetteranno dopo il failover. Cliccate su Storage Account e su Network per selezionare o per creare nuovi elementi.

Figura 9: Scelta dei target

Nel passaggio numero 4 dovete configurare le impostazioni di replica. Cliccate sul pulsante Create and Associate e inserite le informazioni per la nuova Policy: Soglia RPO, durata in ore dell’intervallo di conservazione per ogni punto di ripristino, frequenza espressa in minuti per la creazione di punti di ripristino contenenti snapshot consistenti con l’applicazione.

Figura 10: Creazione delle Replication Policy

Dopo aver configurato l’infrastruttura è possibile passare alla pianificazione della capacità e valutare se sono necessarie altre risorse. In Site Recovery è disponibile lo strumento Capacity Planner, che permettere di allocare le risorse appropriate all’ambiente di origine, i componenti di Site Recovery, la rete e l’archiviazione.

Figura 11: Capacity Planning

Completati i 5 passaggi siete ora pronti per replicare le macchine virtuali. Verificate che i computer da replicare siano preparati per l’installazione del servizio Mobility e quindi abilitare la replica. Per prima cosa installate il servizio Mobility. Nel mio lab io ho usato l’installazione manuale dell’agent sulle diverse macchine da replicare, prelevandolo dal percorso C:\Program Files (x86)\Microsoft Azure Site Recovery\home\svsystems\pushinstallsvc\repository. Nella cartella sono disponibili gli installer per Windows Server, CentOS, Suse Linux e Oracle.

Figura 12: Mobility service installer

Lanciate l’installer e scegliete Install Mobility Service

Figura 13: Installazione dell’agent di Mobility Service

Inserite il nome o l’indirizzo IP del server di configurazione e la passphrase generate al momento dell’installazione di ASR

Figura 14: Scelta del Configuration Server

Terminata l’installazione dell’Agent potete tornare nel portale di Azure e proseguire con lo Step 2: Replicate Application. Seguite i diversi passaggi e configurate lo Storage, la Rete e le macchine virtuali da replicare.

Figura 15: scelta delle VM da replicare

Al punto 4 in Properties –> Configure properties selezionate l’account che verrà usato dal server di elaborazione per installare automaticamente il servizio Mobility nella macchina virtuale da replicare. Per impostazione predefinita, vengono replicati tutti i dischi.

Al punto 5 in Replication Settings —Configure replication settings verificate che siano selezionati i criteri di replica corretti.

Figura 16: Configurazione impostazioni di replica

Terminate la procedura cliccato su Enable Replication. È possibile tenere traccia dello stato del processo Enable Protection in Settings –> Jobs –> Site Recovery Jobs. Dopo l’esecuzione del processo Finalize Protection il computer è pronto per il failover.

Figura 17: Abilitazione della protezione

Per visualizzare lo stato della replica delle VM vi basta andare in Settings –> Replicated Items

Figura 18: Stato della replica

E cliccando poi su ogni singola VM ne potete visualizzare le proprietà

Figura 19: Proprietà della singola VM

In Compute and Network –> Compute properties è possibile specificare le dimensioni della VM di destinazione e il nome della macchina virtuale di Azure. Se volete potete modificare il nome della VM e aggiungere le informazioni sulla rete di destinazione, la subnet e l’indirizzo IP che verranno assegnati alla macchina virtuale di Azure. È possibile impostare l’indirizzo IP di destinazione. Se non si specifica un indirizzo, il computer di cui è stato eseguito il failover usa DHCP. Se la macchina virtuale ha più schede di rete, si connetteranno tutte alla stessa rete.

Figura 20: Configurazione della VM

Testare il deployment ed eseguire un test di Failover

Per testare il deployment è possibile eseguire un failover di test per una singola macchina virtuale o un piano di ripristino che contenga una o più macchine virtuali.

Andate nel Recovery Service Vault e da Settings –> Replicated Items, selezionate la macchina che volete testare e cliccate sull’icona Test Failover.

Vi consiglio di connettere la macchina virtuale ad una rete diversa da quella usata in Produzione, per non avere IP duplicati sulla rete. Ho quindi creato la rete DR-TEST-VNET proprio per questo scopo.

Figura 21: Configurazione del Failover Test

Dopo aver creato l’ambiente di test verranno eseguite diverse operazioni, tra cui la creazione della macchina virtuale, il suo avvio e da qui la possibilità di connettersi in desktop remoto per testarne la funzionalità.

Figura 22: Avvio del Failover Test

Prima di effettuare il failover però ricordatevi di fare alcune operazioni:

Nel computer locale prima del failover:

  • Abilitare RDP e assicurarsi che vengano aggiunte le regole nel firewall della VM
  • Installare l’agente di macchine virtuali di Azure nel computer locale.
  • Verificare che il criterio SAN del sistema operativo sia impostato su OnlineAll. Quando si esegue il failover o la migrazione di una macchina virtuale da un percorso locale di Microsoft Azure, le lettere di unità dei dischi dati aggiuntivi possono cambiare.

Figura 23: Modifica della SAN Policy

  • Disabilitare il servizio IPSec prima di eseguire il failover.

Nella macchina virtuale di Azure dopo il failover:

  • Aggiungere un endpoint pubblico per il protocollo RDP

Dopo aver effettuato tutti i test del caso, potete cliccare sul pulsante Complete Test per pulire l’ambiente di test e cancellare la macchina creata.

Conclusioni

Azure Site Recovery permette di poter riaccendere le nostre macchine virtuali anche in caso di un disastro nel nostro datacenter senza dover investire in costose infrastrutture, dandoci flessibilità e scalabilità e permettendoci di affrontare e gestire la business continuity ed il disaster recovery (BCDR) con poche operazioni.