Difference between revisions of "Xen"

From PostgreSQL_wiki
Jump to: navigation, search
(Links)
(Fysieke server voor virtualisatie (dom0))
 
(15 intermediate revisions by 5 users not shown)
Line 2: Line 2:
   
 
* [[HowTo's]]
 
* [[HowTo's]]
  +
* http://packages.debian.org/nl/lenny/kvm
* Webhuis pagina [[webhuis_info]]
 
  +
* http://wiki.debian.org/DebianInstaller/Xen
  +
* http://wiki.xensource.com/xenwiki/XenFaq
 
=== Hardware checks vooraf ===
 
=== Hardware checks vooraf ===
 
'''Vaststellen''' of de processor 64 of 32 bit is:
 
'''Vaststellen''' of de processor 64 of 32 bit is:
Line 9: Line 11:
 
Real Mode = 16 bits
 
Real Mode = 16 bits
 
Protected Mode = 32 bits
 
Protected Mode = 32 bits
'''Vaststellen''' of de processor virtualisatie ondersteund
+
'''Vaststellen''' of de processor virtualisatie ondersteunt
 
# egrep ‘(vmx|svm)’ /proc/cpuinfo
 
# egrep ‘(vmx|svm)’ /proc/cpuinfo
=== Ubuntu netinstall (keramic) ===
 
De Ubuntu netinstall heeft een addertje onder het gras. De keuze lijkt tussen Intel i386 en amd64
 
http://ftp.ubuntu.com/ubuntu/dists/karmic/main/installer-i386/current/images/netboot/ubuntu-installer/i386/initrd.gz
 
http://ftp.ubuntu.com/ubuntu/dists/karmic/main/installer-i386/current/images/netboot/ubuntu-installer/i386/linux
 
   
=== Debian netinstall (lenny) ===
 
Als er al een linux versie op de machine aanwezig kan de volgende installatie met een netinstall geschieden door de netinstall images op te nemen in /boot en het grub menu aan te passen.
 
Op deze installatie komt een dom0, dus het is voldoende om ongeveer 8 Gb schijfruimte te nemen voor de linux partitie en 1 Gb voor swap. Op het restant van de schijf komt later een lvm te staan ten behoeve van de xen-domains.
 
http://nsaunders.wordpress.com/2006/11/06/a-usb-stick-grub-and-ubuntu/
 
http://www.debuntu.org/how-to-install-ubuntu-linux-on-usb-bar
 
Als root:
 
# cd /boot
 
AMD-64
 
# wget http://ftp.nl.debian.org/debian/dists/lenny/main/installer-amd64/current/images/netboot/debian-installer/amd64/linux
 
# wget http://ftp.nl.debian.org/debian/dists/lenny/main/installer-amd64/current/images/netboot/debian-installer/amd64/initrd.gz
 
Intel 32 bits
 
# wget http://ftp.nl.debian.org/debian/dists/lenny/main/installer-i386/current/images/netboot/debian-installer/i386/linux
 
# wget http://ftp.nl.debian.org/debian/dists/lenny/main/installer-i386/current/images/netboot/debian-installer/i386/initrd.gz
 
==== grub ====
 
In menu.lst moet een entry staan voor elk bootable image, bijvoorbeeld:
 
title Lenny netinstall Debian GNU/Linux
 
root (hd0,0)
 
kernel /boot/linux root=/dev/sda1 ro quiet splash ramdisk_size=32768
 
initrd /boot/initrd.gz
 
De waarden van de kernel en de initrd paramteres moeten corresponderen met de exacte naam en pad van de kernel en de initrd.gz ramdisk. Na de aanpassing volgen de commando's:
 
# grub-install /dev/sda
 
# reboot
 
=== Software matige RAID ===
 
Configureer de Raid voor de dom0 tijdens de installatie van de fysieke host.
 
==== De dom0 server zelf ====
 
Een een softwarematige RAID bestaat op een dom0 uit meerdere md-devices. Creeer het eerste kleine device 8Gb - 20Gb tijdens de installatie volgens deze stappen:
 
*in the following menu, scroll to your first disk and hit enter: the partitionier asks you, if you want to create an empty partition table. Say "yes". (Hint: this will erase your existing data, if any.)
 
*The partitioner is back in the disk overview, scroll one line downwards over the line with "FREE SPACE" and hit enter.
 
*Create a partition with the size you need, but remember the size and the logical type.
 
*In the "Partition settings" menu, go to "Use as" and hit enter.
 
*Change the type to "physical volume for RAID".
 
*Finish this partition with "Done setting up the partition".
 
*Create other partitions on the same disk, if you like.
 
*Now repeat all the steps from the first disk for the second disk.
 
After this, you should have at least two disks with the same partition schema and all partitions (beside swap) should be marked for RAID use.
 
*Now look at the first menu entry in the partitioner menu, there is a new line: "Configure software RAID". Go into this menu.
 
*Answer the question, if you like to write the changes, with "Yes".
 
*Now pick "Create MD device".
 
*Use RAID1 and give the number of active and spare devices (2 and 0 in our case).
 
*In the following menu, select the same device number on the first and second disk and Continue.
 
 
Repeat this step for every two devices until you are done. Then use "Finish" from the Multidisk configuration options.
 
 
You are back in the partitioner menu and now you see one ore more new partitions named as "Software RAID Device". You can use this partitions like any normal partition and continue installing your system.
 
 
Meer info op : http://www.howtoforge.com/software-raid1-grub-boot-debian-etch
 
==== lvm op een software raid ====
 
Na de installatie van nuttige software:
 
# apt-get install raidutils array-info
 
Configuratie van een nieuw md-device:
 
# cat /proc/mdstat
 
# mdadm -v --create /dev/md1 --level=raid1 --raid-devices=2 /dev/sda5 /dev/sdb5
 
# pvcreate /dev/md1
 
# pvscan
 
# array-info -v -d /dev/md1
 
# pvdisplay
 
# vgcreate dev-xen /dev/md1
 
Volg hierna de normale procedure voor het bouwen van een domU.
 
 
=== Xen install ===
 
=== Xen install ===
 
==== AMD-64 ====
 
==== AMD-64 ====
Line 86: Line 26:
 
Configuratie voor dom0 met een enkele netwerkkaart.
 
Configuratie voor dom0 met een enkele netwerkkaart.
 
#
 
#
# Uwork xen configuratie met network-bridge networkscript
+
# Webhuis xen configuratie met network-bridge networkscript
 
#
 
#
 
(logfile /var/log/xen/xend.log)
 
(logfile /var/log/xen/xend.log)
Line 118: Line 58:
 
#!/bin/sh
 
#!/bin/sh
 
#
 
#
# Uwork network-multinic xen 3.2
+
# Webhuis network-multinic xen 3.2
 
#
 
#
dir=$(dirname "$0")
+
dir=$(dirname "$0")
#/usr/bin/logger -t xend-network "network-bridge $* vifnum=0, vifnum=1"
+
#/usr/bin/logger -t xend-network "network-bridge $* vifnum=0, vifnum=1"
"$dir/network-bridge" "$@" netdev=eth0 bridge=xen-br0 vifnum=0
+
"$dir/network-bridge" "$@" netdev=eth0 bridge=xen-br0 vifnum=0
"$dir/network-bridge" "$@" netdev=eth1 bridge=xen-br1 vifnum=1
+
"$dir/network-bridge" "$@" netdev=eth1 bridge=xen-br1 vifnum=1
 
===== /etc/xen/xend-config.sxp =====
 
===== /etc/xen/xend-config.sxp =====
 
Comment out (network-script network-dummy) voeg toe (network-script network-multinic)
 
Comment out (network-script network-dummy) voeg toe (network-script network-multinic)
 
#
 
#
# Uwork xen configuratie met multinic networkscript
+
# Webhuis xen configuratie met multinic networkscript
 
#
 
#
 
(network-script network-multinic)
 
(network-script network-multinic)
Line 139: Line 79:
 
# and how to activate them. For more information, see interfaces(5).
 
# and how to activate them. For more information, see interfaces(5).
 
#
 
#
# Uwork xen netwerk configuratie voor xen dom0 multinic
+
# Webhuis xen netwerk configuratie voor xen dom0 multinic
 
#
 
#
 
# The loopback network interface
 
# The loopback network interface
Line 155: Line 95:
 
address 10.22.23.1
 
address 10.22.23.1
 
netmask 255.255.255.128
 
netmask 255.255.255.128
 
==== LVM ====
 
Nieuw logical volume
 
lvcreate -L <size> (1T) <name> /dev/dev-xen/
 
 
===== lvm =====
 
# pvcreate /dev/sda?
 
# pvdisplay
 
# pvscan
 
Creeer een logical volume
 
# vgcreate dev-xen /dev/sda? (Kan ook bij de install)
 
# vgdisplay
 
 
===== xen-tools =====
 
===== xen-tools =====
 
Zet de lvm in de xen-tools configuratie
 
Zet de lvm in de xen-tools configuratie
Line 193: Line 121:
 
reiser_options = defaults
 
reiser_options = defaults
 
serial_device = hvc0
 
serial_device = hvc0
  +
 
== Virtuele server (domU) ==
 
== Virtuele server (domU) ==
 
=== Bouwen van een virtuele server ===
 
=== Bouwen van een virtuele server ===
Line 201: Line 130:
 
extra = "clocksource=jiffies"
 
extra = "clocksource=jiffies"
 
Herstart de domU
 
Herstart de domU
  +
  +
= Troubleshooting =
  +
== Autostart domU na reboot dom0 ==
  +
Zet de automatisch te starten domeinen in /etc/xen/auto.
  +
== Memory issues ==
  +
How do I fix "xen_net: Memory squeeze in netback driver"? <br/>
  +
This error is caused by memory being dynamically allocated on the dom0 device on virtualized systems. It can be fixed by assigning a static amount of ram on the dom0. This procedure is specific for virtualized systems running the Xen platform.
  +
<pre>
  +
1. Edit /etc/grub.conf using your favorite editor.
  +
In the "kernel /versionnumberhere" line add the following to the end of the line: dom0_mem=512M
  +
An example would look like:
  +
kernel /xen.gz-2.6.18-128.1.10.el5 dom0_mem=512M
  +
2. Edit /etc/xen/xend-config.sxp and change the following:
  +
(dom0-min-mem 256) to:
  +
(dom0-min-mem=0)
  +
3. Lastly, reboot your dom0 device. This will completely fix the memory squeeze issue.
  +
</pre>
  +
# grub-install /dev/sda
  +
= Links =
  +
* http://wiki.xensource.com/xenwiki/XenNetworking
  +
* http://www.syneus.net/debian-xen-networking-vlan
  +
* http://renial.net/weblog/2007/02/27/xen-vlan
  +
* http://gathering.tweakers.net/forum/list_messages/1337353
  +
* http://openvswitch.org/?page_id=14
  +
* http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=blob_plain;f=INSTALL.bridge;hb=HEAD
  +
<hr>
  +
Terug naar: [[Webhuis bouwstenen]]
   
 
= Links =
 
= Links =
Line 210: Line 166:
 
* http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=blob_plain;f=INSTALL.bridge;hb=HEAD
 
* http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=blob_plain;f=INSTALL.bridge;hb=HEAD
 
<hr>
 
<hr>
Terug naar: [[Uwork bouwstenen]]
+
Terug naar: [[Webhuis bouwstenen]]

Latest revision as of 13:49, 4 November 2012

Fysieke server voor virtualisatie (dom0)

Hardware checks vooraf

Vaststellen of de processor 64 of 32 bit is:

# grep flags /proc/cpuinfo 
lm = Long Mode = 64 bits
Real Mode = 16 bits
Protected Mode = 32 bits

Vaststellen of de processor virtualisatie ondersteunt

# egrep ‘(vmx|svm)’ /proc/cpuinfo

Xen install

AMD-64

# apt-get install xen-linux-system-2.6.26-2-xen-amd64 xen-tools

Intel

i386

# apt-get install xen-linux-system-2.6.26-1-xen-686 xen-tools libvirt0 less xvnc4viewer bzip2 xenstore-utils xenwatch xen-utils-3.2-1
        xen-hypervisor-3.2-1-i386 xen-hypervisor-i386

Algemeen

apt-get install lvm2 xen-tools

xend-config.cfg

Configuratie voor dom0 met een enkele netwerkkaart.

#
#       Webhuis xen configuratie met network-bridge networkscript
#
(logfile /var/log/xen/xend.log)
(loglevel DEBUG)
(network-script network-bridge)
(vif-script vif-bridge)
(dom0-min-mem 196)
(dom0-cpus 0)
vnc-listen 

Xen opzetten

Network brideging
# vi /etc/xen/xend-config.sxp

In geval van een enkele ethernet kaart Comment out (network-script network-dummy) voeg toe:

(network-script network-bridge)

Xen multinic opzetten

De configuratie van een Xen host met meerdere netwerkkaarten is vanaf release 3.2 gewijzigd, oude configuraties werken niet meer. De juiste manier van configureren is moerlijk te vinden, het is vrij slecht gedocumenteerd.

Voor het opzetten van een multinic host is het noodzakelijk verschilende bestanden in samenhang te wijzigen.

  • /etc/modules
  • /etc/xen/scripts/network-multinic
  • /etc/xen/xend-config.sxp
  • /etc/network/interfaces

N.B. De machine is erg gevoelig voor fouten in de samenhang tussen deze machine. Een fout leidt er doorgaans toe dat het boot proces stopt, of dat de interfaces niet opkomen.

/etc/modules
loop max_loop=64
options netloop nloopbacks=255
/etc/xen/scripts/network-multinic

Plaats het script network-multinic in /etc/xen/scripts en zorgt ervoor dat het uitvoorbaar is:

#!/bin/sh
#
#       Webhuis network-multinic xen 3.2
#
dir=$(dirname "$0")
#/usr/bin/logger -t xend-network "network-bridge $* vifnum=0, vifnum=1"
"$dir/network-bridge" "$@" netdev=eth0 bridge=xen-br0 vifnum=0
"$dir/network-bridge" "$@" netdev=eth1 bridge=xen-br1 vifnum=1
/etc/xen/xend-config.sxp

Comment out (network-script network-dummy) voeg toe (network-script network-multinic)

#
#       Webhuis xen configuratie met multinic networkscript
#
(network-script network-multinic)
(vif-script vif-bridge)
(dom0-min-mem 196)
(dom0-cpus 0)
(vncpasswd )
/etc/network/interfaces

Het opvallende aan de inhoud van het bestand interfaces is dat de vertouwde aanduidingen voor de netwerkinterfaces eth0 en eth1 zijn vervangen door de namen van de bridges xen-br0 en xen-br1.

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
#
#       Webhuis xen netwerk configuratie voor xen dom0 multinic
#
# The loopback network interface
auto lo
iface lo inet loopback
#
# The external network interface
auto xen-br0
allow-hotplug xen-br0
iface xen-br0 inet dhcp
#
auto xen-br1
allow-hotplug xen-br1
iface xen-br1 inet static
       address 10.22.23.1
       netmask 255.255.255.128
xen-tools

Zet de lvm in de xen-tools configuratie

# vi /etc/xen-tools/xen-tools.conf
 lvm = dev-xen

Zorg voor een root password door uncomment van:

passwd = 1

Zorg voor console access door onderstaande regel toe te voegen:

serial_device = hvc0
xen-tools.conf
lvm = dev-xen
install-method = debootstrap
size   = 8Gb      # Disk image size.
memory = 128Mb    # Memory size
swap   = 128Mb    # Swap size
fs     = ext3     # use the EXT3 filesystem for the disk image.
dist   = lenny    # Default distribution to install.
image  = sparse   # Specify sparse vs. full disk images.
passwd = 1
kernel      = /boot/vmlinuz-`uname -r`
initrd      = /boot/initrd.img-`uname -r`
mirror = http://mirror.webhuis.nl:3142/ftp.us.debian.org/debian/
ext3_options   = noatime,nodiratime,errors=remount-ro
ext2_options   = noatime,nodiratime,errors=remount-ro
xfs_options    = defaults
reiser_options = defaults
serial_device = hvc0

Virtuele server (domU)

Bouwen van een virtuele server

xen-create-image --verbose --force --hostname=ips-vpn --ip=10.68.71.200 --netmask=255.255.255.240 --gateway=10.68.71.193 --size=8gb
                 --debootstrap --dist=lenny --mirror=http://mirror.webhuis.nl:3142/ftp.nl.debian.org/debian --role=udev

Aanpassen xmdomain.cfg: Voeg toe onder de memory parameter:

extra       = "clocksource=jiffies"

Herstart de domU

Troubleshooting

Autostart domU na reboot dom0

Zet de automatisch te starten domeinen in /etc/xen/auto.

Memory issues

How do I fix "xen_net: Memory squeeze in netback driver"?
This error is caused by memory being dynamically allocated on the dom0 device on virtualized systems. It can be fixed by assigning a static amount of ram on the dom0. This procedure is specific for virtualized systems running the Xen platform.

1. Edit /etc/grub.conf using your favorite editor.
   In the "kernel /versionnumberhere" line add the following to the end of the line: dom0_mem=512M
   An example would look like:
   kernel /xen.gz-2.6.18-128.1.10.el5 dom0_mem=512M
2. Edit /etc/xen/xend-config.sxp and change the following:
   (dom0-min-mem 256) to:
   (dom0-min-mem=0)
3. Lastly, reboot your dom0 device. This will completely fix the memory squeeze issue.
  1. grub-install /dev/sda

Links


Terug naar: Webhuis bouwstenen

Links


Terug naar: Webhuis bouwstenen