# Définition de la fonction de génération des adresses macs à partir du numéro du VE
mac () {
# La racine commune de l'adresse MAC est fixee
mac="00:E1:00:01:"
# faire un controle sur la variable name (VEID du serveur)
if [ $1 -gt 100 ]
then
{
# Formater la variable name pour l'ajouter au reste de l'adresse MAC
mac0=$(echo $1 | sed 's/./&:/g');
mac0=$(echo $mac0 | sed 's/^\(.\{1\}\).\(.*\)$/\1\2/');
mac0=$(echo $mac0 | sed 's/^\(.\{4\}\).\(.*\)$/\1\2/');
# Ajouter le résultat obtenu a la racine de l'adresse MAC pour obtenir des adresses MAC completes
mac1=$(echo "$mac""$mac0""A");
mac2=$(echo "$mac""$mac0""B");
}
else
{
echo "Le nombre entre doit etre supérieur à 100";
return 0;
}
fi
};
# recuperation des variables a utiliser dans le script
echo "Entrer le numero de la machine virtuelle a creer s'il vous plait"
read name
echo "Entrer la taille de la machine virtuelle a creer s'il vous plait"
read taille
echo "Entrer le nom du groupe de volumes a utiliser s'il vous plait"
read grvol
echo "Entrer le nom de l'hote de la machine virtuelle a créer s'il vous plait"
read hostname
echo "Entrer l'adresse IP de la machine virtuelle a créer s'il vous plait"
read ipadd
echo "Entrer le nom du pont auquel la machine virtuelle sera ajoutée s'il vous plait"
read bridge
# verifier que le numéro entré est supérieur à 100
if [ $name -lt 100 ]
then
{
echo "le numero du serveur doit être supérieur a 100";
exit 0;
}
fi
# verifier que le volume logique a creer n'existe pas encore
if [ -e /dev/mapper/$grvol-$name ]
then
{
echo "le point de montage existe déja";
exit 0;
}
fi
# Creation d'un volume logique
echo "creation du volume logique"
lvcreate --size $taille --name $name $grvol
# Creation du système de fichier
echo "création du système de fichier"
mkfs.ext3 /dev/$grvol/$name
# Ecriture des bonnes lignes dans le fstab
echo "écriture des bonnes lignes dans le fstab"
echo ''/dev/mapper/$grvol-$name /var/lib/vz/vz_list/$name ext3 defaults,errors=remount-ro 0 2 '' >> /etc/fstab
# Creation du repertoire de montage
echo "creation du repertoire de montage"
mkdir /var/lib/vz/vz_list/$name
# Montage des volumes logiques créés
echo "montage"
mount -a
# Création de l'environnement virtuel
vzctl create $name --ostemplate debian-5.0-i386-minimal
# Specification du nom du serveur virtuel
echo "Specification du nom du serveur virtuel"
vzctl set $name --hostname $hostname --save
# Specification de l'adresse IP du serveur virtuel
echo "Specification de l'adresse IP du serveur virtuel"
# Specification de la bonne addresse IP dans le fichier /etc/network/interfaces
sed -i 's/address 81.91.236.16/address '$ipadd'/g' /var/lib/vz/vz_list/$name/private/etc/network/interfaces
# creation de l'interface veth de la machine virtuelle
# appel de la fonction de creation des adresses MACs et passage de paramètre
mac $name
# Attribution d'une adresse veth au VE
vzctl set $name --netif_add "eth0,$mac1,veth$name.0,$mac2,$bridge" --save
# demarrage de la machine virtuelle
vzctl start $name
ZAO/Cotonou/Modèles/OpenVz/script de d'installation (dernière édition le 2010-05-12 12:49:01 par FranckKouyami)