Recherche de site Web

Installez Varnish Cache 5.2 pour Apache sur Debian et Ubuntu


Varnish Cache (également appelé Varnish) est un accélérateur HTTP open source hautes performances au design moderne. Il stocke le cache en mémoire, garantissant que les ressources du serveur Web ne sont pas gaspillées lors de la création répétée de la même page Web à la demande d'un client.

Il peut être configuré pour s'exécuter devant un serveur Web afin de servir les pages de manière beaucoup plus rapide, accélérant ainsi le chargement des sites Web. Il prend en charge l'équilibrage de charge avec la vérification de l'état des backends, la réécriture d'URL, la gestion gracieuse des backends « morts » et offre une prise en charge partielle de ESI (Edge Side Include).

Dans notre série d'articles concernant Varnish Cache, nous avons montré comment configurer Varnish pour Nginx et Varnish pour les serveurs Web Apache sur un système CentOS 7.

Dans cet article, nous expliquerons comment installer et configurer Varnish Cache 5.2 en tant que frontal du serveur HTTP Apache sur les systèmes Debian et Ubuntu.

Exigences:

  1. Un système Ubuntu installé avec LAMP Stack
  2. Un système Debian installé avec LAMP Stack
  3. Un système Debian/Ubuntu avec une adresse IP statique

Étape 1 : Installer Varnish Cache sur Debian et Ubuntu

1. Heureusement, il existe des packages précompilés pour la dernière version de Varnish Cache 5 (c'est-à-dire 5.2 au moment de la rédaction), donc vous vous devez ajouter le référentiel Varnish officiel dans votre système, comme indiqué ci-dessous.

curl -L https://packagecloud.io/varnishcache/varnish5/gpgkey | sudo apt-key add -

Important : si vous utilisez Debian, installez le paquet debian-archive-keyring pour vérifier les dépôts Debian officiels .

sudo apt-get install debian-archive-keyring

2. Après cela, créez un fichier nommé /etc/apt/sources.list.d/varnishcache_varnish5.list qui contient la configuration du référentiel ci-dessous. Assurez-vous de remplacer ubuntu et xenial par votre distribution et version Linux.

deb https://packagecloud.io/varnishcache/varnish5/ubuntu/ xenial main  
deb-src https://packagecloud.io/varnishcache/varnish5/ubuntu/ xenial  main

3. Ensuite, mettez à jour le référentiel des packages logiciels et installez le cache de vernis à l'aide des commandes suivantes.

sudo apt update
sudo apt install varnish

4. Après avoir installé Varnish Cache, les principaux fichiers de configuration seront installés dans le répertoire /etc/varnish/.

  • /etc/default/varnish – le fichier de configuration de l'environnement de vernis.
  • /etc/varnish/default.vcl – fichier de configuration principal du vernis, il est écrit en utilisant le langage de configuration Vanish (VCL).
  • /etc/varnish/secret – fichier secret du vernis.

Pour confirmer que l'installation de Varnish a réussi, exécutez la commande suivante pour voir la version.

varnishd -V

Étape 2 : configurer Apache pour qu'il fonctionne avec le cache Varnish

5. Vous devez maintenant configurer Apache pour qu'il fonctionne avec Varnish Cache. Par défaut, Apache écoute sur le port 80, vous devez modifier le port Apache par défaut en 8080 pour lui permettre de s'exécuter derrière la mise en cache Varnish.

Ouvrez donc le fichier de configuration des ports Apache /etc/apache2/ports.conf et recherchez la ligne listen 80, puis remplacez-la par listen 8080.

Vous pouvez également exécuter simplement la commande sed pour changer le port 80 en 8080 comme suit.

sudo sed -i "s/Listen 80/Listen 8080/" /etc/apache2/ports.conf

6. Vous devez également apporter des modifications à votre fichier d'hôte virtuel situé dans /etc/apache2/sites-available/.

sudo vi /etc/apache2/sites-available/000-default.conf

Remplacez le numéro de port par 8080.

<VirtualHost *:8080>
	#virtual host configs here
</VirtualHost>

7. Sur les systèmes utilisant systemd, le fichier de configuration de l'environnement /etc/default/varnish est obsolète et n'est plus pris en compte.

Vous devez copier le fichier /lib/systemd/system/varnish.service dans /etc/systemd/system/ et y apporter quelques modifications.

sudo cp /lib/systemd/system/varnish.service /etc/systemd/system/
sudo vi /etc/systemd/system/varnish.service

Vous devez modifier la directive de service ExecStart, elle définit les options d'exécution du démon Vernis. Définissez la valeur de l'indicateur -a, qui définit le port que le vernis écoute, de 6081 à 80.

8. Pour appliquer les modifications ci-dessus au fichier de l'unité de service de vernis, exécutez la commande systemctl suivante :

sudo systemctl daemon-reload

9. Ensuite, configurez Apache comme serveur backend pour le proxy Varnish, dans le fichier de configuration /etc/varnish/default.vcl.

sudo vi /etc/varnish/default.vcl 

À l'aide de la section backend, vous pouvez définir l'adresse IP de l'hôte et le port de votre serveur de contenu. Ce qui suit est la configuration backend par défaut qui utilise l'hôte local (définissez-le pour qu'il pointe vers votre serveur de contenu réel).

backend default {
    .host = "127.0.0.1";
    .port = "8080";
}

10. Une fois que vous avez effectué toute la configuration ci-dessus, redémarrez le démon Apache et Varnish en tapant les commandes suivantes.

sudo systemctl restart apache
sudo systemctl start varnish
sudo systemctl enable varnish
sudo systemctl status varnish

Étape 3 : tester le cache Varnish sur Apache

11. Enfin, testez si le cache Varnish est activé et fonctionne avec le serveur HTTP Apache à l'aide de la commande cURL ci-dessous pour afficher l'en-tête HTTP.

curl -I http://localhost

C'est ça! Pour plus d'informations sur Varnish Cache, visitez – https://github.com/varnishcache/varnish-cache

Dans ce didacticiel, nous avons expliqué comment configurer Varnish Cache 5.2 pour le serveur HTTP Apache sur les systèmes Debian et Ubuntu. Vous pouvez partager vos réflexions ou questions avec nous via les commentaires ci-dessous.