MIGRAZIONE DELLE MACCHINE VIRTUALI

Qualcuno disse “l’appetito vien mangiando…” e questa affermazione direi che non è limitata solo in ambito culinario.

L’evoluzione tecnologica, la necessità di dover affrontare un nuovo progetto di lavoro e la voglia di imparare mi hanno spinto a “piallare” il server e a rifarlo da zero…

Attualmente il Server è configurato come Microsoft Windows Server 2019 con installato Hyper-V dove ho virtualizzato una macchina Linux (che ospita questo sito). Lo scopo è spostare tutto su un sistema completamente virtualizzato per avere maggiore flessibilità nell’utilizzo delle risorse.

COS’E’ ESXi

ESXi è un Hypervisor di tipo 1 ovvero un virtualizzatore che prende il controllo di tutta la macchina fisica su cui far girare successivamente le macchine virtuali. Assegnando le risorse secondo parametri fissati dall’utente si riducendo lo spreco di risorse, si ha una maggiore flessibilità nell’assegnazione delle stesse e soprattutto non risente del fatto che una macchina virtuale, per funzionare, deve essere all’interno di un’atro sistema operativo come avviene per esempio in Hyper-V.

BACKUP DEI DATI

Iniziamo dalla cosa più semplice: il backup dei dati. In questo momento i dati sono tutti posizionati in un hard disk separato da quello del sistema operativo pertanto non ci sono problemi particolari.

Il problema nasce nella migrazione dei contenuti della macchina virtuale LAMP da MS Hyper-V a Vmware ESXi. Potrei semplicemente fare un’immagine del sito, installare da zero una nuova macchina e poi importare il sito ma poiché sulla macchina Ubuntu non ho solo il sito così come sulla parte cloud non sono il solo ad avere dati, ho deciso di migrarla completamente. Un aiuto è arrivato dal software per la conversione di macchine virtuali StarWind V2V Converter che consente di trasformare il contenuto della macchina da un formato all’altro.

Per far ciò ho installato Vmware ESXi 6.0 su un disco pulito sul vecchio “cubetto” (un microserver HP Proliant ML40) seguendo le indicazioni del programma di installazione e andando a fornire un indirizzo IP statico in modo da raggiungerlo senza problemi.

Server HPE ML10v2
Il “cubetto” HPE Proliant ML40

StarWind 2V2 ha fatto il suo sporco lavoro: è bastato dirgli dov’era il materiale originale e dove spedire il nuovo materiale: nel giro di 3 ore ha convertito la macchina Hyper-V in una macchina Vmware funzionante al 100%.

Windows invece ho deciso di installarlo da zero ma prima occorre “girare” gli hard disk sulle macchine fisiche

CREAZIONE DI UNA NUOVA MACCHINA VIRTUALE

Accedendo via browser alla console remota di ESXi la prima cosa da fare è caricare la ISO di windows nel datastore. Per comodità ho creato una cartella ISO dove andare a caricare tutte le immagini dei sistemi operativi con cui andare a giocare (Windows 2019, Ubuntu server 20.04, OpenMediaVault,…)

Completato il caricamento delle ISO si procede in questo modo:

  • Si crea una nuova macchina virtuale
  • Si assegna il tipo di sistema operativo che si vuole installare e la versione
  • Si assegna un nome alla macchina
  • Si assegnano le risorse virtuali per la macchina (processori, ram, hard disk,…)
  • Si imposta come unità CD l’immagine ISO da avviare.

A questo punto basta avviare la macchina virtuale e procedere a una classica installazione di Windows seguendo i passaggi standard.

ASSEGNAZIONE DI ULTERIORI HARD DISK VIRTUALI

Alla macchina Windows è stato assegnato un HD primario per il sistema operativo di 80GB, adesso serve un secondo HD virtuale per salvare i dati di lavoro.

Per far ciò basta andare nelle impostazioni della macchina virtuale e aggiungere un HD di dimensione desiderata.

Windows però non lo riconosce subito: occorre andare in pannello di controllo–> Strumenti di Windows–> Gestione Computer e gestire il nuovo HD attivandolo e formattandolo

Prossimamente proverò a scrivere un piccolo articolo sul sistema di backup server

LA MACCHINA VIRTUALE

Nella sezione sui miei interessi ho scritto che ho realizzato questo dito su una macchina virtuale. Ma cos’è realmente una macchina virtuale?

Partiamo dal fatto che per esistere una macchina virtuale deve esistere sempre una macchina reale: senza il “ferro” nulla è possibile. Sulla macchina fisica verrà installato un sistema che permetterà di allocare parte delle risorse per realizzare le macchine virtuali. Facciamo un esempio: un server fisico è dotato di 4 processori e di 16 Gb di RAM. Il virtualizzatore dovrà allocare per il suo funzionamento una parte minima di risorse e la restante parte può essere allocata per un numero variabile di macchine virtuali (in teoria 3 macchine allocando ad ogni macchina un singolo processore). Su ogni macchina virtuale, compatibilmente con le risorse, viene poi installato un sistema operativo e può essere utilizzato come se fosse un PC reale.

What Is the Difference Between Physical Servers and VMs?

COME REALIZZARE UNA MACCHINA VIRTUALE

Poichè la maggior parte degli utenti usano Windows le alternative principali possono essere 3:

  • Hyper-V che è il virtualizzatore nativo di Microsoft
  • VirtualBox
  • VmWare

in realtà per chi possiede un server c’è anche una quarta opportunità che è quella di installare il virtualizzatore di tipo 1 ESXi

La differenza tra hypervisor di tipo 1 e 2 consiste nel fatto che quelli di tipo 1 hanno un controllo diretto dell’hardware dell’host mentre quelli di tipo 2 sono eseguiti all’interno di un sistema operativo come un qualsiasi altro programma. Questo non deve trarre in inganno perché Hyper-V, sebbene gira all’interno di Windows, è a tutti gli effetti un hypervisor di tipo 1.

VIRTUALIZZAZIONE CON HYPER-V

Primo step della creazione della macchina virtuale è avere installate le componenti di virtualizzazione:
Pannello di controllo–>Programmi e funzionalità–>Attivazione e disattivazione delle funzionalità di windows
selezionare “Hyper-V” con le sue sotto componenti e procedere all’installazione.

Andiamo adesso a cercare “Console di Gestione di Hype-V” tramite la barra di ricerca

Il secondo step è la creazione di una macchina virtuale: occorre assegnare, tramite la procedura guidata, le caratteristiche della macchina.

Schermata iniziale
Assegnazione del nome alla macchina virtuale
Assegnazione della tipologia di macchina
Assegnazione della memoria
Selezione della rete a cui far collegare la macchina virtuale
Assegnazione dello switch di rete
Scelta del sistema operativo da installare (scaricato precedentemente…)
Riepilogo

La rete viene configurata di default da Hyper-V per comunicare direttamente con la rete esterna, il consiglio è quello di impostare un indirizzo MAC statico e come sempre tramite le impostazioni del router assegnare alla macchina un IP statico.

La macchina ora risulta creata e possiamo procedere all’installazione di Ubuntu Server facendo clic con il tasto destro sulla macchina virtuale creata e quindi su “avvia”