« L'hyperviseur Xen sous Debian Wheezy » : différence entre les versions

Aller à la navigation Aller à la recherche
m
 
(4 versions intermédiaires par le même utilisateur non affichées)
Ligne 162 : Ligne 162 :
<pre>
<pre>
$ mount /dev/sda1 /mnt
$ mount /dev/sda1 /mnt
$ debootstrap --arch=amd64 squeeze /mnt
$ debootstrap --arch=amd64 wheezy /mnt
...
...
I: Base system installed successfully
I: Base system installed successfully
Ligne 179 : Ligne 179 :
Editez le fichier <code>/etc/apt/sources.list</code> :
Editez le fichier <code>/etc/apt/sources.list</code> :
<pre>
<pre>
deb http://ftp.fr.debian.org/debian squeeze main contrib non-free
deb http://ftp.fr.debian.org/debian wheezy main contrib non-free
deb-src http://ftp.fr.debian.org/debian squeeze main contrib non-free
deb-src http://ftp.fr.debian.org/debian wheezy main contrib non-free


#Sec
#Sec
deb http://security.debian.org/ squeeze/updates main contrib non-free
deb http://security.debian.org/ wheezy/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ wheezy/updates main contrib non-free


#anciennement debian-volatile
#anciennement debian-volatile
deb http://ftp.fr.debian.org/debian squeeze-updates main contrib non-free
deb http://ftp.fr.debian.org/debian wheezy-updates main contrib non-free
deb-src http://ftp.fr.debian.org/debian squeeze-updates main contrib non-free
deb-src http://ftp.fr.debian.org/debian wheezy-updates main contrib non-free
</pre>
</pre>


Ligne 332 : Ligne 332 :


Il faut bien évidemment rebooter pour appliquer ces paramètres.
Il faut bien évidemment rebooter pour appliquer ces paramètres.
==Forcer l'arrêt des VMs (shutdown) lors du reboot de xen==
Par défaut, si l'hyperviseur reboot, Xen sauvegarde l'état des VMs plutôt que de les shutdown proprement. Si vous voulez vous affranchir de ce comportement, modifiez <code>/etc/default/xendomains</code> :
<pre>
XENDOMAINS_RESTORE=false
XENDOMAINS_SAVE=""
</pre>


=Configuration réseau=
=Configuration réseau=
Ligne 395 : Ligne 402 :
=Configuration de Xen-Tools pour créer automatiquement des machines virtuelles debian=
=Configuration de Xen-Tools pour créer automatiquement des machines virtuelles debian=


Par défaut sous debian squeeze, le fichier <code>/etc/xen-tools/xen-tools.conf</code> est adapté à la création de VMs debian squeeze.
Par défaut sous debian wheezy, le fichier <code>/etc/xen-tools/xen-tools.conf</code> est adapté à la création de VMs debian wheezy.


Notre configuration permettra :
Notre configuration permettra :
* de créer les partitions des VMs sur le LVM
* de créer les partitions des VMs sur le LVM
* d'utiliser debootstrap pour créer des VMs vierges sous debian squeeze
* d'utiliser debootstrap pour créer des VMs vierges sous debian wheezy
* de configurer automatiquement l'ip sur la VM
* de configurer automatiquement l'ip sur la VM


Ligne 558 : Ligne 565 :
#
#
#
#
installDebianPackage ${prefix} locales #already installed in debian-squeeze domU
installDebianPackage ${prefix} locales #already installed in debian-wheezy domU
installDebianPackage ${prefix} ntp
installDebianPackage ${prefix} ntp
installDebianPackage ${prefix} console-data
installDebianPackage ${prefix} console-data
Ligne 629 : Ligne 636 :
         echo up route add default gw $gateway >> ${prefix}/etc/network/interfaces
         echo up route add default gw $gateway >> ${prefix}/etc/network/interfaces
fi
fi
sed -i -e 's/gateway/#gateway/g' ${prefix}/etc/network/interfaces


#
#
Ligne 723 : Ligne 731 :
Commencez par éditer le fichier <code>/etc/network/interfaces</code>
Commencez par éditer le fichier <code>/etc/network/interfaces</code>
<pre>
<pre>
auto dummy0
auto br1
iface dummy0 inet static
iface br1 inet static
         address 172.16.16.1
         address 192.168.10.1
         broadcast 172.16.16.255
         broadcast 192.168.10.255
         netmask 255.255.255.0
         netmask 255.255.255.0
        bridge_ports none
</pre>
</pre>


Puis activez l'interface :
Puis activez l'interface :
<pre>ifup dummy0</pre>
<pre>ifup br1</pre>


Créez ensuite le fichier <code>/etc/xen/scripts/my-network-bridge</code> contenant :
Créez ensuite le fichier <code>/etc/xen/scripts/my-network-bridge</code> contenant :
<pre>
<pre>
#!/bin/sh
#!/bin/sh
/etc/xen/scripts/network-bridge "$@" netdev=eth0
/etc/xen/scripts/network-bridge "$@" netdev=br0
/etc/xen/scripts/network-bridge "$@" netdev=dummy0
/etc/xen/scripts/network-bridge "$@" netdev=br1
</pre>
</pre>


Ligne 748 : Ligne 757 :
Ce script aura comme conséquence :
Ce script aura comme conséquence :
* créer le bridge classique de xen (celui qui était lancé par <code>(network-script network-bridge)</code>
* créer le bridge classique de xen (celui qui était lancé par <code>(network-script network-bridge)</code>
* créer le bridge dummy0 pour notre interface interne
* créer le bridge br0 pour notre interface interne


Il faut ensuite relancer xend :
Il faut ensuite relancer xend :
Ligne 759 : Ligne 768 :
Par exemple pour la vm <code>vm1.domain.tld</code> éditez le fichier <code>/etc/xen/vm1.domain.tld.cfg</code>. Modifiez la ligne <code>vif</code> de cette manière :
Par exemple pour la vm <code>vm1.domain.tld</code> éditez le fichier <code>/etc/xen/vm1.domain.tld.cfg</code>. Modifiez la ligne <code>vif</code> de cette manière :
<pre>
<pre>
vif  = [ 'ip=192.168.0.1,bridge=eth0,mac=00:16:3E:A3:F1:5A','ip=172.16.16.2,bridge=dummy0,mac=00:16:3E:A3:F1:07' ]
vif  = [ 'ip=192.168.0.1,bridge=br0,mac=00:16:3E:A3:F1:5A','ip=172.16.16.2,bridge=br1,mac=00:16:3E:A3:F1:07' ]
</pre>
</pre>


Après redémarrage, la VM aura désormais deux interfaces réseaux :
Après redémarrage, la VM aura désormais deux interfaces réseaux :
* eth0 bridgé sur l'interface eth0 du dom0 (le réseau public)
* eth0 bridgé sur l'interface br0 du dom0 (le réseau public)
* eth1 bridge sur l'interface dummy0 du dom0 (le réseau interne)
* eth1 bridge sur l'interface br1 du dom0 (le réseau interne)


Si votre VM est sous debian, il faudra ajouter la configuration de eth1 dans <code>/etc/network/interfaces</code> (sur la vm!) :
Si votre VM est sous debian, il faudra ajouter la configuration de eth1 dans <code>/etc/network/interfaces</code> (sur la vm!) :
Ligne 770 : Ligne 779 :
auto eth1
auto eth1
iface eth1 inet static
iface eth1 inet static
  address 172.16.16.2
  address 192.168.10.2
  netmask 255.255.255.0
  netmask 255.255.255.0
</pre>
</pre>
4 203

modifications

Menu de navigation