N’ayant pas Apache 2.2 mais la 2.0 sur le VServer qui héberge Typo, je ne peux utiliser proxy_balancer pour faire de la répartition de charge sur plusieurs serveurs Mongrel (le serveur utilisé pour l’application Typo).
Parmi les solutions, il existe pen, un petit programme qui permet de faire de la répartition HTTP ou SMTP, j’utiliserai donc celui-ci sur le serveur guest (VServer).
Si besoin, le chemin des applications téléchargées grâce à gem :
$ export PATH=$PATH:/var/lib/gems/1.8/bin/
Commande pour écouter sur le port 4000 et répartir sur 2 serveurs, chacun ayant son port (3001 et 3002 dans ce cas) :
$ pen -r -a -H 4000 192.168.1.150:3001 192.168.1.150:3002
Configuration de mongrel_rails (pour écoute débutant du port 3001 + 2 incréments) pour l’application cible (typo), se placer dans /var/www/typo (selon l’environnement) :
$ mongrel_rails cluster::configure -e production -p 3001 -N 2 -c /var/www/typo -a 192.168.1.150 --user www-data --group www-data
puis on le lance
$ mongrel_rails cluster::start
Une page qui explique en détail mongrel_cluster, notamment pour la mise en place du script de démarrage au boot du serveur (init.d).
Sur le serveur host qui joue le rôle de proxy, mise à jour de l’application Blog (typo)
$ cat /etc/apache2/site-enables/blog
<VirtualHost *:80>
ServerAdmin zorky00@gmail.com
ServerName blog.olivier-duval.info
ProxyPass / http://192.168.1.150:4000/
ProxyPassReverse / http://192.168.1.150:4000/
</VirtualHost>
$ /etc/init.d/apache force-reload
1 un exemple Apache 2.2 + mongrel + proxy_balancer
2 gem install mongrel mongrel_cluster—include-dependencies
3 config/mongrel_cluster.yml