Recupero dei dati della macchina virtuale da RAID 1 specchiato sull’hypervisor XCP-ng

In questo tutorial, ti guideremo attraverso il processo di recupero dei dati di macchine virtuali da una configurazione RAID1 in mirroring sull’ipervisore XCP-ng. Che tu abbia riscontrato guasti ai dischi, corruzione dei dati o altri problemi con i dati delle macchine virtuali, ti accompagneremo passo dopo passo nella procedura di recupero.

Recupero dei dati della macchina virtuale da RAID 1 specchiato sull’hypervisor XCP-ng
Vai a vedere
Come recuperare i dati dalle macchine virtuali Linux KVM dopo un crash o una cancellazione

Come recuperare i dati dalle macchine virtuali Linux KVM dopo un crash o una cancellazione

XCP-ng è una distribuzione Linux con un ipervisore Xen preconfigurato e un progetto Xen API pronto all’uso. XCP-ng sta per Xen Cloud Platform – next gen.

L’obiettivo principale di questo progetto è fornire un modo semplice per distribuire infrastrutture basate su macchine virtuali utilizzando Xen come ipervisore e una potente XenAPI per offrire soluzioni pronte all’uso. XCP-ng è compatibile con la maggior parte dei server ed è per questo molto diffuso. Tuttavia, come con qualsiasi altro ipervisore, possono verificarsi fattori che causano la perdita di accesso alle macchine virtuali – sia a seguito di un errore di sistema, sia per un guasto del server.

Di conseguenza, non sarà possibile ripristinare l’accesso ai dati della macchina virtuale senza ricorrere a strumenti software di terze parti.

Caratteristica Descrizione
Tipo di prodotto Una soluzione di virtualizzazione open-source basata su Xen che supporta le funzionalità complete di un ipervisore.
Sviluppatore Azienda Vates (supportata dalla community).
Licenza Software open-source (GPLv2).
Piattaforme Supporta sistemi server operativi basati su Linux e Windows.
Architettura Gira sull’ipervisore Xen, fornendo la gestione delle VM tramite API o GUI.
Caratteristiche principali Virtualizzazione dei server, supporto VM, migrazione VM, backup e recupero.
Supporto hardware Ampio supporto per hardware server con processori Intel e AMD.
Integrazione Possibile integrazione con soluzioni di gestione come Xen Orchestra per il controllo centralizzato.
Scalabilità Supporto per clustering e gestione di grandi infrastrutture virtualizzate.
Vantaggi Gratuito, scalabile, community attiva, supporto per standard di sicurezza moderni.
Utilizzo Utilizzato per infrastrutture cloud, virtualizzazione aziendale, ambienti di test.

Installare XCP-ng

Come distribuzione Xen pronta all’uso, il modo più semplice per distribuire XCP-ng è utilizzare un’immagine ISO, disponibile sul sito del progetto.

Sito ufficiale di XCP-ng

L’installazione di XCP non differisce molto dall’installazione dell’ipervisore Xen.

Installazione di XCP-ng

Nel nostro canale abbiamo un video molto dettagliato sull’installazione dell’ipervisore XEN.

L’unica differenza è che installerò il sistema su un RAID in mirroring. Durante l’installazione è necessario specificare i dischi e utilizzarli per creare l’array.

Come creare una macchina virtuale

Per quanto riguarda la creazione di macchine virtuali, è molto simile a come si fa con l’ipervisore XEN. Per gestire le macchine virtuali useremo XCP Center. Il programma ha un’interfaccia simile a XEN Center.

Creazione di una nuova macchina virtuale

Puoi approfondire la creazione di una macchina virtuale guardando il video sull’ipervisore XEN. Poiché questo processo è assolutamente identico, non mi soffermerò su di esso e passerò invece agli aspetti di recupero.

Su questo ipervisore ho configurato due macchine virtuali, una con Windows 10 e un’altra con Ubuntu Linux. Ti mostrerò come estrarre i dati da entrambe.

Come recuperare i dati da una macchina virtuale

Se la macchina virtuale non si avvia, se mostra un errore che non può essere risolto, oppure se c’è un guasto hardware o un errore di sistema nel server – qualunque sia la causa, ma non riesci ad avviare la macchina virtuale – utilizza uno strumento specializzato di recupero dati, Hetman RAID Recovery: supporta il recupero da tutti i tipi di RAID più diffusi e da dischi virtuali di vari ipervisori, incluso XCP.

Per impostazione predefinita, XCP-ng utilizza LVM per lo storage delle sue macchine virtuali. Questo metodo di archiviazione ha diversi vantaggi rispetto ai file VHD, ma a volte è necessario utilizzare la modalità di archiviazione basata su file come in VMware ESX, il che può creare ulteriori difficoltà per il processo di recupero.

Nel mio caso, il sistema è basato su RAID in mirroring, il che rende il recupero ancora più complesso.

Per avviare il processo di recupero, dovresti rimuovere i dischi dal server e collegarli alla scheda madre di un computer Windows. Se la tua scheda madre non dispone di porte SATA o connettori di alimentazione per tutti i dischi necessari, puoi aggiungere adattatori o schede di espansione per risolvere il problema.

Schede di espansione SATA per schede madri

Quando colleghi i dischi fisici che costituivano il RAID dove sono memorizzati i file delle macchine virtuali, Hetman RAID Recovery mostrerà immediatamente i dischi virtuali delle macchine virtuali e le loro dimensioni.

Recupero dei dati da array RAID danneggiati e inaccessibili al computer.
Passo Descrizione
1 Spegni l’ipervisore Spegni in modo sicuro l’ipervisore XCP-ng per evitare ulteriori danni ai dati.
2 Scollega i dischi Arresta e scollega i dischi che facevano parte del RAID1 in mirroring.
3 Collega i dischi al PC Collega i dischi a un computer Windows usando adattatori SATA o USB.
4 Installa Hetman RAID Recovery Scarica e installa Hetman RAID Recovery sul PC Windows.
5 Avvia il programma Apri Hetman RAID Recovery e consenti al programma di rilevare automaticamente la configurazione RAID1.
6 Scansione dei dati Seleziona l’array RAID1 rilevato ed esegui una scansione completa per trovare i dati persi.
7 Revisiona e recupera Revisiona i file trovati e seleziona quelli che desideri recuperare. Salvali su un altro disco.
8 Recupera la macchina virtuale Trasferisci i dati recuperati indietro sull’ipervisore XCP-ng o ripristinali in una nuova macchina virtuale.

Come trovare i dischi delle macchine virtuali

Se hai memorizzato molte macchine virtuali sull’ipervisore ed è difficile distinguerle, ci sono alcuni comandi che possono aiutarti. Questo è possibile fintanto che il server è operativo.

Per vedere quali dischi virtuali appartengono a una specifica macchina virtuale, dovresti eseguire alcuni comandi sul server per trovare l’UUID (Universal Unique Identifier) della macchina virtuale, l’UUID del suo disco e l’UUID SR (Universal Unique Identifier del Storage Repository).

Per farlo, connettiti al server via SSH e digita il primo comando:

xe vm-list

Come risultato, avrai trovato l'UUID della macchina virtuale;

Hai trovato l'UUID della macchina virtuale

Determiniamo l'identificatore della macchina virtuale con Windows 10 e Linux.

Ora puoi usare questo identificatore per visualizzare i dischi collegati, con l'aiuto di questo comando:

xe vm-disk-list uuid= aae7d446-4072-8966-b828-396b63082644

L'ultimo elemento è l'UUID della macchina virtuale.

Come risultato, ottieni l'UUID del disco virtuale che, a sua volta, può essere utilizzato per trovare l'UUID del repository di storage.

xe sr-list name-label=Local storage

Trova l'UUID del repository di storage

Ora che abbiamo l'identificatore del repository, è facile capire a quale macchina virtuale appartengono specifici dischi e potrai identificare tali dischi nell'utilità di recupero dati.

Questo è il nome del disco che ci serve -

8620cbbb-fc1a-2520-e97c-9a66486441fd.VHD

Scansione del disco di una macchina virtuale Windows

Perfetto, ora abbiamo rimosso i dischi dal server e li abbiamo collegati a un computer Windows. Scarica, installa e avvia Hetman RAID Recovery.

Hetman RAID Recovery ha ricostruito il RAID

Il programma ha ricostruito il sistema RAID dove sono memorizzati i file delle macchine virtuali; di seguito puoi vedere le informazioni che è riuscito a identificare. Poco più in basso, sotto il RAID, sono visualizzati tutti i dischi virtuali delle macchine virtuali; se è difficile capire quale di essi ti serve, cercalo tramite l'identificatore. Nel mio caso ci sono solo due macchine virtuali. Per iniziare, scansioniamo il disco della macchina virtuale Windows.

Analisi completa del disco

Fai clic con il pulsante destro del mouse sul disco e seleziona Apri.

Seleziona il tipo di scansione; inizia con la «Scansione rapida». Se la «Scansione rapida» non riesce a trovare i file richiesti, procedi con l'«Analisi completa». Per farlo, torna al menu principale, fai clic con il tasto destro sul disco e scegli «Analizza nuovamente». Devi anche selezionare un file system: scegli NTFS, poiché si tratta di una macchina virtuale con Windows 10, e avvia la scansione.

Quindi naviga nella cartella dove erano memorizzati i file, seleziona i file che vuoi ripristinare, clicca su Recupera, specifica il disco e la cartella in cui desideri salvare i file e clicca nuovamente su Recupera.

Recupero file

Al termine dell'intero processo, troverai i file recuperati nella cartella che hai scelto.

Puoi vedere che il programma non ha difficoltà a trovare i file che erano memorizzati sul disco virtuale. Per facilitare la ricerca, tutti i nostri programmi dispongono dell'opzione di ricerca per nome file. Inoltre, potrai visualizzare in anteprima il contenuto dei file per assicurarti che sia quello che ti serve.

Scansione del disco di una macchina virtuale Linux

Ora vediamo quanto è efficace questo programma nel recuperare file da una macchina virtuale Linux. Apri il disco e scegli Scansione rapida per cominciare. Come puoi vedere, ha trovato i file - tutti i dati che erano memorizzati sul disco della macchina virtuale.

Analisi completa del disco Linux

Di conseguenza, il programma è riuscito persino a trovare i file cancellati, e tutto ciò che devi fare è ripristinarli. Hetman RAID Recovery supporta tutti i file system più diffusi, i tipi di RAID e la maggior parte degli ipervisori. Se il sistema RAID in questione è danneggiato, il programma lo ricostruirà automaticamente e ti permetterà di recuperare i dati critici che stai cercando.

Recupero dati dal file system Linux

Come recuperare i dati manualmente, con il Costruttore RAID

Quando un disco è danneggiato o le informazioni di servizio sono state cancellate, il programma può avere difficoltà a ricostruire il RAID automaticamente; tuttavia, puoi farlo manualmente con il Costruttore RAID se conosci le proprietà di questo array danneggiato.

Costruttore RAID

Apri il Costruttore, seleziona la «Modalità manuale» e compila tutte le informazioni che conosci su questo array di dischi: il tipo di RAID, l'ordine dei blocchi e la dimensione del blocco.

Aggiungi i dischi che facevano parte dell'array, usa le frecce per specificarne l'ordine e sostituisci i dischi mancanti con unità vuote cliccando il pulsante «più». Inoltre, puoi specificare l'offset che aiuta a localizzare l'inizio del disco. A volte il programma può avere difficoltà a identificarlo automaticamente, quindi dovrai inserire manualmente il valore dell'offset.

Ricostruzione di un array con il Costruttore RAID

Di norma, se fornisci le proprietà corrette, il RAID appena costruito avrà almeno una partizione. Espandila per verificare le cartelle di cui hai bisogno. Se le cartelle che cerchi sono visualizzate, allora hai costruito correttamente il RAID.

Quando hai specificato tutte le proprietà che conosci, clicca su «Aggiungi» e l'array apparirà nel Gestore unità.

Per recuperare i dati, l'ultimo passo è eseguire la scansione dell'array, trovare i file che desideri ripristinare, selezionarli e recuperarli nella cartella che scegli.

Anton Kryvoruchko

Autore: , Scrittore tecnico

Anton Kryvoruchko è traduttore dall'italiano, dall'inglese, dal francese e dal polacco. Ha molti anni di esperienza e lavora con testi di vario argomento: dalla narrativa e testi tecnici alle riviste scientifiche popolari. Lavora costantemente per migliorare le sue conoscenze e competenze, perciò nel tempo libero impara anche il tedesco e lo spagnolo.

Mykhailo Miroshnichenko

Editore: , Scrittore tecnico

Mykhaylo Miroshnychenko è uno dei programmatori principali di Hetman Software. Avendo già quindici anni di esperienza nello sviluppo di software condivide le sue conoscenze con i lettori del nostro blog. Oltre alla programmazione, Mykhaylo è anche un esperto di recupero di dati, di file system, di dispositivi di archiviazione e di array RAID.