23
jan 10
Posté dans Tutoriaux | Tags :Debian, OVH, Proxmox, serveur |
16 Commentaires »
Après quelques posts sur Proxmox qui dans l’ensemble ne rentraient pas tellement dans le vif du sujet, je vais ici vous expliquer comment faire un backup (dump) complet de vos machines virtuelles en mode snapshot.
Pourquoi le mode snapshot d’abord ? Pour savoir pourquoi il est mieux que les autres il faut savoir ce qui existe comme autre mode de backup et quels sont leurs particularités. En fait en tout il y a 3 modes de dump. Le premier, simple à comprendre est le mode « stop ». Il fait un « tar » de votre machine qui est à l’arrêt. Rien de plus simple ! Le second est le mode « suspend ». Il n’arrête pas complètement votre VM pendant la sauvegarde mais l’arrête quand même. Ce qui à la fin du mois fait que votre VM est down 20 minutes si vous faites un backup par jour. Ce qui est pas un problème si c’est sur un serveur perso. Mais si dessus vous avez un SLA, le client risque de venir gueuler. Pour les connaisseur « suspend » utilise simplement la commande rsync.
Le troisième mode est le mode snapshot. Et c’est le mieux ! Il permet de faire une sauvegarde complète de votre machine virtuelle en fonctionnement sans l’arrêter. Le problème est que le mode snapshot doit obligatoirement se faire sur des partitions en LVM. En fait ce mode utilise simplement une particularité du LVM, qui est, je vous le donne en mille émile, les snapshots.
Ce qui suit est une explication assez simple de comment créer des partitions LVM à l’installation de votre machine en passant par le manager d’OVH. L’idée finale est d’avoir ça :

Je m’explique. La partition 1 est la partition qui aura votre système. 10Go c’est suffisant. Sauf si vous êtes sur Windows…La partition 2 c’est la swap. 2Go c’est une habitude. De toute façon on a tellement de Ram maintenant que la swap est très rarement utilisée. La partition 3 est une partition LVM qui va comprendre toutes les données de Proxmox. En effet tout est stocké dans /vz (qui est la même chose que /var/lib/vz). La partition 4 est aussi une partition LVM qui va vous permettre de faire vos dumps entre la partition 3 et celle ci. La partition 5 faite là , je vous explique quelques lignes après à quoi elle sert.
Maintenant que vous avez votre partitionnement fait. Lancez l’installation.
Je vais donc vous expliquer à quoi sert cette partition 5. En fait ce post le fait mieux. Mais je vais quand même faire rapidement un résumé. Pour faire la copie des données entre la partition 3 et 4 il faut un espèce de cache. Dans le post c’est noté qu’il faut 512Mo de place. J’ai testé mais vzdump me demande 1024Mo. Dans un esprit de « je prends large on sait jamais » j’ai mis 2Go…
De toute façon une fois votre système installé vous avez juste à faire ça :
umount /var/freespace
lvremove /dev/pve/freespace
Maintenant vous pouvez tester, le mode snapshot de vzdump marche. Et c’est magnifique ! Je dis ça parce que j’en ai particulièrement chier pour le faire marcher (2 jours c’est long ?).
Petit test :
et dans /vz/dump vous avez le dump de votre VM 101. Et n’oubliez pas de mettre d’autres options à vzdump. Comme –mailto et –compress.
Bonnes sauvegardes !
20
jan 10
Posté dans Tutoriaux | Tags :Debian, OpenVZ, Proxmox, serveur |
3 Commentaires »
Quand on utilise un système de virtualisation pour héberger des serveurs, à un moment donné il faut migrer les VM sur un autre serveur physique. La virtualisation doit permettre un down du serveur minime et une administration faible. Je vais donc vous expliquer comment faire avec Proxmox.
La première étape est d’avoir au moins 2 machines. Sous Proxmox c’est assez simple. Je ne vais pas vous refaire toute la documentation officielle du site. Il suffit d’aller ici : Cluster Proxmox
N’oubliez pas que votre nouveau serveur est votre Master dans le cluster. Sauf si vous comptez garder vos 2 serveurs.
Une fois votre cluster opérationnel, il suffit d’aller dans la liste de vos machines virtuelles et de simplement cliquer sur « Migrate ». Selectionnez ensuite vers quelle machine physique vous voulez réaliser l’opération et il ne vous reste plus qu’à attendre. D’après mon expérience, comptez 1h d’attente pour 50Go de données.

Une fois que la migration physique est faite, il va falloir re-router l’ip de vos VM vers votre nouvelle machine (là débrouillez-vous !). Ensuite tout est beau et magnifique. Vous pouvez maintenant profiter de la vie et plus faire des réinstallations en série. Elle est pas belle la vie ?!!
4
juil 09
Posté dans Tutoriaux | Tags :Debian, Django, Nginx, Python, serveur |
6 Commentaires »
Après PHP et Ruby On Rails sur Nginx, on s’attaque maintenant au Python et a son formidable framework qu’est Django. Et je peux vous le dire tout de suite, un serveur comme Nginx avec la stabilité de Python font qu’avec ces technologies vous pouvez aller loin, très loin niveau performance !
Pour information, je suis monté à plus de 500 pages servies par seconde (d’un blog sous Django) en utilisant moins de 100Mo de Ram (pour les processus Python) et 20% d’un CPU Core2Duo E7200. Plutôt pas mal ! La même chose avec Apache et PHP et vous voilà avec un serveur down :/
Dans un premier temps il faut installer Python/Django sur votre serveur. Vous pouvez suivre ce que dit le site officiel (ce que j’ai fait) ou l’installer via:
apt-get install python-django
Si vous avez pas ce qu’il faut d’installé, apt devrait vous proposer de le faire
Maintenant configurons Python en FastCGI.
Pour lancer un serveur python pour voir votre projet Django il faut aller dans le dossier de votre projet et lancer le fameux serveur
apt-get install python-flup
cd /var/www/projet_django
python manage.py runfcgi method=prefork host=127.0.0.1 port=8000 pidfile=/var/run/projet_django.pid
Lire la suite »
26
avr 09
Posté dans Tutoriaux | Tags :Debian, Nginx, PHP, serveur |
15 Commentaires »
J’avais parlé il y a quelques temps de mon choix de passer sur Nginx. On m’a alors souvent demandé comment installer Nginx avec PHP. C’est vrai que c’est légèrement plus compliqué que sur Apache2. Mais que voulez-vous. On a rien sans rien !
Bien que le wiki officiel soit très bien fourni en documentation (en anglais) voici comment installer Nginx avec PHP5 en Fact-CGI via spawn-fcgi.
La première chose est d’avoir Debian (Lenny pour ce tuto) à jour.
Installation d’Nginx :
apt-get install nginx
/etc/init.d/nginx restart
Maintenant en allant sur l’ip de votre serveur vous devriez voir un beau « Welcome to nginx ! ». Donc Nginx est installé et opérationnel sur votre serveur. Maintenant installons et faisons marcher PHP5.
Lire la suite »
19
avr 09
Posté dans Tutoriaux | Tags :Debian, Linux, Mongrel, Nginx, Rails |
3 Commentaires »
Tout ce qui va suivre implique que vous connaissiez un minimum Nginx et que vous l’utilisiez déjà en frontal et non pas en proxy.
Pour avoir Ruby On Rails sur Linux (Debian ici) il va falloir installer un serveur web qui le gère. Mon choix s’est porté sur Mongrel car il est le plus rapide. Et devient encore plus rapide avec Nginx en frontal (on parle de plus de 60% plus rapide !).
Installation de Mongrel, Rails et Ruby :
gem install mongrel
gem install rails
apt-get install ruby
(si vous avez pas gem, un apt-get install gem devrait suffire !)
Ensuite allez à l’endroit où votre projet Rails se trouvera.
cd /var/www/rails
rails nom_du_projet
Vous avez maintenant un projet Ruby On Rails dans /var/www/rails. Il faut maintenant configurer Nginx et Mongrel pour que vous puissiez y avoir accès.
Mongrel :
cd /var/www/rails/nom_du_projet
mongrel_rails start -d -p 3000 --prefix=/nom_du_projet
Ici le serveur Mongrel démarre en Daemon (-d) sur le port 3000 (-p 3000) et avec le prefix de votre projet.
Maintenant si vous tapez xx.xx.xx.xx:3000/nom_du_projet (où xx.xx.xx.xx est l’ip du serveur) vous devrez avoir une belle page de Ruby On Rails vous disant que tout marche. Il va maintenant falloir configurer Nginx.
Nginx :
Dans votre Virtual Host ajoutez :
server {
listen 80;
server_name votre_nom_de_domaine.com;
access_log /chemin_vers_les_logs_access.log;
error_log /chemin_vers_les_logs_error.log;
location / {
root /var/www/rails/;
index index.html;
}
location /nom_du_projet {
proxy_pass http://localhost:3000;
}
}
Maintenant si vous allez sur votre nom de domaine (ou sous domaine) vous devriez avoir la même page de Ruby On Rails que précédemment. Il vous reste plus qu’à coder