Sauf impossibilité incontournable, il faut installer la version 3 de Varnish. Ce qui suit s'applique à la version 3.
Pour s'assurer de disposer de la bonne version de Varnish, ajouter le dépôt officiel de varnish-cache.org et installer depuis ce dépôt.
# wget -O- http://repo.varnish-cache.org/debian/GPG-key.txt | apt-key add - # echo "deb http://repo.varnish-cache.org/debian/ squeeze varnish-3.0" >> /etc/apt/sources.list ; REMPLACER squeeze par votre version # apt-get update # apt-get install varnish # /etc/init.d/varnish stop
On se place dans la situation où Varnish est installé sur un système (VM ou matériel) dédié au cache. Ce système ne sert de cache qu'à un seul serveur Apache, implanté sur un autre système, à une autre IP (Varnish est capable de faire bien plus, notamment de la répartition de charge entre plusieurs serveurs).
On sauvegarde la configuration système par défaut avant de l'éditer :
# cp /etc/default/varnish /etc/default/varnish.dist # nano /etc/default/varnish
On commente l'“Alternative 2” qui est la configuration par défaut puis, à la fin du fichier, on ajoute notre propre configuation. Le résultat est le suivant :
## Alternative 4, Do It Yourself # ## Spiderneo customized DAEMON_OPTS="-a :80 \ -T localhost:6082 \ -u varnish -g varnish \ -f /etc/varnish/spiderneo.vcl \ -S /etc/varnish/secret \ -s malloc,768m"
Le démon Varnish écoute sur le port 80 (http). Les requêtes d'administration de Varnish sont autorisées en local, sur le port 6082. La configuration applicative se trouve dans un fichier spécifique. Le système dédié au cache dispose de 1Go.
Que doit cacher Varnish ? Comment ? Il n'y a pas de réponse universelle à ces questions. Tout dépend de ce que l'application web est capable de gérer et du comportement souhaité.
À titre d'exemple voici une configuration conçue pour une application Drupal 7, servie en fcgid par Apache, utilisant APC : spiderneo.vcl. Le serveur Apache étant sur un autre système, nous avons choisi de le laisser écouter sur le port 80.
Notre fichier étant disponible sur internet, on l'installera en le téléchargeant avant de faire, si besoin, des ajustements :
# cd /etc/varnish # wget http://hotline.asdrad.com/_media/spiderneo.vcl # nano spiderneo.vcl ; OPTIONNEL
Source : PERFORMANCE, ACCÉLÉRER DRUPAL 7 AVEC APACHE ET VARNISH.
Pour accéder à l'administration :
# varnishadm -T localhost:6082 -S /etc/varnish/secret
conformément à la configuration système indiquée précédemment.