L’ambiente di virtualizzazione Open Source, affidabile, flessibile e semplice da usare, che implementa molte delle caratteristiche di una piattaforma Enterprise. Il tutto, per semplificare le implementazioni sia in ambiente di sviluppo che in produzione.
Proxmox VE è una piattaforma di virtualizzazione, ossia un Hypervisor di tipo bare metal realizzato su una distribuzione GNU Linux. Proxmox implementa ed integra in un’unica soluzione due interessanti tecnologie di virtualizzazione: KVM e LXC.
La distribuzione GNU Linux sulla quale “poggia” Proxmox, alla data di questo articolo, è una Debian 9 «stretch» a 64 bit; che ne garantisce indiscutibile stabilità ed affidabilità.
L’ambiente è pronto in pochi minuti e permette di eseguire facilmente macchine e appliance virtuali, il tutto gestibile tramite una semplice ed efficace interfaccia web.
Utilizzando più nodi hardware è possibile configurare un’intera infrastruttura virtuale, costruendo un cluster di risorse ridondato per l’alta affidabilità, rendendo Proxmox VE un prodotto eccellente sia alla Piccola Media Impresa che al mondo Enterprise. Un Virtual Data Center con con indubbi vantaggi in qualsiasi tipo di ambiente.
Le caratteristiche generali
Proxmox VE è una piattaforma Open Source completa di tutto ciò che serve per la virtualizzazione aziendale. Una soluzione all-inclusive che integra strettamente hypervisor KVM e containers LXC, con funzionalità di Storage e Software Defined Networking su un’unica piattaforma. Inoltre gestisce facilmente cluster ad alta disponibilità e strumenti di disaster recovery con una comoda ed efficace interfaccia di gestione web.
La sua capacità di gestire, da un’unica interfaccia web di gestione, le due diverse tecnologie: KVM (Kernel-based Virtual Machine) per le macchine virtuali e LXC per i containers, fa di Proxmox VE lo strumento ideale per gestire l’intero Stack del tuo Virtual Data Center.
Si può scaricare gratuitamente dal sito ufficiale di Proxmox; ed una volta ottenuta la ISO, si installa in pochi minuti su un normale hardware per PC x86. Vale la pena però qui di ricordare che è indispensabile che la CPU abbia il supporto hardware per la virtualizzazione.
High Availability Cluster
Proxmox VE è un Cluster High Availability multi-nodo basato sull’ormai matura tecnologia Linux HA technology, tramite la quale è possibile creare servizi HA affidabili.
Tramite il Cluster, infatti, tutte macchine virtuali ed i containers possono essere semplicemente creati e gestiti tramite la console di gestione. Inoltre, questi potranno migrare su altri nodi del cluster in caso di guasto del nodo sul quale sono in esecuzione.
Macchine Virtuali e Containers
Non solo quindi, una soluzione per eseguire le tue macchine virtuali, ma anche e soprattutto per la creazione di containers per applicazioni verticali. Ciò comporta ovvi vantaggi sia in termini di footprint, sia in termini di prestazioni complessive.
Infatti, sovente può accadere di dover realizzare e rendere disponibile soltanto un’applicazione. In questi casi non è necessario installare un intero sistema operativo virtuale per eseguire quella data applicazione, ma potrebbe essere desiderabile «virtualizzare» esclusivamente l’applicazione stessa.
Ecco quindi che ci possono molto tornare utili i containers.
Basta dare un’occhiata all’immagine qui sopra che comprendere al volo le sostanziali differenze che intercorrono tra i due modelli di virtualizzazione. Voglio però suggerirti il post Differenza tra Macchina Virtuale e Container, con qualche utile approfondimento sull’argomento.
Utilizzando i containers, infatti, si può sfruttare il sistema operativo di macchina (Host) per tutto ciò che riguarda l’applicazione finale che si vuole porre in esecuzione; senza comunque rendere necessario virtualizzare un ulteriore sistema operativo. Con ovvi benefici in termini di gestione, manutenzione, semplicità d’uso e di performance.
La console di Management
Dalla console di management è possibile gestire tutto o quasi:
- Gestione di utenti e gruppi (Role-based Administration) per definire “chi puo fare cosa” all’interno dell’ambiente di virtualizzazione
- Autenticazione basata su Microsoft Active Directory, LDAP, Linux PAM, oppure tramite il built-in Proxmox VE authentication server.
- Gestione centralizzata dei nodi del Cluster
- Storage e Custer Filesystem
Per le operazioni più “profonde” dedicate agli utenti più esperti, Proxmox VE è arricchito da una Unix Shell. Un’interfaccia a riga di comando per qualsiasi componente dell’ambiente virtuale.
Il Networking
Per la definizione delle reti, le Proxmox VE utilizza fino a 4094 interfacce Bridge. In pratica un bridge può essere assimilato ad un LAN Switch fisico del mondo reale, ma è implementato a livello software.
Praticamente tutte le macchine virtuali ed i containers possono condividere anche lo stesso Bridge, se necessario. Il che sarebbe come se un cavo di rete virtuale di ogni macchina virtuale, fosse collegato allo stesso Switch. Il che, in molti casi è un grane vantaggio. Infine, per connettersi al mondo esterno, i Bride sono associati alle interfacce fisiche di rete (ossia al hardware) disponibili nella macchina host.
Il Bridged Networking di Proxmox è molto flessibile, tanto che possono essere definite VLANs (IEEE 802.1q) ele insterfacce fisiche di rete possono essere aggregate e combinate in Bonding in modo eliminare Single Point of Failure riconducibili a fattore della rete fisica. Il tutto sfruttando la potenza del sistema operativo GNU Linux sottostante.
Lo Storage
La flessibilità nella gestione dello storage di Proxmox VE è indiscutibile. Le macchine virtuali possono essere contenute in uno o più storage locali, o in storage condivisi, con tecnologia NFS o SAN. In ultima analisi, non esistono limiti alla complessità della configurazione, potendo essere configurati tutti gli storage che si preferiscono.
È utile ricordare che allocare le macchine all’interno di uno storage condiviso, si ottiene il grande vantaggio di poter migrare l’istanza di macchina virtuale in esecuzione, da un nodo all’altro, senza down-time.
Questi i tipi di network storage disponibili e supportati in Proxmox VE:
- LVM Group
- NFS Share
- CIFS
- Ceph RBD
- Direct to iSCSI LUN
- GlusterFS
- CephFS
Backups
Sapiamo fin troppo bene che in qualsiasi ambiente sensibile IT è estremamente sensibile a guasti e corruzioni di vario tipo. L’ambiente di virtualizzazione Proxmox VE è già completo ti tutto ciò che serve per eseguire i backup delle macchine virtuali e dei containers. Una soluzione integrata in grado di sfruttare tutte le caratteristiche degli storage supportati.
Le funzionalità di Backup, già incluse in Proxmox VE, sono state progettate per ottenere backup veloci e comprensivi dei file di configurazione di VM macchina virtuale) e CT (container). Ciò permette il ripristino delle istanze virtualizzate in poco tempo e con il minimo sforzo.
Il tutto condito con uno Scheduled Backup di tutto rispetto, programmabile per giorno ed orario; oltre che poter agire, sia sul nodo fisico che su qualsiasi VM o CT, senza limitazioni.
Il Firewall
Ultimo, ma non ultimo (last, but not least), una interessante funzionalità a corredo dell’ambiente è il Firewall. Ossia, la possibilità di definire regole di firewall a protezione dell’intera infrastruttura virtualizzata, ma ache della singola VM oppure del singolo container.
È così possibile definire regole a protezione sia del cluster nel suo insieme, che del host, che di ogni singola istanza di macchina virtuale o di container.
Conclusioni
Sono ormai da tempo superati i tempi in cui vigeva la rigida regola: una-macchina/un-sistema-operativo. Ora che a seguito della importante accelerazione data dagli strumenti per la virtualizzazione possiamo teoricamente virtualizzare tutto o quasi, Proxmox VE sembra davvero essere un eccellente strumento in questo senso.
Personalmente l’ho già implementata da un po’ di tempo nel laboratorio di sviluppo, con considerevoli vantaggi in termini economici, nonché di riduzione di spazio. Per non parlare dei consumi energetici! Oggi, non riesco ad immaginare il mio laboratorio di sviluppo senza un ambiente di virtualizzazione dove testare intere infrastrutture in modo così semplice e potente.
Insomma, una tecnologia davvero interessante che merita sicuramente di essere messa alla prova per saggiarne le qualità. Magari, perché no, su quel server hardware dalle modeste prestazioni che ormai giace spento in cantina, in attesa di essere riciclato in qualche modo.
Sistemista informatico senior. Consulente informatico e fondatore di Diprimio.com per il supporto, l’assistenza e la manutenzione di infrastrutture informatiche a clienti business.