Configurare la replica di Hyper-V Server 2016 in workgroup

La replica Hyper-V permette di replicare, con definiti intervalli di tempo, le macchine virtuali da un host (o da un cluster) all’altro in modo da poterle ripristinare rapidamente in caso di interruzioni, ad esempio guasti hardware o arresti pianificati per manutenzione. Il fatto che può essere abilitata anche in un cluster rende evidente che non si tratta di una soluzione ad alta disponibilità o un’alternativa al cluster ma piuttosto una soluzione di disaster recovery.
Ora vedremo come creare una semplice configurazione di replica utilizzando due host Hyper-V Server 2016 in workgroup.
Nel nostro caso HV-SERVER è l’host primario che ospita la macchina virtuale chiamata “VM1”, mentre HV-SERVER2 è il server di replica (server di destinazione). L’ordine viene descritto solo per rendere più comprensibile al procedura di configurazione, infatti da best practies è consigliato abilitare entrambi i server per la replica in ingresso in modo da poter invertire l’ordine dopo un eventuale ripristino dell’host primario.
NOTA: In ambiente workgroup è obbligatorio utilizzare l’autenticazione basata su certificati (HTTPS) in quanto l’autenticazione Kerberos su HTTP non è disponibile in assenza di dominio.

1)  Per prima cosa configurare un altro computer Windows 10 per gestire i due host tramite la console Hyper-V Manager, la procedura può essere trovata qui:
Gestire Hyper-V Server 2016 da Windows 10 in workgroup

2) In tutti gli host Hyper-V abilitare la regola di Windows Firewall per la replica.
Digitare nel prompt dei comandi:
netsh advfirewall firewall set rule group="Hyper-V Replica HTTPS" new enable=Yes

3) Se non si utilizza un DNS per la risoluzione dei nomi, modificare in ogni server Hyper-V il file HOSTS. Ogni server dovrà essere raggiungibile con il proprio nome.

4) Se non verranno utilizzati certificati emessi da CA pubbliche (solitamente a pagamento) è necessario generare un certificato root e per ogni host un certificato per l’autenticazione client e server. Possono essere utilizzati vari metodi, incluso il tool “makecert” incluso in Windows 7 SDK, ma poiché attualmente risulta deprecato consiglio direttamente l’utilizzo del nuovo cmdlet di PowerShell “New-SelfSignedCertificate”.

– Sul computer Windows 10 generare un certificato root eseguendo questo comando PowerShell:

New-SelfSignedCertificate -Type "Custom" -KeyExportPolicy "Exportable" -Subject "CN=Hyper-V Root CA" -CertStoreLocation "Cert:\LocalMachine\My" -KeySpec "Signature" -KeyUsage "CertSign"

E’ possibile utilizzare qualsiasi valore per il CN del certificato, ad esempio il nome dell’azienda (in questo esempio è semplicemente “Hyper-V Root CA”.
Al termine sarà visibile il “Thumbprint” del nuovo certificato, prendere nota di questo valore.

– Sempre dal computer Windows 10 generare un certificato autenticazione client/server per ogni host. Questi certificati dovranno avere come CN esattamente il nome dell’host Hyper-V ed utilizzare il thunderprint del certificato root. Per fare questo utilizzare questo comando PowerShell:

New-SelfSignedCertificate -type "Custom" -KeyExportPolicy "Exportable" -Subject "CN=HV-SERVER" -CertStoreLocation "Cert:\LocalMachine\My" -KeySpec "KeyExchange" -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.1,1.3.6.1.5.5.7.3.2") -Signer "Cert:LocalMachine\My\D90CB5708C6F6C33BBD8BA16C48497DCD15A35D1" -Provider "Microsoft Enhanced RSA and AES Cryptographic Provider"

Nel nostro caso il comando genera un certificato per l’host HV-SERVER ed il certificato root generato nel passaggio precedente aveva come thunderprint il valore D90CB5708C6F6C33BBD8BA16C48497DCD15A35D1.

– Aprire lo snap-in “Certificati” del computer locale ed esportare i nuovi certificati che saranno presenti in “Personal”.
Per ulteriori informazioni sull’apertura dello snap-in consiglio questa pagina:
TechNet – Aggiungere lo snap-in certificati a una console MMC

Per il certificato root non includere la chiave privata ed utilizzare il formato CER, mentre per quelli host includere la chiave privata ed utilizzare quindi il formato PFX. Poiché il certificato root verrà esportato singolarmente, disabilitare inoltre l’opzione di esportazione di tutti i certificati del percorso.

– In tutti gli host, copiare il file del certificato root e il file del certificato autenticazione client/server corrispondente (ad esempio nella cartella C:\ del server).

– In ogni host, importare il certificato root in “Autorità di certificazione radice attendibili” e il certificato host in “Personale”.
Digitare questi comandi nel prompt per importare i certificati:
certutil -addstore -f Root "C:\root.cer"
certutil -f -p password -importpfx "c:\hv-server.pfx"

dove “password” è la password scelta durante l’esportazione per l’archivio PFX.

– Disabilitare la verifica della revoca dei certificati digitando nel prompt dei comandi di tutti gli host Hyper-V:
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\FailoverReplication" /v DisableCertRevocationCheck /d 1 /t REG_DWORD /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\Replication" /v DisableCertRevocationCheck /d 1 /t REG_DWORD /f

5) In Hyper-V Manager aprire le impostazioni Hyper-V dell’host che si vuole configurare per la replica (ovvero il server che riceverà le macchine virtuali in replica), quindi andare in “Replication Configuration” e selezionare “Enable this computer as Replica server”. Poiché si tratta di una replica HTTPS, è necessario selezionare il certificato da utilizzare per l’autenticazione (se è stato aggiunto al server correttamente dovrebbe venir proposto automaticamente).

Dopo la conferma un avviso ci ricorda che è necessario aver precedentemente abilitato la regola firewall per la replica HTTP o HTTPS.

6) In Hyper-V Manager spostarsi sull’host primario e selezionare la macchina virtuale che si intende replicare, quindi selezionare “Enable replication” per avviare la procedura guidata.


Specificare il nome del server di replica:

A questo punto sarà necessario selezionare nuovamente il certificato per il processo di replica:

Nel passaggio finale è possibile scegliere quando e come si vuole replicare la macchina virtuale sull’host di destinazione. L’opzione può essere modificata anche successivamente mediante le opzioni “Replication” che diventeranno disponibili per la macchina virtuale in replica.


Se si vuole optare per una replica di tipo out-of-band (ovvero per non saturare la connessione di rete) è possibile scegliere le opzioni “Send initial copy using external media” o “Use an existing virtual machine on the replica server as initial copy”. Ulteriori informazioni sulla procedura sono disponibili qui:
Virtualization Blog – Save network bandwidth by using Out-of-Band Initial Replication method in Hyper-V Replica

7) Al termine della procedura la replica della macchina virtuale verrà avviata e completata come richiesto.

5 interventi su “Configurare la replica di Hyper-V Server 2016 in workgroup

  1. patalex

    netsh advfirewall firewall set rule group=”Hyper-V Replica HTTPS” new enable=Yes

    mi da: nessuno regola corrispondente al criterio specificato

    1. f.giammarini Autore

      Il nome della regola riportato nell’articolo è applicabile solo ad un sistema operativo in lingua inglese.
      Per trovare la regola corrispondente tradotta in italiano, digita in PowerShell questo comando:
      netsh advfirewall firewall show rule name=all | select-string -pattern "Hyper-V"

        1. patalex

          va beh, ho fatto a mano…
          pero ora al passaggio 6, una volta inserito il server di replica mi si incanta tutto e non vado avanti, mi appaiono a ripetizione per pochi decimi di secondo delle piccole finestre “verifica della configurazione in corso” ma non va avanti

          1. f.giammarini Autore

            Alla fine in che modo hai sbloccato il firewall? Potrebbe dipendere tutto da quello.
            Sulla versione in italiano il comando da utilizzare per sbloccare la regola è:
            netsh advfirewall firewall set rule group="HTTPS Replica Hyper-V" new enable=Yes
            Le regole non si chiamano uguali.

            Se non riesci ancora ti consiglio di iniziare con la versione in inglese almeno puoi seguire alla lettera tutti i passaggi della guida.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Informativa
Il sito utilizza i cookie per visualizzare annunci pubblicitari non personalizzati, analizzare il traffico e migliorare l'esperienza utente.
Chiudendo questo banner, scorrendo questa pagina, cliccando su un link o proseguendo la navigazione in altra maniera, si acconsente all’uso di tutti i cookie (anche di terze parti) e si accettano integralmente le condizioni di utilizzo.
Per maggiori informazioni o per negare il consenso a tutti o ad alcuni cookie, consultare questa pagina

Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

Chiudi