Virtualbox - Dipartimento di Ingegneria Industriale e dell`Informazione

Uno strumento per la Virtualizzazione:
Virtualbox
8
Outline
Introduzione.
Concetti base.
Creazione di una VM.
Avvio di una VM.
Configurazione.
Guest Additions.
9
Documentazione
http://www.virtualbox.org/
• Formato HTML
- http://www.virtualbox.org/manual/UserManual.html
• Formato PDF
–
http://download.virtualbox.org/virtualbox/UserManual.pdf
10
Introduzione
Software di virtualizzazione open source.
It is available as Open Source Software under the terms of the GNU General
Public License (GPL).
Sistemi operativi Host supportati
Windows
Mac OS X
Linux
Solaris
It supports a large number of guest operating systems including but not limited to
Windows (NT 4.0, 2000, XP, Server 2003, Vista, Windows 7), DOS/Windows 3.x,
Linux (2.4 and 2.6), Solaris and OpenSolaris, OS/2, and OpenBSD.
11
Introduzione
È un software di virtualizzazione che viene eseguito su un sistema operativo
ospitante in esecuzione (host) e che crea ad alto livello le varie “virtual machine”,
ognuna delle quali gira come se fosse un normale programma e che comunica con
l'hardware solo indirettamente, tramite il software di controllo che agisce a basso
livello.
L’Hypervisor, detto anche “virtual machine monitor” (o VMM) è il componente
chiave per un sistema basato sulla virtualizzazione e deve operare in maniera
trasparente svolgendo attività di controllo.
12
Introduzione
VirtualBox is a cross-platform virtualization application. What does that mean?
For one thing, it installs on your existing Intel or AMD-based computers, whether
they are running Windows, Mac, Linux or Solaris operating systems.
Secondly, it extends the capabilities of your existing computer so that it can run
multiple operating systems (inside multiple virtual machines) at the same time.
So, for example, you can run Windows and Linux on your Mac, run Windows
Server 2008 on your Linux server, run Linux on your Windows PC.
You can install and run as many virtual machines as you like – the only practical
limits are disk space and memory.
It can run everywhere from small embedded systems or desktop class machines
all the way up to datacenter deployments and even Cloud environments.
13
Introduzione
Diverse VMs sono eseguite su una
sola macchina fisica.
14
Introduzione
The following screenshot shows you how VirtualBox, installed on a Mac
computer, is running Windows 7 in a virtual machine window:
15
Concetti base
Quando si parla di virtualizzazione, bisogna conoscere i seguenti termini:
Host operating system (host OS): è il sistema operativo della macchina fisica su
cui è stato installato VirtualBox.
Guest operating system (guest OS): è il sistema operativo in esecuzione sulla
virtual machine.
Virtual machine (VM): è l'ambiente che VirtualBox crea per il sistema operativo
Guest. In pratica il sistema operativo guest è in esecuzione nella VM.
Normalmente una VM viene avviata presentandosi con una finestra sul desktop
del computer. Una VM sarà caratterizzata da una serie di parametri che
determinano il suo comportamento. Essi includono impostazioni hardware (ad
esempio quanta memoria la VM dovrà avere,..), le informazioni sullo stato
salvando le snapshots della VM in esecuzione.
Guest Additions: sono packages software speciali forniti con VirtualBox e che
possono essere installati nella VM per aggiungere funzionalità extra.
16
Installazione
• Download
– http://www.virtualbox.org/wiki/Downloads
17
VirtualBox Manager
Questa
finestra
è
“VirtualBox Manager”.
chiamata
- Nel pannello di sinistra, sono
visualizzate le macchine virtuali
create.
- nel pannello di destra, vengono
visualizzate le proprietà della
macchina virtuale selezionata.
I
pulsanti
presenti
sopra
ci
consentono di creare una macchina
virtuale e di lavorare su una
macchina virtuale esistente.
18
Creazione di una VM
Dopo aver fatto click su Nuova, si
avvierà la procedura di creazione
guidata della macchina virtuale.
Per prima cosa ci verrà richiesto di
immettere un nome per la nuova
macchina, in modo da poterla
identificare, e il sistema operativo
che intendiamo installare.
19
Creazione di una VM
In seguito, dobbiamo specificare
la quantità di RAM da riservare
alla nostra macchina virtuale. La
macchina
virtuale
avviata
occuperà tutta la RAM ad essa
assegnata. Bisogna assegnare la
RAM
con
attenzione
poiché
quando la VM è in esecuzione,
questa parte di RAM non è più
disponibile per l'host OS.
Questa impostazione può essere
cambiata anche dopo che una VM
è stata creata.
20
Creazione di una VM
Bisogna specificare un disco fisso
virtuale per la nostra VM. Abbiamo
due possibilità:
- creare un nuovo disco fisso.
- usare un disco fisso esistente.
21
Creazione di una VM
Se scegliamo di creare un nuovo disco, si visualizzerà la finestra “Create New Virtual Disk
Wizard” che ci aiuta nella creazione.
In particolare, bisogna scegliere il tipo di archiviazione cioè bisogna scegliere se il file del
nuovo disco virtuale deve essere allocato al momento del suo utilizzo o se deve essere
allocato completamente in fase di creazione.
La modalità di archiviazione dinamica permetterà di occupare sull'hard disk reale solo lo
spazio realmente utilizzato dalla macchina virtuale e non di creare un grande file
rappresentante l'hard disk della macchina virtuale. Quindi se ad esempio su un hard disk
dinamico da 8 Giga occupiamo solo 1 Giga, lo spazio occupato sul disco fisso reale sarà di
circa 1 Giga mentre con un hard disk statico si occuperà sempre circa 8 Giga.
22
Creazione di una VM
Infine è possibile definire la dimensione
dell'hard disk virtuale.
Se l'archiviazione è dinamica si tratta
della dimensione massima mentre se è
statica sarà la dimensione effettiva del file
rappresentante l'hard disk virtuale.
23
File
File .vbox
settings file
File .vdi
(Virtual Disk Image)
24
Impostazioni di una VM
Una volta creata la VM, si visualizzerà
nel pannello di sinistra della finestra
“VirtualBox Manager”.
Inoltre, una volta creata la VM, è
possibile modificarne le proprietà in
ogni
momento
facendo
click
su
Impostazioni nella finestra “VirtualBox
Manager”.
25
Avvio di una VM
Una VM viene avviata dal pannello di sinistra della finestra “VirtualBox Manager”.
Al primo avvio bisogna installarvi il guest OS nella VM. E' possibile installarlo utilizzando un
CD/DVD oppure un file immagine ISO. Nel secondo caso è possibile non masterizzare il file
immagine ISO su CD/DVD ma VirtualBox presenterà alla VM questo file immagine
direttamente come un drive CD o DVD-ROM, proprio come con le immagini virtuali del disco
rigido.
26
Avvio di una VM
Dalle Impostazioni, nella sezione
“Storage Settings”, è possibile
stabilire la sorgente dati del
lettore CD/DVD della macchina
virtuale. Questo può essere
direttamente collegato al lettore
CD reale oppure ad un file ISO.
27
Impostazioni di una VM
Una volta creata la VM, si visualizzerà
nel pannello di sinistra della finestra
“VirtualBox Manager”.
Inoltre, una volta creata la VM, è
possibile modificarne le proprietà in
ogni
momento
facendo
click
su
Impostazioni nella finestra “VirtualBox
Manager”.
28
General Settings
- Nella scheda Base ritroviamo le
informazioni relative al nome della
VM,
alla tipologia del sistema
operativo installato e la relativa
versione.
- Nella scheda Avanzate ad esempio
è possibile specificare il percorso per
la cartella istantanee cioè permette di
specificare il percorso dove salvare le
snapshot (fotografie cioè lo stato)
della macchina virtuale (ad esempio
prima
di
installare
qualche
programma).
- Nella scheda
possibile riportare
della VM.
Descrizione è
una descrizione
29
System Settings
Questa sezione è relativa all'hardware
presentato alla VM.
- Nella scheda Scheda madre, ad
esempio è possibile modificare la
quantità di RAM (settata durante la
creazione della VM) e l'ordine di boot.
- Nella scheda Processore ad
esempio è possibile impostare il
numero di core virtuali visti dal guest
OS.
30
Display Settings
Questa sezione è relativa alle
caratteristiche del Display.
- Nella scheda Video, ad
esempio, è possibile specificare
la quantità di memoria RAM per
la scheda grafica virtuale.
31
Storage Settings
- Questa sezione ci consente di
connettere
dispositvi
hard
disk, CD/DVD e unità floppy
virtuali
alla
nostra
VM.
VirtualBox presenta “controller
storage” virtuali. Sotto ogni
controller
ritroviamo
il
dispositivo (hard disk, CD/DVD
o unità floppy) attacato.
32
Audio Settings
Questa sezione ci consente di
specificare se abilitare l'audio e
i driver e controller audio da
utilizzare.
33
Network Settings
Questa sezione permette di
specificare fino a 4 schede di
rete. Per ognuna è possibile
specificare il modello della scheda
e la tipologia di connessione.
Tipologia di connessione
- Not attached.
- Network Address Translation (NAT).
- Bridged networking.
- Internal networking.
- Host-only networking.
34
Network Settings
1) Not attached
Ovvero non vi è nessuna connessione.
2) Network Address Translation (NAT)
Consente ad una VM di collegarsi ad una rete esterna. In questa modalità una VM si comporta
come un computer che si connette ad Internet tramite un router. In questo caso, similmente
ad una rete privata dietro un router, la VM è invisibile e irragiungibile dall'esterno.
Quando viene creata una VM, VirtualBox di default abilita una scheda di rete scegliendo la
modalità NAT. In questo modo la VM può connettersi all'esterno.
35
Network Settings
3) Bridged networking
VirtualBox si connette a una scheda di rete fisica presente sull'host e scambia direttamente
pacchetti di rete. In questo modo è possibile intercettare dati dalla rete fisica e inserirvi dei
dati. In questa modalità è come se il sistema guest fosse fisicamente connesso all'interfaccia
usando un cavo di rete. L'host può inviare e ricevere dati dal guest tramite questa interfaccia.
36
Network Settings
4) Internal networking
Consente di creare una rete interna tra VM presenti sul medesimo host.
Ciò che posso fare con la Internal Networking può essere realizzato anche con la Bridged
networking però la differenza consiste nel fatto che una rete interna è più sicura. Infatti nella
modalità bridge tutto il traffico passa attraverso l'interfaccia fisica del sistema host e quindi è
possibile con uno sniffer intercettare i pacchetti.
37
Network Settings
4) Host-only networking
Consente di creare una rete costituita dall'host e da una serie di VM senza aver bisogno
dell'interfaccia di rete fisica dell'host. In particolare
sul sistema host viene creata
un'interfaccia di rete virtuale (simile all'interfaccia di loopback) consentendo la connessione
tra le VM e l'host.
Nella modalità internal networking, il traffico tra le VM non può essere visto dall'host mentre
nella modalità Host-only networking
il traffico sull'interfaccia di loopback può essere
intercettato dall'host.
38
Serial ports Settings
VirtualBox supporta porte seriali
virtuali in una VM.
Questa sezione ci consente
creare fino a 2 porte seriali.
39
di
USB Settings
Questa sezione permette di
rendere visibili i dispositivi
usb collegati al pc anche alla
VM, che altrimenti non
vedrebbe il dispositivo.
40
Shared Folders Settings
Questa
sezione
consente
di
condividere delle cartelle tra l'host OS
e il guest OS.
Questa è una funzionalità offerta dalle
Guest
Additions
che
saranno
presentate più avanti.
41
Barra di stato della VM
Nella barra in basso a destra della finestra della VM si trovano delle icone che ci permettono di
conoscere lo stato della macchina.
- La prima icona indica lo stato e l'attività degli hard disk virtuali (equivalente al led degli hard
disk reali).
- La seconda icona indica lo stato e l'attività dei lettori CD virtuali (equivalente al led dei lettori
CD reali).
- La terza icona indica lo stato e l'attività delle interfacce di rete (equivalente ai led delle schede
di rete).
- La quarta icona indica lo stato delle cartelle condivise.
Facendo click con il tasto destro sulle icone è possibile accedere a delle funzioni relative ai
componenti controllati.
42
Guest Additions
Per estendere le funzionalità rispetto alla normale esecuzione di una VM si utilizzano le Guest
Additions di VirtualBox.
Esse consistono in un insieme di driver ed applicazioni di sistema che aggiungono al sistema
operativo guest un insieme di caratteristiche che ne migliorano l'usabilità.
Alcune delle funzionalità supportate dalle Guest Additions sono:
- Miglioramento del supporto video: Se si esegue il resize dela finestra della VM, la
risoluzione video verrà regolata automaticamente.
- Sincronizzazione dell'orario: del sistema guest con quello dell'host.
- Integrazione del puntatore del mouse: il mouse potrà essere liberamente spostato tra
la finestra del sistema guest ed il sistema host senza dover premere il tasto Crtl di destra.
- Condivisione delle cartelle: consente di definire le cartelle del computer host che
potranno essere condivise con il sistema guest.
43
Mouse pointer integration
Catturare e rilasciare tastiera e mouse.
Ovviamnete una VM condivide tastiera e mouse con la macchina fisica (e con altre macchine
virtuali). Solo uno tra la VM e il resto del nostro computer può possedere la tastiera e il
mouse. Solo dopo aver cliccato sulla finestra della VM, il mouse e la tastiera sono possedute
dalla VM. Infatti noteremo un puntatore del mouse che sarà confinato nei limiti della finestra
della VM.
Per rilasciarle bisogna premere il tasto “hot key”. L'impostazione per questo tasto viene
indicata in basso a destra della finestra della VM. Ciò potrebbe essere scomodo.
Per superare queste limitazioni, ovvero per rendere trasparenti queste operazioni di cattura e
rilascio, questo supporto mi consente di avere un unico puntatore del mouse e non ho
bisogno più di premere alcun tasto per rilasciare il mouse.
44
Cartelle condivise
Per condividere dati tra la macchina
reale e la macchina virtuale si deve
ricorrere ad una cartella condivisa.
Per creare una cartella condivisa si
deve andare nella sezione Cartelle
Condivise delle Impostazioni e cliccare
nel primo bottone in alto a destra. Si
dovrà inserire il path della cartella
condivisa
all'interno
del
sistema
ospitante (host OS) e il nome della
cartella.
45
Installazione delle Guest Additions
Per abilitare funzionalità extra della VM, come
la funzionalità delle cartelle condivise, è
necessario installare le Guest Additions.
Per installarle basta fare click menù Dispositivi
della VM e poi selezionare Installa Guest
Additions:
si
avvierà
la
procedura
di
installazione di questi componenti aggiuntivi.
46
Ulteriori funzionalità
- Una VM creata su di un host (e.g. Windows) può essere eseguita su di un diverso host (e.g.
Linux). Viene usato lo stesso formato dei file.
- Possibilità di importare/esportare VM. Il formato Open Virtualiza0on Format (OVF) permette
di importare ed esportare VM.
- Salvataggio dello stato di una VM.
- Possibilità di generare “alberi” di Snapshots (istantanee dello stato della VM).
47
Salvare lo stato di una VM
funzionalità accedibile nell'operazione di chiusura di una finestra della VM.
48
Snapshots
- VirtualBox può salvare lo stato della macchina virtuale in un qualsiasi istante.
- Possibilità di navigare la storia degli stati della VM e di ripristinarli quando si
vuole.
With snapshots, you can save a particular state of a virtual machine for later use.
At any later time, you can revert to that state, even though you may have changed
the VM considerably since then. A snapshot of a virtual machine is thus similar to a
machine in "saved" state, as described above, but there can be many of them, and
these saved states are preserved.
49
Snapshot
- It contains a complete copy of the VM settings, including the hardware
configuration, so that when you restore a snapshot, the VM settings are restored as
well.
- The complete state of all the virtual disks attached to the machine is preserved:
going back to a snapshot means that all changes that had been made to the
machine's disks will be undone as well, files that were since created will disappear,
files that were deleted will be restored, changes to files will be reverted.
- Finally, if you took a snapshot while the machine was running, the memory state
of the machine is also saved in the snapshot (the same way the memory can be
saved when you close the VM window): when you restore such a snapshot,
execution resumes at exactly the point when the snapshot was taken.
50