Cache di vernice (comunemente noto come vernice ), è un popolare acceleratore HTTP proxy inverso open source destinato a velocizzare i server Web. È progettato per endpoint API eccessivamente utilizzati e anche per siti dinamici che offrono contenuti di grandi dimensioni e sono caratterizzati da un traffico elevato.
Per Nginx :Come installare Varnish Cache per Nginx su CentOS 7Fondamentalmente aiuta a ridurre il carico della CPU; supporta il bilanciamento del carico sui server Web e consente a un browser Web di caricare rapidamente i siti come risultato dell'archiviazione della cache nella RAM. Diverse grandi aziende lo utilizzano, tra cui Facebook , Twitter, e Wikipedia solo per citarne alcuni.
Requisiti
- Un CentOS 7 con Apache installato
- Un CentOS 7 con un indirizzo IP statico
In questo articolo spiegherò come installare e utilizzare Varnish Cache 6.5 come front-end per un Apache server web in CentOS 7 (funziona anche su RHEL 7 ).
Passaggio 1:installa Apache Web Server su CentOS 7
1. Innanzitutto, installa il server HTTP Apache dai repository software CentOS predefiniti utilizzando il gestore di pacchetti YUM come segue.
# yum install httpd
2. Una volta installato Apache, avvialo per il momento e abilitalo per l'avvio automatico all'avvio del sistema.
# systemctl start httpd # systemctl enable httpd # systemctl status httpd
3. Prossimo aggiornamento delle regole del firewall di sistema per consentire i pacchetti in entrata sulla porta 80 utilizzando i comandi seguenti.
# firewall-cmd --zone=public --permanent --add-service=http # firewall-cmd --reload
Passaggio 2:installa Varnish Cache su CentOS 7
4. Ora sono disponibili pacchetti RPM precompilati per l'ultima versione di Varnish Cache 6 (cioè 6.5 nel momento in cui scrivo), quindi è necessario aggiungere la Varnish Cache ufficiale deposito.
Prima di ciò, devi abilitare il repository EPEL per installare diversi pacchetti di dipendenze come mostrato.
# yum install -y epel-release
5. Quindi, installa pygpgme , un pacchetto per la gestione delle firme GPG e yum-utils, una raccolta di utili utilità che estendono le funzionalità native di yum in vari modi.
# yum install pygpgme yum-utils
6. Ora crea un file chiamato /etc/yum.repos.d/varnishcache_varnish65.repo che contiene la configurazione del repository di seguito.
# vi /etc/yum.repos.d/varnishcache_varnish65.repo
Importante :Assicurati di sostituire el
e 7
nella configurazione seguente con la tua distribuzione e versione 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. Ora esegui il comando seguente per aggiornare la tua cache yum locale e installare il pacchetto della cache di vernice (non dimenticare di accettare la chiave GPG digitando y
o yes
durante l'installazione del pacchetto):
# yum -q makecache -y --disablerepo='*' --enablerepo='varnishcache_varnish65' # yum install varnish
8. Dopo aver installato Varnish Cache , l'eseguibile principale verrà installato come /usr/sbin/varnishd e i file di configurazione di vernice si trovano in /etc/varnish/ :
- /etc/varnish/default.vcl – questo è il file di configurazione principale di Paint, è scritto usando il linguaggio di configurazione vanish (VCL).
9. Ora avvia il servizio di vernice, abilitalo all'avvio automatico durante l'avvio del sistema e verifica il suo stato per assicurarti che sia attivo e funzionante come segue.
# systemctl start varnish # systemctl enable varnish # systemctl status varnish
10. Puoi confermare che l'installazione di Varnish è riuscita vedendo la posizione dell'eseguibile di Varnish e la versione installata sul tuo sistema.
$ which varnishd $ varnishd -V
Risultato campione
varnishd (varnish-6.5.1 revision 1dae23376bb5ea7a6b8e9e4b9ed95cdc9469fb64) Copyright (c) 2006 Verdens Gang AS Copyright (c) 2006-2020 Varnish Software
Passaggio 3:configura Apache per l'utilizzo con Varnish Cache
11. Ora configura Apache in modo che funzioni insieme a Varnish Cache. Per impostazione predefinita Apache è in ascolto sulla porta 80 , devi modificare la porta HTTPD predefinita su 8080 – questo assicurerà che HTTPD venga eseguito dietro la memorizzazione nella cache di Varnish.
Puoi usare il comando sed per cambiare la porta 80 a 8080 come mostrato.
# sed -i "s/Listen 80/Listen 8080/" /etc/httpd/conf/httpd.conf
Nota :Inoltre, è necessario modificare la porta sulla configurazione dell'host virtuale per ogni sito Web che si desidera servire tramite Varnish. Ecco la configurazione per il nostro sito di 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. Quindi, apri il file di configurazione systemd di Paint e trova il parametro ExecStart che specifica la porta su cui Varnish è in ascolto e cambia il suo valore da 6081 a 80 come mostrato nello screenshot.
# systemctl edit --full varnish
La configurazione dovrebbe essere simile a questa al termine.
ExecStart=/usr/sbin/varnishd -a :80 -f /etc/varnish/default.vcl -s malloc,256m
13. Quindi, configura Apache come server back-end per il proxy Varnish, in /etc/varnish/default.vcl file di configurazione.
# vi /etc/varnish/default.vcl
Trova il backend sezione e definire l'IP host e la porta. Di seguito è riportata la configurazione di back-end predefinita, impostala in modo che punti al tuo server di contenuti effettivo.
backend default { .host = "127.0.0.1"; .port = "8080"; }
Se il tuo server back-end è in esecuzione su un server diverso con indirizzo 10.42.1.10 , il parametro host deve puntare a questo indirizzo IP.
backend server1 { .host = "10.42.1.10"; .port = "8080"; }
14. Dopo aver eseguito tutte le configurazioni necessarie, riavvia HTTPD e la cache Varnish per effettuare le modifiche precedenti.
# systemctl daemon-reload # systemctl restart httpd # systemctl restart varnish
Fase 4:prova la cache di vernice su Apache
15. Infine, verifica se Varnish è abilitato e funziona con HTTPD servizio utilizzando il comando cURL riportato di seguito, che può essere utilizzato per visualizzare l'intestazione HTTP.
# curl -I http://localhost
Risultato campione
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
Per ulteriori informazioni, controlla Varnish Cache Github Repository:https://github.com/varnishcache/varnish-cache
In questo tutorial abbiamo spiegato come configurare Varnish Cache 6.5 proxy per il server HTTP Apache su CentOS 7. In caso di domande o idee aggiuntive da condividere, utilizza il modulo di feedback qui sotto per scriverci.