Differences between revisions 4 and 5
Revision 4 as of 2009-05-29 07:04:18
Size: 7887
Editor: BorisPapin
Comment:
Revision 5 as of 2009-05-29 07:05:04
Size: 7810
Editor: BorisPapin
Comment:
Deletions are marked like this. Additions are marked like this.
Line 146: Line 146:
Comment démarrer les services (les différentes machines virtuelles)
===================================================================
Comment démarrer les services
=============================

Passage en KVM (brouillon)

Introduction

Passage en KVM

Avant tout, passage en 100% Debian stable:

deb ftp://mir1.ovh.net/debian/ lenny main contrib non-free
deb-src ftp://mir1.ovh.net/debian/ lenny main contrib non-free
deb-src ftp://mir1.ovh.net/debian/ sid main contrib non-free
deb-src ftp://mir1.ovh.net/debian/ experimental main contrib non-free

deb http://security.debian.org/ lenny/updates main contrib non-free
deb-src http://security.debian.org/ lenny/updates main contrib non-free

deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free
deb-src http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free

Puis ajout du pont Ethernet à la place de l'interface physique en connexion Internet

auto br0
iface br0 inet static
        address 91.121.160.204
        netmask 255.255.255.0
        network 91.121.160.0
        broadcast 91.121.160.255
        gateway 91.121.160.254
        bridge_ports eth0
        bridge_fd 9
        bridge_hello 2
        bridge_maxage 12
        bridge_stp off

#auto eth0
#iface eth0 inet static
#       address 91.121.160.204
#       netmask 255.255.255.0
#       network 91.121.160.0
#       broadcast 91.121.160.255
#       gateway 91.121.160.254

Puis mise en place des switchs dans /etc/network/interfaces

auto vdeweb
iface vdeweb inet manual
   vde2-switch -

auto vdebd
iface vdebd inet manual
   vde2-switch -

MàJ kvm

apt-get -b source kvm kvm-source
m-a a-i -t kvm

Les démarreurs

Surtout pas oublier :

T0:23:respawn:/sbin/getty -L ttyS0 115200 vt100

dans /etc/inittab

arachnida

kvm \
-nographic -monitor pty -serial pty \
-kernel /vmlinuz -initrd /initrd.img \
-append "root=/dev/vda console=ttyS0" \
-drive file=system.img,index=0,media=disk,if=virtio,boot=on \
-drive file=swap.img,index=1,media=disk,if=virtio \
-net nic,vlan=0 -net vde,vlan=0,sock=/var/run/vde2/vdeweb.ctl \
-net nic,vlan=1 -net vde,vlan=1,sock=/var/run/vde2/vdebd.ctl

marsupilia

kvm \
-nographic -monitor pty -serial pty \
-kernel /vmlinuz -initrd /initrd.img \
-append "root=/dev/vda console=ttyS0" \
-drive file=system.img,index=0,media=disk,if=virtio,boot=on \
-drive file=swap.img,index=1,media=disk,if=virtio \
-net nic,vlan=0 -net vde,vlan=0,sock=/var/run/vde2/vdebd.ctl

shelob

kvm -nographic -monitor pty -serial pty \
-kernel /vmlinuz -initrd /initrd.img \
-append "root=/dev/vda console=ttyS0"  \
-drive file=lenny.img,index=0,media=disk,if=virtio,boot=on \
-net nic,vlan=0 -net vde,vlan=0,sock=/var/run/vde2/vdeop.ctl \
-net nic,vlan=1 -net vde,vlan=1,sock=/var/run/vde2/vdeweb.ctl

xena

kvm \
-nographic -monitor pty -serial pty \
-kernel /vmlinuz -initrd /initrd.img \
-append "root=/dev/vda console=ttyS0" \
-drive file=system.img,index=0,media=disk,if=virtio,boot=on \
-drive file=swap.img,index=1,media=disk,if=virtio \
-net nic,vlan=0 -net user,vlan=0 \
-redir tcp:80::80 -redir tcp:443::443 \
-redir tcp:2222::2222 \
-redir tcp:2221::22 \
-net nic,vlan=1 -net vde,vlan=1,sock=/var/run/vde2/vdeop.ctl

xenarthra

kvm \
-nographic -monitor pty -serial pty \
-kernel /vmlinuz -initrd /initrd.img \
-append "root=/dev/vda console=ttyS0" \
-drive file=system.img,index=0,media=disk,if=virtio,boot=on \
-drive file=swap.img,index=1,media=disk,if=virtio \
-net nic,vlan=0,macaddr=00:1c:c0:3b:19:f1 -net user,vlan=0 \
-redir tcp:53::53 -redir udp:53::53 \
-redir tcp:389::389 \
-redir tcp:2223::22

Des tests

sudo /usr/sbin/debootstrap lenny lenny-chroot ftp://mir1.ovh.net/debian/ sudo kvm -kernel /vmlinuz -initrd /initrd.img -drive file=lenny.img,index=0,media=disk,if=virtio,boot=on -append root=/dev/vda -redir tcp:6666::22 -net nic,model=virtio -net tap,script=/etc/kvm/kvm-ifup

Comment démarrer les services

il faut tout d'abord se connecter sur xavier:

$ ssh -l login xavier

Démarrer les machines virtuelles

Pour avoir la liste des machines qui tournent actuellement:

$ ps aux | grep kvm

$ cd /home/kvm

il y a un répertoire par machine contenant entre autres une image disque.

Pour démarrer un machine, se placer dans dans son répertoire et lancer le script. Par exemple pour xena:

$ cd /home/kvm/xena
$ sudo nohup ./xena.sh &

... penser a faire un sudo avant pour qu'il ne demande pas le mot de passe alors qu'on n'a plus la main !

L'esperluette (&) permet de lancer la tâche en tâche de fond.

La commande nohup permet de ne pas tuer une tâche de fond quand l'utilisateur se déconnecte. La sortie standard est alors redirigée vers le fichier nohup.out:

$ sudo cat nohup.out
char device redirected to /dev/pts/8
char device redirected to /dev/pts/9
qemu: loading initrd (0x5e0fea bytes) at 0x0000000007a0f000

Accéder à la console d'une machine virtuelle

Pour accéder à la console d'une des machines à partir de xavier, vérifier qu'un screen n'est pas déjà lancé

$ sudo screen -r

sinon on attache notre terminal au deuxième "char device" de la machine concernée (dans le fichier nohup.out)

$ sudo screen /dev/pts/9

La commande est commune à tous les super-utilisateurs et ne doit être effectuée qu'une seule fois.

Taper une touche pour activer la console, entrer le login/passwd de la machine

Pour détacher la console: CTRL+a+d

Configurer shelob en passerelle simple

Se connecter sur shelob via la console, puis activer la transmission:

# cat 1 > /proc/sys/net/ipv4/ip_forward

Mettre un alias pour l'ip de xena sur xavier

Sur xavier:

sudo ifconfig eth0:xena 87.98.159.1

Activer le tunnel ssh entre xena et arachnida

Pour pouvoir accéder directement à arachnida en ssh, il faut se connecter sur xena et créer le tunnel vers arachnida:

$ nohup ssh  -N -i .ssh/id_rsa-arachnida -L *:2222:localhost:22  arachnida &

Il faut être sûr que sa connection ssh est valide

On peut la tester avant et voir déventuelles erreurs:

$ ssh  -N -i .ssh/id_rsa-arachnida -L *:2222:localhost:22  arachnida

arachnida est maintenant accessible via le port 2222 de xena.servideo.org

Ce tunnel sert à tous les utilisateurs et ne doit être lancé qu'une seule fois.

Fichier de configuration pour ssh

Ajouter les lignes suivantes dans ~/.ssh/config sans oublier d'éditer les noms des IdentityFiles:

Host xavier
Port 22
Compression yes
HostName xavier.servideo.org
IdentityFile ~/.ssh/id_rsa-xavier

Host xena
Port 2221
Compression yes
HostName xena.servideo.org
IdentityFile ~/.ssh/id_rsa-xenarthra

Host arachnida
Port 2222
X11Forwarding yes
Compression yes
HostName xena.servideo.org
IdentityFile ~/.ssh/id_rsa-arachnida2

Host xenarthra
Port 2223
Compression yes
HostName xenarthra.servideo.org
IdentityFile ~/.ssh/id_rsa-xenarthra

Titre 1

Titre 1.1

Titre 1.1.1

Bla bla

Titre 2

blibli

SerWikiDeo: kvm (last edited 2011-07-13 21:15:26 by RomainChantereau)