Outils pour utilisateurs

Outils du site


brouillon_xen_32_64

Ceci est une ancienne révision du document !


Migration Xen 32 bit en Xen 64 bit

Soit une machine avec la configuration suivant:

  • RAID 1 ⇒ /boot
  • RAID 1 ⇒ LVM ⇒ xen 8G ⇒ /
  • Debian Etch
  • Xen 3.0… 32 bit

Le but: passer en Xen 64 bit , sous Lenny !

simulation

Afin de ne pas casser la machine en production, j'expérimente sur une autre machine.

Donc, installation de Etch a partir d'un cd… classique.

installer Xen

# aptitude install linux-image-xen-686 xen-hypervisor xen-linux-system-2.6.18-6-xen-686
# apt-get install xen-ioemu-3.0.3-1
# aptitude install xen-tools

Rebooter sous Xen.

Configurer le réseau, pour avoir:

# cat xend-config.sxp | egrep -v "^(#|$)"
(network-script 'network-bridge netdev=eth0 bridge=xenbr0')
(network-script network-dummy)
(vif-script vif-bridge)
(dom0-min-mem 196)
(dom0-cpus 0)

Et puis:

# /etc/init.d/xend restart
Restarting XEN control daemon: xend.

Ok?

winleft:/etc/xen# brctl show
bridge name     bridge id               STP enabled     interfaces
xenbr0          8000.feffffffffff       no              vif0.0
                                                        peth0
:!: il est possible que ca ne fonctionne pas… grrrrr

Recuperer tout la liste des paquets installé sur la source:

# dpkg --get-selections | grep install | grep -v linux-source > /tmp/selections.txt

Copier cela sur la machine de test:

$ scp ..../tmp/selections.txt .

Puis installation de tout les paquets!

# apt-get update
# cat selections.txt | dpkg --set-selections

Et puis:

# apt-get dselect-upgrade

Modifier /boot/grub/menu.lst afin d'avoir aussi:

# xenkopt=console=tty0 xencons=off

Et puis:

# update-grub

Reboot pour voir si tout va bien.

installer DomU

On tester quelques DomU en fonctionnement…

domu deja arreté

Sur la source:

# lvs --units k /dev/vgraid1/bindtest*
  LV            VG      Attr   LSize       Origin Snap%  Move Log Copy%
  bindtest      vgraid1 -wi-a- 4194304,00K
  bindtest_swap vgraid1 -wi-a-  262144,00K

Sur la machine de test:

# lvcreate -L 4194304K -n bindtest vgraid1
  Logical volume "bindtest" created
# lvcreate -L 262144K -n bindtest_swap vgraid1
  Logical volume "bindtest_swap" created

Toujours sur la machine de test:

# nc -lp 32767 | dd of=/dev/vgraid1/bindtest

(On est en attente sur le port 32767)

Puis sur la source:

# dd if=/dev/vgraid1/bindtest bs=4k | nc 192.168.0.52 32767

Toujours sur la source:

# mkswap /dev/vgraid1/bindtest_swap

Recuperer la configuration du “domU” :

# cd /etc/xen
# scp .../bindtest.cfg .

Adapter la configuration, si necessaire. Et puis:

# xm create bindtest.cfg -c

domu en plein vol

Aprés avoir créé les volumes (qui sont donc encore vierge).

Sur la source:

# xm save wwwcave wwwcave.save

Sur la destination:

# nc -lp 32767 | dd of=/dev/vgraid1/wwwcave

Sur la source:

# dd if=/dev/vgraid1/wwwcave bs=4k | nc 192.168.0.52 32767

Pareil pour le swap:

(source)# nc -lp 32767 | dd of=/dev/vgraid1/wwwcave_swap
(destination)# dd if=/dev/vgraid1/wwwcave_swap bs=4k | nc 192.168.0.52 32767

Puis transferer la sauvegarde et la configuration:

# cd /etc/xen
# scp .../etc/xen/wwwcave.cfg .
# scp .../etc/xen/wwwcave.save .

Et puis:

# xm restore wwwcave.save

domu sans arret

Recuperer un domu sans l'arreter, grace à lvm.

Sur la source:

# sync
# lvcreate -s -L 1G -n netcave_snap /dev/vgraid1/netcave

lenny 64 bit

Booter sur le CD d'installation de Debian 5.00 AMD64 …

On va installer ce nouveau système sur une nouvelle partition !
Et aprés, on reinstallera les services !

partitionnement

A ce moment, choisir le partionnement “manuel”.

  1. desactiver toutes les partitions swap
  2. creer une nouvelle partition (lvm) pour recevoir le systeme
  3. point de mountage: ext3 “/”
  4. creer aussi un swap (qui sera le seul actif, donc)
  5. raviver la partition “boot”, donc: point de montage, ext3 “/boot”
  6. ⇒ forcer l'effacement de cette partition (ça sera plus propre ensuite)

Poursuivre l'installation…

grub

A la fin, “grub” pose une question pour s'installer, moi j'ai dit:

(hd0)

et voila.

brouillon_xen_32_64.1238334302.txt.gz · Dernière modification : 2009/03/29 13:45 de thierry