際際滷

際際滷Share a Scribd company logo
Sommario
Panoramica
Sistemi di virtualizzazione con Linux
Simone Piccardi
17 Aprile 2007
Simone Piccardi Sistemi di virtualizzazione con Linux
Sommario
Panoramica
1 Panoramica
Simone Piccardi Sistemi di virtualizzazione con Linux
Sommario
Panoramica
Perch卒e la virtualizzazione
La virtualizzazione consente di centralizzare pi`u macchine virtuali
su una sola macchina reale:
possono essere virtualizzate e centralizzate le workstation
utente
le macchine virtuali possono utilizzare diversi sistemi operativi
alte prestazioni con il supporto alla virtualizzazione dei nuovi
processori
Simone Piccardi Sistemi di virtualizzazione con Linux
Sommario
Panoramica
Tecnologie disponibili
Le tecnologie di virtualizzazione stanno avendo un enorme
sviluppo, ne esistono diverse con diverse caratteristiche:
qemu e kqemu
Virtualbox
KVM
lguest
Xen
OpenVZ
Simone Piccardi Sistemi di virtualizzazione con Linux
Sommario
Panoramica
qemu
E stata una delle prime macchine virtuali create su Linux:
macchina virtuale eseguita come programma dal sistema
ospite, non richiede nessuna modi鍖ca al sistema operativo
ospitato, n卒e alcun supporto da parte del processore
emula completamente un PC, comprese alcune periferiche
standardizzate, per cui pu`o installare nella macchina emulata
qualunque sistema operativo
usa come sistema ospite Linux, FreeBSD, Solaris, MacOS e
Windows
gira su diverse piattaforme ospite (x86, PPC) e emula diverse
piattaforme (x86, PPC, ARM, SPARC, MIPS)
molto semplice da usare, velocit`a ridotta, utilizza molta memoria,
e鍖ciente nelluso dello spazio disco.
Simone Piccardi Sistemi di virtualizzazione con Linux
Sommario
Panoramica
kqemu
La versione originale di qemu `e piuttosto lenta, kqemu:
introduce un modulo del kernel per accelerare lesecuzione
funziona solo per emulazioni di piattaforma x86 su x86
disponibile solo sotto Linux, non pu`o essere usato per
installare Windows
il codice del sistema operativo e applicazioni ospite vengono
eseguiti direttamente dal processore
semplice da usare, buona velocit`a, utilizza molta memoria,
e鍖ciente nelluso dello spazio disco.
Simone Piccardi Sistemi di virtualizzazione con Linux
Sommario
Panoramica
KVM
E una delle pi`u recenti fra le tecnologie di virtualizzazione su
Linux:
costituisce una infrastruttura generica per la creazione di
macchine virtuali utilizzando le funzionalit`a di virtualizzazione
dei processori
introdotta a partire dalla versione 2.6.20 nel kernel u鍖ciale,
che ne garantisce un alto livello di supporto e sviluppo
necessita di una versione modi鍖cata di qemu per fornire il
supporto per lI/O su disco e le periferiche alla macchina
virtualizzata
funzionalit`a avanzate come la migrazione delle istanze via rete
pi`u complesso da usare, molto veloce, legato al supporto hardware,
necessita di parecchie risorse.
Simone Piccardi Sistemi di virtualizzazione con Linux
Sommario
Panoramica
lguest
Lultimo arrivato (per ora...):
molto semplice, soltanto 5000 righe di codice
non richiede supporto dal processore
virtualizza Linux su Linux, il kernel ospite e ospitato devono
avere abilitato il relativo supporto
inserito nel kernel u鍖ciale a partire dalla versione 2.6.23
pi`u complesso da usare, molto veloce, funzionalit`a ridotte.
Simone Piccardi Sistemi di virtualizzazione con Linux
Sommario
Panoramica
VirtualBox
`E una applicazione proprietaria, recentemente rilasciata sotto GPL:
presenta un approccio analogo a qemu, ma gestisce
direttamente istanze multiple attraverso una applicazione di
controllo gra鍖ca
supporta le tecnologie di virtualizzazione dei processori, ma
dichiara di ottenere in genere prestazioni equivalenti, o anche
migliori, senza
pu`o eseguire come sistema ospite qualunque sistema operativo
estremamente semplice da usare, ottima interfaccia di gestione,
molto veloce, necessita di parecchie risorse (memoria e spazio
disco).
Simone Piccardi Sistemi di virtualizzazione con Linux
Sommario
Panoramica
Xen
Una delle pi`u note e sviluppate, basata sul concetto di hypervisor,
consente di eseguire pi`u sistemi operativi:
un sottile strato di controllo, lhypervisor, consente di lanciare
un sistema operativo principale (dom0) da cui controllare le
restanti istanze virtuali (domU).
occorrono delle opportune modi鍖che al sistema operativo
eseguito (disponibili per Linux, BSD)
con i nuovi processori che supportano la virtualizzazione pu`o
lanciare ospiti non modi鍖cati (appoggiandosi a qemu)
funzionalit`a avanzate come la migrazione delle istanze via
rete, la gestione delle interfacce virtuali, la creazione
automatica di sistemi ospiti.
complesso da usare, estremamente veloce, ottime funzionalit`a,
necessita di parecchie risorse (memoria e spazio disco).
Simone Piccardi Sistemi di virtualizzazione con Linux
Sommario
Panoramica
OpenVZ
Altra applicazione proprietaria, recentemente rilasciata come GPL:
pi`u che di virtualizzazione si tratta di una tecnologia di
(partizionamento), richiede un kernel modi鍖cato ad hoc
non utilizza tecniche di virtualizzazione, ma una suddivisione
per namespace che consente di eseguire sistemi ospiti usando
un unico kernel
alloca dinamicamente le risorse, ed esegue i programmi a
velocit`a nativa, ma non supporta luso di sistemi operativi
diversi
complesso da usare, estremamente veloce, e鍖ciente in termini di
uso di memoria e disco
Simone Piccardi Sistemi di virtualizzazione con Linux

More Related Content

Sistemi di virtualizzazione con Linux

  • 1. Sommario Panoramica Sistemi di virtualizzazione con Linux Simone Piccardi 17 Aprile 2007 Simone Piccardi Sistemi di virtualizzazione con Linux
  • 2. Sommario Panoramica 1 Panoramica Simone Piccardi Sistemi di virtualizzazione con Linux
  • 3. Sommario Panoramica Perch卒e la virtualizzazione La virtualizzazione consente di centralizzare pi`u macchine virtuali su una sola macchina reale: possono essere virtualizzate e centralizzate le workstation utente le macchine virtuali possono utilizzare diversi sistemi operativi alte prestazioni con il supporto alla virtualizzazione dei nuovi processori Simone Piccardi Sistemi di virtualizzazione con Linux
  • 4. Sommario Panoramica Tecnologie disponibili Le tecnologie di virtualizzazione stanno avendo un enorme sviluppo, ne esistono diverse con diverse caratteristiche: qemu e kqemu Virtualbox KVM lguest Xen OpenVZ Simone Piccardi Sistemi di virtualizzazione con Linux
  • 5. Sommario Panoramica qemu E stata una delle prime macchine virtuali create su Linux: macchina virtuale eseguita come programma dal sistema ospite, non richiede nessuna modi鍖ca al sistema operativo ospitato, n卒e alcun supporto da parte del processore emula completamente un PC, comprese alcune periferiche standardizzate, per cui pu`o installare nella macchina emulata qualunque sistema operativo usa come sistema ospite Linux, FreeBSD, Solaris, MacOS e Windows gira su diverse piattaforme ospite (x86, PPC) e emula diverse piattaforme (x86, PPC, ARM, SPARC, MIPS) molto semplice da usare, velocit`a ridotta, utilizza molta memoria, e鍖ciente nelluso dello spazio disco. Simone Piccardi Sistemi di virtualizzazione con Linux
  • 6. Sommario Panoramica kqemu La versione originale di qemu `e piuttosto lenta, kqemu: introduce un modulo del kernel per accelerare lesecuzione funziona solo per emulazioni di piattaforma x86 su x86 disponibile solo sotto Linux, non pu`o essere usato per installare Windows il codice del sistema operativo e applicazioni ospite vengono eseguiti direttamente dal processore semplice da usare, buona velocit`a, utilizza molta memoria, e鍖ciente nelluso dello spazio disco. Simone Piccardi Sistemi di virtualizzazione con Linux
  • 7. Sommario Panoramica KVM E una delle pi`u recenti fra le tecnologie di virtualizzazione su Linux: costituisce una infrastruttura generica per la creazione di macchine virtuali utilizzando le funzionalit`a di virtualizzazione dei processori introdotta a partire dalla versione 2.6.20 nel kernel u鍖ciale, che ne garantisce un alto livello di supporto e sviluppo necessita di una versione modi鍖cata di qemu per fornire il supporto per lI/O su disco e le periferiche alla macchina virtualizzata funzionalit`a avanzate come la migrazione delle istanze via rete pi`u complesso da usare, molto veloce, legato al supporto hardware, necessita di parecchie risorse. Simone Piccardi Sistemi di virtualizzazione con Linux
  • 8. Sommario Panoramica lguest Lultimo arrivato (per ora...): molto semplice, soltanto 5000 righe di codice non richiede supporto dal processore virtualizza Linux su Linux, il kernel ospite e ospitato devono avere abilitato il relativo supporto inserito nel kernel u鍖ciale a partire dalla versione 2.6.23 pi`u complesso da usare, molto veloce, funzionalit`a ridotte. Simone Piccardi Sistemi di virtualizzazione con Linux
  • 9. Sommario Panoramica VirtualBox `E una applicazione proprietaria, recentemente rilasciata sotto GPL: presenta un approccio analogo a qemu, ma gestisce direttamente istanze multiple attraverso una applicazione di controllo gra鍖ca supporta le tecnologie di virtualizzazione dei processori, ma dichiara di ottenere in genere prestazioni equivalenti, o anche migliori, senza pu`o eseguire come sistema ospite qualunque sistema operativo estremamente semplice da usare, ottima interfaccia di gestione, molto veloce, necessita di parecchie risorse (memoria e spazio disco). Simone Piccardi Sistemi di virtualizzazione con Linux
  • 10. Sommario Panoramica Xen Una delle pi`u note e sviluppate, basata sul concetto di hypervisor, consente di eseguire pi`u sistemi operativi: un sottile strato di controllo, lhypervisor, consente di lanciare un sistema operativo principale (dom0) da cui controllare le restanti istanze virtuali (domU). occorrono delle opportune modi鍖che al sistema operativo eseguito (disponibili per Linux, BSD) con i nuovi processori che supportano la virtualizzazione pu`o lanciare ospiti non modi鍖cati (appoggiandosi a qemu) funzionalit`a avanzate come la migrazione delle istanze via rete, la gestione delle interfacce virtuali, la creazione automatica di sistemi ospiti. complesso da usare, estremamente veloce, ottime funzionalit`a, necessita di parecchie risorse (memoria e spazio disco). Simone Piccardi Sistemi di virtualizzazione con Linux
  • 11. Sommario Panoramica OpenVZ Altra applicazione proprietaria, recentemente rilasciata come GPL: pi`u che di virtualizzazione si tratta di una tecnologia di (partizionamento), richiede un kernel modi鍖cato ad hoc non utilizza tecniche di virtualizzazione, ma una suddivisione per namespace che consente di eseguire sistemi ospiti usando un unico kernel alloca dinamicamente le risorse, ed esegue i programmi a velocit`a nativa, ma non supporta luso di sistemi operativi diversi complesso da usare, estremamente veloce, e鍖ciente in termini di uso di memoria e disco Simone Piccardi Sistemi di virtualizzazione con Linux