Edizione 1
ftpd
Neretto monospazio
To see the contents of the filemy_next_bestselling_novel
in your current working directory, enter thecat my_next_bestselling_novel
command at the shell prompt and press Enter to execute the command.
Press Enter to execute the command.Press Ctrl+Alt+F1 to switch to the first virtual terminal. Press Ctrl+Alt+F7 to return to your X-Windows session.
Mono-spaced Bold
. For example:
File-related classes includefilesystem
for file systems,file
for files, anddir
for directories. Each class has its own associated set of permissions.
Choose Mouse Preferences. In the Buttons tab, click the Left-handed mouse check box and click to switch the primary mouse button from the left to the right (making the mouse suitable for use in the left hand).from the main menu bar to launchTo insert a special character into a gedit file, choose from the main menu bar. Next, choose from the Character Map menu bar, type the name of the character in the Search field and click . The character you sought will be highlighted in the Character Table. Double-click this highlighted character to place it in the Text to copy field and then click the button. Now switch back to your document and choose from the gedit menu bar.
Mono-spaced Bold Italic
or Proportional Bold Italic
To connect to a remote machine using ssh, typessh
at a shell prompt. If the remote machine isusername
@domain.name
example.com
and your username on that machine is john, typessh john@example.com
.Themount -o remount
command remounts the named file system. For example, to remount thefile-system
/home
file system, the command ismount -o remount /home
.To see the version of a currently installed package, use therpm -q
command. It will return a result as follows:package
.
package-version-release
When the Apache HTTP Server accepts requests, it dispatches child processes or threads to handle them. This group of child processes or threads is known as a server-pool. Under Apache HTTP Server 2.0, the responsibility for creating and maintaining these server-pools has been abstracted to a group of modules called Multi-Processing Modules (MPMs). Unlike other modules, only one module from the MPM group can be loaded by the Apache HTTP Server.
Tondo monospazio
e così presentato:
books Desktop documentation drafts mss photos stuff svn books_tests Desktop1 downloads images notes scripts svgs
Mono-spaced Roman
ma vengono presentati ed evidenziati nel modo seguente:
package org.jboss.book.jca.ex1; import javax.naming.InitialContext; public class ExClient { public static void main(String args[]) throws Exception { InitialContext iniCtx = new InitialContext(); Object ref = iniCtx.lookup("EchoBean"); EchoHome home = (EchoHome) ref; Echo echo = home.create(); System.out.println("Created Echo"); System.out.println("Echo.echo('Hello') = " + echo.echo("Hello")); } }
Indice
virt-manager
, libvirt
e virt-viewer
per l'installazione.
Personalizzare i pacchetti (se necessario)
%packages
del file kickstart aggiungere il seguente gruppo di pacchetti:
%packages @kvm
yum
kvm
. Il pacchetto kvm
contiene il modulo del kernel KVM il quale fornisce l'hypervisor KVM sul kernel di Linux predefinito.
kvm
eseguire:
# yum install kvm
python-virtinst
virt-install
per la creazione delle macchine virtuali.
libvirt
libvirt
è una libreria API per l'interazione con gli hypervisor. libvirt
utilizza il framework di virtualizzazione xm
ed il tool della linea di comando virsh
per gestire e controllare le macchine virtuali.
libvirt-python
libvirt
.
virt-manager
virt-manager
conosciuto anche come Virtual Machine Manager, fornisce uno strumento grafico per l'amministrazione delle macchine virtuali. Come API di gestione viene usata la libreria libvirt
.
# yum install virt-manager libvirt libvirt-python python-virtinst
virt-install
. Entrambi i metodi sono presenti all'interno di questo capitolo.
virt-install
per la creazione di guest virtualizzati dalla linea di comando. virt-install
può essere usato in modo interattivo o in uno script in modo da automatizzare la creazione di macchine virtuali. Utilizzando virt-install
con file kickstart, sarà possibile eseguire una installazione delle macchine virtuali senza alcun intervento dell'utente.
virt-install
fornisce un numero di opzioni passabili sulla linea di comando. Per visualizzare un elenco completo di opzioni:
$ virt-install --help
virt-install
documenta ogni opzione del comando e le variabili importanti.
qemu-img
è un comando che può essere usato prima di virt-install
per configurare le opzioni di storage.
--vnc
la quale è in grado di aprire una finestra grafica per l'installazione del guest.
rhel3support
, da un CD-ROM con networking virtuale e con una immagine del dispositivo a blocchi basato sul file di 5GB. In questo esempio viene usato un hypervisor KVM.
# virt-install --accelerate --hvm --connect qemu:///system \ --network network:default \ --name rhel3support --ram=756\ --file=/var/lib/libvirt/images/rhel3support.img \ --file-size=6 --vnc --cdrom=/dev/sr0
# virt-install --name Fedora11 --ram 512 --file=/var/lib/libvirt/images/Fedora11.img \ --file-size=3 --vnc --cdrom=/var/lib/libvirt/images/Fedora11.iso
virt-manager
conosciuto come Virtual Machine Manager, è uno strumento grafico per la creazione e la gestione dei guest virtualizzati.
# virt-manager &
virt-manager
apre una nuova interfaccia utente grafica. Diverse funzioni non sono disponibili agli utenti senza privilegi root o senza aver configurato sudo
, incluso il pulsante , senza di essi non sarà possibile creare un nuovo guest virtuale.
kernel-xen
non è il kernel attualmente in esecuzione.
HTTP
, FTP
o NFS
. L'URL del dispositivo d'installazione deve contenere un albero d'installazione di Fedora. Il suddetto albero viene ospitato usando NFS
, FTP
o HTTP
. I file ed i servizi di rete possono essere ospitati usando i servizi di rete sull'host o un altro mirror.
.iso
), montare l'immagine CD-ROM e posizionare i file montati con uno dei protocolli indicati.
/var/lib/xen/images/
. Altre posizioni della cartella per le immagini basate sul file sono proibite da SELinux. Se si esegue SELinux in modalità enforcing consultare la Sezione 7.1, «SELinux e virtualizzazione» per maggiori informazioni sull'installazione dei guest.
/var/lib/xen/images/
, per le immagini della macchina virtuale. Se si utilizza una posizione diversa (come ad esempio /xen/images/
) assicurarsi di aggiungerla alla propria politica di SELinux e di rietichettarla prima di continuare con l'installazione (più avanti nella documentazione si trovano le informazioni su come modificare la politica di SELinux)
virt-manager
. Capitolo 3, Procedure per l'installazione del sistema operativo guest contiene le fasi da seguire per l'installazione di una varietà di sistemi operativi comuni.
Creazione di un nuovo bridge
/etc/sysconfig/network-scripts/
. In questo esempio viene creato un file chiamato ifcfg-installation
il quale crea un bridge installation
# cd /etc/sysconfig/network-scripts/ # vim ifcfg-installation DEVICE=installation TYPE=Bridge BOOTPROTO=dhcp ONBOOT=yes
TYPE=Bridge
, is case-sensitive. It must have uppercase 'B' and lower case 'ridge'.
Avvio del nuovo bridge. # ifup installation
brctl show
per visualizzare le informazioni sui bridge di rete presenti sul sistema.
# brctl show bridge name bridge id STP enabled interfaces installation 8000.000000000000 no virbr0 8000.000000000000 yes
virbr0
è il bridge predefinito usato da libvirt
per il Network Address Translation (NAT) sul dispositivo ethernet predefinito.
Aggiungere una interfaccia al nuovo bridge
BRIDGE
al file di configurazione con il nome del bridge creato nelle fasi precedenti.
# Intel Corporation Gigabit Network Connection DEVICE=eth1 BRIDGE=installation BOOTPROTO=dhcp HWADDR=00:13:20:F7:6E:8E ONBOOT=yes
# service network restart
brctl show
:
# brctl show bridge name bridge id STP enabled interfaces installation 8000.001320f76e8e no eth1 virbr0 8000.000000000000 yes
Configurazione della sicurezza
iptables
to allow all traffic to be forwarded across the bridge.
# iptables -I FORWARD -m physdev --physdev-is-bridged -j ACCEPT # service iptables save # service iptables restart
iptables
rules. In /etc/sysctl.conf
append the following lines:
net.bridge.bridge-nf-call-ip6tables = 0 net.bridge.bridge-nf-call-iptables = 0 net.bridge.bridge-nf-call-arptables = 0
sysctl
# sysctl -p /etc/sysctl.conf
Riavviare libvirt prima dell'installazione
libvirt
daemon.
# service libvirtd reload
virt-install
aggiungere il parametro d'installazione --network=bridge:BRIDGENAME
dove installazione è il nome del proprio bridge. Per le installazioni PXE usare il parametro --pxe
.
# virt-install --accelerate --hvm --connect qemu:///system \ --network=bridge:installation --pxe\ --name EL10 --ram=756 \ --vcpus=4 --os-type=linux --os-variant=rhel5 --file=/var/lib/libvirt/images/EL10.img \
Selezione di PXE
Selezione del bridge
Inizio dell'installazione
kernel-xen
.
virt-manager
, consultare le procedure presenti in Sezione 2.2, «Creazione di un guest con virt-manager».
virt-install
basato sulla linea di comando. L'opzione --vnc
mostra l'installazione grafica. Il nome del guest all'interno dell'esempio è rhel5PV
, l'immagine del disco è rhel5PV.dsk
ed il mirror locale dell'albero d'installazione di Red Hat Enterprise Linux 5 è ftp://10.1.1.1/trees/CentOS5-B2-Server-i386/
. Sostituire quei valori con valori accurati per il sistema e la rete.
# virt-install -nrhel5PV
-r 500 \ -f /var/lib/libvirt/images/rhel5PV.dsk
-s 3 --vnc -p \ -lftp://10.1.1.1/trees/CentOS5-B2-Server-i386/
DHCP
(come di seguito indicato) o inidirizzo IP statico:
Installation Number
:
rhn_register
. Il comando rhn_register
richiede un accesso root.
# rhn_register
virt-install
in Sezione 3.1, «Installazione di Red Hat Enterprise Linux 5 come guest para-virtualizzato». Se si utilizza l'esempio predefinito il nome è rhel5PV
.
virsh reboot rhel5PV
virt-manager
, selezionare il nome del guest e fare clic su , successivamente selezionare .
kdump
.
Open virt-manager
virt-manager
. Launch the application from the menu and submenu. Alternatively, run the virt-manager
command as root.
Select the hypervisor
qemu
.
Start the new virtual machine wizard
Name the virtual machine
Choose a virtualization method
Select the installation method
Locate installation media
/var/lib/libvirt/images/
. Qualsiasi altra posizione potrebbe richiedere una configurazione aggiuntiva di SELinux, consultare la Sezione 7.1, «SELinux e virtualizzazione» per informazioni.
Storage setup
/var/lib/libvirt/images/
. Assegnare storage e spazio sufficiente per il guest virtualizzato ed applicazioni necessarie.
Premere per continuare.
Network setup
Memory and CPU allocation
Verify and start guest installation
Installazione di Linux
Starting virt-manager
Come nominare il proprio sistema virtuale
Selezione di un metodo di virtualizzazione
Selezione di un metodo d'installazione
/var/lib/libvirt/images/
. Qualsiasi altra posizione potrebbe richiedere una configurazione aggiuntiva di SELinux, consultare la Sezione 7.1, «SELinux e virtualizzazione» per informazioni.
/var/lib/libvirt/images/
. Altre posizioni della directory per le immagini basate sul file sono proibite da SELinux. Se si esegue SELinux in modalità enforcing consultare la Sezione 7.1, «SELinux e virtualizzazione» per maggiori informazioni sull'installazione dei guest.
/var/lib/xen/images/
, per le immagini della macchina virtuale. Se si utilizza una posizione diversa (come ad esempio /images/
) assicurarsi di aggiungerla alla propria politica di SELinux e di rietichettarla prima di continuare con l'installazione (più avanti nella documentazione è possibile trovare le informazioni su come modificare la politica di SELinux)
Network setup
HAL
, una volta ottenuta la casella di dialogo selezionare la scheda corrispondente alla Piattaforma i486 generica
(è possibile scorrere l'elenco usando i tasti freccetta Su e Giù).
# virsh start WindowsGuest
WindowsGuest
è il nome della macchina virtuale.
virsh reboot WindowsGuestName
. Il suddetto comando dovrebbe ripristinare tale processo. Durante il riavvio della macchina virtuale è possibile visualizzare il messaggio Setup is being restarted
:
virt-install
. virt-install
può essere usato al posto di virt-manager. Questo processo è simile all'installazione di Windows XP riportata nella Sezione 3.3, «Installazione di Windows XP come guest completamente virtualizzato».
virt-install
per l'installazione di Windows Server 2003 come console per il guest Windows è possibile visualizzare la finestra di virt-viewer. Un esempio di come utilizzare virt-install
per l'installazione di un guest Windows Server 2003:
virt-install
.
# virt-install -hvm -s 5 -f /var/lib/libvirt/images/windows2003spi1.dsk \ -n windows2003sp1 -cdrom=/ISOs/WIN/en_windows_server_2003_sp1.iso \ -vnc -r 1024
Standard PC
. Questa è la sola fase non standard necessaria:
Open virt-manager
virt-manager
. Launch the application from the menu and submenu. Alternatively, run the virt-manager
command as root.
Select the hypervisor
qemu
.
Start the new virtual machine wizard
Name the virtual machine
Choose a virtualization method
Select the installation method
Locate installation media
/var/lib/libvirt/images/
. Qualsiasi altra posizione potrebbe aver bisogno di una configurazione aggiuntiva di SELinux, consultare la Sezione 7.1, «SELinux e virtualizzazione» per informazioni.
Storage setup
/var/lib/libvirt/images/
. Assegnare uno storage sufficiente per il proprio guest virtualizzato. Assegnare spazio sufficiente per il guest virtualizzato e qualsiasi applicazione necessaria.
Premere per continuare.
Network setup
Memory and CPU allocation
Verify and start guest installation
Installazione di Windows
dd
. Sostituire /dev/fd0 con il nome di un dispositivo floppy e nominare il dischetto in modo appropriato.
# dd if=/dev/fd0 of=~/legacydrivers.img
virt-manager
il quale esegue una installazione Linux completamente virtualizzata con l'immagina posizionata in /var/lib/libvirt/images/rhel5FV.img
. In questa circostanza si utilizza l'hypervisor Xen.
virsh
su di un guest in esecuzione.
# virsh dumpxml rhel5FV > rhel5FV.xml
# dd if=/dev/zero of=/var/lib/libvirt/images/rhel5FV-floppy.img bs=512 count=2880
<disk type='file' device='floppy'> <source file='/var/lib/libvirt/images/rhel5FV-floppy.img'/> <target dev='fda'/> </disk>
# virsh stop rhel5FV
# virsh create rhel5FV.xml
dd
. L'utilizzo di sparse file non è consigliato a causa di alcune problematiche relative all'integrità dei dati ed alle prestazioni che ne possono derivare. Essi possono essere creati più velocemente ed usati per l'effettuazione di test ma non in ambienti di produzione.
# dd if=/dev/zero of=/var/lib/libvirt/images/FileName.img bs=1M seek=4096 count=0
# dd if=/dev/zero of=/var/lib/libvirt/images/FileName.img bs=1M count=4096
Guest1
ed il file viene salvato nella cartella home degli utenti.
# virsh dumpxmlGuest1
> ~/Guest1
.xml
Guest1.xml
) e andare alla ricerca delle voci che iniziano con "disk=
". La voce in questione potrebbe somigliare alla seguente:
>disk type='file' device='disk'< >driver name='tap' type='aio'/< >source file='/var/lib/libvirt/images/Guest1.img'/< >target dev='xvda'/< >/disk<
disk=
. Assicurarsi di aver specificato un nome del dispositivo per il dispositivo a blocchi virtuale non ancora usato nel file di configurazione. Di seguito viene riportato un esempio di voce che aggiunge un file chiamato FileName.img
come contenitore di storage basato sul file:
>disk type='file' device='disk'< >driver name='tap' type='aio'/< >source file='/var/lib/libvirt/images/Guest1.img'/< >target dev='xvda'/< >/disk< >disk type='file' device='disk'< >driver name='tap' type='aio'/< >source file='/var/lib/libvirt/images/FileName.img'/< >target dev='hda'/< >/disk<
# virsh create Guest1.xml
FileName.img
come dispositivo /dev/hdb
. Questo dispositivo necessita di una formattazione da parte del guest. Sul guest, partizionare il dispositivo in una partizione primaria per l'intero dispositivo e successivamente formattare il dispositivo stesso.
n
per una nuova partizione.
# fdisk /dev/hdb Command (m for help):
p
per una partizione primaria.
Command action e extended p primary partition (1-4)
1
.
Partition number (1-4): 1
Enter
.
First cylinder (1-400, default 1):
Enter
.
Last cylinder or +size or +sizeM or +sizeK (2-400, default 400):
t
.
Command (m for help): t
1
.
Partition number (1-4): 1
83
per una partizione Linux.
Hex code (type L to list codes): 83
Command (m for help):w
Command (m for help):q
ext3
.
# mke2fs -j /dev/hdb
# mount /dev/hdb1 /myfiles
multipath
e la persistenza sull'host se necessario.
virsh attach
. Sostituire: myguest
con il nome del vostro guest, /dev/hdb1
con il dispositivo da aggiungere, e hdc
con la posizione per il dispositivo sul guest. hdc
deve essere un nome del dispositivo non acora utilizzato. Usare l'annotazione hd*
per i guest di Windows, in questo modo il guest riconoscerà in modo corretto il dispositivo.
--type hdd
al comando per i dispositivi DVD o CD-ROM.
--type floppy
al comando per i dispositivi floppy.
# virsh attach-diskmyguest
/dev/hdb1
hdc
--driver tap --mode readonly
/dev/hdb
su Linux o D: drive
, o simile, su Windows. A tal proposito potrebbe essere necessario formattare questo dispositivo.
multipath
devono utilizzare Configurazione di un percorso singolo. Mentre quelli che eseguono multipath
possono usare Configurazione di percorsi multipli.
udev
. Usare questa procedura solo per gli host che non usano multipath
.
/etc/scsi_id.config
.
options=-b
sia commentata.
# options=-b
options=-g
udev
in modo da assumere che tutti i dispositivi SCSI ritorneranno un UUID.
scsi_id -g -s /block/sd*
. Per esempio:
# scsi_id -g -s /block/sd* 3600a0b800013275100000015427b625e
/dev/sdc
.
scsi_id -g -s /block/sd*
sia identico a quello del computer che accede al dispositivo.
20-names.rules
nella directory /etc/udev/rules.d
. A questo punto le nuove regole dovranno essere aggiunte al file. Tutte le regole sono aggiunte allo stesso file utilizzando lo stesso formato. Le regole dovranno avere il seguente formato:
KERNEL="sd*", BUS="scsi", PROGRAM="/sbin/scsi_id -g -s", RESULT=UUID
, NAME=devicename
UUID
e devicename
con l'UUID sopra indicato e con il nome desiderato per il dispositivo. Nell'esempio la regola somiglierà a quanto di seguito riportato:
KERNEL="sd*", BUS="scsi", PROGRAM="/sbin/scsi_id -g -s", RESULT="3600a0b800013275100000015427b625e", NAME="rack4row16"
udev
ora andrà alla ricerca di tutti i dispositivi chiamati /dev/sd*
per l'UUID presente nella regola. Una volta che il dispositivo corrispondente è stato collegato al sistema, esso verrà assegnato allo stesso il nome della regola. Un dispositivo con un UUID di 3600a0b800013275100000015427b625e apparirà come /dev/rack4row16
.
/etc/rc.local
:
/sbin/start_udev
/etc/scsi_id.config
, /etc/udev/rules.d/20-names.rules
, e /etc/rc.local
su tutti gli host rilevanti.
/sbin/start_udev
multipath
viene usato per sistemi con più di un percorso fisico dal computer ai dispositivi di memorizzazione. multipath
fornisce condizioni di elevata resistenza 'fault tolerant', fail-over, e migliori prestazioni per i dispositivi di storage della rete collegati ai sistemi Linux.
multipath
necessita di nomi di alias definiti per i dispositivi multipath. Ogni dispositivo di storage presenta un UUID il quale funge da chiave per i nomi con alias. Identificare un UUID di un dispositivo tramite il comando scsi_id
:
# scsi_id -g -s /block/sdc
/dev/mpath
. Nell'esempio di seguito riportato sono stati definiti 4 dispositivi in /etc/multipath.conf
:
multipaths { multipath { wwid 3600805f30015987000000000768a0019 alias oramp1 } multipath { wwid 3600805f30015987000000000d643001a alias oramp2 } mulitpath { wwid 3600805f3001598700000000086fc001b alias oramp3 } mulitpath { wwid 3600805f300159870000000000984001c alias oramp4 } }
/dev/mpath/oramp1
, /dev/mpath/oramp2
, /dev/mpath/oramp3
e /dev/mpath/oramp4
. Una volta inseriti, la mappatura degli WWID dei dispositivi sui nuovi nomi sarà persistente durante ogni processo di riavvio.
virsh
con il parametro attach-disk
.
# virsh attach-disk [domain-id] [source] [target] --driver file --type cdrom --mode readonly
. I parametri source
e target
sono i percorsi per i file ed i dispositivi rispettivamente per l'host ed il guest. Il parametro source
può essere un percorso per un file ISO o il dispositivo della cartella /dev
.
# setenforce 1
AutoFS
, NFS
, FTP
, HTTP
, NIS
, telnetd
, sendmail
e così via.
/var/lib/libvirt/images/
. Se si sta utilizzando una directory diversa per le immagini della macchina virtuale, assicurarsi di aggiungere la directory nella politica SELinux rietichettandola prima di eseguire l'installazione.
vsftpd
.
/var/lib/libvirt/images
.
NewVolumeName
sul gruppo di volumi volumegroup
.
# lvcreate -nNewVolumeName
-L5G
volumegroup
NewVolumeName
con un file system in grado di supportare gli attributi estesi come ad esempio ext3.
# mke2fs -j /dev/volumegroup/NewVolumeName
/etc
, /var
, /sys
) o nelle cartelle home /home
o /root
). In questo esempio viene usata una cartella chiamata /virtstorage
# mkdir /virtstorage
# mount/dev/volumegroup/NewVolumeName
/virtstorage
semanage fcontext -a -t xen_image_t "/virtualization(/.*)?"
semanage fcontext -a -t virt_image_t "/virtualization(/.*)?"
/etc/selinux/targeted/contexts/files/file_contexts.local
rendendo la modifica persistente. La riga potrebbe somigliare alla seguente:
/virtstorage(/.*)? system_u:object_r:xen_image_t:s0
/virtstorage
) e tutti i file sottostanti su xen_image_t
(restorecon
e setfiles
leggono i file in /etc/selinux/targeted/contexts/files/
).
# restorecon -R -v /virtualization
# semanage fcontext -a -t xen_image _t -f -b /dev/sda2 # restorecon /dev/sda2
xend_disable_t
imposta xend
in modalità unconfined dopo il riavvio del demone. È consigliato disabilitare la protezione per un demone singolo invece di disabilitarla per l'intero sistema. Altresì non rietichettare le cartelle come xen_image_t
utilizzate in altre parti.
libvirt
standard fornisce una connettività basata sul NAT alle macchine virtuali, senza la necessità di una configurazione aggiuntiva. Ciò viene chiamato rete virtuale predefinita. Verificatene la disponibilità con il comando virsh net-list --all
.
# virsh net-list --all Name State Autostart ----------------------------------------- default active yes
# virsh net-define /usr/share/libvirt/networks/default.xml
/usr/share/libvirt/networks/default.xml
# virsh net-autostart default Rete predefinita contrassegnata come autostarted
# virsh net-start default Rete predefinita avviata
libvirt
verrà visualizzato un dispositivo bridge isolato. Il suddetto dispositivo non avrà alcuna interfaccia fisica ad esso aggiunta poichè verrà utilzzato l'IP forwarding e NAT per collegarsi con l'esterno. Non aggiungere nuove interfacce.
# brctl show bridge name bridge id STP enabled interfaces virbr0 8000.000000000000 yes
libvirt
aggiunge le regole iptables
le quali abilitano il traffico da e per i guest collegati al dispositivo virbr0
nelle catene INPUT
, FORWARD
, OUTPUT
e POSTROUTING
. Successivamente libvirt
cerca di abilitare il parametro ip_forward
. Altre applicazioni potrebbero disabilitare ip_forward
e per questo motivo l'opzione migliore è quella di aggiungere quanto segue a /etc/sysctl.conf
.
net.ipv4.ip_forward = 1
<interface type='network'> <source network='default'/> </interface>
<interface type='network'> <source network='default'/> <mac address='00:16:3e:1a:b3:4a'/> </interface>
/etc/xen/xend-config.sxp
ed in particolare la riga:
(network-script network-bridge)
(network-script /bin/true)
# chkconfig NetworkManager off # chkconfig network on # service NetworkManager stop # service network start
NM_CONTROLLED=no
" agli script ifcfg-*
usati negli esempi.
/etc/sysconfig/network-scripts
:
# cd /etc/sysconfig/network-scripts
ifcfg-eth0
definisce l'interfaccia di rete fisica impostata come parte di un bridge:
DEVICE=eth0 # change the hardware address to match the hardware address your NIC uses HWADDR=00:16:76:D6:C9:45 ONBOOT=yes BRIDGE=br0
MTU
alla fine del file di configurazione.
MTU=9000
/etc/sysconfig/network-scripts
chiamato ifcfg-br0
o simile. br0
è il nome del bridge, può essere qualsiasi cosa se il nome del file è uguale al parametro del DISPOSITIVO.
DEVICE=br0 TYPE=Bridge BOOTPROTO=dhcp ONBOOT=yes DELAY=0
TYPE=Bridge
, is case-sensitive. It must have uppercase 'B' and lower case 'ridge'.
# service network restart
iptables
to allow all traffic to be forwarded across the bridge.
# iptables -I FORWARD -m physdev --physdev-is-bridged -j ACCEPT # service iptables save # service iptables restart
iptables
rules. In /etc/sysctl.conf
append the following lines:
net.bridge.bridge-nf-call-ip6tables = 0 net.bridge.bridge-nf-call-iptables = 0 net.bridge.bridge-nf-call-arptables = 0
sysctl
# sysctl -p /etc/sysctl.conf
libvirt
daemon.
# service libvirtd reload
# brctl show bridge name bridge id STP enabled interfaces virbr0 8000.000000000000 yes br0 8000.000e0cb30550 no eth0
virbr0
. È consigliato non collegare un dispositivo fisico a virbr0
. Il bridge virbr0
è solo per la connettività Network Address Translation (NAT).
Scaricare i driver
virtio-win.iso
) nella cartella /usr/share/virtio-win/
.
Installare i driver para-virtualizzati
virt-manager
per il montaggio di una immagine CD-ROM per un guest di Windos» per aggiungere l'immagine del CD-ROM con virt-manager
.
virt-manager
per il montaggio di una immagine CD-ROM per un guest di Windosvirt-manager
, selezionare il vostro guest virtualizzato dall'elenco delle macchine virtuali e premere il pulsante :
/usr/share/xenpv-win
se è stato usato yum
per installare i pacchetti del driver paravirtualizzato.
viostor.vfd
come floppy
Windows Server 2003
Windows Server 2008
virtio
al posto del driver IDE virtualizzato. In questo esempio sono stati modificati i file di configurazione di libvirt. Alternativamente virt-manager
, virsh attach-disk
o virsh attach-interface
possono aggiungere un nuovo dispositivo utilizzando i driver paravirtualizzati Utilizzo dei driver paravirtualizzati KVM per nuovi dispositivi.
<disk type='file' device='disk'> <source file='/var/lib/libvirt/images/disk1.img'/> <target dev='hda' bus='ide'/> </disk>
virtio
.
<disk type='file' device='disk'>
<source file='/var/lib/libvirt/images/disk1.img'/>
<target dev='hda' bus='virtio'/>
</disk>
virt-manager
.
virsh attach-disk
o virsh attach-interface
possono essere usati per collegare i dispositivi utilizzando i driver paravirtualizzati.
virt-manager
.
xend
/etc/xen/xend-config.sxp
. Ecco i parametri da abilitare o disabilitare nel file di configurazione xend-config.sxp
:
Item | Description |
---|---|
(limite-console)
|
Determina lo xend_unix_server, il limite del buffer di memoria del server della console ed assegna i valori in base al dominio
|
(min-mem)
|
Determina il numero minimo di megabyte riservati per il domain0 (se inserite 0, il valore non varia).
|
(dom0-cpus)
|
Determina il numero delle CPU utilizzate dal domain0 (almeno 1 CPU è assegnata per default).
|
(enable-dump)
|
Determina la presenza di un arresto inaspettato 'crash', e abilita un dump (il default è 0).
|
(external-migration-tool)
|
Determina lo script o l'applicazione che gestisce la migrazione del dispositivo esterno. Gli script devono risiedere in
etc/xen/scripts/external-device-migrate .
|
(logfile)
|
Determina la posizione del file di log (il predefinito è
/var/log/xend.log ).
|
(loglevel)
|
Filtra i valori log mode: DEBUG, INFO, WARNING, ERROR, o CRITICAL (il default è DEBUG).
|
(network-script)
|
Determina lo script che abilita l'ambiente di networking (gli script devono risiedere nella cartella
etc/xen/scripts ).
|
(xend-http-server)
|
Abilita il server per l'http stream packet management (il predefinito è no).
|
(xend-unix-server)
|
Abilita il server unix domain socket, un server socket rappresenta un punto finale delle comunicazioni, che gestisce i collegamenti low level network ed accetta o rifiuta i collegamenti in entrata. Il valore predefinito è si.
|
(xend-relocation-server)
|
Abilita il server di riposizionamento per migrazioni 'cross-machine' (il predefinito è no).
|
(xend-unix-path)
|
Determina la posizione dove il comando
xend-unix-server esegue l'output dei dati (il predefinito è var/lib/xend/xend-socket )
|
(xend-port)
|
Determina la porta utilizzata dal server di gestione http (il predefinito è 8000).
|
(xend-relocation-port)
|
Determina la porta utilizzata dal server di riposizionamento (il predefinito è 8002).
|
(xend-relocation-address)
|
Determina gli indirizzi dell'host abilitati per la migrazione. Il valore predefinito è il valore di
xend-address .
|
(xend-address)
|
Determina l'indirizzo al quale si lega il server del domain socket. Il valore predefinito permette tutti i collegamenti.
|
service xend start
service xend stop
service xend restart
service xend status
xend
al momento dell'avviochkconfig
per aggiungere xend
a initscript
.
chkconfig --level 345 xend
xend
verrà ora avviato nei runlevel 3,4 e 5.
ntpd
:
# service ntpd start
# chkconfig ntpd on
ntpd
dovrebbe diminuire gli effetti relativi all'alterazione dell'orologio in qualsiasi caso.
constant_tsc
. Per determinare la presenta del flag constant_tsc
eseguire il seguente comando:
$ cat /proc/cpuinfo | grep constant_tsc
constant_tsc
nella CPU. Se al contrario nessun output viene visualizzato allora seguire le istruzioni di seguito indicate.
constant_tsc
, disabilitare tutte le funzioni di gestione dell'alimentazione (BZ#513138). Ogni sistema possiede diversi timer per controllare l'ora. TSC non è stabile sull'host, tale comportamento viene causato talvolta dalle modifiche cpufreq
, da stati deep C state oppure da una migrazione su di un host con un TSC più veloce. Per interrompere uno stato deep C state, il quale è in grado di arrestare TSC, aggiungere sull'host "processor.max_cstate=1
" nelle opzioni d'avvio del kernel in grub:
term Fedora (vmlinuz-2.6.29.6-217.2.3.fc11)
root (hd0,0)
kernel /vmlinuz-vmlinuz-2.6.29.6-217.2.3.fc11 ro root=/dev/VolGroup00/LogVol00 rhgb quiet processor.max_cstate=1
cpufreq
(necessario solo su host senza constant_tsc
) modificando il file di configurazione /etc/sysconfig/cpuspeed
e successivamente le variabili MIN_SPEED
e MAX_SPEED
sulla frequenza più alta disponibile. I limiti validi sono disponibili nei file /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_frequencies
.
Red Hat Enterprise Linux | Parametri aggiuntivi relativi al kernel del guest |
---|---|
5.4 AMD64/Intel 64 con orologio paravirtualizzato | I parametri aggiuntivi non sono necessari |
5.4 AMD64/Intel 64 senza orologio paravirtualizzato | divider=10 notsc lpj=n |
5.4 x86 con orologio paravirtualizzato | I parametri aggiuntivi non sono necessari |
5.4 x86 senza orologio paravirtualizzato | divider=10 clocksource=acpi_pm lpj=n |
5.3 AMD64/Intel 64 | divider=10 notsc |
5.3 x86 | divider=10 clocksource=acpi_pm |
4.8 AMD64/Intel 64 | notsc divider=10 |
4.8 x86 | clock=pmtmr divider=10 |
3.9 AMD64/Intel 64 | I parametri aggiuntivi non sono necessari |
3.9 x86 | I parametri aggiuntivi non sono necessari |
/use pmtimer
virsh
. Il comando migrate
accetta i parametri nel seguente formato:
# virsh migrate --live GuestName DestinationURL
GuestName
parameter represents the name of the guest which you want to migrate.
DestinationURL
parameter is the URL or hostname of the destination system. The destination system must run the same version of Fedora, be using the same hypervisor and have libvirt
running.
test1.bne.redhat.com
a test2.bne.redhat.com
. Modificare gli hostname per l'ambiente. Nell'esempio è riportata una migrazione di una macchina virtuale chiamata CentOS4test
.
Verificare che il guest sia in esecuzione
test1.bne.redhat.com
, verificare che CentOS4test
sia in esecuzione:
[root@test1 ~]# virsh list Id Name State ---------------------------------- 10 CentOS4 running
Migrare il guest
test2.bne.redhat.com
. Aggiungere /system
alla fine dell'URL di destinazione per indicare a libvirt la necessità di avere un accesso completo.
# virsh migrate --live CentOS4test qemu+ssh://test2.bne.redhat.com/system
Attesa
virsh
riporta solo gli errori. Il guest continua la sua esecuzione sull'host sorgente fino alla migrazione completa.
Verificare che il guest sia arrivato sull'host di destinazione
test2.bne.redhat.com
, verificare che CentOS4test
sia in esecuzione:
[root@test2 ~]# virsh list Id Name State ---------------------------------- 10 CentOS4 running
virt-manager
ssh
o TLS e SSL.
ssh
fornisce un protocollo di rete cifrato attraverso il quale è possibile inviare in modo sicuro le funzioni di gestione ai server di virtualizzazione remoti. Il metodo descritto usa il libvirt
management connection attraverso un tunnel sicuro su di un collegamento SSH per la gestione delle macchine remote. L'autenticazione viene fatta tramite la cifratura della chiave pubblica SSH e le password, oppure tramite le frasi segrete raccolte dal vostro agent SSH locale. In aggiunta, la console VNC per ogni macchina del guest virtuale verrà collegata a SSH tramite un tunnel.
virt-manager
virt-manager
. Se ssh
è stato precedentemente configurato allora si può saltare questo comando.
$ ssh-keygen -t rsa
virt-manager
avrà bisogno di una copia della chiave pubblica su ogni macchina remota che eseuge libvirt
. Copiare il file $HOME/.ssh/id_rsa.pub
dalla macchina da usare per la gestione remota tramite il comando scp
:
$ scp $HOME/.ssh/id_rsa.pub root@somehost:/root/key-dan.pub
ssh
per eseguire il collegamento alle macchine remote come utente root, ed aggiungere il file copiato sull'elenco di chiavi autorizzate. Se l'utente root presente sull'host remoto non possiede un elenco di chiavi autorizzate, assicurarsi che i permessi del file siano stati impostati correttamente
$ ssh root@somehost
# mkdir /root/.ssh
# chmod go-rwx /root/.ssh
# cat /root/key-dan.pub >> /root/.ssh/authorized_keys
# chmod go-rw /root/.ssh/authorized_keys
libvirt
(libvirtd
)libvirt
fornisce un interfaccia per la gestione delle macchine virtuali. È necessario aver installato il demone libvirtd
ed eseguirlo su ogni host remoto che si desidera gestire.
$ ssh root@somehost
# chkconfig libvirtd on
# service libvirtd start
libvirtd
che SSH, si è in grado di accedere in modo remoto alle proprie macchine virtuali. A questo punto sarà possibile accedere ai guest anche con VNC
.
libvirt
aprirà una porta TCP per i collegamenti in entrata, la quale risulta essere cifrata ed autenticata in base ai certificati x509. Altresì la console VNC per ogni macchina virtuale del guest verrà impostata in modo da utilizzare TLS con l'autenticazione del certificato x509.
libvirt
/etc/xen/xend-config.sxp
. Rimuovere il commento sul parametro di configurazione (vnc-tls 1)
all'interno del file di configurazione.
/etc/xen/vnc
necessita dei seguenti file:
ca-cert.pem
- Il certificato CA
server-cert.pem
- Il certificato del server firmato dal CA
server-key.pem
- La chiave privata del server
(vnc-x509-verify 1)
.
virsh
e virt-manager
libvirt
tramite TLS, i certificati client e CA devono essere posizionati in /etc/pki
. Per informazioni consultare http://libvirt.org/remote.html
virt-manager
utilizzare l'opzione del meccanismo di trasporto durante il collegamento ad un host.
virsh
URI ha il seguente formato:
qemu://hostname.guestname/system
per KVM.
xen://hostname.guestname/
per Xen.
$HOME/.pki
, quindi i seguenti file:
ca-cert.pem
- Il certificato CA.
libvirt-vnc
o clientcert.pem
- Il certificato del client firmato dal CA.
libvirt-vnc
o clientkey.pem
- La chiave privata del client.
libvirt
supporta le seguenti modalità di trasporto:
/var/run/libvirt/libvirt-sock
e /var/run/libvirt/libvirt-sock-ro
(per collegamenti di sola-lettura).
libvirtd
) deve essere in esecuzione sulla macchina remota. La porta 22 deve essere aperta per permettere un accesso SSH. Sarà necessario utilizzare una specie di gestione della chiave ssh (per esempio, ssh-agent
) in caso contrario vi sarà richiesta una password.
Un Uniform Resource Identifier (URI) viene usato da virsh
e libvirt
per il collegamento ad un host remoto. Gli URI possono essere usati con il parametro --connect
per il comando virsh
in modo da eseguire comandi singoli o migrazioni su host remoti.
driver[+transport]://[username@][hostname][:port]/[path][?extraparameters]
towada
, usando un trasporto SSH ed il nome utente SSH ccurran
.
xen+ssh://ccurran@towada/
towada
utilizzando TLS.
xen://towada/
towada
usando TLS. Il parametro no_verify=1
indica a libvirt di non verificare il certificato del server.
xen://towada/?no_verify=1
towada
usando SSH.
qemu+ssh://towada/system
qemu+unix:///system?socket=/opt/libvirt/run/libvirt/libvirt-sock
test+tcp://10.1.1.10:5000/default
Nome | Modalità di trasporto | Description | Esempio di utilizzo |
---|---|---|---|
name | tutte le modalità | Il nome passato alla funzione virConnectOpen remota. Esso è formato generalmente rimuovendo il trasporto, il nome utente, il numero della porta, l'hostname ed i parametri aggiuntivi dall'URI remoto, ma in alcuni casi molto complessi è meglio conferire esplicitamente il nome. | name=qemu:///system |
comando | ssh e ext | Il comando esterno. Per il trasporto ext questo è necessario. Per ssh l'impostazione predefinita è ssh. Per il comando viene eseguita la ricerca del PATH. | command=/opt/openssh/bin/ssh |
socket | unix e ssh | Il percorso per il socket del dominio UNIX il quale sovrascrive l'impostazione predefinita. Per il trasporto ssh, esso viene passato al comando netcat remoto (consultare netcat). | socket=/opt/libvirt/run/libvirt/libvirt-sock |
netcat | ssh | Il nome del comando netcat sulla macchina remota. L'impostazione predefinita è nc. Per il trasporto ssh, libvirt crea un comando ssh il quale è simile al seguente: command -p port [-l username] hostname netcat -U socket dove porta, nome utente, hostname possono essere specificati come parte dell'URI remoto, e comando, netcat e socket provengono da parametri aggiuntivi (o impostazioni predefinite sensibili). | netcat=/opt/netcat/bin/nc |
no_verify | tls | Se impostato su di un valore diverso da zero verranno disabilitati i controlli del certificato del server. Da notare che per disabilitare i controlli server del certificato del client o indirizzo IP, è necessario modificare la configurazione di libvirtd. | no_verify=1 |
no_tty | ssh | Se impostato su di un valore diverso da zero ssh non richiederà più alcuna password se non riesce ad eseguire automaticamente un log in su di una macchina remota (per l'utilizzo di ssh-agent o simile). Da usare quando non si è in possesso di un accesso ad un terminale - per esempio in programmi grafici che utilizzano libvirt. | no_tty=1 |
Indice
vmstat
iostat
lsof
# lsof -i :5900 xen-vncfb 10635 root 5u IPv4 218738 TCP grumble.boston.redhat.com:5900 (LISTEN)
qemu-img
systemTap
crash
xen-gdbserver
sysrq
sysrq t
sysrq w
sysrq c
brtcl
# brctl show bridge name bridge id STP enabled interfaces xenbr0 8000.feffffffffff no vif13.0 pdummy0 vif0.0
# brctl showmacs xenbr0 port no mac addr is local? aging timer 1 fe:ff:ff:ff:ff:ff yes 0.00
# brctl showstp xenbr0 xenbr0 bridge id 8000.feffffffffff designated root 8000.feffffffffff root port 0 path cost 0 max age 20.00 bridge max age 20.00 hello time 2.00 bridge hello time 2.00 forward delay 0.00 bridge forward delay 0.00 aging time 300.01 hello timer 1.43 tcn timer 0.00 topology change timer 0.00 gc timer 0.02 flags vif13.0 (3) port id 8003 state forwarding designated root 8000.feffffffffff path cost 100 designated bridge 8000.feffffffffff message age timer 0.00 designated port 8003 forward delay timer 0.00 designated cost 0 hold timer 0.43 flags pdummy0 (2) port id 8002 state forwarding designated root 8000.feffffffffff path cost 100 designated bridge 8000.feffffffffff message age timer 0.00 designated port 8002 forward delay timer 0.00 designated cost 0 hold timer 0.43 flags vif0.0 (1) port id 8001 state forwarding designated root 8000.feffffffffff path cost 100 designated bridge 8000.feffffffffff message age timer 0.00 designated port 8001 forward delay timer 0.00 designated cost 0 hold timer 0.43 flags
ifconfig
tcpdump
ps
pstree
top
kvmtrace
kvm_stat
xentop
xm dmesg
xm log
virsh
è uno strumento dell'interfaccia della linea di comando per la gestione dei guest e dell'hypervisor.
virsh
è stato creato considerando l'API di gestione libvirt
e funziona come alternativa allo strumento xm e al graphical guest Manager (virt-manager
). Gli utenti non privilegiati possono usare virsh
per operazioni di sola lettura. Utilizzare virsh
per eseguire gli script per le macchine del guest.
Comando | Description |
---|---|
help
| Visualizza le informazioni di base d'aiuto. |
list
| Elenca tutti i guest. |
dumpxml
| Esegue l'output del file di configurazione XML per il guest. |
create
| Crea un guest da un file di configurazione XML ed avvia il nuovo guest. |
start
| Avvia un guest inattivo. |
destroy
| Forza l'arresto di un guest. |
define
| Esegue un output di un file di configurazione XML per un guest. |
domid
| Mostra l'ID del guest. |
domuuid
| Mostra l'UUID del guest. |
dominfo
| Mostra le informazioni del guest. |
domname
| Mostra il nome del guest. |
domstate
| Mostra lo stato di un guest. |
quit
| Esce dal terminale interattivo. |
reboot
| Riavvia un guest. |
restore
| Ripristina una sessione del guest precedentemente salvata in un file. |
resume
| Ripristina un guest in pausa. |
save
| Salva lo stato corrente di un guest su di un file. |
shutdown
| Arresta correttamente (gracefully) un guest. |
suspend
| Mette in pausa un guest. |
undefine
| Cancella tutti i file associati con un guest. |
migrate
| Migra un guest su di un altro host. |
virsh
sono utilizzate per gestire le risorse dell'hypervisor e del guest:
Comando | Description |
---|---|
setmem
| Imposta la memoria assegnata per un guest. |
setmaxmem
| Imposta il limite massimo della memoria per l'hypervisor. |
setvcpus
| Modifica il numero di CPU virtuali assegnate per un guest. |
vcpuinfo
| Mostra le informazioni della CPU virtuale di un guest. |
vcpupin
| Controlla l'affinità della CPU virtuale di un guest. |
domblkstat
| Mostra le statistiche relative al dispositivo a blocchi per un guest in esecuzione. |
domifstat
| Mostra le statistiche relative all'interfaccia di rete per un guest in esecuzione. |
attach-device
| Collega un dispositivo ad un guest usando una definizione del dispositivo in un file XML. |
attach-disk
| Collega un nuovo dispositivo a disco ad un guest. |
attach-interface
| Collega una nuova interfaccia di rete ad un guest. |
detach-device
|
Scollega un dispositivo da un guest, accetta lo stesso tipo di descrizione XML come il comando attach-device .
|
detach-disk
| Scollega un dispositivo a disco da un guest. |
detach-interface
| Scollega l'interfaccia di rete da un guest. |
virsh
:
Comando | Description |
---|---|
version
|
Mostra la versione di virsh
|
nodeinfo
| Esegue l'output delle informazioni sull'hypervisor |
virsh
:
# virsh connect {hostname OR URL}
<name>
è il nome della macchina dell'hypervisor. Per inizializzare un collegamento di sola lettura inserire il comando sopra riportato con -readonly
.
virsh
:
# virsh dumpxml {domain-id, domain-name or domain-uuid}
stdout
). È possibile salvare i dati eseguendo il pipe dell'output su di un file. Esempio di pipe sul file guest.xml
:
# virsh dumpxmlQuesto fileGuestID
>guest.xml
guest.xml
è in grado di ricreare il guest (consultate Come modificare un file di configurazione del guest. Modificare il file di configurazione XML per configurare i dispositivi aggiuntivi o per implementare i guest supplementari. Consultare la Sezione 18.1, «Come utilizzare i file di configurazione XML con virsh» per maggiori informazioni su come modificare i file creati con virsh dumpxml
.
virsh dumpxml
:
# virsh dumpxml r5b2-mySQL01 <domain type='xen' id='13'> <name>r5b2-mySQL01</name> <uuid>4a4c59a7ee3fc78196e4288f2862f011</uuid> <bootloader>/usr/bin/pygrub</bootloader> <os> <type>linux</type> <kernel>/var/lib/libvirt/vmlinuz.2dgnU_</kernel> <initrd>/var/lib/libvirt/initrd.UQafMw</initrd> <cmdline>ro root=/dev/VolGroup00/LogVol00 rhgb quiet</cmdline> </os> <memory>512000</memory> <vcpu>1</vcpu> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <interface type='bridge'> <source bridge='xenbr0'/> <mac address='00:16:3e:49:1d:11'/> <script path='vif-bridge'/> </interface> <graphics type='vnc' port='5900'/> <console tty='/dev/pts/4'/> </devices> </domain>
dumpxml
(a tal proposito consultate Creazione dump XML di una macchina virtuale (file di configurazione)). Per creare un guest con virsh
da un file XML:
# virsh create configuration_file.xml
dumpxml
(consultare Creazione dump XML di una macchina virtuale (file di configurazione)) i guest possono essere modificati durante la loro esecuzione o se sono offline. Il comando virsh edit
fornisce questo tipo di funzionalità. Per esempio per modificare il guest chiamato softwaretesting
:
# virsh edit softwaretesting
$EDITOR
(impostato per default su vi
).
virsh
:
# virsh suspend {domain-id, domain-name or domain-uuid}
resume
(Ripristino di un guest).
virsh
con l'opzione resume
:
# virsh resume {domain-id, domain-name or domain-uuid}
suspend
e resume
.
virsh
:
# virsh save {domain-name, domain-id or domain-uuid} filename
restore
(Ripristino di un guest). L'operazione di salvataggio è simile a quella di pausa, invece di mettere in pausa un guest lo stato corrente del guest verrà salvato.
virsh save
(Come salvare un guest) utilizzando il comando virsh
:
# virsh restore filename
virsh
:
# virsh shutdown {domain-id, domain-name or domain-uuid}
on_shutdown
nel file di configurazione del guest.
virsh
:
#virsh reboot {domain-id, domain-name or domain-uuid}
on_reboot
del file di configurazione del guest.
virsh
:
# virsh destroy {domain-id, domain-name or domain-uuid}
virsh destroy
può corrompere i file system del guest. Utilizzare l'opzione destroy
solo quando il guest non risponde. Per un guest paravirtualizzato usare l'opzione shutdown
(Come arrestare un guest).
# virsh domid {domain-name or domain-uuid}
# virsh domname {domain-id or domain-uuid}
# virsh domuuid {domain-id or domain-name}
virsh domuuid
:
# virsh domuuid r5b2-mySQL01 4a4c59a7-ee3f-c781-96e4-288f2862f011
virsh
con domain ID del guest, nome del dominio o UUID è possibile mostrare le informazioni sul guest specifico:
# virsh dominfo {domain-id, domain-name or domain-uuid}
virsh dominfo
:
# virsh dominfo r5b2-mySQL01 id: 13 name: r5b2-mysql01 uuid: 4a4c59a7-ee3f-c781-96e4-288f2862f011 os type: linux state: blocked cpu(s): 1 cpu time: 11.0s max memory: 512000 kb used memory: 512000 kb
# virsh nodeinfo
virsh nodeinfo
:
# virsh nodeinfo CPU model x86_64 CPU (s) 8 CPU frequency 2895 Mhz CPU socket(s) 2 Core(s) per socket 2 Threads per core: 2 Numa cell(s) 1 Memory size: 1046528 kb
virsh
:
# virsh list
--inactive
elenca i guest inattivi (i guest definiti ma non ancora attivi) e
--all
elenca tutti i guest. Per esempio:
# virsh list --all Id Name State ---------------------------------- 0 Domain-0 running 1 Domain202 paused 2 Domain010 inactive 3 Domain9600 crashed
virsh list
viene categorizzato come uno di sei stati (di seguito riportati).
running
si riferisce ai guest attualmente attivi su di una CPU.
blocked
sono bloccati e non risultano essere in esecuzione e non possono essere eseguiti. Tale comportamento è dovuto a causa di un guest in attesa sull'I/O (uno stato di attesa tradizionale), o se i guest sono in pausa 'sleep mode'.
paused
elenca i domini che sono in pausa. Tale comportamento si verifica se un amministratore usa il pulsante pause in virt-manager
, xm pause
o virsh suspend
. Quando un guest è in uno stato di pausa esso continuerà a consumare memoria ed altre risorse, pur essendo non eleggibile per una sua programmazione o per le risorse dell'hypervisor.
shutdown
è per i guest in procinto di spegnersi. In questo caso verrà inviato al guest un segnale di spegnimento abilitando un processo di spegnimento corretto delle proprie funzioni. Tale procedura potrebbe non funzionare con tutti i sistemi operativi guest; infatti alcuni di essi non rispondono a tali segnali.
dying
sono domini 'morenti', ciò significa che il dominio non è ancora stato completamente arrestato.
crashed
sono guest che hanno fallito durante la loro esecuzione. Questo stato si verifica solo se il guest è stato configurato in modo da non eseguire il riavvio dopo un crash.
virsh
:
# virsh vcpuinfo {domain-id, domain-name or domain-uuid}
virsh vcpuinfo
:
# virsh vcpuinfo r5b2-mySQL01 VCPU: 0 CPU: 0 State: blocked CPU time: 0.0s CPU Affinity: yy
# virsh vcpupin {domain-id, domain-name or domain-uuid} vcpu, cpulist
vcpu
è il numero della VCPU virtuale e cpulist
elenca il numero fisico delle CPU.
virsh
:
# virsh setvcpus {domain-name, domain-id or domain-uuid} count
count
non può eccedere il valore del count specificato durante la creazione del guest.
virsh
:
# virsh setmem {domain-id or domain-name} count
virsh domblkstat
per mostrare le statistiche dei dispositivi a blocchi per un guest in esecuzione.
# virsh domblkstat GuestName block-device
virsh domifstat
per visualizzare le statistiche dell'interfaccia di rete per un guest in esecuzione.
# virsh domifstat GuestName interface-device
virsh
. Migrare il dominio su di un altro host. Aggiungere --live per una migrazione live. Il comando migrate
accetta i parametri nel seguente formato:
# virsh migrate --live GuestName DestinationURL
--live
è facoltativo. Aggiungere il parametro --live
per le migrazioni live.
GuestName
parameter represents the name of the guest which you want to migrate.
DestinationURL
parameter is the URL or hostname of the destination system. The destination system must run the same version of Fedora, be using the same hypervisor and have libvirt
running.
virsh
. Per elencare le reti virtuali:
# virsh net-list
# virsh net-list Name State Autostart ----------------------------------------- default active yes vnet1 active yes vnet2 active yes
# virsh net-dumpxml NetworkName
# virsh net-dumpxml vnet1 <network> <name>vnet1</name> <uuid>98361b46-1581-acb7-1643-85a412626e70</uuid> <forward dev='eth0'/> <bridge name='vnet0' stp='on' forwardDelay='0' /> <ip address='192.168.100.1' netmask='255.255.255.0'> <dhcp> <range start='192.168.100.128' end='192.168.100.254' /> </dhcp> </ip> </network>
virsh net-autostart network-name
— Avvia automaticamente una rete specificata come network-name
.
virsh net-create XMLfile
— genera ed avvia una nuova rete utilizzando un file XML già esistente.
virsh net-define XMLfile
— genera un nuovo dispositivo di rete da un file XML esistente senza avviarlo.
virsh net-destroy network-name
— annulla una rete specificata come network-name
.
virsh net-name networkUUID
— converte un networkUUID
specifico in un nome della rete.
virsh net-uuid network-name
— converte un network-name
specificato in un UUID della rete.
virsh net-start nameOfInactiveNetwork
— avvia una rete inattiva.
virsh net-undefine nameOfInactiveNetwork
— rimuove la definizione di una rete inattiva.
virt-manager
), le caselle di dialogo ed i vari controlli GUI.
virt-manager
fornisce una visuale grafica degli hyparvisor e del guest sul sistema e sulle macchine remote. Per definire i guest paravirtualizzati e completamente virtualizzati è possibile utilizzare virt-manager
. virt-manager
è in grado di eseguire compiti di gestione della virtualizzazione incluso:
virt-manager
. Il campo UUID mostra l'identificatore unico globale per le macchine virtuali.
virt-manager
dom0
) (127.0.0.1
). Tale comportamento assicura l'accesso a virt-manager ed alla macchina virtuale attraverso VNC, solo a coloro che possiedono privilegi per la shell.
virt-manager
per inviare le suddette sequenze. È necessario premere qualsiasi tasto modificatore (come Ctrl o Alt) 3 volte, così facendo il tasto specificato verrà considerato attivo fino a quando non verrà premuto il modificatore successivo. A questo punto sarà possibile inviare Ctrl-Alt-F11 al guest inserendo la sequenza dei tasti 'Ctrl Ctrl Ctrl Alt+F1'.
virt-manager
aprire il menu fare clic su e selezionare (virt-manager
).
virt-manager
.
virt-manager
virt-manager
può essere avviato in modo remoto usando ssh come indicato dal seguente comando:
ssh -X host's address
[remotehost]# virt-manager
L'utilizzo di ssh
per la gestione delle macchine virtuali e degli host viene affrontato nella Sezione 13.1, «Gestione remota con SSH».
DHCP
Indice
ftpd
ftpd
virsh
per impostare un guest, TestServer
, per un avvio automatico all'avvio dell'host.
# virsh autostart TestServer
Dominio TestServer contrassegnato come autostarted
--disable
# virsh autostart --disable TestServer
Dominio TestServer non contrassegnato più come autostarted
Installare il pacchetto KVM
# yum install kvm
Verificare quale kernel è in esecuzione
uname
per determinare quale kernel è in esecuzione:
$ uname -r 2.6.23.14-107.fc8xen
2.6.23.14-107.fc8xen
" è in esecuzione sul sistema. Se il kernel predefinito, "2.6.23.14-107.fc8
", è in esecuzione sul sistema è possibile saltare la fase secondaria.
Modifica del kernel Xen nel kernel predefinito
grub.conf
determina quale kernel è stato avviato. Per modificare il kernel predefinito modificare il file /boot/grub/grub.conf
come di seguito indicato.
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Fedora (2.6.23.14-107.fc8)
root (hd0,0)
kernel /vmlinuz-2.6.23.14-107.fc8 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.23.14-107.fc8.img
title Fedora (2.6.23.14-107.fc8xen)
root (hd0,0)
kernel /xen.gz-2.6.23.14-107.fc8
module /vmlinuz-2.6.23.14-107.fc8xen ro root=/dev/VolGroup00/LogVol00 rhgb quiet
module /initrd-2.6.23.14-107.fc8xen.img
0
(o sul numero per il kernel predefinito):
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Fedora (2.6.23.14-107.fc8)
root (hd0,0)
kernel /vmlinuz-2.6.23.14-107.fc8 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.23.14-107.fc8.img
title Fedora (2.6.23.14-107.fc8xen)
root (hd0,0)
kernel /xen.gz-2.6.23.14-107.fc8
module /vmlinuz-2.6.23.14-107.fc8xen ro root=/dev/VolGroup00/LogVol00 rhgb quiet
module /initrd-2.6.23.14-107.fc8xen.img
Eseguire un riavvio per caricare il nuovo kernel
$ lsmod | grep kvm kvm_intel 85992 1 kvm 222368 2 ksm,kvm_intel
kvm
ed il modulo kvm_intel
o kvm_amd
saranno presenti se la procedura è stata corretta.
Installare i pacchetti Xen
# yum install kernel-xen xen
Verificare quale kernel è in esecuzione
uname
per determinare quale kernel è in esecuzione.
$ uname -r 2.6.23.14-107.fc8
2.6.23.14-107.fc8
" è in esecuzione sul sistema. Questo è il kernel predefinito. Se il kernel presenta xen
alla fine (per esempio 2.6.23.14-107.fc8xen
) allora risulterà in esecuzione il kernel Xen; a tal proposito è possibile saltare la fase secondaria.
Modifica del kernel predefinito in kernel Xen
grub.conf
determina quale kernel è stato avviato. Per modificare il kernel predefinito modificare il file /boot/grub/grub.conf
come di seguito indicato.
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Fedora (2.6.23.14-107.fc8)
root (hd0,0)
kernel /vmlinuz-2.6.23.14-107.fc8 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.23.14-107.fc8.img
title Fedora (2.6.23.14-107.fc8xen)
root (hd0,0)
kernel /xen.gz-2.6.23.14-107.fc8
module /vmlinuz-2.6.23.14-107.fc8xen ro root=/dev/VolGroup00/LogVol00 rhgb quiet
module /initrd-2.6.23.14-107.fc8xen.img
1
(o il numero corrispondente per il kernel Xen):
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Fedora (2.6.23.14-107.fc8)
root (hd0,0)
kernel /vmlinuz-2.6.23.14-107.fc8 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.23.14-107.fc82.6.23.14-107.fc8.img
title Fedora (2.6.23.14-107.fc8xen)
root (hd0,0)
kernel /xen.gz-2.6.23.14-107.fc8
module /vmlinuz-2.6.23.14-107.fc8xen ro root=/dev/VolGroup00/LogVol00 rhgb quiet
module /initrd-2.6.23.14-107.fc8xen.img
Eseguire un riavvio per caricare il nuovo kernel
uname
:
$ uname -r 2.6.23.14-107.fc8xen
xen
è presente alla fine dell'output allora il kernel in esecuzione sarà Xen.
qemu-img
viene usato per la formattazione di vari file system usati da Xen e KVM. qemu-img
deve essere usato per la formattazione delle immagini del guest virtualizzato, dei dispositivi di storage aggiuntivi e per lo storage di rete. Le opzioni qemu-img
ed il loro utilizzo sono riportati di seguito.
# qemu-img create [-6] [-e] [-b base_image] [-f format] filename [size]
# qemu-img convert [-c] [-e] [-f format] filename [-O output_format] output_filename
qcow
o cow
. I settori vuoti sono rilevati ed eliminati dall'immagine di destinazione.
info
mostra le informazioni relative all'immagine del disco. Il formato per l'opzione info
è il seguente:
# qemu-img info [-f format] filename
raw
qemu-img info
per sapere la dimensione reale usata dall'immagine o ls -ls
su Unix/Linux.
qcow2
qcow
cow
cow
viene incluso solo per compatibilità con le versioni precedenti. Non funziona con Windows.
vmdk
cloop
pdflush
, verrà avviato il processo di eliminazione. pdflush
eliminerà i processi per liberare la memoria necessaria in modo da evitare un arresto inaspettato del sistema. pdflush
in questo caso potrebbe eliminare i guest virtualizzati o altri processi del sistema, causando la generazione di errori del file system e lasciando i guest virtualizzati non avviabili.
(0.5 * RAM) + (overcommit ratio * RAM) = Dimensione partizione swap consigliata
/etc/grub.conf
in modo da usare il kernel di virtualizzazione. È necessario utilizzare il kernel xen
per utilizzare l'hypervisor Xen. Copiate la voce del kernel xen
esistente, ed assicuratevi di copiare tutte le righe importanti o il vostro sistema potrebbe entrare in uno stato di panic durante il processo d'avvio (initrd
avrà una durata di 0
). È necessario specificare i valori specifici dell'hypervisor per aggiungerli sulla riga di xen
della voce relativa a grub.
grub.conf
di un sistema sul quale viene eseguito il pacchetto kernel-xen. grub.conf
sul vostro sistema potrebbe variare. La parte più importante nell'esempio è la sezione corrispondente alla riga title
fino alla nuova riga successiva.
#boot=/dev/sda default=0 timeout=15 #splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1 terminal --timeout=10 serial console title Fedora (2.6.23.14-107.fc8xen) root (hd0,0) kernel /xen.gz-2.6.23.14-107.fc8 com1=115200,8n1 module /vmlinuz-2.6.23.14-107.fc8xen ro root=/dev/VolGroup00/LogVol00 module /initrd-2.6.23.14-107.fc8xen.img
grub.conf
...grub.conf
potrebbe essere molto diverso se è stato manualmente modificato o copiato da un esempio.
dom0_mem=256M
sulla riga xen
all'interno del vostro grub.conf
. Una versione modificata del file di configurazione di grub nell'esempio precedente:
#boot=/dev/sda default=0 timeout=15 #splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1 terminal --timeout=10 serial console title Fedora (2.6.23.14-107.fc8xen) root (hd0,0) kernel /xen.gz-2.6.23.14-107.fc8 com1=115200,8n1 dom0_mem=256MB module /vmlinuz-2.6.23.14-107.fc8xen ro root=/dev/VolGroup00/LogVol00 module /initrd-2.6.23.14-107.fc8xen.img
$ grep -E 'svm|vmx' /proc/cpuinfo
vmx
la quale indica un processore Intel con estensioni Intel VT:
flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall lm constant_tsc pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm
svm
la quale indica un processore AMD con estensioni AMD-V:
flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm cr8legacy ts fid vid ttp tm stc
flags:
" potrebbe apparire numerose volte per ogni hyperthread, core o CPU sul sistema.
#!/bin/bash declare -i IS_HVM=0 declare -i IS_PARA=0 check_hvm() { IS_X86HVM="$(strings /proc/acpi/dsdt | grep int-xen)" if [ x"${IS_X86HVM}" != x ]; then echo "Guest type is full-virt x86hvm" IS_HVM=1 fi } check_para() { if $(grep -q control_d /proc/xen/capabilities); then echo "Host is dom0" IS_PARA=1 else echo "Guest is para-virt domU" IS_PARA=1 fi } if [ -f /proc/acpi/dsdt ]; then check_hvm fi if [ ${IS_HVM} -eq 0 ]; then if [ -f /proc/xen/capabilities ] ; then check_para fi fi if [ ${IS_HVM} -eq 0 -a ${IS_PARA} -eq 0 ]; then echo "Baremetal platform" fi
virsh capabilites
.
macgen.py
. Ora dalla directory in questione è possibile eseguire lo script usando ./macgen.py
, generando così un nuovo indirizzo MAC. Un esempio di output dovrebbe somigliare al seguente:
$ ./macgen.py 00:16:3e:20:b0:11 #!/usr/bin/python # macgen.py script to generate a MAC address for virtualized guests on Xen # import random # def randomMAC(): mac = [ 0x00, 0x16, 0x3e, random.randint(0x00, 0x7f), random.randint(0x00, 0xff), random.randint(0x00, 0xff) ] return ':'.join(map(lambda x: "%02x" % x, mac)) # print randomMAC()
python-virtinst
per generare un nuovo indirizzo MAC e UUID
, per un utilizzo all'interno del file di configurazione:
# echo 'import virtinst.util ; print\ virtinst.util.uuidToString(virtinst.util.randomUUID())' | python # echo 'import virtinst.util ; print virtinst.util.randomMAC()' | python
#!/usr/bin/env python # -*- mode: python; -*- print "" print "New UUID:" import virtinst.util ; print virtinst.util.uuidToString(virtinst.util.randomUUID()) print "New MAC:" import virtinst.util ; print virtinst.util.randomMAC() print ""
ftpd
vsftpd
fornisce l'accesso necessario agli alberi d'installazione per i guest paravirtualizzati o altri dati. Se non è stato ancora installato vsftpd
durante l'installazione del server, è possibile ottenere il pacchetto RPM dalla directory Server
del dispositivo d'installazione, ed installarlo usando rpm -ivh vsftpd*.rpm
(da notare che il pacchetto RPM deve essere presente all'interno della directory corrente).
vsftpd
, modificate /etc/passwd
usando vipw
, e cambiate la home directory dell'utente ftp con la directory che utilizzerete per conservare gli alberi d'installazione per i guest para-virtualizzati. Un esempio di voce per l'utente FTP sarà simile alla seguente:
ftp:x:14:50:FTP User:/xen/pub:/sbin/nologin
vsftpd
durante l'avvio del sistema, usare la utilità chkconfig per abilitare vsftpd
a questo procedimento.
vsftpd
non sia stato abilitato usando chkconfig --list vsftpd
:
$ chkconfig --list vsftpd vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
chkconfig --levels 345 vsftpd on
per avviare vsftpd automaticamente per i runlevel 3, 4 e 5.
chkconfig --list vsftpd
per verificare che vsftdp sia stato abilitato all'avvio durante il processo di boot del sistema:
$ chkconfig --list vsftpd vsftpd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
service vsftpd start vsftpd
per l'avvio del servizio vsftpd:
$service vsftpd start vsftpd Starting vsftpd for vsftpd: [ OK ]
udev
per l'implementazione della persistenza LUN. Prima di implementare la persistenza LUN nel sistema, assicurarsi di aver acquisito gli UUID corretti. Fatto questo, sarà possibile configurare la persistenza LUN modificando il file scsi_id
il quale risiede nella directory /etc
. Una volta aperto il file con un editor di testo, decommentate la seguente riga:
# options=-b
# options=-g
scsi_id
:
# scsi_id -g -s /block/sdc *3600a0b80001327510000015427b625e*
20-names.rules
nella directory /etc/udev/rules.d
Le regole usate per nominare il dispositivo devono seguire il seguente formato:
# KERNEL="sd*", BUS="scsi", PROGRAM="sbin/scsi_id", RESULT="UUID
", NAME="devicename
"
UUID
e devicename
con la voce dell'UUID sopra riportato. Quindi la regola dovrebbe somigliare alla seguente:
KERNEL="sd*
", BUS="scsi", PROGRAM="sbin/scsi_id", RESULT="3600a0b80001327510000015427b625e
", NAME="mydevicename
"
/dev/sd*
in modo da controllare l'UUID dato. Una volta trovato un dispositivo corrispondente, esso creerà un nodo del dispositivo chiamato /dev/devicename
. Per questo esempio il nodo del dispositivo è /dev/mydevice
. Per finire, sarà necessario aggiungere al file /etc/rc.local
la seguente stringa:
/sbin/start_udev
multipath.conf
che risiede nella directory /etc/
:
multipath { wwid 3600a0b80001327510000015427b625e alias oramp1 } multipath { wwid 3600a0b80001327510000015427b6 alias oramp2 } multipath { wwid 3600a0b80001327510000015427b625e alias oramp3 } multipath { wwid 3600a0b80001327510000015427b625e alias oramp4 }
/dev/mpath/oramp1
, /dev/mpath/oramp2
, /dev/mpath/oramp3
, e dev/mpath/oramp4
. I dispositivi risiederanno nella directory /dev/mpath
. I nomi dei LUN resteranno invariati anche dopo aver eseguito diversi processi di riavvio, poichè i suddetti nomi verranno creati sul wwid dei LUN.
/sbin/service smartd stop /sbin/chkconfig --del smartd
uuidgen
. Successivamente per le voci vif
definire un indirizzo MAC unico per ogni guest (se si copia una configurazione del guest da un guest esistente creare uno script per la sua gestione). Per le informazioni relative al brigde di Xen, se si sposta un file di configurazione del guest esistente su di un nuovo host, sarà necessario aggiornare la voce xenbr
in modo da corrispondere alla configurazione di networking locale. Per le voci relative al dispositivo sarà necessario modificare le voci presenti nella sezione 'disk='
per indicare l'immagine del guest corretto.
/etc/sysconfig/network
per corrispondere all'hostname del nuovo guest.
HWADDR
del file /etc/sysconfig/network-scripts/ifcfg-eth0
per corrispondere all'output generato dal file ifconfig eth0
, e se si utilizzano gli indirizzi IP statici, modificare la voce IPADDR
.
name
uuid
uuidgen
. Esempio di output UUID:
$ uuidgen a984a14f-4191-4d14-868e-329906b211e5
vif
xenbr
, in modo che essa corrisponda alla propria configurazione di networking locale (è possibile ottenere le informazioni del bridge usando il comando brctl show
).
disk=
, in modo da indicare l'immagine del guest corretto.
/etc/sysconfig/network
HOSTNAME
con il nuovo hostname
del guest.
/etc/sysconfig/network-scripts/ifcfg-eth0
HWADDR
con l'output di ifconfig eth0
IPADDR
se si usa un indirizzo IP statico.
libvirt
.
libvirt
.
virsh
è in grado di gestire i file di configurazione XML. È possibile utilizzarlo per facilitare lo script di implementazioni molto grandi con opzioni speciali. Sarà possibile aggiungere i dispositivi definiti in un file XML su di un guest paravirtualizzato in esecuzione. Per esempio per aggiungere un file ISO come hdc
su di un guest in esecuzione sarà necessario creare un file XML:
# cat satelliteiso.xml <disk type="file" device="disk"> <driver name="file"/> <source file="/var/lib/libvirt/images/rhn-satellite-5.0.1-11-redhat-linux-as-i386-4-embedded-oracle.iso"/> <target dev="hdc"/> <readonly/> </disk>Eseguire
virsh attach-device
per collegare ISO come hdc
ad un guest chiamato "satellite" :
# virsh attach-device satellite satelliteiso.xml
/etc/modprobe.conf
. Modificare /etc/modprobe.conf
ed aggiungere la seguente riga:
options loop max_loop=64
phy: block device
o tap:aio
. Per implementare i loop device backed guest per un sistema completamente virtualizzato utilizzare i comandi phy: device
o file: file
.
cat /proc/cpuinfo | grep vmx svm
. Se il comando genera un output ciò indicherà che le estensioni di virtualizzazione sono state abilitate. Se tale output risulta assente ciò indicherà che le estensioni di virtualizzazione o l'impostazione corretta del BIOS potrebbero non essere abilitati.
libvirt
.
/usr/share/doc/xen-<version-number>
/
è la directory che contiene numerose informazioni sull'hypervisor para-virtualization di Xen, sui tool di gestione associati, presenta altresì numerosi esempi di configurazione, informazioni specifiche sull'hardware, e la documentazione per l'utente upstream di Xen corrente.
man virsh
e /usr/share/doc/libvirt-<version-number>
— Contiene i sottocomandi e le opzioni per la utility di gestione della macchina virtuale virsh
, insieme alle informazioni complete sull'API della libreria di virtualizzazione libvirt
.
/usr/share/doc/gnome-applet-vm-<version-number>
— La documentazione per l'applet del pannello grafico di GNOME, che controlla e gestisce macchine virtuali in esecuzione in modo locale.
/usr/share/doc/libvirt-python-<version-number>
— Fornisce le informazioni sui binding di Python per la libreria libvirt
. Il pacchetto libvirt-python
permette agli sviluppatori di python di creare i programmi che interfacciano la libreria di gestione della virtualizzazione libvirt
.
/usr/share/doc/python-virtinst-<version-number>
— Fornisce la documentazione sul comando virt-install
di ausilio durante l'avvio delle installazioni di Fedora e delle distribuzioni Linux all'interno delle macchine virtuali.
/usr/share/doc/virt-manager-<version-number>
— Fornisce una documentazione sul Virtual Machine Manager, il quale fornisce un tool grafico per la gestione delle macchine virtuali.
Diario delle Revisioni | |||
---|---|---|---|
Revisione 12.1.3 | Mon Oct 12 2009 | ||
|
dom0
si riferisce all'istanza dell'host di Linux che esegue Hypervisor, il quale facilita il processo di virtualizzazione dei sistemi operativi guest. Dom0 viene eseguito su, e gestisce, l'hardware fisico e l'assegnazione delle risorse per se e per i sistemi operativi guest.
domU
si riferisce al sistema operativo guest il quale viene eseguito sul sistema host (Domains).
ext2
e ext3
, identificatori per dispositivi RAID, identificatori per dispositivi iSCSI e LUN, indirizzi MAC ed identificatori per macchine virtuali.