Cos'è la virtualizzazione?
La virtualizzazione consente di suddividere le risorse hardware di un singolo computer - processori, memoria, storage e altro - in più computer virtuali, detti macchine virtuali (virtual machine, VM).
sfondo nero e blu
Cos'è la virtualizzazione?

La virtualizzazione è un processo che consente un utilizzo più efficiente dell'hardware del computer fisico ed è alla base del cloud computing.

La virtualizzazione utilizza il software per creare un livello di astrazione sull'hardware del computer, che consente agli elementi hardware di un singolo computer - processori, memoria, storage e altro ancora - di essere suddivisi in più computer virtuali comunemente detti macchine virtuali (virtual machine, VM). Ogni macchina virtuale esegue il proprio sistema operativo e funziona come un computer indipendente, anche se è in esecuzione su una parte dell'hardware del computer sottostante effettivo.

Di conseguenza, la virtualizzazione consente un utilizzo più efficiente dell'hardware del computer e un maggiore ROI dell'hardware di un'organizzazione.

Oggi, la virtualizzazione è una prassi standard nell'architettura IT aziendale. È anche la tecnologia alla base dell'economia del cloud computing. La virtualizzazione consente ai provider cloud di soddisfare le esigenze degli utenti con il loro hardware del computer fisico esistente; consente agli utenti cloud di acquistare solo i servizi di calcolo di cui hanno bisogno e quando ne hanno bisogno e di eseguire la scalabilità di tali risorse in modo efficiente in termini di costi man mano che i loro carichi di lavoro crescono.

Per un'ulteriore panoramica di come funziona la virtualizzazione, guarda il nostro video "Virtualization Explained":

Vantaggi della virtualizzazione

La virtualizzazione offre diversi vantaggi agli operatori di data center e ai provider di servizi:

  • Efficienza delle risorse: prima della virtualizzazione, ogni server applicativo richiedeva la propria CPU fisica dedicata - il personale IT acquistava e configurava un server separato per ogni applicazione che desiderava eseguire. (L'IT preferiva una singola applicazione e un singolo sistema operativo per ogni computer per motivi di affidabilità). Invariabilmente, ogni server fisico veniva sottoutilizzato. La virtualizzazione del server, invece, ti consente di eseguire diverse applicazioni - ciascuna sulla sua VM con il suo sistema operativo - su un singolo computer fisico (di solito un server x86) senza andare a discapito dell'affidabilità. Ciò consente il massimo utilizzo della capacità di calcolo dell'hardware fisico.

  • Gestione semplificata: la sostituzione dei computer fisici con le VM definite dal software semplifica l'utilizzo e la gestione delle politiche scritte nel software. Ciò ti consente di creare dei flussi di lavoro di gestione dei servizi IT automatizzati. Ad esempio, gli strumenti di implementazione e configurazione automatizzata consentono agli amministratori di definire delle raccolte di VM e applicazioni come servizi, in modelli software. Ciò significa che possono installare questi servizi ripetutamente e in modo coerente senza impostazioni manuali difficili, dispendiose in termini di tempo e soggette ad errori. Gli amministratori possono utilizzare le politiche di sicurezza della virtualizzazione per imporre determinate configurazioni della sicurezza in base al ruolo della VM. Le politiche possono anche aumentare l'efficienza delle risorse ritirando le VM inutilizzate per risparmiare spazio e potenza di calcolo.

  • Tempi di inattività minimi: gli arresti anomali del sistema operativo e delle applicazioni possono causare tempi di inattività e interrompere la produttività degli utenti. Gli amministratori possono eseguire più VM ridondanti affiancate ed eseguire il failover tra di esse quando si verificano dei problemi. Eseguire più server fisici ridondanti è più costoso.

  • Provisioning più rapido: l'acquisto, l'installazione e la configurazione dell'hardware per ogni applicazione richiedono molto tempo. A condizione che l'hardware sia già implementato, il provisioning di VM per eseguire tutte le tue applicazioni è molto più veloce. Puoi persino automatizzarlo utilizzando il software di gestione e integrarlo nei flussi di lavoro esistenti.

Per un ulteriori dettagli sui potenziali vantaggi, vedi "5 vantaggi della virtualizzazione".

Soluzioni

Diverse aziende offrono soluzioni di virtualizzazione che coprono attività specifiche del data center o scenari di virtualizzazione desktop incentrati sull'utente finale. Gli esempi più noti includono VMware, specializzato nella virtualizzazione di server, desktop, reti e storage; Citrix, che si è ritagliata una nicchia nella virtualizzazione delle applicazioni, ma offre anche soluzioni di virtualizzazione dei server e desktop virtuali; e Microsoft, la cui soluzione di virtualizzazione Hyper-V viene fornita con Windows e si concentra su versioni virtuali di computer server e desktop.

VM (virtual machine)

Le VM (virtual machine) sono ambienti virtuali che simulano un computer fisico in formato software. Normalmente comprendono diversi file che contengono la configurazione della VM, lo storage per l'unità disco virtuale e qualche snapshot della VM per preservarne lo stato a uno specifico punto temporale.

Per una panoramica completa delle VM, vedi "Cos'è una VM (virtual machine)?"

Hypervisor

Un hypervisor è il livello software che coordina le VM. Funge da interfaccia tra la VM e l'hardware fisico sottostante, garantendo che ciascuna abbia accesso alle risorse fisiche di cui ha bisogno per essere eseguita. Garantisce inoltre che le VM non interferiscano l'una con l'altra incidendo sullo spazio di memoria o sui cicli di calcolo reciproci.

Esistono due tipi di hypervisor:

  • Hypervisor di tipo 1 o "bare-metal" - interagiscono con le risorse fisiche sottostanti, sostituendo del tutto il sistema operativo tradizionale. Si presentano più comunemente in scenari di server virtuali.
  • Hypervisor di tipo 2 - vengono eseguiti come un'applicazione su un sistema operativo esistente. Più comunemente utilizzati sui dispositivi endpoint per eseguire sistemi operativi alternativi, comportano un sovraccarico delle prestazioni perché devono utilizzare il sistema operativo host per accedere alle risorse hardware sottostanti e coordinarle.

"Hypervisor: una guida completa" fornisce una panoramica completa di tutto ciò che riguarda gli hypervisor.

Tipi di virtualizzazione

Finora abbiamo discusso della virtualizzazione dei server, ma molti altri elementi dell'infrastruttura IT possono essere virtualizzati per offrire vantaggi significativi ai gestori dell'IT (in particolare) e all'azienda nel suo insieme. In questa sezione, tratteremo i seguenti tipi di virtualizzazione:

  • Virtualizzazione del desktop
  • Virtualizzazione della rete
  • Virtualizzazione dello storage
  • Virtualizzazione dei dati
  • Virtualizzazione delle applicazioni
  • Virtualizzazione del data center
  • Virtualizzazione della CPU
  • Virtualizzazione della GPU
  • Virtualizzazione di Linux
  • Virtualizzazione del cloud

Virtualizzazione del desktop

La virtualizzazione del desktop consente di eseguire più sistemi operativi desktop, ciascuno nella propria VM sullo stesso computer.

Esistono due tipi di virtualizzazione del desktop:

  • VDI (Virtual Desktop Infrastructure), che esegue più desktop in VM diverse su un server centrale e li invia in streaming agli utenti che accedono su dispositivi thin client. In questo modo, VDI consente a un'organizzazione di fornire ai suoi utenti l'accesso a una varietà di sistemi operativi da qualsiasi dispositivo, senza installare sistemi operativi sui dispositivi. Per una spiegazione più approfondita, vedi "Cos'è VDI (Virtual Desktop Infrastructure)?".
  • Virtualizzazione del desktop locale, che esegue un hypervisor su un computer locale, consentendo all'utente di eseguire uno o più sistemi operativi aggiuntivi su detto computer e passare da un sistema operativo all'altro come necessario e senza modificare nulla del sistema operativo principale.

Per ulteriori informazioni sui desktop virtuali, vedi "DaaS (Desktop-as-a-Service)".

Virtualizzazione della rete

La virtualizzazione della rete utilizza il software per creare una "vista" della rete che un amministratore può utilizzare per gestire la rete da un'unica console. Astrae gli elementi e le funzioni hardware (ad es. connessioni, switch, router ecc.) come software in esecuzione su un hypervisor. L'amministratore di rete può modificare e controllare questi elementi senza toccare i componenti fisici sottostanti, il che semplifica notevolmente la gestione della rete.

I tipi di virtualizzazione della rete includono SDN (software-defined networking), che virtualizza l'hardware che controlla l'instradamento del traffico di rete (chiamato il "piano di controllo"), e NFV (network function virtualization), che virtualizza una o più appliance hardware che forniscono una specifica funzione di rete (ad esempio un firewall, un programma di bilanciamento del carico o un analizzatore del traffico), rendendo più facile eseguire la configurazione, il provisioning e la gestione di tali appliance.

Virtualizzazione dello storage

La virtualizzazione dello storage consente di accedere a tutti i dispositivi di storage sulla rete e di gestirli come un singolo dispositivo di storage, siano essi installati su singoli server o unità di storage autonome. Nello specifico, la virtualizzazione dello storage riunisce tutti i blocchi di storage in un singolo pool condiviso da cui è possibile assegnarli a qualsiasi VM sulla rete come necessario. La virtualizzazione dello storage semplifica il provisioning dello storage per le macchine virtuali e sfrutta al massimo tutto lo storage disponibile sulla rete.

Per uno sguardo più ravvicinato alla virtualizzazione dello storage, vedi "Cos'è lo storage su cloud?"

Virtualizzazione dei dati

Le aziende moderne archiviano i dati da più applicazioni, utilizzando più formati di file, in più ubicazioni, dal cloud ai sistemi hardware e software on-premise. La virtualizzazione dei dati consente a qualsiasi applicazione di accedere a tali dati, indipendentemente dall'origine, dal formato o dalla posizione.

Gli strumenti di virtualizzazione dei dati creano uno livello software tra le applicazioni che accedono ai dati e i sistemi che li archiviano. Il livello converte la richiesta o la query di dati di un'applicazione come necessario e restituisce risultati che possono estendersi a più sistemi. La virtualizzazione dei dati può aiutare ad abbattere i silos di dati quando altri tipi di integrazione non sono fattibili, desiderabili o convenienti.

Virtualizzazione delle applicazioni

La virtualizzazione delle applicazioni esegue il software applicativo senza installarlo direttamente sul sistema operativo dell'utente. Questo differisce dalla completa virtualizzazione del desktop (menzionata precedentemente) perché solo l'applicazione viene eseguita in un ambiente virtuale - il sistema operativo e il dispositivo dell'utente finale vengono eseguiti come di consueto. Esistono tre tipi di virtualizzazione dell'applicazione: 

  • Virtualizzazione dell'applicazione locale: l'intera applicazione viene eseguita sul dispositivo endpoint ma viene eseguita in un ambiente di runtime anziché sull'hardware nativo.
  • Streaming dell'applicazione: l'applicazione risiede su un server che, quando necessario, invia piccoli componenti del software da eseguire sul dispositivo dell'utente finale.
  • Virtualizzazione dell'applicazione basata su server: l'applicazione viene eseguita interamente su un server che invia solo la sua interfaccia utente al dispositivo client.

Virtualizzazione del data center

La virtualizzazione del data center astrae la maggior parte dell'hardware di un data center in software, consentendo in modo efficace a un amministratore di dividere un singolo data center fisico in più data center virtuali per client diversi.

Ogni client può accedere a una sua IaaS (Infrastructure as a Service), che viene eseguita sullo stesso hardware fisico sottostante. I data center virtuali offrono una facile rampa di accesso al calcolo basato sul cloud, consentendo a un'azienda di configurare rapidamente un ambiente di data center completo senza acquistare hardware di infrastruttura.

Virtualizzazione della CPU

La virtualizzazione della CPU (central processing unit) è la tecnologia fondamentale che rende possibili hypervisor, macchine virtuali e sistemi operativi. Consente di suddividere una singola CPU in più CPU virtuali per l'utilizzo da parte di più VM.

Inizialmente, la virtualizzazione della CPU era interamente definita dal software, ma molti dei processori odierni includono set di istruzioni estesi che supportano la virtualizzazione della CPU, il che migliora le prestazioni della VM.

Virtualizzazione della GPU

Una GPU (graphical processing unit) è un processore multi-core che migliora le prestazioni di calcolo complessive occupandosi dell'elaborazione grafica o matematica più impegnativa in termini di risorse. La virtualizzazione della GPU consente a più VM di utilizzare, completamente o parzialmente, la potenza di elaborazione di una singola GPU per applicazioni video, di AI e di altro tipo a uso intensivo di grafica e matematica più rapide.

  • Le GPU pass-through rendono l'intera GPU disponibile per un singolo sistema operativo guest.
  • Le vGPU condivise dividono i core GPU fisici tra diverse GPU virtuali (vGPU) per l'utilizzo da parte di VM basate sui server.

Virtualizzazione di Linux

Linux include un suo hypervisor, chiamato KVM (kernel-based virtual machine), che supporta le estensioni di processore di virtualizzazione di Intel e AMD consentendoti così di creare delle VM basate su x86 dall'interno di un sistema operativo host Linux.

In quanto sistema operativo open source, Linux è altamente personalizzabile. Puoi creare delle VM che eseguono versioni di Linux personalizzate per specifici carichi di lavoro o versioni con sicurezza avanzata per le applicazioni più sensibili.

Virtualizzazione del cloud

Come osservato in precedenza, il modello di cloud computing dipende dalla virtualizzazione. Virtualizzando server, storage e altre risorse fisiche dei data center, i provider di cloud computing possono offrire una gamma di servizi ai clienti, tra cui i seguenti: 

  • IaaS (Infrastructure as a Service): risorse di server, storage e rete virtualizzate che puoi configurare in base ai loro requisiti.  
  • PaaS (Platform as a Service): strumenti di sviluppo, database e altri servizi basati su cloud virtualizzati che puoi utilizzare per creare applicazioni e soluzioni basate su cloud
  • SaaS (Software as a Service): applicazioni software utilizzate sul cloud. SaaS è il servizio basato su cloud più astratto dall'hardware.

Se desideri saperne di più su questi modelli di servizi cloud, consulta la nostra guida: "Confronto tra IaaS, PaaS e SaaS".

Confronto tra virtualizzazione e containerizzazione

La virtualizzazione del server riproduce un intero computer nell'hardware, che quindi esegue un intero sistema operativo. Il sistema operativo esegue una singola applicazione. Ciò è più efficiente di una virtualizzazione pari a zero ma continua a duplicare codice e servizi non necessari per ciascuna applicazione che desideri eseguire.

I container adottano un approccio alternativo. Condividono un kernel del sistema operativo sottostante, eseguendo solo l'applicazione e gli elementi da cui dipende, come le librerie software e le variabili di ambiente. Questo rende i container più piccoli e più veloci da implementare.

Per approfondire i concetti di container e containerizzazione, vedi "Container: una guida completa" e "Containerizzazione: una guida completa".

Per un confronto più ravvicinato, vedi il post del blog "Confronto tra container e VM: qual è la differenza?".

Nel seguente video, Sai Vennam suddivide la containerizzazione nei relativi elementi di base e la confronta con la virtualizzazione tramite VM:

VMware

VMware crea software di virtualizzazione. VMware ha iniziato offrendo solo la virtualizzazione dei server - il suo hypervisor ESX (ora ESXi) è stato uno dei primi prodotti di virtualizzazione di successo dal punto di vista commerciale. Oggi VMware offre anche soluzioni per la virtualizzazione di rete, storage e desktop.

Per un approfondimento su tutto ciò che riguarda VMware, guarda "VMware: una guida completa."

 

Sicurezza

La virtualizzazione offre alcuni vantaggi in termini di sicurezza. Ad esempio, le VM infettate da malware possono essere riportate a un punto temporale (detto snapshot) in cui non erano infette ed erano stabili; possono anche essere più facilmente eliminate e ricreate. Non sempre puoi rimuovere le infezioni da un sistema operativo non virtualizzato poiché il malware è spesso integrato in profondità nei componenti principali del sistema operativo, continuando a essere presente anche dopo i rollback di sistema.

La virtualizzazione presenta anche alcune sfide in materia di sicurezza. Se un aggressore compromette un hypervisor, potenzialmente possiede tutte le VM e tutti i sistemi operativi guest. Poiché gli hypervisor possono anche consentire alle VM di comunicare tra loro senza toccare la rete fisica, può essere difficile intercettarne il traffico e quindi rilevare attività sospette.

Anche un hypervisor di tipo 2 su un sistema operativo host è suscettibile di compromissione del sistema operativo host.

Il mercato offre una gamma di prodotti per la sicurezza della virtualizzazione in grado di scansionare le VM alla ricerca di malware e applicarvi patch, crittografare interi dischi virtuali delle VM e controllare e verificare l'accesso alle VM.

Soluzioni correlate
Cloud for VMware Solutions

Modernizza senza soluzione di continuità i tuoi carichi di lavoro e le tue applicazioni VMware con IBM Cloud.

Esplora le soluzioni Cloud for VMware
Strumenti e soluzioni di virtualizzazione dei dati

Ottieni un'unica vista di dati eterogenei senza spostamento di dati. Gestisci i dati con minore complessità e rischio di errori.

Esplora la virtualizzazione dei dati
Storage per la virtualizzazione di server e desktop

Semplifica il tuo cloud ibrido con la virtualizzazione dello storage. Centralizza le risorse di storage, estendi i servizi di dati e aumenta la mobilità dei dati - senza mettere a rischio i tuoi dati.

Esplora lo storage per la virtualizzazione
Risorse Cos'è una VM (virtual machine)?

Una VM (virtual machine) è una rappresentazione virtuale, o emulazione, di un computer fisico. La virtualizzazione consente di creare più VM su un singolo computer fisico.

Cos'è un hypervisor?

Gli hypervisor rendono possibile la virtualizzazione consentendo l'esecuzione di più istanze del sistema operativo l'una accanto all'altra sulle stesse risorse di elaborazione fisica.

Cos'è il cloud computing?

Il cloud computing trasforma l'infrastruttura IT in un programma di utilità, consentendoti di "collegarti" a risorse e applicazioni di calcolo su Internet, senza doverle installare e gestire on-premise.

Passa alla fase successiva

IBM Cloud offre l'opportunità di configurare ed eseguire le tue VM in base a una gamma di opzioni tecniche e di prezzo. Puoi selezionare i profili tecnici per le VM in base alle funzionalità di potenza di calcolo, memoria, storage locale e GPU richieste, personalizzando il sistema in base al tuo carico di lavoro specifico.E scegliere da nodi pubblici o privati per rispettare i tuoi requisiti di sicurezza e conformità.

Inizia a utilizzare IBM Cloud gratuitamente