Uitgave 1
ftpd
Mono-spaced Bold
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.
Mono-spaced Roman
en als volgt gepresenteerd:
books Desktop documentation drafts mss photos stuff svn books_tests Desktop1 downloads images notes scripts svgs
Mono-spaced Roman
maar worden alsvolgt gepresenteerd en benadrukt:
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")); } }
Inhoudsopgave
virt-manager
, libvirt
en virt-viewer
voor installatie.
Pas de pakketten aan (indien nodig)
%packages
sectie van je Kickstart bestand, voeg je de volgende pakketgroep toe:
%packages @kvm
yum
kvm
pakket nodig. Het kvm
pakket bevat de KVM kernel module die de KVM hypervisor aanbiedt voor de standaard Linux kernel.
kvm
pakket te installeren, voer je uit:
# yum install kvm
python-virtinst
virt-install
commando voor het aanmaken van virtuele machines.
libvirt
libvirt
is een API bibliotheek voor interactie met hypervisors. libvirt
gebruikt het xm
virtualisatie raamwerk en het virsh
commando-regel gereedschap om virtuele machines te beheren en te controleren.
libvirt-python
libvirt
API.
virt-manager
virt-manager
, ook bekend als Virtual Machine Manager, biedt een grafisch gereedschap voor het beheren van virtuele machines. Het gebruikt de libvirt
bibliotheek voor de beheer API.
# yum install virt-manager libvirt libvirt-python python-virtinst
virt-install
gebruiken. Beide manieren worden in dit hoofdstuk behandeld.
virt-install
commando gebruiken om gevirtualiseerde guests aan te maken op de commando-regel. virt-install
wordt of interactief gebruikt, of als onderdeel van een script om het aanmaken van virtuele machines te automatiseren. Gebruik van virt-install
met Kickstart staat niet begeleide installatie van virtuele machines toe.
virt-install
gereedschap biedt een aantal opties die doorgegeven kunnen worden op de commando-regel. Om een complete lijst van opties te zien, voer je uit:
$ virt-install --help
virt-install
manual pagina beschrijft ook iedere commando optie en belangrijke variabelen.
qemu-img
is een gerelateerd commando welke voor virt-install
gebruikt kan worden om opslag opties in te stellen.
--vnc
optie welke een grafisch venster opent voor de installatie van de guest.
rhel3support
, vanaf een CD-ROM, met virtueel netwerk en een 5 GB bestand-gebaseerd blok apparaat image. Dit voorbeeld gebruikt de KVM hypervisor.
# 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
, ook bekend als Virtual Machine Manager, is een grafisch gereedschap voor het aanmaken en beheren van gevirtualiseerde guests.
# virt-manager &
virt-manager
commando opent een grafisch gebruiker interface scherm. Verscheidene functies zijn niet beschikbaar voor gebruikers zonder root rechten of ingesteld met sudo
, waaronder de knop en je zult niet in staat zijn om een nieuwe gevirtualiseerde guest aan te maken.
kernel-xen
niet de kernel is die op dit moment draait.
HTTP
, FTP
of NFS
. De installatie media URL moet een Fedora installatie boom bevatten. Deze boom wordt geschikbaar gesteld met gebruik van NFS
, FTP
of HTTP
. De netwerk services en bestanden kunnen beschikbaar gesteld worden met gebruik van netwerk services op de host of een andere spiegel.
.iso
bestand), koppel je de CD-ROM image aan en je maakt de aangekoppelde bestanden beschikbaar met een van de genoemde protocollen.
/var/lib/xen/images/
map. Andere map locaties voor op bestand gebaseerde images zijn verboden door SELinux. Als je SELinux draait in de afdwingende mode, refereer je naar Paragraaf 7.1, “SELinux en virtualisatie” voor meer informatie over het installeren van guests.
/var/lib/xen/images/
. Als je een andere locatie gebruikt (zoals /xen/images/
in dit voorbeeld) wees er dan zeker van dat het wordt toegevoegd aan jouw SELinux richtlijnen en dat het opnieuw gelabeld wordt voordat je verder gaat met de installatie (later in dit document zul je informatie vinden over het veranderen van jouw SELinux richtlijnen).
virt-manager
. Hoofdstuk 3, Guest besturingssysteem installatie procedures bevat stap-voor-stap instructies voor het installeren van een aantal veel voorkomende besturingssystemen.
Maak een nieuwe brug
/etc/sysconfig/network-scripts/
map. Dit voorbeeld maakt een bestand met de naam ifcfg-installation
welke een brug maakt met de naam 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'.
Start de nieuwe brug # ifup installation
brctl show
commando. om details te bekijken van de netwerk bruggen op het systeem.
# brctl show bridge name bridge id STP enabled interfaces installation 8000.000000000000 no virbr0 8000.000000000000 yes
virbr0
brug is de standaard brug die gebruikt wordt door libvirt
voor netwerk adres vertaling (NAT) op het standaard Ethernet apparaat.
Voeg een interface toe aan de nieuwe brug
BRIDGE
parameter toe aan het configuratie bestand met de naam van de brug die in de vorige stappen aangemaakt werd.
# 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
commando:
# brctl show bridge name bridge id STP enabled interfaces installation 8000.001320f76e8e no eth1 virbr0 8000.000000000000 yes
Beveiliging configuratie
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
Herstart libvirt voor de installatie
libvirt
daemon.
# service libvirtd reload
virt-install
voeg je de --network=bridge:BRIDGENAME
installatie parameter toe waarin installatie de naam van jouw brug is. Gebruik voor PXE installaties de --pxe
parameter.
# 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 \
Selecteer PXE
Selecteer de brug
Start de installatie
kernel-xen
kernel.
virt-manager
, refereer je naar de procedure in Paragraaf 2.2, “Guests aanmaken met virt-manager”.
virt-install
. De --vnc
optie laat de grafische installatie zien. De naam van de guest is in dit voorbeeld rhel5PV
, het schijf image bestand is rhel5PV.dsk
en een locale spiegel van de Red Hat Enterprise Linux 5 installatie boom is ftp://10.1.1.1/trees/CentOS5-B2-Server-i386/
. Vervang deze waardes met waardes die geldig zijn voor jouw systeem en netwerk.
# 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
(zoals hieronder getoond) te gebruiken of kies een statisch IP adres:
Installation Number
veld in:
rhn_register
commando. Het rhn_register
commando vereist root toegang.
# rhn_register
virt-install
gebruikte in Paragraaf 3.1, “Red Hat Enterprise Linux 5 installeren als een para-gevirtualiseerde guest”. Als je het standaard voorbeeld gebruikt hebt is de naam rhel5PV
.
virsh reboot rhel5PV
virt-manager
, je selecteert de naam van jouw guest, je klikt op , en daarna op .
kdump
aan.
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/
map. Elke andere locatie vereist extra configuratie voor SELinux, refereer naar Paragraaf 7.1, “SELinux en virtualisatie” voor details.
Storage setup
/var/lib/libvirt/images/
map. Ken voldoende opslag toe aan jouw gevirtualiseerde guest en elke toepassing die het vereist.
Klik op om verder te gaan.
Network setup
Memory and CPU allocation
Verify and start guest installation
Linux installeren
Starting virt-manager
Jouw systeem een naam geven
Kies een virtualisatie methode
Kies een installatie methode
/var/lib/libvirt/images/
map te gebruiken. Elke andere locatie kan extra configuratie voor SELinux nodig hebben, refereer naar Paragraaf 7.1, “SELinux en virtualisatie” voor details.
/var/lib/libvirt/images/
map. Andere map locaties voor bestand-gebaseerde images zijn verboden door SELinux. Als je SELinux draait in de afdwingende mode, refereer je naar Paragraaf 7.1, “SELinux en virtualisatie” voor meer informatie over het installeren van guests.
/var/lib/libvirt/images/
. Als je een andere locatie gebruikt (zoals /images/
in dit voorbeeld) wees er dan zeker van dat het toegevoegd wordt aan de SELinux gedragslijnen en opnieuw gelabeld wordt voordat je verder gaat met de installatie (later in dit document zul je informatie vinden over het veranderen van jouw SELinux gedragslijnen)
Network setup
HAL
te selecteren, zodra je het dialoog scherm in de Windows installatie krijgt, selecteer je de 'Generic i486 Platform
' tab (blader door de selecties met de Up en Down pijlen.
# virsh start WindowsGuest
WindowsGuest
de naam van je virtuele machine is.
virsh reboot WindowsGuestName
. Hiermee zal de installatie meestal verdergaan. Als je de virtuele machine opnieuw opstart zul een Setup is being restarted
boodschap zien:
virt-install
commando. virt-install
kan gebruikt worden in plaats van virt-manager. Dit proces is vergelijkbaar met de Windows XP installatie behandeld in Paragraaf 3.3, “Windows XP installeren als een volledig gevirtualiseerde guest”.
virt-install
voor het installeren van Windows Server 2003 als de console voor de Windows guest opent snel het virt-viewer venster. Een voorbeeld van het gebruik van virt-install
voor het installeren van een Windows Server 2003 guest:
virt-install
commando.
# 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
als het Computer Type. Dit is de enigste niet-standaard stap die vereist is.
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/
map te gebruiken. Elke andere locatie heeft misschien extra configuratie nodig voor SELinux, refereer naar Paragraaf 7.1, “SELinux en virtualisatie” voor details.
Storage setup
/var/lib/libvirt/images/
map. Ken voldoende opslag toe aan je gevirtualiseerde guest. Ken voldoende ruimte toe aan je gevirtualiseerde guest en alle toepassingen die het nodig heeft.
Klik op om verder te gaan.
Network setup
Memory and CPU allocation
Verify and start guest installation
Windows installeren
dd
commando. Vervang /dev/fd0 met de naam van een floppy disk station en geef de schijf een geschikte naam.
# dd if=/dev/fd0 of=~/legacydrivers.img
virt-manager
en draait een volledig gevirtualiseerde Linux installatie met een image geplaatst in /var/lib/libvirt/images/rhel5FV.img
. De Xen hypervisor wordt in het voorbeeld gebruikt.
virsh
commando op een draaiende guest.
# 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
commando. Sparse bestanden worden niet aanbevolen door problemen met data integriteit en prestaties. Sparse bestanden kun veel sneller aangemaakt worden en kunnen gebruikt worden voor testen, maar moeten niet gebruikt worden in productie omgevingen.
# 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
genoemd en het bestand wordt opgeslagen in de persoonlijke map van de gebruiker.
# virsh dumpxmlGuest1
> ~/Guest1
.xml
Guest1.xml
in dit voorbeeld) met een tekstverwerker. Zoek de regels op die beginnen met "disk=
". Deze regels lijken op:
>disk type='file' device='disk'< >driver name='tap' type='aio'/< >source file='/var/lib/libvirt/images/Guest1.img'/< >target dev='xvda'/< >/disk<
disk=
regels. Wees er zeker van dat je een apparaat naam opgeeft voor het virtuele blok apparaat die nog niet in gebruik is in het configuratie bestand. Het volgende voorbeeld voegt een bestand, met de naam FileName.img
, toe als een bestand-gebaseerde opslag container.
>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
als een apparaat met de naam /dev/hdb
. Dit apparaat vereist formattering van de guest. Op de guest partitioneer je het apparaat als een primaire partitie voor het gehele apparaat en formatteer dan het apparaat.
n
voor een nieuwe partitie.
# fdisk /dev/hdb Command (m for help):
p
voor een primaire partitie.
Command action e extended p primary partition (1-4)
1
in te typen.
Partition number (1-4): 1
Enter
te duwen.
First cylinder (1-400, default 1):
Enter
te duwen.
Last cylinder or +size or +sizeM or +sizeK (2-400, default 400):
t
in te typen.
Command (m for help): t
1
.
Partition number (1-4): 1
83
in voor een Linux partitie.
Hex code (type L to list codes): 83
Command (m for help):w
Command (m for help):q
ext3
bestandssysteem.
# mke2fs -j /dev/hdb
# mount /dev/hdb1 /mijnbestanden
multipath
en vasthoudendheid als dat nodig is.
virsh attach
commando. Vervang: myguest
met de naam van jouw guest, /dev/hdb1
met de schijf die je toevoegt, en hdc
met de locatie voor de schijf op de guest. hdc
moet een niet gebruikte apparaat naam zijn. Gebruik de hd*
notatie ook voor Windows guests, de guest zal het apparaat correct herkennen.
--type hdd
parameter toe aan het commando voor CD-ROM en DVD stations.
--type floppy
parameter toe aan het commando voor floppy stations.
# virsh attach-diskmyguest
/dev/hdb1
hdc
--driver tap --mode readonly
/dev/hdb
onder Linux of D: drive
, of iets dergelijks, onder Windows. Deze schijf kan formattering vereisen.
multipath
niet draaien, moeten Enkel-pad configuratie gebruiken. Systemen die multipath
draaien kunnen Meervoudig-pad configuratie gebruiken.
udev
. Gebruik deze procedure alleen voor hosts die multipath
niet gebruiken.
/etc/scsi_id.config
bestand.
options=-b
uitgecommentarieerd is.
# options=-b
options=-g
udev
in om aan te nemen dat alle aangekoppelde SCSI apparaten een UUID teruggeven.
scsi_id -g -s /block/sd*
commando uit. Bijvoorbeeld:
# scsi_id -g -s /block/sd* 3600a0b800013275100000015427b625e
/dev/sdc
.
scsi_id -g -s /block/sd*
commando van de computer die toegang heeft tot het apparaat.
20-names.rules
in re /etc/udev/rules.d
map. Voeg nieuwe regels toe aan dit bestand. Alle regels worden toegevoegd aan hetzelfde bestand met gebruik van hetzelfde formaat. De regels volgen dit formaat:
KERNEL="sd*", BUS="scsi", PROGRAM="/sbin/scsi_id -g -s", RESULT=UUID
, NAME=apparaatnaam
UUID
en apparaatnaam
met de UUID hierboven verkregen, en een naam voor het apparaat. Dit is een regel voor het voorbeeld hierboven:
KERNEL="sd*", BUS="scsi", PROGRAM="/sbin/scsi_id -g -s", RESULT="3600a0b800013275100000015427b625e", NAME="rack4row16"
udev
daemon zoekt nu alle apparaten met de naam/dev/sd*
af voor de UUID in de regel. Zodra een overeenkomend apparaat is verbonden met het systeem krijgt het apparaat de naam uit de regel toegekend. In het voorbeeld verschijnt een apparaat met een UUID van 3600a0b800013275100000015427b625e als /dev/rack4row16
.
/etc/rc.local
:
/sbin/start_udev
/etc/scsi_id.config
, /etc/udev/rules.d/20-names.rules
, en /etc/rc.local
bestanden naar alle relevante hosts.
/sbin/start_udev
multipath
pakket wordt gebruikt voor systemen met meer dan een fysiek pad van de computer naar opslag apparaten.multipath
biedt fout tolerantie, failover en verbeterde prestaties voor netwerk opslag apparaten verbonden aan een Linux systeem.
multipath
omgeving vereist gedefinieerde alias namen voor jouw veelvoudig-pad apparaten. Elk opslag apparaat heeft een UUID dat optreedt als een sleutel voor de alias namen. Identificeer de UUID van een apparaat met gebruik van het scsi_id
commando.
# scsi_id -g -s /block/sdc
/dev/mpath
map. In het voorbeeld hieronder worden vier apparaten gedefinieerd 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
en /dev/mpath/oramp4
. Zodra ze opgegeven zijn, wordt de afbeelding van de WWID van de apparaten naar hun namen blijvend na opnieuw opstarten.
virsh
met de attach-disk
parameter.
# virsh attach-disk [domain-id] [source] [target] --driver file --type cdrom --mode readonly
De source
en target
parameters zijn paden voor de bestanden en apparaten, respectievelijk op de host en de guest. De source
parameter kan een pad naar een ISO bestand zijn of het apparaat van de /dev
map.
# setenforce 1
AutoFS
, NFS
, FTP
, HTTP
, NIS
, telnetd
, sendmail
enzovoort.
/var/lib/libvirt/images/
. Als je een andere map gebruikt voor je virtuele machine images wees er dan zeker van dat je de map toevoegt aan je SELinux richtlijnen en het opnieuw labelt voordat je de installatie opstart.
vsftpd
server.
/var/lib/libvirt/images
.
NewVolumeName
op de volume groep met de naam volumegroup
.
# lvcreate -nNewVolumeName
-L5G
volumegroup
NewVolumeName
logische volume met een bestandssysteem dat uitgebreide attributen ondersteunt, zoals ext3.
# mke2fs -j /dev/volumegroup/NewVolumeName
/etc
, /var
, /sys
) or in home directories (/home
of /root
). Dit voorbeeld gebruikt een map met de naam /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
bestand wat de verandering blijvend maakt. De toegevoegde regel kan hier op lijken:
/virtstorage(/.*)? system_u:object_r:xen_image_t:s0
/virtstorage
) en alle bestanden hierin te veranderen naar xen_image_t
(restorecon
en setfiles
lezen de bestanden 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
kan xend
instellen in de onbeperkte mode na het opnieuw opstarten van de daemon. Het is beter om bescherming uit te zetten voor een enkele daemon dat voor het gehele systeem. Het wordt aanbevolen dat je mappen niet opnieuw moet labelen als xen_image_t
, als je ze ook op andere plaatsen gebruikt.
libvirt
installatie biedt op NAT gebaseerde verbindingen naar virtuele machines kant en klaar aan. Dit is het zogenaamde 'standaard virtuele netwerk'. Controleer of het beschikbaar is met het virsh net-list --all
commando.
# 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 Network default marked as autostarted
# virsh net-start default Network default started
libvirt
standaard netwerk draait, zul je een geïsoleerd brug apparaat zien. Aan dit apparaat heeft geen fysieke interfaces toegekend, omdat het NAT en IP doorsturen gebruikt om te verbinden met de buitenwereld. Voeg geen nieuwe interfaces toe.
# brctl show bridge name bridge id STP enabled interfaces virbr0 8000.000000000000 yes
libvirt
voegt iptables
regels toe welke verkeer toestaan naar en van de guests verbonden met het virbr0
apparaat in de INPUT
, FORWARD
, OUTPUT
en POSTROUTING
ketens. libvirt
probeert dan om de ip_forward
parameter aan te zetten. Sommige andere toepassingen kunnen ip_forward
uitzetten, dus de beste optie is het volgende aan /etc/sysctl.conf
toe te voegen.
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
en de volgende regel te veranderen van:
(network-script network-bridge)
(network-script /bin/true)
# chkconfig NetworkManager off # chkconfig network on # service NetworkManager stop # service network start
NM_CONTROLLED=no
" toevoegen aan de ifcfg-*
scripts gebruikt in de voorbeelden.
/etc/sysconfig/network-scripts
map:
# cd /etc/sysconfig/network-scripts
ifcfg-eth0
het fysieke netwerk interface welke ingesteld is als onderdeel van de brug:
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
variabele toe te voegen aan het einde van het configuratie bestand.
MTU=9000
/etc/sysconfig/network-scripts
map met de naam ifcfg-br0
of iets dergelijks. De br0
is de naam van de brug, dit kan van alles zijn zolang de naam van het bestand overeenkomt met de DEVICE parameter.
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
brug. Probeer niet om een fysiek apparaat te verbinden met virbr0
. De virbr0
brug alleen voor Netwerk adres vertaling (NAT) verbinding.
Download de drivers
virtio-win.iso
, in de /usr/share/virtio-win/
map.
Installeer de para-gevirtualiseerde drivers
virt-manager
gebruiken om een CD-ROM image aan te koppelen voor een Windows guest” om een CD-ROM image toe te voegen met virt-manager
.
virt-manager
gebruiken om een CD-ROM image aan te koppelen voor een Windows guestvirt-manager
, selecteer je gevirtualiseerde guest in de lijst van virtuele machines en klik op de knop.
/usr/share/xenpv-win
als je yum
gebruikt hebt om de para-gevirtualiseerde driver pakketten te installeren.
viostor.vfd
als een floppy
Windows Server 2003
Windows Server 2008
virtio
driver te gebruiken in plaats van de gevirtualiseerde IDE driver. Dit voorbeeld bewerkt libvirt configuratie bestanden. Als alternatief kunnen virt-manager
, virsh attach-disk
of virsh attach-interface
een nieuw apparaat toevoegen met gebruik van para-gevirtualiseerde drivers KVM para-gevirtualiseerde drivers gebruiken voor nieuwe apparaten.
<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
of virsh attach-interface
commando's gebruikt worden apparaten aan te sluiten die de para-gevirtualiseerde drivers gebruiken.
virt-manager
.
xend
/etc/xen/xend-config.sxp
. Hier zijn de parameters die je kunt aan of uitzetten in het xend-config.sxp
configuratie bestand:
Item | Description |
---|---|
(console-limit)
|
Bepaalt de geheugen buffer limiet xend_unix_server van de console server en kent waarden toe op een per domein basis.
|
(min-mem)
|
Bepaalt het minimum aantal megabytes dat gereserveerd wordt voor domain0 (als je 0 invult, verandert de waarde niet).
|
(dom0-cpus)
|
Bepaalt het aantal CPU's dat gebruikt wordt door domain0 (tenminste 1 CPU wordt standaard toegekend).
|
(enable-dump)
|
Bepaalt of er een dump komt als een crash optreedt (de standaard is 0).
|
(external-migration-tool)
|
Bepaalt het script of de toepassing die externe apparaat migratie afhandelt. Scripts moeten zich bevinden in
etc/xen/scripts/external-device-migrate .
|
(logfile)
|
Bepaalt de locatie van het log bestand (standaard is
/var/log/xend.log ).
|
(loglevel)
|
Bepaalt de log mode instelling: DEBUG, INFO, WARNING, ERROR, of CRITICAL (standaard is DEBUG).
|
(network-script)
|
Bepaalt het script dat de netwerk omgeving aanzet (script moet zich bevinden in
etc/xen/scripts directory).
|
(xend-http-server)
|
Zet de http stroom pakket beheer server aan (de standaard is nee)
|
(xend-unix-server)
|
Zet de unix domein socket server aan, de socket server is een communicatie eindpunt die laag-niveau netwerk verbindingen afhandelt en binnenkomende verbindingen accepteert of verwerpt. De standaard waarde is ja).
|
(xend-relocation-server)
|
Zet relocatie server aan voor cross-machine migraties (de standaard is nee).
|
(xend-unix-path)
|
Bepaalt de locatie waar het
xend-unix-server commando data naar toe stuurt (standaard is var/lib/xend/xend-socket ).
|
(xend-port)
|
Bepaalt de poort die de http beheer server gebruikt (de standaard is 8000).
|
(xend-relocation-port)
|
Bepaalt de poort die de relocatie server gebruikt (de standaard is 8002).
|
(xend-relocation-address)
|
Bepaalt de host adressen toegestaan voor migratie. De standaard waarde is de waarde van
xend-address .
|
(xend-address)
|
Bepaalt het adres waarnaar de domein socket server verbindt. De standaard waarde staat alle verbindingen toe.
|
service xend start
service xend stop
service xend restart
service xend status
xend
aanzetten tijdens het opstartenchkconfig
commando om xend
toe te voegen aan het initscript
.
chkconfig --level 345 xend
xend
zal nu starten in de runlevels 3, 4, en 5.
ntpd
service aan:
# service ntpd start
# chkconfig ntpd on
ntpd
service moet de effecten van klok ongelijkheid in alle gevallen minimaliseren.
constant_tsc
vlag aanwezig is. Om te bepalen of jouw CPU de constant_tsc
vlag heeft, voer je het volgende commando uit:
$ cat /proc/cpuinfo | grep constant_tsc
constant_tsc
bit. Als geen output wordt gegeven volg je de instructies hieronder.
constant_tsc
bit mist, zet je alle vermogensbeheer eigenschappen uit (BZ#513138). Elk systeem heeft meerdere tellers die het gebruikt om de tijd bij te houden. De TSC is niet stabiel op de host, wat soms veroorzaakt wordt door cpufreq
veranderingen, diepe C toestanden, of migratie naar een host met een snellere TSC. Om diepe C toestanden te stoppen, welke de TSC kunnen stoppen, voeg je "processor.max_cstate=1
" toe aan de kernel boot opties in grub op de host:
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
(alleen nodig op hosts zonder de constant_tsc
) uit door het bewerken van het /etc/sysconfig/cpuspeed
configuratie bestand en verander de MIN_SPEED
en MAX_SPEED
variabelen naar de hoogste beschikbare frequentie. Geldige waarden kunnen gevonden worden in de /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_frequencies
bestanden.
Red Hat Enterprise Linux | Extra guest kernel parameters |
---|---|
5.4 AMD64/Intel 64 met de para-gevirtualiseerde klok | Extra parameters zijn niet vereist |
5.4 AMD64/Intel 64 zonder de para-gevirtualiseerde klok | divider=10 notsc lpj=n |
5.4 x86 met de para-gevirtualiseerde klok | Extra parameters zijn niet vereist |
5.4 x86 zonder de para-gevirtualiseerde klok | 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 | Extra parameters zijn niet vereist |
3.9 x86 | Extra parameters zijn niet vereist |
/use pmtimer
virsh
commando. Het migrate
commando accepteert parameters met het volgende formaat:
# 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
naar test2.bne.redhat.com
. Verander de host namen voor jouw omgeving. Dit voorbeeld migreert een virtuele machine met de naam CentOS4test
.
Verifieer of de guest draait
test1.bne.redhat.com
, verifieer je of CentOS4test
draait:
[root@test1 ~]# virsh list Id Name State ---------------------------------- 10 CentOS4 running
Migreer de guest
test2.bne.redhat.com
. Voeg /system
toe aan het eind van de bestemming URL om aan libvirt door te geven dat je volledige toegang nodig hebt.
# virsh migrate --live CentOS4test qemu+ssh://test2.bne.redhat.com/system
Wacht
virsh
rapporteert alleen fouten. De guest vervolgt met het draaien op de bron host totdat de migratie voltooid is.
Verifieer of de guest aangekomen is op de bestemming host
test2.bne.redhat.com
, verifieer je of CentOS4test
draait:
[root@test2 ~]# virsh list Id Name State ---------------------------------- 10 CentOS4 running
virt-manager
.
ssh
of TLS en SSL.
libvirt
beheer verbinding welke veilig met een tunnel een SSH verbinding maakt om machines op afstand te beheren. Alle authenticatie wordt gedaan met het gebruik van SSH publieke sleutel versleuteling en wachtwoorden of wachtzinnen verzameld door je lokale SSH agent. Bovendien wordt de VNC console voor iedere guest virtuele machine getunneld met SSH.
virt-manager
virt-manager
wordt gebruikt. Als ssh
al ingesteld is kun je dit commando overslaan.
$ ssh-keygen -t rsa
virt-manager
een kopie van de publieke sleutel nodig voor elke machine op afstand welke libvirt
draait. Kopieer het bestand $HOME/.ssh/id_rsa.pub
van de machine die je wilt gebruiken voor beheer op afstand met het scp
commando:
$ scp $HOME/.ssh/id_rsa.pub root@somehost:/root/key-dan.pub
ssh
om als root met de machines op afstand te verbinden en je voegt het bestand dat je gekopieerd hebt naar de lijst van goedgekeurde sleutels. Als de root gebruiker op de host op afstand nog geen lijst van goedgekeurde sleutels heeft, wees er dan zeker van dat je de rechten correct instelt.
$ 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
daemon (libvirtd
)libvirt
daemon biedt een interface voor het beheren van virtuele machines. Je moet de libvirtd
daemon gebruiken welke geïnstalleerd moet zijn en draait op elke host op afstand die je moet beheren. Het gebruik van het Fedora kernel-xen
pakket een speci
$ ssh root@somehost
# chkconfig libvirtd on
# service libvirtd start
libvirtd
en SSH zijn ingesteld moet je in staat zijn om op afstand toegang te krijgen tot je virtuele machines en te kunnen beheren. Je moet op dit punt ook in staat zijn om toegang tot jouw guests te krijgen met VNC
.
libvirt
beheer verbinding open een TCP poort voor binnenkomende verbindingen, welke veilig wordt versleuteld en voor echt verklaard op basis van x509 certificaten. bovendien zal de VNC console voor elke guest virtuele machine ingesteld worden om TLS te gebruiken met x509 certificaat authenticatie.
libvirt
server instelling/etc/xen/xend-config.sxp
. Verwijder het commentaar bij de (vnc-tls 1)
configuratie parameter in het configuratie bestand.
/etc/xen/vnc
heeft de volgende drie bestanden nodig:
ca-cert.pem
- De CA certificaat
server-cert.pem
- De Server certificaat getekend door de CA
server-key.pem
- De server privé sleutel
(vnc-x509-verify 1)
parameter.
virt-manager
en virsh
cliënt instellinglibvirt
beheer API over TLS aan te zetten, moeten de CA en cliënt certificaten geplaatst worden in /etc/pki
. voor details hierover raadpleeg je http://libvirt.org/remote.html
virt-manager
gebruikers interface, gebruik je de ' ' transport mechanisme optie bij het verbinden naar een host.
virsh
heeft de URI het volgende formaat:
qemu://hostname.guestname/system
voor KVM.
xen://hostname.guestname/
voor Xen.
$HOME/.pki
, dat wil zeggen de volgende drie bestanden:
ca-cert.pem
- De CA certificaat.
libvirt-vnc
of clientcert.pem
- De cliënt certificaat getekend door de CA.
libvirt-vnc
of clientkey.pem
- De cliënt privé sleutel.
libvirt
de volgende transport modes:
/var/run/libvirt/libvirt-sock
en /var/run/libvirt/libvirt-sock-ro
(voor alleen-lezen verbindingen).
libvirtd
) moet op de machine op afstand draaien. Poort 22 moeten open zijn voor SSH toegang. Je moet een vorm van ssh sleutel beheer gebruiken (bijvoorbeeld, het ssh-agent
programma) of je zult gevraagd worden naar een wachtwoord.
Een Uniform Resource Identifier (URI) wordt gebruikt door virsh
en libvirt
om te verbinden met een host op afstand. URI's kunnen ook gebruikt worden met de --connect
parameter voor het virsh
commando om enkele commando's uit te voeren of voor migraties op hosts op afstand.
driver[+transport]://[gebruikersnaame@][hostnaam][:poort]/[pad][?extraparameters]
towada
, met gebruik van SSH transport en de SSH gebruikersnaam ccurran
.
xen+ssh://ccurran@towada/
towada
met gebruik van TLS.
xen://towada/
towada
met gebruik van TLS. De no_verify=1
parameter vertelt libvirt om het certificaat van de server niet te verifiëren.
xen://towada/?no_verify=1
towada
met gebruik van SSH.
qemu+ssh://towada/system
qemu+unix:///system?socket=/opt/libvirt/run/libvirt/libvirt-sock
test+tcp://10.1.1.10:5000/default
Naam | Transport mode | Description | Voorbeeld gebruik |
---|---|---|---|
name | alle modes | De naam doorgegeven aan de virConnectOpen functie op afstand. De naam wordt normaal gevormd door het verwijderen van transport, host naam, poort nummer, gebruikersnaam en extra parameters van de URI op afstand, maar in bepaalde complexe gevallen kan het beter zijn om de naam expliciet op te geven. | name=qemu:///system |
command | ssh en ext | Het externe commando. Voor ext transport is dit vereist. Voor ssh is de standaard ssh. Het PATH wordt afgezocht voor het commando. | command=/opt/openssh/bin/ssh |
socket | unix en ssh | Het pad naar de UNIX domein socket, welke de standaard terzijde schuift. Voor ssh transport wordt dit doorgegeven aan het netcat commando op afstand (zie netcat). | socket=/opt/libvirt/run/libvirt/libvirt-sock |
netcat | ssh | De naam van het netcat commando op de machine op afstand. De standaard is nc. Voor ssh transport maakt libvirt een ssh commando die eruit ziet als: command -p poort [-l gebruikersnaam] hostnaam netcat -U socket waarin poort, gebruikersnaam, hostnaam opgegeven kunnen worden als onderdeel van de URI op afstand URI, en command, netcat en socket komen van extra parameters (of zinnige standaarden). | netcat=/opt/netcat/bin/nc |
no_verify | tls | Als het op een niet-nul waarde wordt ingesteld, zet dit de controle uit die de cliënt uitvoert naar het certificaat van de server. Merk op dat het uitzetten van de controle die de server uitvoert naar het certificaat of IP adres van de cliënt je de libvirt configuratie moet veranderen. | no_verify=1 |
no_tty | ssh | Als het op een niet-nul waarde wordt ingesteld, stopt ssh met het vragen naar een wachtwoord als het niet automatisch kan inloggen op de machine op afstand (voor met gebruik van ssh-agent of soortgelijk). Gebruik dit als je geen toegang tot een console hebt - bijvoorbeeld in grafische programma's die libvirt gebruiken. | no_tty=1 |
Inhoudsopgave
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
is een commando-regel interface gereedschap voor het beheren van guests en de hypervisor.
virsh
gereedschap is gebouwd op de libvirt
beheer API en werkt als een alternatief voor het xm
commando en de grafische guest manager (virt-manager
). virsh
kan gebruikt worden in de alleen-lezen mode door gebruikers zonder rechten. Je kunt virsh
gebruiken om scripts uit te voeren voor de guest machines.
Commando | Description |
---|---|
help
| Laat de basis hulp informatie zien. |
list
| Laat alle guests zien. |
dumpxml
| Output het XML configuratie bestand van de guest. |
create
| Maakt een guest van een XML configuratie bestand en start de nieuwe guest. |
start
| Start een niet-actieve guest |
destroy
| Forceert een guest om te stoppen. |
define
| Output een XML configuratie bestand van een guest. |
domid
| Laat de ID van de guest zien. |
domuuid
| Laat de UUID van de guest zien. |
dominfo
| Laat guest informatie zien. |
domname
| Laat de naam van de guest zien. |
domstate
| Laat de toestand van een guest zien, |
quit
| Verlaat de interactieve terminal. |
reboot
| Start een guest opnieuw op. |
restore
| Laadt een vroeger opgeslagen quest vanuit het opslag bestand opnieuw in. |
resume
| Vervolg een in pauze gezette guest. |
save
| Sla de huidige toestand van een guest op in een bestand. |
shutdown
| Sluit een guest netjes af. |
suspend
| Zet een guest in pauze stand. |
undefine
| Verwijder alle bestanden geassocieerd met een guest. |
migrate
| Migreer een guest naar een andere host. |
virsh
commando opties voor het beheren van guests en hypervisor hulpbronnen.
Commando | Description |
---|---|
setmem
| Stel het toegewezen geheugen in voor een guest. |
setmaxmem
| Stel de maximum geheugen limiet in voor de hypervisor. |
setvcpus
| Verander het aantal virtuele CPU's toegekend aan een guest. |
vcpuinfo
| Laat virtuele CPU informatie van een guest zien. |
vcpupin
| Controleert de virtuele CPU affiniteit van een guest. |
domblkstat
| Laat blok apparaat statistieken zien van een draaiende guest. |
domifstat
| Laat netwerk interface statistieken zien van een draaiende guest. |
attach-device
| Ken een apparaat toe aan een guest, met gebruik van een apparaat definitie in een XML bestand. |
attach-disk
| Ken een nieuw schijf station toe aan een guest. |
attach-interface
| Ken een nieuw netwerk interface toe aan een guest. |
detach-device
|
Maak een apparaat los van een guest, gebruikt hetzelfde soort XML beschrijvingen als commando attach-device .
|
detach-disk
| Maak een schijf station los van een guest. |
detach-interface
| Maak een netwerk interface los van een guest. |
virsh
opties:
Commando | Description |
---|---|
version
|
Laat de versie van virsh zien.
|
nodeinfo
| Output informatie over de hypervisor. |
virsh
:
# virsh connect {hostnaam OF URL}
<hostnaam>
de machine naam van de hypervisor is. Om een alleen-lezen verbinding op te zetten, voeg je -readonly
toe aan het commando hierboven.
virsh
:
# virsh dumpxml {domein-id, domein-naam of domein-uuid}
stdout
). Je kunt de data opslaan door de output om te leiden naar een bestand. Een voorbeeld van de output omleiden naar een bestand met de naam guest.xml
:
# virsh dumpxmlDit bestandGuestID
>guest.xml
guest.xml
kan de guest opnieuw opbouwen, refereer naar Bewerk het configuratie bestand van een guest. Je kunt dit XML configuratie bestand bewerken om extra apparaten in te stellen of extra guests in te zetten. Refereer naar Paragraaf 18.1, “XML configuratie bestanden gebruiken met virsh” voor meer informatie over het veranderen van bestanden aangemaakt met virsh dumpxml
.
virsh dumpxml
output:
# 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
optie (refereer naar Aanmaken van een virtuele machine XML dump (configuratie bestand)). Om een guest aan te maken van een XML bestand met virsh
# virsh create configuratie_bestand.xml
dumpxml
optie (refereer naar Aanmaken van een virtuele machine XML dump (configuratie bestand)) kunnen guest bewerkt worden of terwijl ze draaien, of als ze off-line zijn. Het virsh edit
commando biedt deze functionaliteit. Bijvoorbeeld, om de guest met de naam softwaretesting
te bewerken:
# virsh edit softwaretesting
$EDITOR
shell parameter (standaard ingesteld op vi
).
virsh
:
# virsh suspend {domein-id, domein-naam of domein-uuid}
resume
(Een guest weer in werking stellen) optie.
virsh
met gebruik van de resume
optie:
# virsh resume {domein-id, domein-naam of domein-uuid}
suspend
en resume
operaties.
virsh
commando:
# virsh save {domein-naam, domein-id of domein-uuid} bestandsnaam
restore
(Een guest herladen) optie. Opslaan is vergelijkbaar met pauzeren, in plaats van alleen maar pauzeren wordt de huidige toestand ook opgeslagen.
virsh save
commando (Een guest opslaan) met gebruik van virsh
:
# virsh restore bestandsnaam
virsh
commando:
# virsh shutdown {domein-id, domein-naam of domein-uuid}
on_shutdown
parameter in het configuratie bestand van de guest.
virsh
commando:
#virsh reboot {domein-id, domein-naam of domein-uuid}
on_reboot
parameter in het configuratie bestand van de guest.
virsh
commando:
# virsh destroy {domein-id, domein-naam or domein-uuid}
virsh destroy
kan guest bestandssystemen corrupt maken. Gebruik de destroy
optie alleen als de guest niet meer reageert. Voor para-gevirtualiseerde guests gebruik je in plaats hiervan de shutdown
optie (Een guest afsluiten).
# virsh domid {domein-naam of domein-uuid}
# virsh domname {domein-id of domein-uuid}
# virsh domuuid {domein-id or domein-naam}
virsh domuuid
output:
# virsh domuuid r5b2-mySQL01 4a4c59a7-ee3f-c781-96e4-288f2862f011
virsh
en de domein ID, domein naam of UUID van de guest kun je informatie laten zien over de gespecificeerde guest:
# virsh dominfo {domein-id, domein-naam of domein-uuid}
virsh dominfo
output:
# 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
output:
# 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
optie om een lijst van de niet-actieve guests (dat betekent, guests die gedefinieerd zijn maar op dit moment niet actief) te tonen, en
--all
optie om alle guests te tonen. Bijvoorbeeld:
# virsh list --all Id Name State ---------------------------------- 0 Domain-0 running 1 Domain202 paused 2 Domain010 inactive 3 Domain9600 crashed
virsh list
wordt in een van zes toestanden ingedeeld (hieronder getoond).
running
toestand refereert naar guests die op dit moment actief zijn op een CPU.
blocked
zijn geblokkeerd, en draaien niet of zijn niet draaibaar. Dit wordt veroorzaakt door een guest die wacht op I/O (een traditionele wacht toestand) of guests in een slaap mode.
paused
toestand laat domeinen zien die in pauze zijn. Dit gebeurt als de beheerder de pause knop in virt-manager
, xm pause
of virsh suspend
gebruikt. Als een guest in pauze is verbruikt het geheugen en andere hulpbronnen maar het is ongeschikt voor inplannen en CPU en hulpbronnen van de hypervisor.
shutdown
toestand is voor guests die bezig zijn met afsluiten. De guest wordt een afsluit signaal gestuurd en moet bezig zijn om zijn operaties zorgvuldig te stoppen. Dit werkt misschien niet met alle besturingssystemen; sommige besturingssystemen reageren niet op deze signalen.
dying
toestand zijn in het proces van afsterven, wat een toestand is waarin het domein nog niet helemaal uitgezet is of gecrashed is.
crashed
guest hebben gefaald toen ze draaiden en draaien nu niet meer. Deze toestand kan alleen optreden als de guest is ingesteld om niet opnieuw op te starten na een crash.
virsh
:
# virsh vcpuinfo {domein-id, domein-naam of domein-uuid}
virsh vcpuinfo
output:
# virsh vcpuinfo r5b2-mySQL01 VCPU: 0 CPU: 0 State: blocked CPU time: 0.0s CPU Affinity: yy
# virsh vcpupin {domein-id, domein-naam of domein-uuid} vcpu, cpulist
vcpu
het virtuele VCPU nummer is en cpulist
een lijst van fysieke CPU's.
virsh
:
# virsh setvcpus {domein-naam, domein-id of domein-uuid} count
count
waarde kan niet groter zijn dan de hoeveelheid die gespecificeerd werd voor count toen de guest werd aangemaakt.
virsh
:
# virsh setmem {domein-id of domein-naam} count
virsh domblkstat
om blok apparaat statistieken te tonen voor een draaiende guest.
# virsh domblkstat GuestNaam blok-apparaat
virsh domifstat
om netwerk interface statistieken te tonen voor een draaiende guest.
# virsh domifstat GuestNaam interface-apparaat
virsh
. Migreer domein naar een andere host. Voeg --live toe voor live migratie. Het migrate
commando accepteert parameters in het volgende formaat:
# virsh migrate --live GuestName DestinationURL
--live
parameter is optioneel. Voeg de --live
parameter toe voor live migraties.
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
commando. Om een lijst te laten zien van virtuele netwerken:
# virsh net-list
# virsh net-list Name State Autostart ----------------------------------------- default active yes vnet1 active yes vnet2 active yes
# virsh net-dumpxml NetwerkNaam
# 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
commando's die gebruikt worden in het beheer van virtuele netwerken zijn:
virsh net-autostart netwerk-naam
— Start een netwerk gespecificeerd als netwerk-naam
automatisch op.
virsh net-create XMLbestand
— genereert en start een nieuw netwerk op met gebruik van een bestaand XML bestand.
virsh net-define XMLbestand
— genereert een nieuw netwerk apparaat van een bestaand XML bestand zonder het op te starten.
virsh net-destroy netwerk-naam
— vernietig een netwerk opgegeven als netwerk-naam
.
virsh net-name netwerkUUID
— converteer een gespecificeerde netwerkUUID
naar een netwerk naam.
virsh net-uuid netwerk-naam
— converteer een gespecificeerde netwerk-naam
naar een netwerk UUID.
virsh net-start naamVanInactiefNetwerk
— start een inactief netwerk.
virsh net-undefine naamVanInactiefNetwerk
— verwijdert de definitie van een inactief netwerk.
virt-manager
) vensters, dialogen, en verschillende GUI controlepanelen.
virt-manager
biedt een grafisch overzicht van hypervisors en guests op jouw systeem en op machines op afstand. Je kunt virt-manager
gebruiken voor het definiëren van zowel para-gevirtualiseerde als volledig gevirtualiseerde guests. virt-manager
kan virtualisatie beheer taken uitvoeren, zoals:
virt-manager
. Het UUID veld laat de globale unieke identifier zien voor de virtuele machines.
virt-manager
details venster127.0.0.1
) van de locale host (dom0
). Dit verzekert dat alleen diegenen met shell rechten op de host met VNC toegang kunnen krijgen naar virt-manager en de virtuele machine.
virt-manager
sticky-toets mogelijkheid gebruiken om deze aanslagen te versturen. Je moet een verander toets (Ctrl of Alt) 3 keer induwen en de toets die specificeert wordt behandeld als actief totdat de volgende niet-verander toets ingeduwd wordt. Dus je kunt Ctrl-Alt-F11 naar de guest sturen door het intypen van de toets volgorde 'Ctrl Ctrl Ctrl Alt+F1'.
virt-manager
sessie op te starten, open je het menu, dan het menu, en je selecteert (virt-manager
).
virt-manager
hoofd venster verschijnt.
virt-manager
opstartenvirt-manager
op afstand opgestart worden met gebruik van ssh zoals het volgende commando laat zien:
ssh -X adres van host
[remotehost]# virt-manager
Het gebruik van ssh
om virtuele machines en hosts te beheren wordt verder behandeld in Paragraaf 13.1, “Beheer op afstand met SSH”.
DHCP
reeksInhoudsopgave
ftpd
ftpd
virsh
om een guest, TestServer
, in te stellen om automatisch te starten als de host opgestart wordt.
# virsh autostart TestServer
Domain TestServer marked as autostarted
--disable
parameter
# virsh autostart --disable TestServer
Domain TestServer unmarked as autostarted
Installeer het KVM pakket
# yum install kvm
Controleer welke kernel in gebruik is
uname
commando om te bepalen welke kernel draait:
$ uname -r 2.6.23.14-107.fc8xen
2.6.23.14-107.fc8xen
" kernel draait op het systeem. Als de standaard kernel, "2.6.23.14-107.fc8
" draait kun je deze tussenstap overslaan.
Het veranderen van de Xen kernel naar de standaard kernel
grub.conf
bestand bepaalt welke kernel opgestart wordt. Om de standaard kernel te veranderen bewerk je het /boot/grub/grub.conf
bestand zoals hieronder getoond.
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
(of het nummer voor de standaard kernel):
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
Start opnieuw op om de nieuwe kernel te laden
$ lsmod | grep kvm kvm_intel 85992 1 kvm 222368 2 ksm,kvm_intel
kvm
module en de kvm_intel
module of de kvm_amd
module zijn aanwezig als alles werkt.
Installeer de Xen pakketten
# yum install kernel-xen xen
Controleer welke kernel in gebruik is
uname
commando om te beplalen welke kernel draait.
$ uname -r 2.6.23.14-107.fc8
2.6.23.14-107.fc8
" kernel draait op het systeem. Dit is de standaard kernel. Als de kernel naam xen
op het einde heeft (bijvoorbeeld, 2.6.23.14-107.fc8xen
) dan draait de Xen kernel en kun je deze tussenstap overslaan.
Het veranderen van de standaard kernel naar de Xen kernel
grub.conf
bestand bepaalt welke kernel opgestart wordt. Om de standaard kernel te veranderen bewerk je het /boot/grub/grub.conf
bestand zoals hieronder getoond.
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
(of het nummer voor de Xen kernel):
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
Start opnieuw op om de nieuwe kernel te laden
uname
commando:
$ uname -r 2.6.23.14-107.fc8xen
xen
op het einde heeft dan draait de Xen kernel.
qemu-img
commando-regel gereedschap wordt gebruikt voor het formatteren van verschillende bestandssystemen die gebruikt worden door Xen en KVM. qemu-img
moet gebruikt worden voor het formatteren van gevirtualiseerde guest images, extra opslag apparaten en netwerk opslag. qemu-img
opties en gebruik worden hieronder beschreven.
# qemu-img create [-6] [-e] [-b base_image] [-f formaat] bestand-naam [grootte]
# qemu-img convert [-c] [-e] [-f formaat] bestandsnaam [-O output_formaat] output_bestandsnaam
qcow
of cow
. De lege sectoren worden ontdekt en onderdrukt in de bestemmings image.
info
parameter laat informatie zien over een schijf image. Het formaat voor de info
optie is als volgt:
# qemu-img info [-f formaat] bestandsnaam
raw
qemu-img info
om de werkelijke grootte gebruikt door de image te weten te komen of ls -ls
in Unix/Linux.
qcow2
qcow
cow
cow
formaat is alleen toegevoegd voor compatibiliteit met vorige versies. Het werkt niet met Windows.
vmdk
cloop
pdflush
opgestart. pdflush
sluit processen af om geheugen vrij te maken zodat het systeem niet crasht. pdflush
kan gevirtualiseerde guests of andere systeem processen afsluiten wat bestandssysteem fouten kan veroorzaken en gevirtualiseerde guests in een niet-opstartbare toestand achterlaten.
(0.5 * RAM) + (overcommit verhouding * RAM) = Aanbevolen wisselgeheugen grootte
/etc/grub.conf
bestand kunt veranderen voor het gebruik van de virtualisatie kernel. Je moet de xen
kernel gebruiken voor het gebruik van de Xen hypervisor. Bij het kopiëren van je bestaande xen
kernel ingang weee er zeker van dat je alle belangrijke regels kopieert of jouw systeem zal paniekeren bij het opstarten (initrd
zal een lengte van '0
' hebben). Als je specifieke waarden voor de xen
hypervisor nodig hebt, moet je deze toevoegen achteraan de xen
regel van jouw grub ingang.
grub.conf
ingang van een systeem dat het kernel-xen pakket draait. De grub.conf
op jouw systeem kan anders zijn. Het belangrijke gedeelte in het voorbeeld hieronder is de sectie vanaf de title
regel tot aan de volgende nieuwe regel.
#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
kan er heel anders uitzien als het handmatig bewerkt is of gekopieerd van een voorbeeld.
dom0_mem=256M
toevoegen van de xen
regel in jouw grub.conf
. Een veranderde versie van het grub configuratie bestand uit het vorige voorbeeld:
#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
ingang wat een Intel processor met de Intel VT uitbreidingen aangeeft:
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
ingang wat een AMD processor met de AMD-V uitbreidingen aangeeft:
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:
" inhoud kan meerdere keren verschijnen voor iedere hyperthread, kern, of CPU in het systeem.
#!/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
commando.
macgen.py
. Vanuit die map kun je het script uitvoeren met gebruik van ./macgen.py
en het zal een nieuw MAC adres aanmaken. Een voorbeeld output kan op het volgende lijken:
$ ./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
gebruiken om een nieuw MAC adres en UUID
aan te maken voor gebruik in een guest configuratie bestand:
# 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
kan toegang bieden tot installatie bomen voor para-gevirtualiseerde guests of andere data. Als je vsftpd
niet hebt geïnstalleerd tijdens de server installatie kun je het RPM pakket uit de Server
map van jouw installatie media halen en het installeren met het gebruik van rpm -ivh vsftpd*.rpm
(merk op dat het RPM pakket in je huidige map moet zijn).
vsftpd
te configureren, bewerk je /etc/passwd
met gebruik van vipw
en je verandert de persoonlijke map van de ftp gebruiker naar de map waar je de installatie bomen voor jouw para-gevirtualiseerde guests gaat opslaan. Een voorbeeld ingang voor de FTP gebruiker kan lijken op het volgende:
ftp:x:14:50:FTP User:/xen/pub:/sbin/nologin
vsftpd
automatisch te laten starten tijdens de systeem opstart gebruik je het chkconfig programma om de automatische opstart van vsftpd
aan te zetten.
vsftpd
niet aangezet wordt met gebruik van 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
uit om vsftpd automatisch op te starten voor run levels 3, 4, en 5.
chkconfig --list vsftpd
commando om te verifiëren dat vsftdp aangezet is om te starten tijdens de systeem opstart:
$ chkconfig --list vsftpd vsftpd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
service vsftpd start vsftpd
om de vsftpd service te starten:
$service vsftpd start vsftpd Starting vsftpd for vsftpd: [ OK ]
udev
gebruiken om LUN vasthoudendheid te implementeren. Voordat je LUN vasthoudendheid in jouw systeem installeert, verzeker je je ervan dat je de juiste UUID's hebt verkregen. Zodra je deze hebt verkregen, kun je LUN vasthoudendheid configureren door het bewerken van het scsi_id
bestand die zich in de /etc
map bevindt. Als je dit bestand geopend hebt in een tekstverwerker, moet je de volgende regel uitcommentatiëren:
# options=-b
# options=-g
scsi_id
commando:
# scsi_id -g -s /block/sdc *3600a0b80001327510000015427b625e*
20-names.rules
bestand in de /etc/udev/rules.d
map. De apparaat naam regels volgen dit formaat:
# KERNEL="sd*", BUS="scsi", PROGRAM="sbin/scsi_id", RESULT="UUID
", NAME="apparaatnaam
"
UUID
en apparaatnaam
met die hierboven verkregen UUID. De regel moet op het volgende lijken:
KERNEL="sd*
", BUS="scsi", PROGRAM="sbin/scsi_id", RESULT="3600a0b80001327510000015427b625e
", NAME="mijnapparaat
"
/dev/sd*
patroon de gegeven UUID gaan inspecteren. Als het een overeenkomend apparaat vindt, maakt het een apparaat node met de naam /dev/devicename
. Voor dit voorbeeld wordt de apparaat node /dev/mijnapparaat
. Tenslotte voeg je deze regel toe aan het /etc/rc.local
bestand:
/sbin/start_udev
multipath.conf
bestand dat zich in de /etc/
map bevindt:
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
, en dev/mpath/oramp4
. De apparaten zullen zich in de /dev/mpath
map bevinden. Deze LUN namen zijn vasthoudend bij opnieuw opstarten omdat het de alias namen aanmaakt op de wwid van de LUN's.
/sbin/service smartd stop /sbin/chkconfig --del smartd
uuidgen
commando. Daarna moet je voor de vif
ingangen een uniek MAC adres definiëren voor iedere guest (als je een guest configuratie van een bestaande guest kopieert, kun je een script maken om dit af te handelen). Voor de xen brug informatie, indien een bestaand guest configuratie bestand verhuist naar een nieuwe host, moet je de xenbr
ingang vernieuwen om overeen te komen met je locale netwerk configuratie. Voor de Device ingangen moet je de ingangen veranderen in de 'disk='
sectie om te wijzen naar de correcte guest image.
/etc/sysconfig/network
bestand veranderen om overeen te komen met de hostnaam van de nieuwe guest.
HWADDR
adres van het /etc/sysconfig/network-scripts/ifcfg-eth0
bestand veranderen om overeen te komen met de output van ifconfig eth0
en als je statische IP adressen gebruikt, moet je de IPADDR
ingang veranderen.
name
uuid
uuidgen
commando. Een voorbeeld UUID output:
$ uuidgen a984a14f-4191-4d14-868e-329906b211e5
vif
xenbr
ingang aanpast om overeen te komen met jouw locale netwerk configuratie (je kunt de brug informatie verkrijgen door gebruik van het brctl show
commando).
disk=
sectie aanpast om te wijzen naar de juiste guest image.
/etc/sysconfig/network
HOSTNAME
ingang naar de nieuwe hostnaam
van de guest.
/etc/sysconfig/network-scripts/ifcfg-eth0
HWADDR
adres naar de output van ifconfig eth0
IPADDR
ingang als een statisch IP adres gebruikt wordt.
libvirt
.
libvirt
gebruiken.
virsh
kan XML configuratie bestanden afhandelen. Je wilt dit misschien tot jouw voordeel gebruiken voor het maken van scripts voor grotere inzet met speciale opties. Je kunt apparaten toevoegen die gedefinieerd zijn in een XML bestand om een para-gevirtualiseerde guest te draaien. Bijvoorbeeld, om een ISO bestand toe te voegen als hdc
aan een draaiende guest, maak je een XML bestand:
# 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>Voer
virsh attach-device
uit om het ISO bestand aan te koppelen als hdc
voor een guest met de naam "satellite" :
# virsh attach-device satellite satelliteiso.xml
/etc/modprobe.conf
. Bewerk /etc/modprobe.conf
en voeg de volgende regel toe:
options loop max_loop=64
phy: block device
of tap:aio
commando's. Om loop apparaat ondersteunde guests voor een volledig gevirtualiseerd systeem toe te passen, gebruik je de phy: device
of file: file
commando's.
cat /proc/cpuinfo | grep vmx svm
uit. Als het commando output geeft, dan zijn de virtualisatie uitbreidingen nu aangezet. Als er geen output is, dan heeft jouw systeem de virtualisatie uitbreidingen misschien niet of is de correcte BIOS instelling niet aangezet.
libvirt
virtualisatie API.
/usr/share/doc/xen-<versie-nummer>
/
is de map welke informatie bevat over de Xen para-gevirtualiseerde hypervisor en aanverwante beheer gereedschappen, inclusief verschillende voorbeeld configuraties, hardware specifieke informatie, en de huidige Xen upstream gebruikers documentatie.
man virsh
en /usr/share/doc/libvirt-<versie-nummer>
— Bevatten sub-commando's en opties voor het virsh
virtuele machine beheer programma en uitgebreide informatie over de libvirt
virtualisatie bibliotheek API.
/usr/share/doc/gnome-applet-vm-<versie-nummer>
— Documentatie voor de GNOME grafische paneel applet die lokaal draaiende virtuele machines controleert en beheert.
/usr/share/doc/libvirt-python-<versie-nummer>
— Biedt details over de Python verwijzingen voor de libvirt
bibliotheek. Het libvirt-python
pakket staat python ontwikkelaars toe om programma's te maken die samenwerken met de libvirt
virtualisatie beheer bibliotheek.
/usr/share/doc/python-virtinst-<versie-nummer>
— Biedt documentatie over het virt-install
commando dat helpt met het starten van installaties van Fedora en Linux gerelateerde distributies binnen virtuele machines.
/usr/share/doc/virt-manager-<versie-nummer>
— Biedt documentatie over de Virtual Machine Manager, welke een grafisch gereedschap levert voor het beheren van virtuele machines.
Wijzigingen | |||
---|---|---|---|
Herziening 12.1.3 | Mon Oct 12 2009 | ||
|
dom0
refereert naar de host versie van Linux die de Hypervisor draait, welke de virtualisatie van de guest besturingssystemen mogelijk maakt. Dom0 draait op en beheert de fysieke hardware en hulpbronnen toewijzing voor zichzelf en de guest besturingssystemen.
domU
refereert naar het guest besturingssysteem welke op het host systeem draait (Domeinen).
ext2
en ext3
bestandssysteem identifiers, RAID opstelling identifiers, iSCSI en LUN apparaat identifiers, MAC adressen en virtuele machine identifiers.