-
1. libvirt
-
2. virsh
-
3. virt-manager
-
4. virt-viewer
-
5. virt-install
-
6. virt-top
-
7. libguestfs
-
Vinchin Protegge le Tue Macchine Virtuali KVM
-
Domande frequenti su KVM Manager
-
Conclusione
KVM è una delle soluzioni di virtualizzazione open-source più popolari disponibili oggi. Consente agli utenti di creare e gestire macchine virtuali sui sistemi basati su Linux. Sebbene KVM fornisca l'infrastruttura sottostante per la virtualizzazione, gli utenti hanno spesso bisogno di uno strumento di gestione per razionalizzare e semplificare la gestione delle VM, l'allocazione delle risorse, il monitoraggio e la configurazione.
Gli strumenti di gestione KVM generalmente integrano e migliorano le funzionalità del comando qemu, offrendo un'interfaccia più intuitiva ed efficiente per interagire con le macchine virtuali rispetto alla riga di comando nativa di qemu. Successivamente, esploreremo alcuni gestori KVM, ciascuno dei quali offre un insieme unico di funzionalità progettate per migliorare l'esperienza di virtualizzazione KVM.
1. libvirt
libvirt è lo strumento e l'API più ampiamente utilizzati per la gestione delle macchine virtuali KVM. Diversi strumenti comuni per la gestione delle macchine virtuali (come virsh, virt-install, virt-manager, ecc.) e framework di calcolo cloud (come OpenStack, ZStack, OpenNebula, Eucalyptus, ecc.) dipendono tutti dall'API di libvirt al loro interno. Essa funge principalmente da livello di adattamento intermediario tra l'Hypervisor sottostante e le applicazioni a livello superiore.
libvirt supporta varie soluzioni di virtualizzazione, inclusi i sistemi di virtualizzazione basati su piattaforma come KVM, QEMU, Xen, VMware, VirtualBox e Hyper-V, nonché i sistemi di virtualizzazione basati su contenitori come OpenVZ e LXC, e la virtualizzazione Linux in modalità utente (UML).
Il supporto di Libvirt per diversi ipervisor è realizzato attraverso un'architettura basata su driver. Libvirt fornisce driver differenti per ipervisor diversi. Come strato di adattamento intermedio, libvirt rende completamente trasparenti gli ipervisor sottostanti agli strumenti di gestione del livello superiore, poiché nasconde i dettagli dei vari ipervisor e offre un'interfaccia unificata e stabile (API) agli strumenti di gestione del livello superiore. Attraverso libvirt, alcuni strumenti di gestione nello spazio utente possono gestire diversi ipervisor e le macchine virtuali guest che vi sono eseguite.
libvirt è costituito da tre componenti principali: una libreria API, un demone (libvirtd) e uno strumento di gestione predefinito dalla riga di comando (virsh). La libreria API supporta la gestione delle macchine virtuali per altri strumenti (come virsh, virt-manager, ecc.). Il demone libvirtd è responsabile della gestione dei domini sui nodi ed è necessario che sia in esecuzione quando si gestiscono macchine virtuali utilizzando vari strumenti.
Il valore di base e l'obiettivo principale di libvirt sono fornire un'API stabile ed efficiente per la gestione delle macchine virtuali. L'API di libvirt è implementata in C e si compone di otto parti: API correlate alle connessioni con l'Hypervisor, alla gestione dei domini, alla gestione del nodo, alla gestione della rete, alla gestione dei volumi di archiviazione, alla gestione dei pool di archiviazione, alla gestione degli eventi e alla gestione dei flussi di dati.
2. virsh
virsh è uno strumento da riga di comando per la gestione delle macchine virtuali e degli ipervisor in un ambiente di virtualizzazione, utilizzando le API libvirt per la gestione della virtualizzazione. virsh opera completamente in modalità testuale a riga di comando ed è uno degli strumenti ideali per gli amministratori di sistema per automatizzare il deployment e la gestione della virtualizzazione attraverso script.
Quando si utilizza lo strumento virsh a riga di comando per la gestione della virtualizzazione, ci sono due modalità operative: modalità interattiva e modalità non interattiva. In modalità interattiva, si connette all'ipervisor appropriato, esegue un comando e aspetta una risposta fino a quando l'utente non termina la connessione utilizzando il comando "quit". In modalità non interattiva, uno o più comandi vengono aggiunti dopo un URI di connessione nella riga di comando, e dopo l'esecuzione, l'output viene restituito al terminale corrente e la connessione viene disconnessa automaticamente.
3. virt-manager
virt-manager è un'interfaccia grafica desktop per la gestione delle macchine virtuali, supportata su Linux o altri sistemi simili a UNIX. Il progetto virt-manager è sviluppato utilizzando Python per la parte dell'applicazione, e GNU AutoTools (compresi autoconf, automake, ecc.) viene utilizzato per il build del progetto. virt-manager è un software completamente open-source e viene rilasciato sotto la licenza GNU GPL ampiamente adottata nella community Linux. Dipende da diverse librerie, tra cui Python (per la logica dell'applicazione), GTK+PyGTK (per l'interfaccia utente) e libvirt (per le API sottostanti).
virt-manager fornisce un ricco set di funzionalità di gestione della virtualizzazione nella sua interfaccia grafica, inclusi:
Gestione del ciclo di vita delle macchine virtuali, come creazione, modifica, avvio, pausa, ripresa e arresto delle macchine virtuali, nonché funzioni come snapshot virtuali e migrazione live.
Monitoraggio in tempo reale delle prestazioni e dell'uso delle risorse dei guest in esecuzione, con visualizzazione grafica delle statistiche.
Sostegno grafico per la creazione di guest, l'allocazione di risorse e la configurazione e regolazione di hardware virtuale.
Client VNC e SPICE incorporati per connettersi alle interfacce grafiche degli ospiti per l'interazione.
Supporto per la gestione locale o remota di macchine virtuali su KVM, Xen, QEMU, LXC e ipervisor ESX.
4. virt-viewer
virt-viewer è uno strumento e una utility da riga di comando per visualizzare l'interfaccia grafica di una macchina virtuale. Utilizza GTK-VNC o SPICE-GTK per le funzionalità di visualizzazione e interroga le informazioni del server VNC o SPICE di un guest attraverso l'API libvirt. virt-viewer viene spesso utilizzato per sostituire i lettori client VNC tradizionali, che generalmente non supportano la crittografia SSL/TLS basata su certificati x509, mentre virt-viewer sì.
Gli ospiti connessi tramite virt-viewer possono essere identificati in modo univoco tramite il loro nome, l'ID del dominio o l'UUID. virt-viewer supporta anche l'opzione "-c URI" o "--connection URI" per specificare una connessione alla macchina virtuale di un host remoto. Quando si connette in remoto, è comunque necessaria un'autenticazione appropriata. I parametri dettagliati e le spiegazioni per lo strumento virt-viewer possono essere visualizzati utilizzando il comando "man virt-viewer".
5. virt-install
virt-install è il nome del comando e del pacchetto software per lo strumento “Virt Install”. Lo strumento della riga di comando virt-install fornisce un metodo facile da usare per installare macchine virtuali. Utilizza le API libvirt per creare macchine virtuali su KVM, Xen, LXC e altri ipervisor. Fornisce inoltre API di installazione per creare macchine virtuali attraverso l'interfaccia grafica di virt-manager. virt-install supporta console seriale in modalità testo e interfacce grafiche VNC (o SPICE), consentendo sia installazioni in modalità testo che grafiche delle macchine virtuali. I media di installazione utilizzati da virt-install (come CD-ROM o file ISO) possono essere archiviati localmente o su server remoti NFS, HTTP o FTP. virt-install supporta sia i sistemi guest locali che può utilizzare l'opzione “–connect URI” (o “-c URI”) per supportare l'installazione dei guest su host remoti.
6. virt-top
virt-top è uno strumento per visualizzare lo stato di esecuzione e l'utilizzo delle risorse delle macchine virtuali. È simile allo strumento comunemente usato “top” nei sistemi Linux, e molte delle sue scorciatoie e parametri della riga di comando sono simili a quelli dello strumento “top”. virt-top utilizza anche le API libvirt per ottenere lo stato di esecuzione e l'utilizzo delle risorse degli ospiti, quindi fintanto che l'Hypervisor è supportato da libvirt, “virt-top” può monitorare lo stato degli ospiti su quell'Hypervisor.
7. libguestfs
libguestfs è una raccolta di strumenti utilizzati per accedere e modificare le immagini dei dischi delle macchine virtuali. Fornisce un ampio insieme di funzionalità, come l'accesso e la modifica dei file all'interno degli ospiti, lo scripting delle modifiche alle informazioni sugli ospiti, il monitoraggio dell'utilizzo del disco e delle statistiche sullo spazio libero, P2V, V2V, la creazione di ospiti, il clonaggio di ospiti, il backup del contenuto del disco, la formattazione dei dischi, il ridimensionamento dei dischi e altro ancora. libguestfs supporta la maggior parte dei sistemi operativi principali per gli ospiti, come CentOS, Fedora, Ubuntu e Windows. In aggiunta al supporto per le macchine virtuali KVM, supporta anche macchine virtuali non open source come VMware e Hyper-V. Inoltre, libguestfs fornisce una libreria C che può essere collegata a programmi di gestione sviluppati in C/C++. Fornisce inoltre binding per altri linguaggi di programmazione (come Python), consentendo ai programmatori di costruire facilmente i propri programmi di gestione delle immagini dei dischi delle macchine virtuali utilizzando le funzionalità fornite da libguestfs.
libguestfs-tools fornisce un ampio range di strumenti che corrispondono a diverse funzionalità e casi d'uso, ad esempio:
virt-ls: Elenca i file all'interno di una macchina virtuale.
virt-copy-in: Copia file o directory all'interno di una macchina virtuale.
virt-copy-out: Copia file o directory da una macchina virtuale.
virt-resize: Ridimensiona le immagini dei dischi.
virt-cat: Visualizza il contenuto di un file all'interno di una macchina virtuale.
virt-edit: Modifica un file all'interno di una macchina virtuale.
virt-df: Visualizza l'uso dello spazio su disco nel file system della macchina virtuale.
Vinchin Protegge le Tue Macchine Virtuali KVM
La protezione dei dati è fondamentale per qualsiasi azienda. Indipendentemente dalla soluzione che sceglierai alla fine, Vinchin Backup & Recovery offre un modo semplice per tutelare i tuoi dati critici archiviati nelle VM. È completamente compatibile con la maggior parte delle piattaforme virtuali basate su KVM più popolari, inclusi Proxmox, oVirt, Red Hat Virtualization, Oracle Linux Virtualization Manager e Huawei FusionCompute (attualmente KVM nativo non è supportato).
Con tecnologie avanzate di deduplicazione e compressione, ottimizza l'archiviazione dei backup eliminando i dati ridondanti mentre mantiene l'integrità dei dati. Supportando sia i backup completi che incrementali, gli utenti possono scegliere l'opzione più adatta per risparmiare tempo e spazio di archiviazione. Inoltre, Vinchin consente la pianificazione automatica dei backup e il recupero granulare (come i ripristini a livello di file). Con l'integrazione del cloud e dei backup fuori sito, Vinchin offre più livelli di protezione per il ripristino dopo disastri, garantendo che gli ambienti KVM siano sempre protetti.
Per eseguire il backup delle VM ti servono solo 4 passaggi, qui ti mostreremo come fare il backup di una VM Proxmox con Vinchin Backup & Recovery:
1. Seleziona l'oggetto del backup.
2. Seleziona la destinazione del backup.
3. Configura le strategie di backup.
4. Revisiona e invia il lavoro.
Vinchin Backup & Recovery è stato selezionato da migliaia di aziende e anche tu puoi iniziare ad utilizzare questo potente sistema con un periodo di prova gratuito di 60 giorni pienamente funzionale! Inoltre, contattaci e lasciaci le tue esigenze, e riceverai una soluzione adatta al tuo ambiente IT.
Domande frequenti su KVM Manager
1. KVM è migliore di VMware?
Dipende dai tuoi bisogni. KVM è open-source, altamente flessibile e si integra bene con Linux, il che lo rende ideale per configurazioni personalizzate e risparmi di costo. VMware offre una soluzione aziendale più rifinita e ricca di funzionalità, con un supporto migliore, strumenti avanzati di gestione e un ecosistema robusto. VMware potrebbe essere più adatto per ambienti su vasta scala a livello aziendale che richiedono alta disponibilità e una gestione fluida. KVM può essere un'ottima scelta per impostazioni più piccole o per chi ha bisogno di personalizzazioni specifiche.
2. Proxmox VE è un buon gestore KVM?
Sì, Proxmox VE è molto apprezzato per la sua interfaccia utente facile da usare e per le sue funzionalità potenti. Combina KVM e LXC, offre supporto per la disponibilità elevata, i backup e la replica dello storage, ed è ideale per gestire ambienti virtuali su larga scala.
Conclusione
Gli strumenti di gestione KVM come libvirt, virt-manager e virsh offrono una serie di soluzioni per una gestione efficiente delle macchine virtuali. Sia utilizzando strumenti a riga di comando per l'automazione che interfacce grafiche per facilità d'uso, questi strumenti semplificano compiti come la gestione del ciclo di vita delle VM, il monitoraggio delle risorse e la manipolazione delle immagini disco. Scegliendo lo strumento giusto per le tue esigenze, è possibile ottimizzare le prestazioni e la affidabilità dell'ambiente di virtualizzazione KVM, rendendo la gestione più efficiente ed efficace.
Condividi su: