Cos'è la virtualizzazione server?
Cos'è la virtualizzazione server?
La virtualizzazione server è il processo che permette a un'organizzazione di separare il software del server dal suo hardware e creare più server virtuali ciascuno con un proprio sistema operativo e set di applicazioni, il tutto in esecuzione su un unico server fisico. Ogni server virtuale è separato dagli altri e funziona in modo completamente indipendente senza problemi di compatibilità. La virtualizzazione server è la base del cloud computing e permette una varietà di modelli di cloud ibrido.
Virtualizzando i propri server, un'organizzazione può utilizzare o fornire servizi di web hosting in modo economico e sfruttare al meglio le risorse di calcolo, storage e rete dell'intera infrastruttura. Dal momento che raramente i server impiegano tutta la potenza di calcolo disponibile 24 ore su 24, molte risorse rimangono utilizzate: secondo alcuni esperti, infatti, non è raro che un server venga usato solo al 15‑25% delle sue potenzialità. E poiché i carichi di lavoro vengono distribuiti solo su una piccola porzione dell'intero parco server di un'organizzazione, i server possono rimanere inattivi per ore o giorni occupando spazio prezioso all'interno del datacenter, consumando energia, e richiedendo comunque l'attenzione e l'impegno degli operatori IT per la loro manutenzione.
Attraverso la virtualizzazione dei server, un'organizzazione può creare decine di server virtuali (chiamati anche macchine virtuali o VM) su un singolo server fisico e garantire un utilizzo più efficace delle risorse hardware. Con un numero inferiore di macchine fisiche il datacenter diventa più efficiente, e grazie alla virtualizzazione le organizzazioni possono usare meglio le risorse disponibili e adattarsi dinamicamente alle esigenze di ciascun carico di lavoro in base alle sue variazioni.
Mission Control
Mission Control ti offre tutto ciò di cui hai bisogno per garantire il successo della tua virtualizzazione con AHV – dalla migrazione alle operazioni iniziali di base fino agli obiettivi avanzati.
Cos'è un server virtuale?
Un server virtuale è una “istanza” virtualizzata su un server fisico dedicato. Si tratta di uno spazio isolato con il proprio sistema operativo, le proprie policy, le proprie applicazioni e i propri servizi. Sebbene agisca in modo indipendente, risiede su un singolo server fisico insieme ad altre macchine virtuali, con le quali condivide le risorse software e hardware tramite un hypervisor. Ogni server virtuale è considerato un ospite del server fisico principale, che funge invece da host.
Come funziona la virtualizzazione server
Un amministratore IT può creare più macchine virtuali su un singolo server fisico e configurare ciascuna di esse in modo indipendente. A questo scopo utilizza un hypervisor, che talvolta viene chiamato anche monitor della macchina virtuale. Oltre a consentire l'isolamento del software dall'hardware del server, l'hypervisor serve anche da controller e organizza, gestisce e distribuisce le risorse tra tutte le macchine virtuali del server host.
Tramite l'astrazione, l'hypervisor organizza tutte le risorse del computer (come per esempio le interfacce di rete, lo storage, la memoria e i processori) e assegna a ciascuna un alias logico. L'hypervisor utilizza queste risorse per creare server virtuali, o VM. Ogni VM è composta da processori, memoria, storage e strumenti di rete virtualizzati, e sebbene si trovi circondata da altre macchine virtuali, non si “rende conto” di essere solo una delle tante VM presenti e agisce in modo completamente indipendente come fosse un singolo server fisico.
In questo modo l'organizzazione dispone di un server fisico con all'interno più computer separati e perfettamente funzionanti. Il server host può avere VM con sistemi operativi diversi e un'ampia varietà di applicazioni e sistemi che normalmente non potrebbero funzionare insieme.
Dal momento che l'hypervisor monitora e supervisiona tutte le VM del server host, può anche ridistribuire le risorse secondo necessità. Se per esempio una VM è inattiva durante la notte, le sue risorse di calcolo e storage possono essere riassegnate a un'altra VM che potrebbe aver bisogno di risorse supplementari in quel dato momento. Questo permette un utilizzo più completo ed efficiente delle risorse del server.
Se necessario, le VM possono anche essere spostate su altri server host con una semplice operazione di duplicazione o cloning. L'unico limite al numero di VM che un server host può ospitare è rappresentato dalle risorse del computer, quindi i computer più recenti con maggiori risorse possono supportare più VM.
La virtualizzazione server è una componente fondamentale del cloud computing. Molti esperti considerano la virtualizzazione dei server uno degli elementi principali del cloud computing (insieme ad altri componenti come l'automazione, il self‑service e il monitoraggio end‑to‑end). La virtualizzazione rende possibile il cloud computing perché consente di suddividere le risorse di un server tra più VM, e permette alle organizzazioni di poter scalare immediatamente al bisogno senza però dover rinunciare all'isolamento dei carichi di lavoro.
Tipi di virtualizzazione server
Esistono tre tipi di virtualizzazione server, e la differenza consiste principalmente nel grado di isolamento possibile per ciascuna VM.
- Virtualizzazione completa: questo tipo di virtualizzazione server è quello che più si avvicina a quanto descritto in precedenza. Le risorse di un server host fisico vengono suddivise per creare più macchine virtuali completamente separate l'una dall'altra, che agiscono in modo indipendente senza interferire con le altre VM presenti sull'host. In questo caso, l'hypervisor viene spesso definito hypervisor bare‑metal, dal momento che è installato direttamente sull'hardware fisico e agisce da layer tra l'hardware e le VM e i loro sistemi operativi distinti. L'unico aspetto negativo di questo tipo di soluzione è che anche l'hypervisor ha necessità specifiche in fatto di risorse, e questo può talvolta causare un rallentamento delle prestazioni. Con la virtualizzazione completa non è necessario che il server host abbia un sistema operativo.
- Para‑virtualizzazione: in questo caso, le VM sul server host non sono completamente ignare l'una dell'altra. Anche se in una certa misura le VM sono isolate, lavorano comunque insieme attraverso la rete. Dal momento che le VM svolgono autonomamente parte del lavoro di distribuzione delle risorse, l'hypervisor richiede meno potenza di calcolo per gestire l'intero sistema. Ai fini della para‑virtualizzazione, è necessario che il server host abbia un sistema operativo e che collabori con l'hypervisor attraverso comandi hypercall, che permettono all'hypervisor di creare e gestire le VM. Questa tipologia di virtualizzazione è nata in risposta ai problemi di prestazioni riscontrati dai primi hypervisor bare‑metal. Anziché essere installato direttamente sull'hardware fisico del server host, l'hypervisor diventa un layer tra il sistema operativo del server host e le VM. Oggi la para‑virtualizzazione è meno utilizzata, perché i server moderni sono progettati per lavorare meglio con gli hypervisor bare‑metal e supportarli in modo più efficace.
- Virtualizzazione a livello di sistema operativo, o ospitata: questo tipo di virtualizzazione elimina completamente la necessità di un hypervisor. Tutte le funzionalità di virtualizzazione sono abilitate dal sistema operativo del server host, che fa le veci dell'hypervisor. Una limitazione di questa tipologia di virtualizzazione consiste nel fatto che sebbene ogni VM possa operare in modo indipendente, tutte devono utilizzare lo stesso sistema operativo del server host: ciò significa che condividono anche i file binari e le librerie comuni del sistema operativo host. Considerato il metodo più elementare di virtualizzazione dei server, richiede meno risorse rispetto alle altre tipologie per essere gestito e manutenuto. Non dovendo duplicare un sistema operativo per ogni VM, la virtualizzazione a livello di sistema operativo consente di supportare migliaia di VM su un singolo server. Tutto questo però implica uno svantaggio, perché comporta un single point of failure: se infatti il sistema operativo host viene attaccato o non funziona per qualche motivo, anche tutte le VM in esso contenute ne risentono.
Vantaggi della virtualizzazione server
I vantaggi della virtualizzazione server includono:
- Utilizzo più efficiente delle risorse dei server con riduzione dell'hardware fisico e dei relativi costi
- Risparmi derivanti dal consolidamento dei server, dalla riduzione del footprint dell'hardware e dall'eliminazione delle risorse inutilizzate o inattive
- Incremento della versatilità dei server, con la possibilità di creare VM con sistemi operativi e applicazioni differenti
- Miglioramento delle prestazioni delle applicazioni grazie alla possibilità di utilizzare le VM per carichi di lavoro dedicati
- Implementazione più rapida dei carichi di lavoro con funzionalità semplici e veloci di duplicazione e cloning delle VM, e la flessibilità di poter spostare le VM su server host diversi in caso di bisogno
- Aumento della produttività e dell'efficienza dell'IT grazie alla riduzione dello sprawl hardware e delle complesse attività di gestione e manutenzione di un gran numero di server fisici
- Vantaggi aggiuntivi per il disaster recovery e il backup grazie alla replica semplice delle VM esistenti, alle snapshot, e alla possibilità di spostare le VM a piacimento
- Diminuzione dei consumi energetici, grazie alla riduzione del numero di macchine fisiche che occupano spazio e necessitano di raffreddamento e alimentazione
- Riduzione delle minacce alla sicurezza grazie all'isolamento di ogni VM su un server host: se una VM subisce un attacco, le altre non vengono necessariamente compromesse
Svantaggi della virtualizzazione server
Nonostante i numerosi vantaggi, la virtualizzazione server presenta anche delle criticità:
- La gestione delle licenze software può rivelarsi complessa e costosa, dal momento che un server fisico può ospitare decine di VM diverse con un'ampia gamma di applicazioni e servizi. Per esempio, la virtualizzazione completa dei server comporta l'esistenza di uno specifico sistema operativo per ciascuna macchina virtuale, e ognuno di questi sistemi operativi richiede una licenza separata
- Un guasto a un server host può influire negativamente su tutte le VM che ospita: questo significa che per esempio in caso di problemi diverse applicazioni smetteranno di funzionare, anziché una sola
- Se l'IT non monitora accuratamente la loro collocazione e i tempi e le modalità di utilizzo di ciascuna, la moltiplicazione incontrollata delle VM (o sprawl) può diventare un problema: creare nuove istanze infatti è così semplice che molte VM vengono utilizzate temporaneamente per i test e poi abbandonate quando non più necessarie; ma se non vengono effettivamente eliminate dal sistema, potrebbero continuare a consumare energia e risorse in background, anziché liberarle per le altre VM attive
- Senza una pianificazione lungimirante della progettazione e della creazione delle VM, le prestazioni del server possono essere rallentate dall'eccessivo numero di VM presenti sull'host, specialmente in virtù della loro richiesta di risorse di rete e di memoria
La virtualizzazione server è sicura?
La virtualizzazione server presenta alcuni vantaggi intrinseci in termini di sicurezza. Per esempio, i dati vengono archiviati in un luogo centralizzato e abbastanza semplice da gestire, anziché essere lasciati su dispositivi non autorizzati o meno sicuri come i dispositivi edge o di proprietà degli utenti finali. L'isolamento delle VM aiuta anche a garantire l'isolamento da attacchi, malware, virus e altre vulnerabilità.
Grazie al controllo dettagliato degli accessi garantito dalla virtualizzazione, l'IT può sorvegliare efficacemente chi può accedere ai dati archiviati nel sistema. La microsegmentazione viene spesso utilizzata per consentire alle persone di accedere solo ad applicazioni o risorse specifiche, anche a livello di singolo carico di lavoro. Inoltre, la virtualizzazione dei desktop aiuta a garantire l'aggiornamento e il patching dei sistemi operativi e delle applicazioni da parte dei team IT, operazioni che gli utenti finali potrebbero non riuscire a portare a termine indipendentemente.
Gli hypervisor comportano inoltre meno rischi per la sicurezza, grazie a una superficie di attacco ridotta rispetto alle soluzioni hardware in virtù della loro capacità di funzionare con un numero inferiore di risorse. Inoltre si aggiornano automaticamente, il che contribuisce a mantenerli protetti dall'evolversi delle minacce.
La virtualizzazione server però può comportare anche alcuni rischi per la sicurezza. Uno dei più comuni è dato dalla maggiore complessità di un ambiente virtualizzato. Dal momento che è abbastanza semplice duplicare le VM e spostare i carichi di lavoro in posizioni diverse, per l'IT diventa più difficile seguire e applicare rigorosamente le best practice in materia di sicurezza, o mantenere configurazioni e policy coerenti in tutto l'ecosistema.
Anche la moltiplicazione incontrollata delle VM può costituire un rischio per la sicurezza. Le VM inattive e abbandonate non solo continuano a consumare risorse ed energia, ma è anche probabile che non vengano patchate o aggiornate – il che le rende vulnerabili e potenzialmente a rischio di attacco.
Anche se l'isolamento delle VM è in grado di limitare i rischi per la sicurezza, non può comunque mitigare gli effetti di un attacco DDoS (Distributed Denial of Service). Se un attacco DDoS influisce sulle prestazioni di una VM colpendola con un'ondata di traffico fraudolento, anche le altre VM che condividono le risorse del server host ne risentiranno.
L'IT può ridurre i rischi per la sicurezza associati alla virtualizzazione server seguendo alcune best practice, come per esempio: mantenere tutti i software e i firmware aggiornati nell'intero sistema; installare e aggiornare antivirus e altri software progettati per le soluzioni di virtualizzazione; controllare chi accede al sistema; crittografare il traffico di rete; eliminare le VM inutilizzate; eseguire backup regolari delle VM e dei server fisici; e creare e implementare una policy utente chiara e dettagliata per le VM e i server host.
Use case per la virtualizzazione server
- Consolidamento del datacenter: grazie alla virtualizzazione server un'organizzazione può ridurre il fabbisogno di hardware fisico e tagliare i costi di alimentazione e raffreddamento.
- Ambienti di test: creare nuove istanze VM ed eseguirne il provisioning è semplicissimo, e molte organizzazioni le utilizzano per le operazioni di sviluppo e il collaudo.
- Virtualizzazione desktop: la Virtual Desktop Infrastructure garantisce vantaggi in fatto di flessibilità, centralizzazione della gestione, sicurezza e semplicità.
- Backup e disaster recovery: la virtualizzazione è un ottimo modo per semplificare le attività di backup e disaster recovery, dal momento che consente di eseguire facilmente backup e snapshot delle VM permettendo di ripristinarle rapidamente in caso di incidenti.
- Cloud computing: il cloud computing si basa ampiamente sulla virtualizzazione e sull'automazione.
- Maggiore disponibilità: la migrazione in tempo reale delle VM consente alle organizzazioni di spostare una VM da un server fisico all'altro senza interrompere i servizi. La virtualizzazione permette inoltre ai sistemi e alle applicazioni business‑critical di funzionare anche durante i cicli di manutenzione o i test di nuove implementazioni.
- Supporto per più piattaforme: con la virtualizzazione, le organizzazioni possono eseguire una varietà di carichi di lavoro con sistemi operativi diversi senza la necessità di hardware dedicato per ciascun SO.
Implementare la virtualizzazione server
Quando si pianifica l'implementazione della virtualizzazione server all'interno di un'organizzazione, ci sono alcuni passaggi importanti da tenere a mente. Ecco alcune best practice che possono tornare utili.
- Creare un piano: prima di mettere in atto concretamente un'iniziativa, assicurati che tutte le parti interessate comprendano le ragioni per cui l'organizzazione ha bisogno di una piattaforma di virtualizzazione. Prendi in considerazione i costi e le potenziali complessità. Come si inserisce questa iniziativa all'interno del tuo business plan?
- Analizzare il mercato e la concorrenza: è importante valutare l'hardware e le potenziali soluzioni per farsi un'idea della portata del progetto. Quali soluzioni sono disponibili? Cosa utilizza la concorrenza? In questa fase, una valutazione adeguata può contribuire in maniera determinante al successo dell'implementazione.
- Testare e sperimentare: è buona prassi provare tutte le potenziali soluzioni per vedere come funzionano nella realtà e in che modo influiscono sull'operatività quotidiana. L'IT sarà in grado di gestire facilmente il lavoro che si verrà a creare? Il personale IT deve sentirsi a proprio agio con una determinata soluzione prima di prendere una decisione in merito all'acquisto. Saranno loro a gestirla e a farla funzionare, e dovranno essere ben consapevoli delle potenziali insidie e sfide che la soluzione presenta.
- Valutare i requisiti di business: la soluzione proposta soddisfa le esigenze specifiche della tua organizzazione in fatto di virtualizzazione? Come influirà sulla sicurezza dell'infrastruttura IT, sulla conformità, sui piani di disaster recovery e così via? Il personale IT deve comprendere perfettamente le implicazioni della soluzione sull'intero ecosistema.
- Cominciare in piccolo e scalare progressivamente: se la tua organizzazione non ha familiarità con la virtualizzazione, è opportuno sperimentare con una piccola implementazione su sistemi non critici, in modo che l'IT possa apprendere ciò che è necessario per l'esecuzione e la gestione quotidiana.
- Sviluppare delle linee guida: sarà necessario analizzare e pianificare il provisioning delle VM, il loro ciclo di vita e il modo in cui verranno monitorate. Un set di linee guida ti aiuterà a non sforare i budget, a evitare lo spreco di risorse e la moltiplicazione incontrollata delle VM, e a rispettare le prassi e le responsabilità concordate per la manutenzione del sistema.
- Scegliere gli strumenti giusti: anche dopo aver scelto una piattaforma di virtualizzazione, dovrai prendere in considerazione l'acquisto di strumenti aggiuntivi che ti aiutino a sfruttare le funzionalità più avanzate della soluzione e a gestire meglio il sistema.
- Non trascurare l'automazione: assicurati che il personale IT conosca e comprenda le pratiche e gli strumenti per l'automazione, dal momento che l'automazione va di pari passo con la virtualizzazione.
Best practice per la gestione delle VM
Sebbene la virtualizzazione dei server abbia come vantaggio la centralizzazione e la semplificazione della gestione, può anche comportare alcune criticità – soprattutto se il personale IT non ha familiarità con le tecniche e le pratiche di virtualizzazione. Ecco alcune best practice per gestire le VM in modo efficiente.
Ridurre la moltiplicazione incontrollata delle VM tramite la gestione self‑service: come già detto in precedenza, è molto facile creare nuove VM, ma è ancora più facile dimenticarsene una volta che non servono più. Con la gestione self‑service delle VM, la responsabilità di eliminare le VM inutilizzate spetta all'utente finale. Self‑service significa che gli utenti hanno la responsabilità di richiedere personalmente le VM di cui hanno bisogno, il che semplifica la loro gestione (e rimozione) in autonomia.
Utilizzare dei template per dimensionare correttamente le VM: creare VM con più risorse di quelle realmente necessarie può essere una tentazione a cui è difficile resistere. Ma la semplice aggiunta di CPU non migliora necessariamente le prestazioni, e anzi spesso comporta uno spreco di risorse. Creare dei template per le VM per svolgere funzioni specifiche può contribuire a ridurre la tentazione dell'overprovisioning.
Trovare gli strumenti giusti per monitorare le prestazioni: gli strumenti in dotazione con l'hypervisor e la piattaforma di virtualizzazione possono offrirti informazioni preziose sulle prestazioni delle macchine virtuali. Ma quando gli ambienti scalano e diventano più grandi avrai bisogno di strumenti più potenti in grado di garantire un controllo più approfondito sulle VM inutilizzate, e di offrire informazioni dettagliate sull'efficienza della tua implementazione e sulle prestazioni complessive.
Fornire le autorizzazioni adeguate per garantire la sicurezza delle VM: in un ambiente virtualizzato, l'IT può delegare le attività di gestione ad altri utenti – ma è importante scegliere gli utenti giusti. Assicurati di essere in grado di stabilire una gerarchia che indichi quali parti dell'infrastruttura richiedono una determinata autorizzazione, e di poter assegnare e revocare le autorizzazioni in modo semplice secondo necessità.
Abilitare l'accesso da remoto tramite una VPN e l'autenticazione a più fattori: dal momento che i modelli di lavoro ibridi hanno portato un numero sempre maggiore di persone a lavorare da casa, è importante disporre di modalità efficienti di accesso da remoto all'ambiente virtualizzato. L'ideale è usare una connessione VPN con autenticazione a più fattori.
Utilizzare una piattaforma di backup e ripristino progettata per le VM: quando esegui il backup di un server host con delle VM, assicurati di scegliere una piattaforma di backup che offra la possibilità di ripristinare i file delle singole VM.
Nutanix e la virtualizzazione server
Nutanix conosce a fondo la virtualizzazione server e sa bene quanto sia importante per incentivare e migliorare la capacità di un'organizzazione di lavorare efficientemente e proficuamente. Per questo offriamo una gamma di strumenti e soluzioni di virtualizzazione progettate per semplificare l'intero processo di virtualizzazione, dall'implementazione alla gestione quotidiana.
Con Nutanix AHV puoi goderti tutti i vantaggi della virtualizzazione, senza compromessi. Progettato per gli ambienti cloud ibridi di oggi, AHV rende semplici e intuitive le attività di implementazione e gestione delle VM e dei container. Grazie alla sicurezza self‑healing e alla data protection automatizzata con disaster recovery, alle analitiche dettagliate e non solo, Nutanix AHV ti offre tutto ciò di cui hai bisogno tagliando i costi e la complessità.