OpenVZ
OpenVZ à ma sauce, récupéré d'un peu partout, mais ici pour aller plus vite. Nécessite quand même d'avoir lu cette page: OpenVZ , ainsi que les différents sites qui y sont en liens.
# cat /etc/apt/sources.list deb http://miroirs.refer.ga/etch etch main deb http://miroirs.refer.ga/etch-security etch/updates main deb http://security.debian.org/ etch/updates main deb http://download.openvz.org/debian etch main deb http://debian.systs.org/ etch main openvz
Pour la clef de debian.systs.org
$ wget http://debian.systs.org/dso_archiv_signing_key.asc $ apt-key add dso_archiv_signing_key.asc
- Installer le noyau linux-image-2.6.18-openvz-XXX
- Installer vzctl et vzquota
- Redémarrage - ok
Création image Debian
- debootstrap
debootstrap --arch i386 etch /var/lib/vz/template/debian-etch/ http://mon-beau-miroir.bn/etch/
- configurer dans debian-etch :
- le miroir debian
- à completer
- et dans le répertoire debian-etch; tar -cvvzf /var/lib/vz/template/cache/debian-etch.tar.gz .
Création d'un serveur virtuel et montage des partitions
- man vzctl allez hop.
- créer les partitions sur un volume LVM
- création de racine, var, et tout ce dont on a besoin.
formater les partitions en ext3, les monter, y déplacer les fichiers : /var/lib/vz/private/XXX/
modifier /etc/fstab, monter la partiton racine seulement au démarrage dans /var/lib/vz/private/XXX/
- créer deux scripts :
/etc/vz/conf/XXX.mount :
-#!/bin/bash mount -o noatime,data=writeback /dev/mapper/hdd-webvar /var/lib/vz/root/201/var mount -o noatime,data=writeback /dev/mapper/hdd-websrv /var/lib/vz/root/201/srv
/etc/vz/conf/XXX.umount :
-#!/bin/bash if mount|grep -q /dev/mapper/hdd-websrv ; then umount /dev/mapper/hdd-websrv fi if mount|grep -q /dev/mapper/hdd-webvar ; then umount /dev/mapper/hdd-webvar fi
/etc/vz/conf/XXX.conf : y remplacer ces lignes
# Disk quota parameters (in form of softlimit:hardlimit) #DISKSPACE="1048576:1153434" #DISKINODES="200000:220000" DISK_QUOTA=no QUOTATIME="0"
- brctl show pour vérifier
- Interface réseau; prévoir deux interfaces, une sur le réseau publique, une côté privée
Installer bridge-utils
- if_forward à zéro
/etc/network/interfaces
auto vz0 iface vz0 inet manual bridge_ports eth0 bridge_stp off bridge_fd 1 bridge_maxwait 0 auto vz1 iface vz1 inet static address 192.168.201.15 netmask 255.255.255.0 network 192.168.201.0 broadcast 192.168.201.255 gateway 192.168.201.1 bridge_ports eth2 bridge_stp off bridge_fd 1 bridge_maxwait 0
/etc/vz/vznet.conf
EXTERNAL_SCRIPT=/usr/local/sbin/vzaddbr
/usr/local/sbin/vzaddbr
-#!/bin/bash eth=$3 if [ $eth = "veth113.0" ] ; then BRIDGE=vz1 elif [ $eth = "veth115.0" ] ; then BRIDGE=vz1 else BRIDGE=vz0 fi ifconfig $eth up brctl addif $BRIDGE $eth
Pour des VEID 113 et 115 par exemple sur le réseau privé 201.0/24, le reste étant sur le réseau publique.Configurer une interface virtuelle :
$ vzctl set XXX --netif_add "eth0,00:15:00:00:11:3A,veth113.0,00:15:00:00:11:3B" --save
/!\ Des adresses MAC différentes et supérieures à l'adresse MAC de la "vraie" interface.- entrer dans le serveur XXX, y configurer l'interface eth0, ajouter un utilisateur, et les différents services
comptez les haricots!