Installation automatique de NGinx, PHP-FPM, MemCached sous Debian

Au début du mois nous avons vu ensemble l'installation d'un serveur NGinx sous Ubuntu. Sous Debian,  il faut mettre un peu plus les mains dans le cambouis, en effet les dépôts officiels ne contiennent que la vieille version 0.6.

J'ai donc développé un petit script shell pour automatiser l'installation d'un serveur Web rapide, léger et performant sous une Debian Lenny. Ce script va effectuer les choses suivantes:

Il est bien sûr possible d'adapter ce script à vos besoins et de l'utiliser comme bon vous semble. Si vous rencontrez des erreurs ou que vous avez en tête des améliorations possibles, merci de laisser un commentaire en bas de ce billet.

Récupération du script

Le script est disponible ici:

NGinxAutoInstall.sh

Vous pouvez également faire ces actions en ligne de commande dans un terminal:

wget http://svn.nicolargo.com/debianpostinstall/trunk/nginxautoinstall.sh

Il faut ensuite le rendre exécutable:

chmod a+x ./nginxautoinstall.sh

Lancement du script

Il faut lancer le script en root (droit d'administration):

su - -c "./nginxautoinstall.sh"

A la fin du script, vous devriez voir le message suivant:

--------------------------------------

NGinx + PHP5-FPM installation finished

--------------------------------------

NGinx configuration folder: /etc/nginx

NGinx default site configuration: /etc/nginx/sites-enabled/default-site

NGinx default HTML root: /var/www

If you use IpTables add the following rules:

iptables -A INPUT -i lo -s localhost -d localhost -j ACCEPT

iptables -A OUTPUT -o lo -s localhost -d localhost -j ACCEPT

iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

iptables -A INPUT -p tcp --dport http -j ACCEPT

--------------------------------------

Validation et test de performances

Votre serveur est maintenant opérationnel, il vous reste à mettre vos page HTML et scripts PHP dans le répertoire /var/www et tester le tout en entrant l'URL suivante dans un navigateur Web: http://@devotreserveur/.

Vous pouvez également tester les performances brutes de votre serveur en utilisant HTTPerf (disponible dans les dépôts Debian). Sur mon serveur de test (VPS Gandi 1 part), j'obtiens les perfos suivantes:

httperf --client=0/1 --server=localhost --port=80 --uri=/ --send-buffer=4096 --recv-buffer=16384 --num-conns=5000 --num-calls=10

Request rate: 6833.4 req/s (0.1 ms/req)

Conclusion

Avec NGinx, on obtient rapidement de très bonnes performances et le couple PHP-FPM, MemCached permet d'avoir une bonne base pour héberger, par exemple, votre blog WordPress (lire l'article sur le sujet dans ce blog).

Je suis bien sur preneur de tous commentaires/remarques sur le script.

Vus : 1772
Publié par Nicolargo : 402