Vai al paragrafo

Cos'è una virtual machine (VM)

Copia URL

Una macchina virtuale (VM) è un ambiente virtuale che funziona come un sistema informatico virtuale autonomo, dotato di CPU, memoria, interfaccia di rete e storage, creato su un sistema hardware fisico, ubicato fuori sede o on premise. Un software, definito hypervisor separa l'hardware dalle risorse della macchina, eseguendone il provisioning in modo che la VM possa utilizzarle. 

La macchina fisica, dotata di un hypervisor come Kernel-based Virtual Machine (KVM), è definita macchina host, computer host, sistema operativo host o semplicemente host. Le diverse VM che ne utilizzano le risorse sono chiamate macchine guest, computer guest, sistemi operativi guest, o semplicemente guest. L'hypervisor tratta le risorse di elaborazione (tra cui CPU, memoria e storage), come un pool di risorse facilmente riposizionabile tra i guest esistenti o su nuove macchine virtuali.

Le VM consentono l'esecuzione simultanea di più sistemi operativi diversi su un unico computer, ad esempio una distribuzione Linux® su un laptop MacOS. Ogni sistema operativo viene eseguito come succede normalmente per un sistema operativo o un'applicazione in un hardware host, in modo tale che l'esperienza dell'utente finale emulata nella VM risulti identica all'esperienza del sistema operativo eseguito in tempo reale su una macchina fisica.  

Coopservice standardizza e accelera lo sviluppo di software

Scopri come il gruppo Coopservice ha unificato la gestione e lo sviluppo applicativo grazie alle soluzioni di Red Hat.

La tecnologia di virtualizzazione consente di condividere un sistema con più ambienti virtuali. L'hypervisor gestisce l'hardware e separa le risorse fisiche dagli ambienti virtuali. A seconda delle esigenze, le risorse vengono suddivise e trasferite dall'ambiente fisico alle varie macchine virtuali.

Durante l'esecuzione della VM, quando un utente o un programma invia un'istruzione che richiede ulteriori risorse dall'ambiente fisico, l'hypervisor programma la richiesta in base alle risorse del sistema fisico, in modo che il sistema operativo e le applicazioni della macchina virtuale possano accedere al pool condiviso di risorse fisiche.

Due sono le tipologie di hypervisor disponibili per la virtualizzazione.

Tipo 1

Un hypervisor di tipo 1 è su bare metal. Lo scheduling delle risorse della VM avviene direttamente sull'hardware tramite l'hypervisor. KVM è un esempio di hypervisor di tipo 1. VM è stato integrato nel kernel di Linux® nel 2007, quindi se utilizzi una versione recente di Linux, hai già accesso a KVM. 

Tipo 2

Un hypervisor di tipo 2 si trova su un host. La pianificazione delle risorse della VM avviene in base al sistema operativo host, che a sua volta viene eseguito in base all'hardware. VMware Workstation e Oracle VirtualBox sono esempi di hypervisor di tipo 2. 

Uno dei motivi principali è il consolidamento del server. La maggior parte dei deployment di sistemi operativi e applicazioni utilizza solo una piccola quantità delle risorse fisiche disponibili quando il deployment avviene su bare metal. Virtualizzando i server è possibile collocare più server su ciascun server fisico, per un utilizzo più efficiente dell'hardware. 

Ciò riduce l'esigenza di acquistare un maggior numero di risorse fisiche quali dischi o unità, e la necessità di incrementare alimentazione, spazio e tecnologie di raffreddamento nel data center. Le VM offrono ulteriori opzioni per il ripristino di emergenza, consentendo failover e ridondanza, processi che prima potevano essere ottenuti solo aggiungendo hardware.

Una VM fornisce un ambiente isolato dal resto del sistema; qualsiasi elemento eseguito all'interno di una VM non interferisce con quanto viene eseguito nell'hardware host.

Questo isolamento fa delle VM la soluzione ideale per testare nuove applicazioni o configurare un ambiente di produzione. È anche possibile eseguire una VM con una specifica finalità, ad esempio il supporto di un determinato processo.

Da molto tempo Red Hat sostiene lo sviluppo della virtualizzazione software, contribuendo, ad esempio, all'ottimizzazione dell'hypervisor KVM e ai progetti KVM e oVirt fin dalla fondazione di entrambe le community. 

Oggi, l'hypervisor KVM è al centro di tutte le principali distribuzioni di virtualizzazione OpenStack® e Linux. Inoltre, ha stabilito nuovi record in fatto di prestazioni complessive e per l'esecuzione del più elevato numero di VM a prestazioni elevate su un unico server. 

Red Hat® OpenShift® Virtualization è una funzionalità di Red Hat OpenShift che consente di eseguire e gestire parallelamente i carichi di lavoro delle macchine virtuali (VM) e dei container.

Keep reading

ARTICOLO

Container e VM

I container Linux e le macchine virtuali (VM) sono entrambi pacchetti di ambienti di elaborazione che combinano vari componenti IT e li isolano dal resto del sistema.

ARTICOLO

Cos'è una macchina virtuale (VM)?

Una macchina virtuale (VM) è un ambiente di elaborazione isolato creato astraendo le risorse da una macchina fisica.

ARTICOLO

La tecnologia KVM

KVM (Kernel-based Virtual Machine) è una tecnologia di virtualizzazione open source che trasforma Linux in un hypervisor.