Principale > Blog sul backup e sul ripristino > Scegliere la giusta piattaforma di virtualizzazione: Spiegazione di Proxmox e KVM
Aggiornato 4th Febbraio 2025, Rob Morrison

Nel contesto della tecnologia di virtualizzazione, la chiave del successo dell’implementazione potrebbe non essere solo la scelta della piattaforma più popolare, ma piuttosto quella che meglio si adatta alle vostre esigenze aziendali. KVM e Proxmox sono due esempi importanti di piattaforme di virtualizzazione, ognuna delle quali presenta vantaggi unici per la gestione delle macchine virtuali. Questo articolo esamina le caratteristiche e i punti di forza di ciascuna di esse, che probabilmente sono rilevanti per voi, e le differenze principali tra di esse.

Cos’è KVM e come fa?

KVM, noto anche come Kernel-based Virtualization Machine, è una tecnologia software open-source che può essere installata su macchine Linux per creare e gestire macchine virtuali (VM) che girano indipendentemente l’una dall’altra.

KVM può essere integrato in qualsiasi macchina Linux dotata di una CPU che consente le estensioni di virtualizzazione. Trasforma quindi il kernel Linux in un hypervisor bare metal/tipo 1, collegando l’hardware fisico di hosting con ciascuna delle macchine virtuali indipendenti.

Capire l’hypervisor KVM

L’hypervisor KVM, un hypervisor di tipo 1, garantisce interazioni perfette tra l’hardware fisico e le macchine virtuali (VM). Fornisce a ogni macchina virtuale che controlla tutti i servizi di un sistema fisico, compresi i sistemi di input e output virtuali e l’hardware virtuale come processore, memoria, schede di rete e storage. In altre parole, ogni macchina virtuale modella il computer reale.

L’hypervisor KVM supporta un’ampia gamma di sistemi operativi guest, tra cui distribuzioni Linux, Windows, Haiku, macOS, Solaris e AROS. Permette inoltre la migrazione live, consentendo agli amministratori di trasferire le macchine virtuali attive su host diversi senza subire interruzioni del servizio.

Un ambiente virtualizzato incentrato su KVM viene gestito utilizzando strumenti come Libvirt e Qemu. QEMU viene utilizzato sia per emulare i dispositivi hardware sia per gestire in modo efficiente la creazione di macchine virtuali, mentre Libvirt è utilizzato principalmente per monitorare e controllare le macchine virtuali su KVM.

Vantaggi dell’uso di KVM per le macchine virtuali

KVM è considerato la scelta migliore per la gestione delle macchine virtuali grazie alle sue caratteristiche e ai suoi vantaggi. Questa sezione esplora alcune delle caratteristiche e dei vantaggi che rendono KVM la scelta migliore per la gestione delle macchine virtuali.

  • Sicurezza

Le macchine virtuali gestite con KVM sono coperte dalle funzioni di sicurezza del sistema operativo Linux, che includono Security Enhanced Linux (SELinux) e AppArmor. Questi strumenti contribuiscono a garantire il funzionamento indipendente di ciascuna macchina virtuale, impedendo le interferenze tra le macchine virtuali e rafforzando al contempo la privacy e la governance dei dati.

  • Prestazioni elevate

Tutti i sistemi operativi KVM utilizzano la sofisticata gestione dello scheduling e della memoria di Linux, consentendo un’elaborazione e un utilizzo di input/output più ottimizzati per le macchine virtuali gestite. KVM utilizza estensioni hardware come AMD-V e Intel VT-x, che consentono un ambiente di virtualizzazione molto efficiente. Inoltre, il supporto di KVM per più macchine virtuali e gli ampi spazi di memoria lo rendono in grado di gestire in modo efficiente sia carichi di lavoro di piccole dimensioni che di livello aziendale.

  • Stabilità

KVM si basa su un codice sorgente maturo (Kernel Linux), che offre una solida base per applicazioni di livello aziendale. Il Kernel Linux è stato utilizzato in diverse applicazioni aziendali per un lungo periodo di tempo ed è ben supportato da una comunità open-source.

  • Flessibilità

KVM funziona bene con molte configurazioni hardware e, come tale, può offrire diverse opzioni alle aziende durante le installazioni. Con KVM, gli amministratori dei server possono allocare efficacemente risorse come la memoria o lo storage a qualsiasi macchina virtuale. Consente inoltre il thin provisioning, che permette di allocare le risorse alle macchine virtuali solo quando necessario.

  • Supporta diversi sistemi operativi

All’interno del kernel Linux, KVM consente un’area di virtualizzazione che rende possibile l’esecuzione di più sistemi operativi, come Windows e BSD, come sistemi operativi guest su una macchina host. Questo è spesso possibile grazie all’integrazione di QEMU.

Integrazione di KVM nel kernel Linux

KVM è stato integrato nel kernel Linux nel 2007, trasformando Linux in un versatile hypervisor. Il fatto che KVM sia un modulo del kernel si integra perfettamente nel framework esistente di Linux, sfruttando appieno le sue caratteristiche di memoria, scheduler, gestione e sicurezza. In questo modo è possibile attivare funzioni di virtualizzazione avanzate e garantire un’allocazione efficiente delle risorse tra le macchine virtuali. L’integrazione elimina la necessità di installare hypervisor esterni e consente a KVM di trarre grandi vantaggi dall’ecosistema Linux in termini di sicurezza, ottimizzazione delle prestazioni, manutenzione e aggiornamenti.

Architettura e componenti di KVM

KVM è un modulo del kernel direttamente integrato nel kernel Linux, il che lo rende un processore di tipo 1. KVM utilizza le capacità di virtualizzazione hardware dei moderni processori (Intel VT-x e AMD-V) per gestire diverse macchine virtuali su un singolo sistema host. La sua architettura comprende:

  • Il sistema operativo host: è essenzialmente il sistema operativo Linux in esecuzione sull’hardware reale. Il sistema operativo host è responsabile della gestione di risorse quali memoria, CPU e dispositivi di ingresso/uscita.
  • Modulo Kernel KVM: KVM funge da hypervisor principale e crea un ambiente di virtualizzazione trasformando il kernel Linux. KVM è un’interfaccia (/dev/kvm) che si fonde con gli strumenti dello spazio utente per gestire le macchine virtuali. Il modulo consente la gestione della memoria, con il supporto di tecniche di memoria virtuale e di virtualizzazione della CPU tramite estensioni hardware.
  • QUEMU: L’emulatore rapido QUEMU è un’applicazione user-space che si integra con KVM per modellare i dispositivi hardware delle macchine virtuali e garantire prestazioni quasi native. È anche utile per modellare le operazioni di input/output e gestire il ciclo di vita delle macchine virtuali.
  • Macchine virtuali: Ogni sistema operativo guest opera in un ambiente virtuale indipendente creato da KVM e QUEMU.
  • Componenti hardware virtuali: Sono costituiti da CPU virtuali (modellate sulla base della CPU fisica dell’host), memoria virtuale e dispositivi di input/output virtuali.
  • Strumenti di gestione KVM: comprendono strumenti essenziali come libvirt e virsh, utilizzati per il monitoraggio e la gestione efficace delle macchine virtuali basate su KVM.

Requisiti hardware per KVM

Quando si considerano i requisiti hardware di KVM per un’esperienza di virtualizzazione di successo, occorre tenere presenti i seguenti fattori:

Requisiti del processore

  • Estensioni di virtualizzazione: La CPU deve consentire le estensioni di virtualizzazione hardware. Esempi di CPU che garantiscono prestazioni ottimali sono Intel VT-x (tecnologia di virtualizzazione Intel) e AMD-Virtualization.
  • Core e thread sufficienti: Più core e thread ha il processore, meglio può gestire più macchine virtuali contemporaneamente.

Memoria (RAM): Ogni VM occupa una porzione della RAM dell’host, quindi la RAM necessaria per un’esperienza di virtualizzazione efficiente dipende dal numero di VM che si intende gestire e dai loro requisiti di risorse collettive. In genere si consiglia di allocare almeno 1-2 GB di RAM per ogni macchina virtuale. È necessario prevedere una quantità di RAM sufficiente anche per il sistema operativo del server host e per l’hypervisor KVM.

Memoria: È necessario uno spazio di archiviazione adeguato per il sistema operativo host, il software KVM e l’immagine del disco virtuale per ogni macchina virtuale. Fortunatamente, KVM consente diverse opzioni di archiviazione, tra cui reti di archiviazione (SAN), NAS (Network-attached storage) e unità disco locali. Si noti che la scelta e la velocità dello storage selezionato gioca un ruolo fondamentale per le prestazioni delle macchine virtuali.

Schede di interfaccia di rete (NIC): Per garantire una forte linea di comunicazione tra le macchine virtuali e il mondo esterno, è indispensabile una connessione di rete affidabile. È necessaria almeno una NICS per la macchina host, ma spesso si utilizzano più NIC per separare il traffico di gestione, di archiviazione e della macchina virtuale, in modo da ottenere le migliori prestazioni e sicurezza.

Scheda madre e BIOS: Per gestire in modo efficace e sicuro le macchine virtuali, la scheda madre del server deve essere in grado di supportare la tecnologia di virtualizzazione e le impostazioni del BIOS devono essere ottimizzate per le estensioni di virtualizzazione hardware.

Raffreddamento e alimentazione: L’esecuzione simultanea di più macchine virtuali rischia di sovraccaricare il sistema di raffreddamento e l’alimentazione del server. Assicuratevi di disporre di meccanismi di raffreddamento sufficienti e di un’alimentazione sufficiente a gestire il carico di lavoro extra generato dalle macchine virtuali.

Che cos’è Proxmox e quali sono le sue caratteristiche principali?

Proxmox può essere descritto come una piattaforma di virtualizzazione open-source che semplifica il processo di gestione delle macchine virtuali, dello storage e delle configurazioni di rete. Utilizza due principali tecnologie di virtualizzazione: KVM (Kernel-based Virtual Machine) per la virtualizzazione completa e LXC (Linux Containers) per la virtualizzazione leggera. Proxmox è stato originariamente creato per ambienti di livello aziendale che necessitano di ampie funzionalità di virtualizzazione e di un sistema flessibile ed espandibile.

Caratteristiche principali

  • Virtualizzazione dei server: Proxmox utilizza un codice sorgente libero, rilasciato sotto GNU AGLv3, che offre agli utenti la possibilità di utilizzare liberamente il software e di controllare il codice sorgente in qualsiasi momento. Inoltre, gli utenti hanno la possibilità di contribuire al progetto.
  • Virtualizzazione basata su container: Proxmox consente la virtualizzazione basata su container, che funziona come alternativa alla macchina completa perché condivide il kernel del sistema host.
  • Clustering: Proxmox può essere esteso a un ampio insieme di nodi in cluster, che spesso sono completamente integrati e funzionano con l’installazione predefinita. Questi cluster sono responsabili di garantire sia la tolleranza ai guasti che il bilanciamento del carico, consentendo alle macchine virtuali e ai container di passare da un nodo all’altro con tempi di inattività minimi.
  • Alta disponibilità: Il design di Proxmox supporta l’alta disponibilità. Ciò significa che, quando un nodo di un particolare cluster va in tilt, le macchine virtuali o i container ospitati su quel nodo si spostano automaticamente sul nodo successivo disponibile, evitando un’importante interruzione del servizio.
  • Gestione centrale: La linea di comando, la gestione basata sul web e l’interfaccia di programmazione delle applicazioni di Proxmox semplificano la gestione delle attività del data center.
  • Interfaccia di gestione basata sul Web: L’interfaccia di gestione basata sul web rende Proxmox molto facile da usare. L’interfaccia di gestione basata sul web consente all’utente di eseguire tutte le attività di gestione richieste utilizzando l’interfaccia grafica utente (GUI) integrata, eliminando la necessità di uno strumento di gestione separato. L’interfaccia web è accessibile da qualsiasi browser moderno e può fornire una panoramica della cronologia delle attività e dei registri di sistema per ciascun nodo. Grazie a questa funzione, l’utente può gestire un intero cluster da qualsiasi nodo senza la necessità di un nodo manager separato.
  • Migrazione live/online: La funzione di migrazione live/online di Proxmox consente di spostare le macchine virtuali attive da un nodo del cluster a un altro senza alcun svantaggio o effetto percepibile dall’utente finale. Gli amministratori possono avviare questo processo sia dal web che dalla riga di comando, riducendo al minimo i tempi di inattività nei casi in cui il sistema host deve essere messo offline per la manutenzione.
  • Supporta diversi sistemi operativi: Proxmox si integra bene con diversi sistemi operativi guest, tra cui versioni specifiche di Windows, Linux, BSD e Solaris. Questa caratteristica rende Proxmox una piattaforma ideale per diversi tipi di carichi di lavoro e ambienti di sviluppo.
  • Integrazione del server di backup di Proxmox: L’integrazione del server di backup di Proxmox garantisce backup efficienti, sicuri e affidabili per macchine virtuali, container e sistemi host. Proxmox consente di eseguire backup incrementali, che utilizzano l’ottimizzazione dello storage a livello di blocco per ridurre al minimo i tempi di archiviazione e di backup. L’integrazione del server di backup consente anche la crittografia dei dati sul lato client, rendendo i dati di backup impenetrabili agli aggressori.
  • Sicurezza estesa: L’accesso a ogni sistema utente di Proxmox è protetto dall’autenticazione a due fattori (2FA) e dal controllo degli accessi basato sui ruoli (RBAC). È presente anche un firewall integrato per gestire il traffico di rete e proteggere le risorse.

Esplorare l’ambiente virtuale Proxmox

Proxmox VE è più di un semplice strumento di virtualizzazione: è una piattaforma multifunzionale che consente un’ampia gamma di casi d’uso, dall’hosting di applicazioni web alla gestione di container per microservizi. Sebbene sia stato originariamente progettato per le esigenze delle aziende, Proxmox VE è in grado di adattarsi alle necessità di ambienti IT diversi, dalle piccole imprese agli istituti scolastici. Proxmox VE viene spesso utilizzato quando l’ottimizzazione delle risorse, la scalabilità e la facilità di gestione sono priorità assolute. È particolarmente noto per lo sviluppo di infrastrutture iperconvergenti, per il supporto dell’edge computing e per l’implementazione di soluzioni di disaster recovery. Inoltre, le capacità di integrazione di Proxmox garantiscono una connessione perfetta con i sistemi esistenti, contribuendo a migliorare l’efficienza delle operazioni IT complessive.

Proxmox VE include interessanti flussi di lavoro, come l’automazione delle attività tramite API e la creazione di modelli che, se compresi, possono migliorare l’efficienza. Proxmox beneficia anche di una comunità di utenti attiva e solida che migliora significativamente il suo ecosistema. Questo include la disponibilità di plugin, tutorial e forum che aiutano gli utenti a scoprire nuovi modi per ottimizzare ed estendere l’uso della piattaforma.

Strumenti di gestione disponibili in Proxmox

Per gestire efficacemente le risorse a disposizione, Proxmox offre diversi strumenti che aiutano a semplificare le attività, dalla gestione di base alle soluzioni avanzate di rete e storage. Alcuni di essi includono:

Interfaccia web Proxmox

L’interfaccia web di Proxmox è uno strumento di gestione potente ma di facile utilizzo che consente agli amministratori di controllare e monitorare l’intero sistema da un browser web. Questa GUI offre una panoramica dettagliata dell’intero cluster, delle macchine virtuali, dei container, dello storage e delle impostazioni di rete. Le sue funzioni includono l’allocazione delle risorse, la gestione delle macchine virtuali e dei container, la migrazione live, gli snapshot e i backup. Questo strumento è facile da gestire in remoto, in quanto vi si può accedere da qualsiasi dispositivo dotato di browser.

Interfaccia a riga di comando (CLI) di Proxmox

Poiché l’interfaccia a riga di comando di Proxmox può eseguire più operazioni di quelle disponibili nell’interfaccia grafica, è stata progettata per gli utenti avanzati. Proxmox utilizza strumenti standard di Linux come pvecli e pct (per i contenitori LXC) per interagire con il sistema. Due degli usi principali della CLI sono l’automazione delle attività e l’integrazione di Proxmox con altri strumenti.

Gestione dei cluster Proxmox

Proxmox supporta il clustering e può gestire più nodi da un’unica interfaccia utilizzando lo strumento di gestione del cluster Proxmox. Questo strumento può facilitare la creazione e la manutenzione di cluster HA (high-availability). Inoltre, assicura che le macchine virtuali e i container siano distribuiti su diversi nodi per migliorare le prestazioni.

Strumenti di gestione dello storage

Proxmox offre diverse opzioni di strumenti di gestione dello storage per gestire in modo efficiente diversi tipi di backend di storage. Questi strumenti supportano soluzioni di storage locale, condiviso e distribuito e sono in grado di:

  • Impostare pool di storage, volumi e autorizzazioni di accesso.
  • Allocare e gestire gli spazi su disco per macchine virtuali, container e backup.
  • Spostare lo storage tra i nodi del cluster senza interrompere i servizi.

Grazie alle impostazioni di storage tradizionali e avanzate, Proxmox offre agli amministratori la flessibilità di scegliere la soluzione più adatta alle loro esigenze.

Strumenti di monitoraggio

Proxmox dispone di strumenti di monitoraggio integrati che forniscono informazioni in tempo reale sulle metriche delle prestazioni del sistema. Questi strumenti consentono agli amministratori di monitorare l’utilizzo della CPU, il consumo di memoria, l’I/O del disco e l’attività di rete. Forniscono rappresentazioni visive delle risorse nel tempo, registri dettagliati degli eventi di sistema e possono essere impostati in modo da fornire avvisi per eventi specifici (come guasti hardware).

API e strumenti di automazione

Proxmox fornisce una solida API (REST API) per gli amministratori che desiderano automatizzare le attività e integrare il suo sistema con altri. L’API consente di accedere a tutte le funzionalità vicine disponibili nella GUI e nella CLI di Proxmox. L’API di Proxmox è spesso integrata con strumenti di automazione come Terraform e Ansible.

Opzioni e configurazioni di rete

La rete di Proxmox VE è un aspetto importante, responsabile di facilitare la comunicazione tra sistemi host, risorse virtuali e reti esterne. Ecco una panoramica delle opzioni e delle configurazioni di rete di Proxmox:

Interfaccia di rete

Proxmox supporta la configurazione da parte dell’utente delle interfacce di rete fisiche sul sistema host. Queste interfacce possono essere schede Ethernet o interfacce virtuali utilizzate da container o macchine virtuali. Si noti che le interfacce fisiche sono tipicamente assegnate alle connessioni di rete principali dell’host, mentre le interfacce virtuali sono collegate a interfacce di rete fisiche o a reti virtuali isolate.

Rete a ponte

La rete bridged è un’opzione molto comune in Proxmox. Consente alle macchine virtuali di essere collegate alla stessa rete del sistema host, rendendole facilmente accessibili sulla rete. Per impostazione predefinita, Proxmox crea un’interfaccia bridge (vmbr), che funge da switch virtuale e può essere assegnata alle macchine virtuali. Questa interfaccia bridge viene solitamente creata sul sistema host, in modo da facilitare la connessione all’interfaccia host, consentendo alle macchine virtuali di condividere la stessa rete IP.

Traduzione degli indirizzi di rete (NAT)

Il NAT consente alle macchine virtuali di accedere al lavoro esterno utilizzando indirizzi IP privati. Questa opzione di rete è perfetta quando non è necessario che le macchine virtuali siano accessibili dalla rete esterna. Le macchine virtuali sono posizionate dietro un router NAT, che mappa il loro IP privato sull’IP pubblico dell’host. L’host funge da gateway verso il mondo esterno.

Rete locale virtuale (VLAN)

Con Proxmox, le macchine virtuali possono essere installate su VLAN specifiche per isolare e organizzare la rete. Questo processo, chiamato “tagging VLAN”, è un modo efficace per migliorare la gestione della rete attraverso la segmentazione locale del traffico. Le macchine virtuali in Proxmox sono collegate alle VLAN attraverso un’interfaccia VLAN-bridge.

Interfaccia di bonding

Un’interfaccia di bonding, altrimenti nota come aggregazione di link, è meglio descritta come un’opzione di rete che consente di combinare diverse interfacce di rete in un’unica interfaccia logica. Ciò contribuisce a migliorare la larghezza di banda e a ridurre la duplicazione. Le modalità di bonding disponibili su Proxmox includono la Modalità 0 (Round-robin), la Modalità 1 (Backup attivo) e la Modalità 4 (LACP).

Configurazione IPv6

Proxmox supporta il protocollo Internet IPv6 aggiornato e consente agli utenti di configurare le proprie macchine virtuali e i propri container con indirizzi IP versione 6 per consentire la comunicazione all’interno delle reti moderne. IPv6, a differenza del suo predecessore, affronta l’esaurimento dello spazio e le inefficienze sia nel routing che nella gestione della rete. Inoltre, elimina la necessità di NAT ed è stato progettato con una sicurezza incorporata. La configurazione di IPv6 in Proxmox può essere effettuata sia a livello di host fisico che di ambienti virtualizzati.

Backup e ripristino Proxmox

Proxmox VE garantisce la sicurezza e la disponibilità dei dati in ogni momento, soprattutto in caso di guasti al sistema, problemi hardware o perdita accidentale di dati. Per raggiungere questo obiettivo, Proxmox VE mette a disposizione diversi strumenti e funzionalità che facilitano processi di backup e ripristino affidabili per macchine virtuali, container e interi cluster.

Ecco un approfondimento sulle funzionalità di backup e ripristino di Proxmox:

Tipi di backup di Proxmox: Proxmox VE supporta diversi tipi di backup, consentendo agli amministratori di scegliere le opzioni di backup che soddisfano adeguatamente le loro esigenze in termini di ambiente e carico di lavoro. I principali tipi di backup disponibili in Proxmox includono:

  • Snapshot Backup: Permette di catturare lo stato esatto di una macchina virtuale o di un container in qualsiasi momento.
  • Backup in modalità di arresto: consente di eseguire backup di file coerenti e affidabili.
  • Live Backup: facilita i backup mentre le macchine virtuali sono in esecuzione. Cattura lo stato della macchina virtuale online senza influire sulle sue prestazioni.

Pianificazione del backup: Proxmox VE dispone di un pianificatore integrato utile per i backup automatizzati, che consente agli amministratori di pre-schedulare i backup del sistema. In genere viene gestito tramite la GUI o la CLI di Proxmox. Con il pianificatore di Proxmox, l’utente può specificare la frequenza preferita dei backup (giornaliera, settimanale, mensile), l’ora e il periodo di conservazione per ciascun backup nella configurazione dell’automazione del backup. Questo riduce l’intervento umano nel processo e garantisce il mantenimento di backup regolari. I criteri di conservazione dei backup di Proxmox possono essere modificati per eliminare automaticamente i backup più vecchi per liberare spazio.

Backup di archiviazione: Proxmox consente di archiviare i backup in varie posizioni. I tipi di archiviazione dei backup supportati da Proxmox includono:

  • Archiviazione locale: Dischi locali collegati all’host Proxmox;
  • Archiviazione di rete: Condivisioni di rete come NFS (Network File System), CIFS (Common Internet File System) e SMB (Server Message Block).
  • Cloud: Integrazione con i servizi di archiviazione cloud, come l’archiviazione compatibile con S3.

Backup incrementali: Proxmox elimina la necessità di copiare tutti i dati ad ogni backup del sistema. Grazie ai backup incrementali, vengono salvate solo le modifiche apportate dall’ultimo backup, riducendo così le dimensioni del backup.

Monitoraggio e notifica dei backup: Proxmox VE offre funzionalità di monitoraggio e notifica che aiutano gli amministratori a essere informati sui backup. Ad esempio, nell’interfaccia web di Proxmox sono presenti strumenti di monitoraggio che consentono agli utenti di avere una visione chiara della cronologia e dello stato attuale dei backup, garantendone la regolare esecuzione e l’assenza di guasti.

Proxmox Backup Server (PBS): Il PBS è una soluzione di backup Proxmox dedicata, progettata per gestire i backup in modo efficiente. Per garantire la sicurezza dei file, include funzioni quali la deduplicazione, la compressione dei file e la crittografia.

Bacula Enterprise: Bacula Enterprise è una soluzione di backup di terze parti che funziona come alternativa a PBS. È estremamente sicura e dispone di un modulo Proxmox integrato nativamente, progettato per fornire prestazioni di ripristino rapide. Bacula offre un controllo più granulare sui backup rispetto a PBS, rendendolo la scelta preferita per specifici requisiti aziendali e normativi. Inoltre, supporta una gamma più ampia di cloud provider e di configurazioni di cloud ibrido, rendendo più facile garantire backup senza soluzione di continuità verso varie destinazioni.

Ecco un elenco completo di alcune delle funzionalità offerte da Bacula Enterprise per Proxmox:

  • Backup online basato su snapshot: I sistemi Bacula consentono di eseguire snapshot delle macchine virtuali Proxmox mentre sono in esecuzione. Ciò contribuisce a ridurre significativamente il tempo di inattività di una VM durante il processo di backup.
  • Backup a livello di immagine completa: Bacula offre una protezione completa dei dati abilitando il supporto del backup a livello di immagine completa per le macchine virtuali Proxmox.
  • Backup incrementali: Il sistema Bacula aiuta a conservare lo storage di backup di Proxmox supportando i backup incrementali. Questa funzione garantisce che vengano salvate e archiviate solo le modifiche apportate dopo l’ultimo processo di backup.
  • Integrazione del cluster Proxmox: Bacula aiuta a semplificare il backup delle macchine virtuali Proxmox supportando la scansione automatica dei cluster Proxmox per creare configurazioni di backup per ogni macchina virtuale.
  • Strategie di backup flessibili: Bacula garantisce agli utenti di Proxmox una certa flessibilità offrendo due diversi approcci ai backup. Questi includono la creazione di file di backup e l’installazione di Bacula Enterprise File Daemon.

Backup e ripristino in KVM

KVM può mancare di sistemi di backup integrati, ma offre una solida base per l’implementazione di strategie di backup.

Snapshot per il backup delle macchine virtuali: KVM consente di creare snapshot (disco e sistema) che catturano lo stato di una macchina virtuale in un momento specifico. Questi snapshot includono in genere il disco, l’immagine, lo stato della memoria e la configurazione della macchina virtuale, consentendo all’utente di tornare facilmente all’istantanea se necessario. Gli snapshot vengono creati su KVM con strumenti come virsh, utile solo per i backup a breve termine.

Backup con strumenti esterni: KVM sfrutta strumenti esterni come Libvirt, Rsync, Bacula e Amanda per facilitare i backup. Gli utenti di KVM possono anche utilizzare script personalizzati per gestire i backup. Questi script consentono di combinare comandi come virsh dumpxml per salvare le macchine virtuali.

Opzioni di backup live: Utilizzando QUEMU e uno spazio di archiviazione vitale come ZFM, KVM può consentire alle macchine virtuali di continuare a funzionare mentre viene eseguito il backup dei loro dischi. In questo modo, KVM può creare snapshot del disco della macchina virtuale e trasmettere tali snapshot alla posizione di backup.

Opzioni di archiviazione per il backup: KVM si integra bene con diversi backend di archiviazione e offre quindi flessibilità nella scelta dell’archiviazione dei backup. Le opzioni di archiviazione comunemente utilizzate includono l’archiviazione locale, l’archiviazione collegata alla rete (NFS o CIFS/SMB) e l’archiviazione nel cloud.

Bacula Enterprise: Bacula Enterprise è una soluzione software scalabile di terze parti per il backup e il ripristino che si integra con KVM per offrire solide funzionalità di backup. Alcune di queste caratteristiche includono:

  • Supporto per il backup completo: Bacula garantisce backup completi delle macchine virtuali KVM, mantenendo una registrazione esatta dell’intero stato della macchina virtuale, compresi i metadati e le immagini del disco. Consente inoltre di eseguire backup di macchine virtuali guest KVM senza installare software su client specifici.
  • Scalabilità: Il sistema di backup KVM di Bacula dispone di un potente motore di deduplicazione (Global Deduplication Engine) che aiuta a ottimizzare lo spazio di archiviazione dei backup e ha dimostrato la sua capacità di gestire ambienti su scala petabyte.
  • Backup incrementali: Bacula consente di risparmiare tempo di backup grazie al supporto dei backup incrementali, che assicurano che solo i nuovi dati vengano sottoposti a backup e aggiunti a quelli preesistenti. In questo modo si riducono sia i tempi che i requisiti di archiviazione dei backup.
  • Capacità di rilevamento automatico: La capacità di rilevamento automatico di Bacula elimina la necessità di determinare manualmente quale VM eseguire il backup quando si verificano modifiche ai dati.
  • Ripristino a livello di file: La granularità di alto livello di Bacula consente di ripristinare singoli file all’interno del backup di una VM senza dover ripristinare l’intera VM.
  • Supporta i backup online: Bacula consente di eseguire il backup delle macchine virtuali KVM mentre sono in esecuzione. In questo modo si possono evitare interruzioni sia per gli utenti che per le applicazioni.
  • Pianificazione del backup: Bacula Enterprise offre alle macchine virtuali KVM potenti capacità di automatizzazione del backup, consentendo agli amministratori di pianificare backup singoli o multipli delle macchine virtuali in una sola volta. Il sistema è anche in grado di riprovare i lavori di backup falliti o di inviare avvisi per intervenire.
  • Livelli di sicurezza eccezionalmente elevati: Bacula ha un’architettura unica che aumenta i livelli di protezione rispetto alle soluzioni standard, e la sicurezza è ulteriormente incrementata dall’esecuzione del server principale su Linux. Immutabilità, air gapping, crittografia e interfacce di sicurezza sono tutte opzioni di configurazione multiple, che riflettono lo sviluppo di Bacula per l’uso da parte di grandi organizzazioni di ricerca militari e governative.

Confronto tra le caratteristiche di Proxmox e KVM

Caratteristiche di Proxmox

Proxmox è una piattaforma di virtualizzazione completa open-source che utilizza soluzioni di virtualizzazione complete e basate su container per supportare sia KVM che LXC. Proxmox offre una gestione centrale e un’interfaccia web dettagliata che semplifica la gestione di macchine virtuali, container, storage e rete. Proxmox supporta il clustering HA, la migrazione live e le soluzioni di backup di livello aziendale con il Proxmox Backup Server integrato. La piattaforma offre una forte integrazione dello storage e il supporto di strumenti come Ceph, NFS, ZFS e ISCSI. Include anche il proprio firewall e strumenti di configurazione di rete. Inoltre, Proxmox beneficia di una vivace comunità online di utenti che contribuisce al suo ecosistema.

Caratteristiche di KVM (Kernel-based Virtual Machine)

KVM è una soluzione di virtualizzazione altamente efficiente, integrata direttamente nel kernel Linux. Supporta un’ampia gamma di sistemi operativi guest, tra cui Linux, Windows e BSD, offrendo una virtualizzazione assistita dall’hardware con Intel VT o AMD Technologies. Con i giusti strumenti esterni, KVM può supportare funzioni come la migrazione live, gli snapshot e l’allocazione delle risorse. KVM si integra perfettamente con vari strumenti di gestione come Libvirt, Proxmox e OpenStack per offrire un ambiente di virtualizzazione espandibile e versatile.

Metriche delle prestazioni: Proxmox vs. KVM

Efficienza di risposta

Proxmox integra KVM con strumenti aggiuntivi per la gestione degli ambienti virtuali, rendendolo altamente reattivo anche con carichi di lavoro di livello aziendale. La sua interfaccia e le sue caratteristiche di clustering gli consentono di monitorare e allocare le risorse in modo efficiente, riducendo al contempo i tempi di risposta nella gestione delle macchine virtuali. KVM, invece, è un hypervisor leggero, noto per le sue prestazioni quasi native grazie all’integrazione diretta con il sistema host (Linux). Tuttavia, richiede una configurazione manuale aggiuntiva per raggiungere lo stesso livello di efficienza di gestione di Proxmox, il che potrebbe aumentare notevolmente il tempo di risposta di Proxmox quando si gestiscono più macchine virtuali.

Prestazioni della memoria

Proxmox migliora le prestazioni della memoria di KVM grazie agli strumenti di gestione della memoria integrati, come l’allocazione dinamica della memoria e il ballooning, che garantiscono un utilizzo ottimale tra le macchine virtuali. In questo modo Proxmox è in grado di gestire lavori ad alta intensità di memoria senza interventi manuali. Al contrario, la memoria di KVM dipende dalla configurazione del sistema host. KVM offre prestazioni eccellenti con l’aiuto della configurazione manuale dell’utente, utilizzando funzioni come Transparent Huge Pages (THP).

CPU in tutto e per tutto

Proxmox sfrutta le capacità di KVM con un’elevata CPU in tutto il sistema, aggiungendo il supporto di funzioni come il CPU-pinning e la pianificazione in tempo reale attraverso la sua interfaccia intuitiva. Grazie a queste caratteristiche, Proxmox offre un migliore controllo e una distribuzione automatizzata delle risorse CPU tra le macchine virtuali. Anche KVM offre una CPU eccellente grazie all’integrazione a livello di kernel e al supporto della virtualizzazione assistita dall’hardware. Tuttavia, a differenza di Proxmox, una CPU ottimizzata in KVM richiede una conoscenza avanzata di Linux e una configurazione manuale.

Prestazioni di I/O del file system

KVM offre eccellenti prestazioni di I/O grazie all’integrazione con il kernel dell’host. I backend di storage sofisticati e la configurazione manuale del file system producono prestazioni di I/O ancora più elevate. Proxmox, invece, utilizza funzionalità come l’integrazione del FS e la replica dello storage per ottimizzare le prestazioni di I/O, migliorando la velocità e l’affidabilità delle macchine virtuali.

Prestazioni complessive

Sia Proxmox che KVM hanno prestazioni eccellenti. Le prestazioni leggere di KVM e l’integrazione diretta con il kernel Linux offrono prestazioni quasi native. Questo lo rende un’opzione di virtualizzazione incredibile per gli utenti che si trovano a proprio agio con la configurazione e la messa a punto manuale. Proxmox aggiunge ulteriori funzionalità, migliorando ulteriormente le sue prestazioni. È più adatto agli utenti che cercano soluzioni complete e facili da usare, alla ricerca di una gestione semplificata e dell’efficienza.

Scelta della piattaforma giusta in base ai casi d’uso

Casi d’uso di Proxmox

Proxmox VE è un’eccellente opzione di gestione della virtualizzazione, più adatta alle esigenze di livello aziendale, grazie alla sua interfaccia centralizzata che gestisce in modo efficiente sia le macchine virtuali che i container. È superiore per la sua capacità di sviluppare cluster HA, che garantisce tempi di inattività minimi delle applicazioni critiche in caso di guasti, migrandole automaticamente su nodi sani. Proxmox è anche una scelta forte per le aziende che danno priorità alla sicurezza dei dati, in quanto offre solide capacità di backup e ripristino con strumenti come Proxmox Backup Server, che protegge i dati e ne garantisce il ripristino abilitando i backup incrementali. Supporta inoltre VDI (Virtual Desktop Infrastructure), che consente alle organizzazioni di fornire desktop virtuali sicuri ed espandibili, rendendolo la scelta perfetta per i cloud privati e le configurazioni di lavoro remoto.

Casi d’uso di KVM

KVM è un potente hypervisor modificato per la virtualizzazione ad alte prestazioni direttamente su hardware bare metal. È particolarmente adatto per carichi di lavoro come i server di database e le applicazioni in tempo reale che richiedono efficienza computazionale. Gli sviluppatori e i team QA usano spesso KVM per creare ambienti stand-alone in cui testare e fare il debug del software, ottimizzando funzioni come gli snapshot e i test iterativi. Grazie alla sua flessibilità, alle funzionalità avanzate di rete e di storage, può essere integrato in piattaforme come OpenStack e utilizzato nelle infrastrutture cloud. Grazie alla sua capacità di fornire isolamento delle risorse e una forte sicurezza, KVM è anche una scelta importante per l’hosting e la multi-tenancy.

Principali differenze tra KVM e Proxmox

KVM e Proxmox sono entrambe soluzioni di virtualizzazione open-source basate su Linux, ma offrono caratteristiche diverse. Ecco alcune differenze tra i due sistemi utilizzando diverse metriche:

Architettura

KVM è un hypervisor basato sul kernel, integrato direttamente nel kernel Linux. Utilizza le caratteristiche possedute dal sistema operativo host per fornire la virtualizzazione dell’hardware. Proxmox VE, invece, è una soluzione di gestione della virtualizzazione completa che utilizza KVM in combinazione con tecnologie basate su container.

Alta disponibilità (HA)

Proxmox VE include l’alta disponibilità (HA) integrata che consente la migrazione automatica di macchine virtuali e container su altri nodi in caso di guasti hardware. Anche KVM include questa funzione, ma richiede una configurazione aggiuntiva per ottenere una funzionalità simile.

Interfaccia utente

Proxmox VE offre un’interfaccia basata sul web che consente agli utenti di gestire VM, container, storage e risorse di rete da una struttura centralizzata. Per svolgere la stessa funzione su KVM gli utenti devono interagire con strumenti a riga di comando o strumenti di gestione di terze parti.

Comunità e supporto

Sia KVM che Proxmox dispongono di comunità di utenti attive e forniscono supporto attraverso forum e risorse gestite dalla comunità. Tuttavia, Proxmox offre opzioni di supporto più commerciali e funzionalità di livello enterprise per gli utenti che necessitano di assistenza professionale.

La rete

Proxmox VE e KVM supportano entrambi funzionalità di rete avanzate come il tagging VLAN, il bridged networking e il software-defined networking. L’unica differenza è che KVM potrebbe richiedere una configurazione manuale aggiuntiva.

Come fare la migrazione tra KVM e Proxmox?

Lo spostamento delle macchine virtuali tra KVM e Proxmox VE è un’operazione semplice che dipende in larga misura dalla pianificazione e dall’esecuzione precedenti.

Come fare la migrazione tra KVM e Proxmox

Passo 1: Pianificare la migrazione

  • Inventario delle macchine virtuali: Innanzitutto, identificare le macchine virtuali da migrare, annotando le dimensioni dei dischi e le dipendenze.
  • Backup delle macchine virtuali: Creare backup di tutte le macchine virtuali elencate per evitare la perdita di dati durante la migrazione.
  • Confermare la compatibilità: Assicurarsi che entrambi gli ambienti supportino la stessa architettura di CPU e le stesse funzioni di virtualizzazione hardware.

Passo 2: Preparare Proxmox

  • Installare Proxmox VE.
  • Configurare lo storage Proxmox su cui verranno spostate le macchine virtuali.
  • Assicurarsi che Proxmox e i dispositivi host KVM abbiano ponti di rete simili.

Passo 3: Esportazione delle macchine virtuali da KVM

  • Spegnere la macchina virtuale sull’host KVM per garantire la coerenza.
  • Esportare il disco in un formato compatibile come qcow2 o raw.
  • Copiare il disco esportato sul server Proxmox.

Passo 4: Creare la nuova VM in Proxmox

  • Utilizzando la riga di comando o l’interfaccia web di Proxmox, generare una nuova macchina virtuale in Proxmox.
  • Esaminare la configurazione hardware della macchina virtuale KVM per verificare che corrisponda.
  • Rimuovere il disco creato durante la configurazione della macchina virtuale in Proxmox e importare il disco trasferito.
  • Aggiornare la configurazione della macchina virtuale per supportare il nuovo disco importato.

Fase 5: Configurazione e test della macchina virtuale

  • Regolare l’ordine di avvio e assicurarsi che il disco corretto sia impostato come dispositivo di avvio primario.
  • Collegare l’interfaccia di rete al bridge corretto.
  • Avviare la macchina virtuale.
  • Confermare che la macchina virtuale si è avviata correttamente.
  • Ispezionare l’applicazione e la rete per confermare la funzionalità operativa.
  • Se la macchina virtuale non si avvia, potrebbe essere necessario installare i driver virtIO o apportare modifiche.

Fase 6: pulizia post-migrazione

  • Eliminare i file della macchina virtuale originale dopo la migrazione.
  • Monitorare le prestazioni della macchina virtuale su Proxmox per verificare che funzioni come previsto.

Strumenti utilizzati per la migrazione tra KVM e Proxmox

  • Quemu-ing: utilizzato per convertire le immagini del disco da un formato all’altro.
  • Virsh: utilizzato per spegnere o esportare le macchine virtuali prima della migrazione.
  • Scp (Secure Copy Protocol): Trasferisce in modo sicuro i file del disco della VM dall’host KVM al server Proxmox.
  • Proxmox VM Manager: Utilizzato per creare, configurare e gestire le macchine virtuali tramite la riga di comando.
  • Nano/Vim/VI: Utilizzato per modificare i file di configurazione delle macchine virtuali su Proxmox.
  • Tar/gzip: Utilizzato per comprimere i file di disco delle macchine virtuali di grandi dimensioni per velocizzare i trasferimenti.
  • Ping/ssh: Utilizzato per verificare la connettività e l’accesso tra l’host KVM e il server Proxmox.

Opzioni di archiviazione: KVM vs. Proxmox

Opzioni di archiviazione KVM

Le opzioni di archiviazione disponibili in KVM comprendono l’archiviazione locale (dischi rigidi o SSD), l’archiviazione collegata alla rete (NAS) e le reti di archiviazione (SAN). KVM supporta anche i formati di archiviazione utilizzati per creare immagini disco come raw, qcow2 e vodka. Inoltre, per creare spazio sufficiente per la flessibilità delle prestazioni e della capacità, KVM consente agli amministratori di configurare lo storage delle macchine virtuali utilizzando l’accesso diretto al disco o soluzioni basate sulla rete come NFS o ISCSI.

Opzioni di archiviazione Proxmox

Come KVM, Proxmox supporta pienamente l’uso di diverse opzioni di archiviazione per la gestione delle macchine virtuali e dei dati dei container. Esempi di queste opzioni includono tipi di storage locale (ad esempio ZFS, LVM), directory e soluzioni di storage basate sulla rete come NFS, ISCI e Ceph. Proxmox consente anche di utilizzare l’interfaccia web per la gestione dello storage. Questa opzione consente agli utenti di Proxmox di creare e gestire pool di storage per i loro ambienti virtuali.

Come fare per impostare un ambiente di virtualizzazione con KVM?

La creazione di un ambiente di virtualizzazione con KVM ha dei prerequisiti che prevedono innanzitutto la verifica che il sistema sia aggiornato e supporti la virtualizzazione hardware (Intel VT o AMD-V). Dopo la conferma, l’azione successiva consiste nell’installare KVM e gli strumenti associati, come quemu-kvm, libvirt e virt-manager. Dopo l’installazione, verificare che il modulo KVM sia caricato eseguendo il codice ”1smod|grep kvm”. Nel prompt successivo, aggiungere il proprio utente al gruppo libvirt e riavviare il sistema. Una volta ripristinato il sistema, avviare il servizio libvirt all’avvio con il comando: ”sudo systemvtl enable libvirtd”. Successivamente, utilizzare virt-manager per lanciare l’interfaccia grafica per la gestione delle macchine virtuali o i comandi virsh se si preferisce l’interfaccia di gestione a riga di comando. Dopo questa configurazione, è possibile creare e gestire le macchine virtuali come utente.

Guida passo-passo all’installazione di KVM

  1. Verificare il supporto della virtualizzazione hardware: Per verificare se il vostro sistema supporta la virtualizzazione hardware, eseguite il comando “egrep -c ‘(vmx |svm)’ /proc/cpuinfo”. Se il risultato del comando è maggiore di 0, significa che il sistema supporta la virtualizzazione hardware.
  2. Installare KVM e i pacchetti necessari: Per installare KVM e gli strumenti necessari su un sistema, eseguire questo comando: “sudo apt install qemu-kvm libvirt-bin virt-manager bridge-utils”.
  3. Verificare l’installazione di KVM: Il passo successivo consiste nel confermare l’installazione di KVM con questo comando: “1smod|grep kvm”.
  4. Aggiungere un utente al gruppo libvirt: L’aggiunta di un utente al gruppo libvirt consente di gestire le macchine virtuali senza utilizzare i privilegi di root. Per aggiungerlo, eseguire il comando seguente, quindi uscire e rientrare per applicare le modifiche. Il codice del comando è: “sudo usermod -aG libvirt $(whoami)”.
  5. Avviare e abilitare il servizio Libvirt: Avviare il servizio libvirt e assicurarsi che si avvii automaticamente all’avvio. Per farlo, aggiungete il comando: “sudo systemtcl start libvirtd sudo systemtcl enable libvirtd”.
  6. Installare Virtual Machine Management: Per ottenere un’interfaccia grafica, è necessario installare virt-manager, che gestisce la gestione delle macchine virtuali. Per installare virt-manager, eseguire il comando: “sudo apt install virt-manager”.
  7. Creare una macchina virtuale: Avviare il virt-manager per creare una macchina virtuale.
  8. Verificare l’installazione: Dopo che KVM è stato installato, è possibile verificarne il buon funzionamento controllando le macchine virtuali create. Per verificare: “sudo virsh list -all”

Configurazione delle macchine virtuali su KVM

Quando si configurano le macchine virtuali su KVM, si considerano spesso due fattori principali: l’installazione dei pacchetti e il collegamento in rete.

  • Installazione dei pacchetti: I pacchetti importanti da installare per KVM includono strumenti come qemu-kvm, libvirt e virt manager. Prima dell’installazione, è importante specificare il supporto di installazione del sistema operativo (ad esempio un file ISO) da utilizzare e allocare le risorse di CPU, memoria e storage. Inoltre, è necessario definire il disco virtuale da imputare. Si noti che KVM supporta diversi formati di dischi virtuali e, in tal modo, offre agli utenti la possibilità di scegliere il formato più adatto alle loro esigenze.
  • Networking: è molto importante quando si configurano le macchine virtuali. Comporta la selezione di un tipo di rete come NAT (per l’accesso a Internet) o bridged.

Dopo la scelta, virt-manager viene utilizzato per collegare la macchina virtuale all’interfaccia di rete desiderata durante la configurazione.

Utilizzare la riga di comando per la gestione di KVM

L’uso della riga di comando per la gestione di KVM è la scelta preferita dagli utenti avanzati che richiedono flessibilità e automazione. Esistono strumenti importanti come virsh e virt-install che possono essere integrati con KVM per eseguire operazioni come la creazione e la gestione di macchine virtuali. Ad esempio, con virsh l’utente può elencare, avviare/arrestare le macchine virtuali e persino modificare direttamente le configurazioni. Il metodo della riga di comando è particolarmente potente per lo scripting e la gestione delle macchine virtuali in ambienti di dimensioni aziendali.

Come fare per impostare un ambiente di virtualizzazione con Proxmox

Per creare un ambiente di virtualizzazione con Proxmox, è necessario iniziare scaricando l’immagine ISO di VE dal sito ufficiale di Proxmox. Quindi è necessario creare un’unità USB avviabile utilizzando strumenti come Rufus o Etcher. Il passo successivo consiste nell’avviare il server dall’unità USB e seguire la guida all’installazione guidata per impostare il software e configurare le impostazioni di rete del disco di sistema e del fuso orario. Dopo l’installazione, accedere all’interfaccia web di Proxmox inserendo l’indirizzo IP del server in un browser (utilizzare ”https://server-ip>:8806). Impostare la password durante l’installazione e quindi accedere con l’account di root. Infine, aggiornare il sistema e configurare le impostazioni di archiviazione e di rete come richiesto. Una volta eseguiti questi passaggi, è ora possibile creare e gestire le macchine virtuali e i container Proxmox direttamente dall’interfaccia web.

Creazione e gestione delle macchine virtuali in Proxmox

Le macchine virtuali sono facili da creare e ancora più facili da gestire su Proxmox grazie alla sua funzione di gestione centrale. Per iniziare a creare una macchina virtuale, procedere come segue:

  1. Accedere all’interfaccia web di Proxmox aprendo un browser e digitando “’https://server-ip>:8806”.
  2. Accedere con l’account root e la password
  3. Andare su Datacenter e poi su Storage per selezionare lo storage (ad esempio locale).
  4. Fare clic su “content” e poi su “upload” per aggiungere il file ISO del sistema operativo che si desidera installare nella macchina virtuale.
  5. Nell’angolo in alto a destra, fare clic su “Crea VM”.
  6. Compilare la scheda Generale e inserire un nome per la macchina virtuale che è stato assegnato automaticamente.
  7. Fare clic su “Avanti” per spostarsi tra le schede e configurare i dettagli come il sistema operativo, il tipo di sistema (selezionato di default), l’allocazione della CPU, la memoria e la personalizzazione della rete.
  8. Rivedere le impostazioni effettuate e fare clic su “Fine” per creare la macchina virtuale.

Per gestire le macchine virtuali Proxmox, procedere come segue:

  1. Selezionate il pannello appena creato nel pannello di sinistra e fate clic su “Console” per aprire la console della VM.
  2. Fare clic su “start” per avviare la VM e seguire le fasi di installazione del sistema operativo selezionato.
  3. Per avviare, arrestare o riavviare le macchine virtuali, i pulsanti si trovano nella parte superiore della pagina.
  4. Per monitorare le risorse come la memoria, la CPU e l’utilizzo del disco, fare clic sulla scheda Riepilogo.
  5. Per modificare le risorse, ad esempio riallocare le allocazioni del disco, fare clic sulla scheda “Hardware” e riavviarla.
  6. Gli snapshot possono essere eseguiti utilizzando la scheda Snapshot.
  7. Per migrare manualmente le macchine virtuali tra i nodi dei cluster Proxmox, fare clic sulla scheda Migrazione.
  8. È possibile esplorare Cloud-init e Templates per le configurazioni automatiche.

Utilizzo dei contenitori LXC con Proxmox

I contenitori LXC in Proxmox offrono una via leggera ed efficiente per virtualizzare le applicazioni. Per iniziare è necessario scaricare e aggiornare Proxmox e garantire la disponibilità di uno storage adeguato configurato per i container. La prossima operazione consiste nel navigare in Datacenter>Storage nell’interfaccia web di Proxmox. Selezionare lo storage e scaricare un modello LXC dalla sezione Templates. Per creare un contenitore, fare clic su Create CT, assegnare un ID contenitore univoco, impostare un nome host e configurare le risorse come CPU, memoria e storage. Selezionare il modello scaricato e configurare le impostazioni di rete come un ponte di connettività. Dopo aver creato il contenitore, è possibile accedervi e avviarlo tramite la console web o SSH per lo sviluppo dell’applicazione. Con questi passaggi, è possibile controllare i container dall’interfaccia di Proxmox, così come vengono gestite le macchine virtuali.

Analisi dei costi e licenze

Analisi dei costi e licenze di KVM

Analisi dei costi: KVM è un software gratuito e open-source incluso nel kernel Linux. Non ci sono costi di licenza o costi aggiuntivi per il suo utilizzo, il che lo rende molto conveniente per privati e organizzazioni. I costi principali associati a KVM derivano dall’hardware sottostante e dalla gestione opzionale come Red Hat Management, ad esempio, o altre soluzioni basate su GUI che possono comportare spese aggiuntive.

Licenze: KVM è rilasciato sotto licenza GNU (General Public License), che ne garantisce la libertà e l’apertura. Questa licenza consente agli utenti di utilizzare, modificare e distribuire liberamente il software.

Analisi dei costi e licenze di Proxmox

Analisi dei costi: Anche Proxmox VE è gratuito e open-source. Mentre la piattaforma principale è gratuita, Proxmox offre abbonamenti aggiuntivi a pagamento che partono da 105 sterline all’anno e per socket di CPU per il supporto professionale, l’accesso al repository aziendale e aggiornamenti tempestivi. È importante notare che questi abbonamenti non sono obbligatori.

Licenze: Proxmox VE è rilasciato sotto licenza GNU Affero General Public License (AGPL) v3, che consente l’accesso completo al codice sorgente. Questa licenza promuove la trasparenza e la collaborazione, consentendo agli utenti di modificare e distribuire il software. Tuttavia, le modifiche devono essere condivise sotto la stessa licenza, in modo da mantenere la sua natura open-source.

Modello di abbonamento Proxmox

Il modello di abbonamento di Proxmox consente l’accesso al repository aziendale. Questo include aggiornamenti accuratamente testati, supporto tecnico e pacchetti stabili. I livelli di abbonamento comprendono: Basic, Standard, Premium e Community. Gli utenti che non hanno sottoscritto un abbonamento possono comunque accedere al repository senza abbonamento, che fornisce comunque aggiornamenti ma può essere meno testato.

Costo totale di proprietà

Il costo totale di proprietà delle soluzioni di virtualizzazione come Proxmox e KVM comprende i costi diretti e indiretti sostenuti durante il ciclo di vita. Inoltre, tiene conto dei requisiti hardware, delle licenze opzionali e dei costi di abbonamento.

Costo totale di proprietà di Proxmox

Il TCO di Proxmox è relativamente basso grazie alla sua natura open-source. Sebbene il software sia gratuito, il TCO include altri fattori come l’abbonamento aziendale opzionale all’hardware e i costi dell’infrastruttura, come l’archiviazione, l’alimentazione e la rete. Tuttavia, le funzionalità integrate di Proxmox contribuiscono a ridurre ulteriormente i costi.

Costo totale di proprietà di KVM

Il TCO di KVM è altrettanto basso grazie alla sua natura open-source e all’inclusione nel kernel Linux, che elimina i costi di licenza. Il costo deriva principalmente dall’hardware, dallo storage e dagli strumenti di gestione opzionali integrati nell’hypervisor.

Opzioni di supporto

Opzioni di supporto Proxmox: Proxmox offre diverse opzioni di supporto a seconda delle esigenze dell’utente. Mentre la piattaforma principale è gratuita, Proxmox offre un modello di abbonamento a pagamento per le aziende che richiedono un aiuto professionale. Gli utenti che non hanno bisogno di un abbonamento possono beneficiare del supporto della comunità, attivo attraverso i forum e il wiki di Proxmox.

Opzioni di supporto per KVM: KVM non dispone di un proprio sistema di supporto. Gli utenti, tuttavia, possono chiedere aiuto attraverso la solida comunità di KVM, che comprende forum, mailing list e risorse online. Le aziende che necessitano di assistenza avanzata possono rivolgersi a società terze come Red Hat per ottenere i servizi professionali di cui hanno bisogno.

Domande frequenti

Come fare per eseguire un numero di macchine virtuali su un singolo host?

Il numero di macchine virtuali (VM) che è possibile eseguire su un singolo host dipende dalle risorse hardware dell’host. Ciò include la CPU, la memoria, lo storage e le risorse di ciascuna macchina virtuale. In teoria, è possibile avere diverse centinaia di macchine virtuali su un server ad alte prestazioni, ma le limitazioni pratiche, come lo storage e la CPU, determinano il numero massimo che un server host può effettivamente eseguire.

Proxmox può utilizzare KVM come hypervisor?

Certamente! Proxmox utilizza già KVM come hypervisor per la gestione delle macchine virtuali. KVM è ben integrato in Proxmox VE e consente una virtualizzazione efficiente delle macchine virtuali sia Linux che Windows.

È possibile utilizzare i container sia con KVM che con Proxmox?

Sì. KVM e Proxmox supportano la virtualizzazione basata su container, ma in modi diversi. Proxmox supporta nativamente LXC per la virtualizzazione basata su container attraverso la sua interfaccia web. KVM, invece, consente la virtualizzazione basata su container sfruttando strumenti di gestione dei container come Docker o LXC.

Informazioni sull'autore
Rob Morrison
Rob Morrison è il direttore marketing di Bacula Systems. Ha iniziato la sua carriera nel marketing IT con Silicon Graphics in Svizzera, ottenendo ottimi risultati in vari ruoli di gestione del marketing per quasi 10 anni. Nei 10 anni successivi, Rob ha ricoperto anche diverse posizioni di gestione del marketing in JBoss, Red Hat e Pentaho, assicurando la crescita della quota di mercato di queste note aziende. Si è laureato all'Università di Plymouth e ha conseguito una laurea ad honorem in Digital Media and Communications e ha completato un programma di studi all'estero.
Lascia un commento

Il suo indirizzo e-mail non sarà pubblicato. I campi obbligatori sono contrassegnati da *