GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment accélérer Apache avec Varnish Cache sur CentOS 7

Cache de vernis (communément appelé Vernis ), est un accélérateur HTTP à proxy inverse open source populaire destiné à accélérer les serveurs Web. Il est conçu pour les points de terminaison d'API excessivement utilisés, ainsi que pour les sites dynamiques qui diffusent un contenu massif et connaissent un trafic élevé.

Pour Nginx :Comment installer Varnish Cache pour Nginx sur CentOS 7

Cela aide essentiellement à réduire la charge du processeur; prend en charge l'équilibrage de charge sur les serveurs Web et permet à un navigateur Web de charger rapidement des sites grâce au stockage du cache dans la RAM. Un certain nombre de grandes entreprises l'utilisent, y compris Facebook , Twitter, et Wikipédia pour n'en citer que quelques-uns.

Exigences

  1. Un CentOS 7 avec Apache installé
  2. Un CentOS 7 avec une adresse IP statique

Dans cet article, je vais vous expliquer comment installer et utiliser Varnish Cache 6.5 en tant que frontal pour un Apache serveur Web dans CentOS 7 (fonctionne également sur RHEL 7 ).

Étape 1 :Installez le serveur Web Apache sur CentOS 7

1. Installez d'abord le serveur HTTP Apache à partir des référentiels de logiciels CentOS par défaut à l'aide du gestionnaire de packages YUM comme suit.

# yum install httpd

2. Une fois Apache installé, démarrez-le pour le moment et activez-le pour qu'il démarre automatiquement au démarrage du système.

# systemctl start httpd
# systemctl enable httpd
# systemctl status httpd

3. Ensuite, mettez à jour les règles de pare-feu du système pour autoriser les paquets entrants sur le port 80 en utilisant les commandes ci-dessous.

# firewall-cmd --zone=public --permanent --add-service=http
# firewall-cmd --reload

Étape 2 :Installer le cache de vernis sur CentOS 7

4. Il existe désormais des packages RPM pré-compilés pour la dernière version de Varnish Cache 6 (c'est-à-dire 6,5 au moment de la rédaction), vous devez donc ajouter le Varnish Cache officiel référentiel.

Avant cela, vous devez activer le référentiel EPEL pour installer plusieurs packages de dépendance, comme indiqué.

# yum install -y epel-release

5. Ensuite, installez pygpgme , un package pour gérer les signatures GPG et yum-utils, une collection d'utilitaires utiles qui étendent les fonctionnalités natives de yum de différentes manières.

# yum install pygpgme yum-utils

6. Créez maintenant un fichier nommé /etc/yum.repos.d/varnishcache_varnish65.repo qui contient la configuration du référentiel ci-dessous.

# vi /etc/yum.repos.d/varnishcache_varnish65.repo

Important :Assurez-vous de remplacer el et 7 dans la configuration ci-dessous avec votre distribution et version Linux :

[varnishcache_varnish65]
name=varnishcache_varnish65
baseurl=https://packagecloud.io/varnishcache/varnish65/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/varnishcache/varnish65/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

[varnishcache_varnish65-source]
name=varnishcache_varnish65-source
baseurl=https://packagecloud.io/varnishcache/varnish65/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/varnishcache/varnish65/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

7. Exécutez maintenant la commande ci-dessous pour mettre à jour votre cache yum local et installer le package de cache de vernis (n'oubliez pas d'accepter la clé GPG en tapant y ou yes lors de l'installation du package) :

# yum -q makecache -y --disablerepo='*' --enablerepo='varnishcache_varnish65'
# yum install varnish 

8. Après avoir installé Varnish Cache , l'exécutable principal sera installé en tant que /usr/sbin/varnishd et les fichiers de configuration de vernis sont situés dans /etc/varnish/ :

  • /etc/varnish/default.vcl – c'est le fichier de configuration principal de vernis, il est écrit en utilisant le langage de configuration vanish (VCL).

9. Démarrez maintenant le service de vernissage, activez-le pour qu'il démarre automatiquement lors du démarrage du système et vérifiez son état pour vous assurer qu'il est opérationnel comme suit.

# systemctl start varnish
# systemctl enable varnish
# systemctl status varnish

10. Vous pouvez confirmer que l'installation de Varnish a réussi en voyant l'emplacement de l'exécutable Varnish et la version installée sur votre système.

$ which varnishd
$ varnishd -V
Exemple de sortie
varnishd (varnish-6.5.1 revision 1dae23376bb5ea7a6b8e9e4b9ed95cdc9469fb64)
Copyright (c) 2006 Verdens Gang AS
Copyright (c) 2006-2020 Varnish Software

Étape 3 : Configurer Apache pour qu'il fonctionne avec le cache de vernis

11. Configurez maintenant Apache pour qu'il fonctionne conjointement avec Varnish Cache. Par défaut, Apache écoute sur le port 80 , vous devez changer le port HTTPD par défaut en 8080 – cela garantira que HTTPD s'exécute derrière la mise en cache de Varnish.

Vous pouvez utiliser la commande sed pour changer le port 80 à 8080 comme indiqué.

# sed -i "s/Listen 80/Listen 8080/" /etc/httpd/conf/httpd.conf

Remarque :De plus, vous devez modifier le port de votre configuration d'hôte virtuel pour chaque site Web que vous souhaitez servir via Varnish. Voici la configuration de notre site de test (/etc/httpd/conf.d/tecmint.lan.conf ).

<VirtualHost *:8080>
    DocumentRoot "/var/www/html/tecmint.lan/"
    ServerName www.tecmint.lan
    # Other directives here
</VirtualHost>

12. Ensuite, ouvrez le fichier de configuration de vernis systemd et trouvez le paramètre ExecStart qui spécifie le port sur lequel Varnish écoute et change sa valeur de 6081 à 80 comme indiqué dans la capture d'écran.

# systemctl edit --full  varnish

La configuration devrait ressembler à ceci une fois terminée.

ExecStart=/usr/sbin/varnishd -a :80 -f /etc/varnish/default.vcl -s malloc,256m

13. Ensuite, configurez Apache en tant que serveur principal pour le proxy Varnish, dans le fichier /etc/varnish/default.vcl fichier de configuration.

# vi /etc/varnish/default.vcl 

Trouver le backend et définissez l'adresse IP et le port de l'hôte. Vous trouverez ci-dessous la configuration par défaut du backend, définissez-la pour qu'elle pointe vers votre serveur de contenu réel.

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

Si votre serveur principal s'exécute sur un autre serveur avec l'adresse 10.42.1.10 , le paramètre host doit pointer vers cette adresse IP.

backend server1 {
    .host = "10.42.1.10";
    .port = "8080";
}

14. Après avoir effectué toutes les configurations nécessaires, redémarrez le cache HTTPD et Varnish pour effectuer les modifications ci-dessus.

# systemctl daemon-reload
# systemctl restart httpd
# systemctl restart varnish

Étape 4 :Tester le cache de vernis sur Apache

15. Enfin, testez si Varnish est activé et fonctionne avec le HTTPD service à l'aide de la commande cURL ci-dessous, qui peut être utilisée pour afficher l'en-tête HTTP.

# curl -I http://localhost
Exemple de sortie
HTTP/1.1 200 OK
Date: Wed, 06 Jan 2021 08:36:07 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Thu, 16 Oct 2014 13:20:58 GMT
ETag: "1321-5058a1e728280"
Accept-Ranges: bytes
Content-Length: 4897
Content-Type: text/html; charset=UTF-8
X-Varnish: 131085
Age: 0
Via: 1.1 varnish (Varnish/6.5)
Connection: keep-alive

Pour plus d'informations, consultez le référentiel Github de Varnish Cache :https://github.com/varnishcache/varnish-cache

Dans ce tutoriel, nous avons expliqué comment configurer Varnish Cache 6.5 proxy pour le serveur HTTP Apache sur CentOS 7. Si vous avez des questions ou des idées supplémentaires à partager, utilisez le formulaire de commentaires ci-dessous pour nous écrire.


Cent OS
  1. Comment installer et configurer Varnish Cache 6 avec Nginx sur CentOS 8

  2. Comment installer le cache de vernis sur CentOS

  3. Comment installer Varnish Cache 4 sur CentOS 7

  4. Comment installer le cache de vernis sur CentOS 8

  5. Comment installer Let's Encrypt avec Apache sur CentOS 7

Comment installer Apache avec l'hôte virtuel sur CentOS 8

Comment accélérer Nginx avec Varnish Cache sur CentOS 7

Comment installer le cache de vernis sur CentOS 7

Comment installer Drupal sur CentOS 7 avec Apache

Comment installer Varnish sur CentOS 7

Comment installer Apache avec PHP-FPM sur CentOS 8