8976
Commentaire:
|
← Version 29 à la date du 2010-05-12 12:48:11 ⇥
4950
|
Texte supprimé. | Texte ajouté. |
Ligne 8: | Ligne 8: |
* Faire un template | * Faire un [[/joli template]] |
Ligne 24: | Ligne 24: |
|| Hébergement cnfc || bj.refer.org || 81.91.236.2 (sur mail-cotonou) || web.bj.refer.org || 81.91.236.6 || Openvz || || Hébergement partenaire || *.bj.refer.org || 81.91.236.2 (sur mail-cotonou) || friends.bj.refer.org || 81.91.236.7 || Openvz || || Hébergement temporaire || temporaire.bj.refer.org || 81.91.236.2 (sur mail-cotonou) || temp.bj.refer.org || 81.91.236.8 || Openvz || || Mysql || bj.refer.org || 81.91.236.2 (sur mail-cotonou) || mysql.bj.refer.org || 81.91.236.9 || Openvz || || Mysql test || bj.refer.org || 81.91.236.2 (sur mail-cotonou) || mysql-test.bj.refer.org || 81.91.236.10 || Openvz || || Voip || voip.bj.refer.org || 81.91.236.1 (nat sur le serveur interne) || voip.bj.refer.org || 81.91.236.11 || Openvz || |
|| Hébergement cnfc || bj.refer.org || 81.91.236.2 (sur mail-cotonou) || web.bj.refer.org || 81.91.236.6 || Openvz FAIT!! :-) || || Hébergement partenaire || *.bj.refer.org || 81.91.236.2 (sur mail-cotonou) || friends.bj.refer.org || 81.91.236.7 || Openvz FAIT!! :-) || || Hébergement temporaire || temporaire.bj.refer.org || 81.91.236.2 (sur mail-cotonou) || temp.bj.refer.org || 81.91.236.8 || Openvz FAIT!! :-) || || Mysql || bj.refer.org || 81.91.236.2 (sur mail-cotonou) || mysql.bj.refer.org || 81.91.236.9 || Openvz FAIT!! :-) || || Mysql friends || bj.refer.org || 81.91.236.2 (sur mail-cotonou) || mysql-friends.bj.refer.org || 81.91.236.10 || Finalement, je sépare les serveurs mysql || || Voip || voip.bj.refer.org || 81.91.236.1 (nat sur le serveur interne) || voip.bj.refer.org || 81.91.236.11 || Openvz PRESQUE FAIT!! :-) || |
Ligne 31: | Ligne 31: |
|| Outils de monitoring || admin.bj.refer.org || Nouveau|| admin.bj.refer.org || 81.91.236.14 || Openvz FAIT :-) || || Webdav || NA || Nouveau|| admin.bj.refer.org || 81.91.236.15 || Openvz FAIT :-) || |
|
Ligne 54: | Ligne 56: |
=== Quelques valeurs par défauts chez nous === {{{ # UBC parameters (in form of barrier:limit) KMEMSIZE="16384000:18022400" LOCKEDPAGES="4096:4096" PRIVVMPAGES="262144:292912" SHMPAGES="131072:131072" NUMPROC="400:400" PHYSPAGES="0:2147483647" VMGUARPAGES="102400:2147483647" OOMGUARPAGES="102400:2147483647" NUMTCPSOCK="500:500" NUMFLOCK="200:220" NUMPTY="64:64" NUMSIGINFO="512:512" TCPSNDBUF="5365760:10485760" TCPRCVBUF="5365760:10385760" OTHERSOCKBUF="1506232:4063232" DGRAMRCVBUF="262144:262144" NUMOTHERSOCK="500:500" DCACHESIZE="4194304:4317184" NUMFILE="8192:9312" AVNUMPROC="200:280" NUMIPTENT="128:128" }}} |
|
Ligne 55: | Ligne 82: |
Ben, c'est un template etch standard avec installé par défaut des outils comme vim, wget, nscd, logcheck, logrotate, ssh, etc. On y ajoute le resolver par defaut à 81.91.236.2. | Ben, c'est un template --(etch)-- Lenny standard avec installé par défaut des outils comme vim, wget, nscd, logcheck, logrotate, ssh, etc. On y ajoute le resolver par defaut à 81.91.236.2. |
Ligne 58: | Ligne 85: |
{{{ #! /bin/bash |
!!! Le [[/script de d'installation]] est en cours de réécriture en suivant les commandes standards livrées avec openvz !!! |
Ligne 61: | Ligne 88: |
# Définition de la fonction de génération des adresses macs à partir du numéro du VE | == Script de suppression == [[/Script de suppression]] pour supprimer automatiquement et démonter des VE |
Ligne 63: | Ligne 91: |
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-4.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.7/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 |
== A savoir == Depuis vzctl version 3.0.23, il est possible de nommer directement les CT (ex-VE) et de l'utiliser pour faire les appels. Il suffit de lancer la commande suivante : {{{ vzctl set $CTID --name nom_du_CT --save |
Ligne 165: | Ligne 97: |
= Mise à jour des VE = J'ai fait un joli [[/script de mise a jour]]. |
|
Ligne 166: | Ligne 100: |
* Faire le script de suppression d'une VE (en cours) |
Virtualisation de serveur
Sommaire
L'arrivée du nouveau serveur m'a permis de passer avec l'aide de Stéphanie Glèlè (Stagiaire au CNF de Cotonou), à la mise en place d'OpenVZ ainsi qu'à l'automatisation de certaines tâches (le plus possible). Les avancées sont à suivre ici à la semaine près :-D.
Initialisation
- Installer openvz
Faire un /joli template
- Mettre à jour les paramêtres
Plan d'adressage
Changement d'adresses
nfs-cotonou passe de 81.91.236.4 à 81.91.236.14
OpenVZ devient 81.91.236.3
Nouvelles entrées
Service |
Ancien FQDN |
Ancien IP hôte |
Nouveau FQDN |
Nouvel IP |
Remarques ??? |
DNS |
ns.bj.refer.org |
81.91.236.2 (sur mail-cotonou) |
ns.bj.refer.org |
81.91.236.2 |
Reste sur son serveur actuel en attendant |
Proxy squid |
cnfc.bj.refer.org |
81.91.236.4 (sur nfs-cotonou) |
proxy.bj.refer.org |
81.91.236.4 |
Openvz |
mx.bj.refer.org |
81.91.236.2 (sur mail-cotonou) |
mail-cotonou.bj.refer.org |
81.91.236.2 |
Reste sur son serveur actuel en attendant |
|
Hébergement cnfc |
bj.refer.org |
81.91.236.2 (sur mail-cotonou) |
web.bj.refer.org |
81.91.236.6 |
Openvz FAIT!! |
Hébergement partenaire |
*.bj.refer.org |
81.91.236.2 (sur mail-cotonou) |
friends.bj.refer.org |
81.91.236.7 |
Openvz FAIT!! |
Hébergement temporaire |
temporaire.bj.refer.org |
81.91.236.2 (sur mail-cotonou) |
temp.bj.refer.org |
81.91.236.8 |
Openvz FAIT!! |
Mysql |
bj.refer.org |
81.91.236.2 (sur mail-cotonou) |
mysql.bj.refer.org |
81.91.236.9 |
Openvz FAIT!! |
Mysql friends |
bj.refer.org |
81.91.236.2 (sur mail-cotonou) |
mysql-friends.bj.refer.org |
81.91.236.10 |
Finalement, je sépare les serveurs mysql |
Voip |
voip.bj.refer.org |
81.91.236.1 (nat sur le serveur interne) |
voip.bj.refer.org |
81.91.236.11 |
Openvz PRESQUE FAIT!! |
Mirroir débian/Ubuntu |
debian/ubuntu.bj.refer.org |
81.91.236.4 (sur nfs-cotonou) |
debian/ubuntu.bj.refer.org |
81.91.236.13 |
Openvz |
Outils de monitoring |
admin.bj.refer.org |
Nouveau |
admin.bj.refer.org |
81.91.236.14 |
Openvz FAIT |
Webdav |
NA |
Nouveau |
admin.bj.refer.org |
81.91.236.15 |
Openvz FAIT |
Spécificités du CNFC
Espace disque
On a décidé de créer un volume logique pour chaque VE. Ensuite; cela permet de contrôler l'espace en plus des options internes d'OpenVZ.Donc pour ce faire on a du lvm sur du raid1 (question de redondance imédiate) sur les deux disques durs de la machine. On crée tous les lv dans le VG sys en attendant d'avoir les nouveaux disques pour séparer plus finement la configuration.
A la date du 04/02/2009 on avait :
openvz:~# vgdisplay --- Volume group --- VG Name sys System ID Format lvm2 ... Alloc PE / Size 7584 / 29,62 GB Free PE / Size 111528 / 435,66 GB
dans lequel on loge les Volumes Logiques (VL) des VEs.
Adressage Mac
On utilise une racine commune pour toutes les interfaces des VEs. Avec une base de la forme "00:E1:00:01:" et un numéro de VE de la forme XXX, cela donne : "00:E1:00:01:XX:XA" pour l'interface eth0 de la VE et "00:E1:00:01:XX:XB" pour la VETHXXX de l'hôte.
Quelques valeurs par défauts chez nous
# UBC parameters (in form of barrier:limit) KMEMSIZE="16384000:18022400" LOCKEDPAGES="4096:4096" PRIVVMPAGES="262144:292912" SHMPAGES="131072:131072" NUMPROC="400:400" PHYSPAGES="0:2147483647" VMGUARPAGES="102400:2147483647" OOMGUARPAGES="102400:2147483647" NUMTCPSOCK="500:500" NUMFLOCK="200:220" NUMPTY="64:64" NUMSIGINFO="512:512" TCPSNDBUF="5365760:10485760" TCPRCVBUF="5365760:10385760" OTHERSOCKBUF="1506232:4063232" DGRAMRCVBUF="262144:262144" NUMOTHERSOCK="500:500" DCACHESIZE="4194304:4317184" NUMFILE="8192:9312" AVNUMPROC="200:280" NUMIPTENT="128:128"
Le template
Ben, c'est un template etch Lenny standard avec installé par défaut des outils comme vim, wget, nscd, logcheck, logrotate, ssh, etc. On y ajoute le resolver par defaut à 81.91.236.2.
Script de création
!!! Le /script de d'installation est en cours de réécriture en suivant les commandes standards livrées avec openvz !!!
Script de suppression
/Script de suppression pour supprimer automatiquement et démonter des VE
A savoir
Depuis vzctl version 3.0.23, il est possible de nommer directement les CT (ex-VE) et de l'utiliser pour faire les appels. Il suffit de lancer la commande suivante :
vzctl set $CTID --name nom_du_CT --save
Mise à jour des VE
J'ai fait un joli /script de mise a jour.
Todo list
- Faire le script de surveillance des VEs (en projet)
- Faire des fonctions dans des fichiers différents