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

Aller à la navigation Aller à la recherche
m
 
(9 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 341 : Ligne 348 :
<pre>
<pre>
(vif-script vif-bridge)
(vif-script vif-bridge)
(network-script 'network-bridge bridge=br0')
</pre>
</pre>
après vos modifications, redémarrez le démon xend :
<pre>/etc/init.d/xend restart</pre>


Editez le fichier <code>/etc/network/interfaces</code> de cette façon :
Editez le fichier <code>/etc/network/interfaces</code> de cette façon :
<pre>
<pre>
auto lo
auto lo
iface lo inet loopback
iface lo inet loopback


auto xenbr0
auto br0
iface xenbr0 inet static
iface br0 inet static
         address 91.121.117.116
         address 91.121.117.116
         netmask 255.255.255.0
         netmask 255.255.255.0
Ligne 398 : 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 415 : Ligne 419 :
netmask    = 255.255.255.0
netmask    = 255.255.255.0
broadcast  = IP-du.dom0.255
broadcast  = IP-du.dom0.255
bridge = br0
</pre>
</pre>


Ligne 560 : 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 631 : 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 646 : Ligne 652 :
         echo $ip >> ${prefix}/etc/sshguard_whitelist
         echo $ip >> ${prefix}/etc/sshguard_whitelist
done
done
cp /etc/default/sshguard ${prefix}/etc/default/


#
#
Ligne 724 : 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 749 : 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 760 : 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 771 : 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