GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare Varnish Cache 6 per Nginx su CentOS/RHEL 8

Cache di vernice (comunemente indicato come vernice ) è un proxy inverso open source, potente e veloce HTTP acceleratore con architettura moderna e linguaggio di configurazione flessibile. Essere un proxy inverso significa semplicemente che è un software che puoi distribuire davanti al tuo server web (che è il server di origine o back-end) come Nginx , per ricevere le richieste HTTP dei client e inoltrarle al server di origine per l'elaborazione. E fornisce la risposta dal server di origine ai client.

Vernice funge da intermediario tra Nginx e clienti ma con alcuni vantaggi in termini di prestazioni. Il suo scopo principale è velocizzare il caricamento delle applicazioni, funzionando come un motore di memorizzazione nella cache. Riceve le richieste dai client e le inoltra al back-end una volta per memorizzare nella cache il contenuto richiesto (memorizza file e frammenti di file). Quindi tutte le richieste future per contenuti esattamente simili verranno servite dalla cache.

Ciò rende le tue applicazioni web più veloci e migliora indirettamente le prestazioni complessive del tuo server web perché Varnish servirà il contenuto dalla memoria invece dei file di elaborazione Nginx dal disco di archiviazione.

Oltre alla memorizzazione nella cache, Varnish ha anche molti altri casi d'uso, tra cui un router di richiesta HTTP e un sistema di bilanciamento del carico, un firewall per applicazioni Web e altro ancora.

La vernice viene configurato utilizzando il linguaggio di configurazione della vernice integrato altamente estensibile (VCL ) che consente di scrivere criteri su come gestire le richieste in arrivo. Puoi usarlo per creare soluzioni, regole e moduli personalizzati.

In questo articolo, analizzeremo i passaggi per installare Nginx server web e Varnish Cache 6 su un nuovo CentOS 8 o RHEL 8 server. RHEL 8 gli utenti dovrebbero assicurarsi di abilitare l'abbonamento a Redhat.

Per impostare, un LEMP completo stack invece di installare Nginx solo server web, consulta le seguenti guide.

  1. Come installare il server LEMP su CentOS 8
  2. Come installare il server LEMP su RHEL 8

Passaggio 1:installa Nginx Web Server su CentOS/RHEL 8

1. CentOS/RHEL 8 viene fornito con l'ultima versione di Nginx software del server web, quindi lo installeremo dal repository predefinito utilizzando i seguenti comandi dnf.

# dnf update
# dnf install nginx

2. Una volta Nginx installato, è necessario avviare, abilitare e verificare lo stato utilizzando i seguenti comandi systemctl.

# systemctl start nginx
# systemctl enable nginx
# systemctl status nginx

Verifica lo stato del servizio Nginx

3. Se sei un po' curioso, puoi anche controllare il socket TCP Nginx, che gira sulla porta 80 per impostazione predefinita, usando il seguente comando ss.

# ss -tpln

Controlla la porta TCP Nginx

4. Se stai eseguendo il firewall sul sistema, assicurati di aggiornare le regole del firewall per consentire le richieste a un server web.

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

Passaggio 2:installazione di Varnish Cache 6 su CentOS/RHEL 8

5. CentOS/RHEL 8 fornisce un Varnish Cache DNF modulo per impostazione predefinita che contiene la versione 6.0 LTS (Supporto a lungo termine ).

Per installare il modulo, eseguire il comando seguente.

# dnf module install varnish

Installa Varnish Cache in CentOS 8

6. Una volta completata l'installazione del modulo, puoi confermare la versione di Vernice installato sul tuo sistema.

# varnishd -V

Controlla la versione della vernice

7. Dopo aver installato Varnish Cache , il comando eseguibile principale installato in /usr/sbin/varnishd e i file di configurazione di vernice si trovano in /etc/varnish/ .

Il file /etc/varnish/default.vcl è il file di configurazione di vernice principale scritto utilizzando VCL e /etc/varnish/secret è il file segreto della vernice.

8. Quindi, avvia la vernice servizio, abilitalo per l'avvio automatico durante l'avvio del sistema e conferma che sia attivo e funzionante.

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

Verifica Varnish Cache su CentOS 8

Fase 3:configurazione di Nginx per funzionare con Varnish Cache

9. In questa sezione mostreremo come configurare Varnish Cache per correre davanti a Nginx . Per impostazione predefinita, Nginx è in ascolto sulla porta 80 , normalmente ogni blocco di server (o host virtuale) è configurato per essere in ascolto su questa porta.

Ad esempio, dai un'occhiata al blocco del server nginx predefinito configurato nel file di configurazione principale (/etc/nginx/nginx.conf ).

# vi /etc/nginx/nginx.conf

Cerca la sezione del blocco del server come mostrato nello screenshot seguente.

Configurazione del blocco del server Nginx

10. Per eseguire Vernice davanti a Nginx , dovresti cambiare la porta Nginx predefinita da 80 a 8080 (o qualsiasi altra porta a tua scelta).

Questo dovrebbe essere fatto in tutti i futuri file di configurazione del blocco del server (di solito creati in /etc/nginx/conf.d/ ) per i siti o le applicazioni web che desideri pubblicare tramite Vernice .

Ad esempio, il blocco del server per il nostro sito di test tecmint.lan è /etc/nginx/conf.d/tecmint.lan.conf e ha la seguente configurazione.

server {
        listen       8080;
        server_name  www.tecmint.lan;
        root         /var/www/html/tecmint.lan/;
        location / {
        }

        error_page 404 /404.html;
            location = /40x.html {
        }
        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
}

Configurazione del blocco del server Nginx

Importante :Ricorda di disabilitare il blocco server predefinito commentando la sua sezione di configurazione in /etc/nginx/nginx.conf file come mostrato nella schermata seguente. Ciò ti consente di iniziare a eseguire altri siti Web/applicazioni sul tuo server, altrimenti Nginx indirizzerà sempre le richieste al blocco server predefinito.

Disabilita il blocco del server Nginx

11. Una volta completata la configurazione, controlla il file di configurazione per eventuali errori e riavvia il servizio Nginx per applicare le modifiche recenti.

# nginx -t
# systemctl restart nginx

Controlla la sintassi di configurazione di Nginx

12. Successivamente, per ricevere HTTP richieste dai clienti, dobbiamo configurare Vernice per funzionare sulla porta 80 . A differenza delle versioni precedenti di Varnish Cache dove questa modifica è stata apportata nella vernice file di ambiente (che ora è deprecato), nella versione 6.0 e oltre.

È necessario apportare la modifica richiesta nel file del servizio Varnish. Esegui il comando seguente per aprire il file di servizio appropriato per la modifica.

# systemctl edit --full  varnish

Trova la riga seguente e cambia il valore di -a switch, che specifica l'indirizzo di ascolto e la porta. Imposta la porta su 80 come mostrato nella schermata seguente.

Nota se non specifichi un indirizzo, vernishd ascolterà su tutti gli IPv4 disponibili e IPv6 interfacce attive sul server.

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

Cambia la porta di ascolto della vernice

Salva le modifiche nel file ed esci.

13. Successivamente, devi definire il server back-end che vernicia visiterà per recuperare il contenuto da. Questo viene fatto nel file di configurazione principale di Varnish.

# vi /etc/varnish/default.vcl 

Cerca la sezione di configurazione del back-end predefinita e modifica la stringa "default ” su server1 (o qualsiasi nome a tua scelta per rappresentare il tuo server di origine). Quindi imposta la porta su 8080 (o la porta di ascolto Nginx che hai definito nel blocco del server).

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

Imposta i server backend di Varnish predefiniti

Per questa guida, stiamo eseguendo Vernice e Nginx sullo stesso server. Se il tuo server web Nginx è in esecuzione su un host diverso. Ad esempio, un altro server con indirizzo 10.42.0.247 , quindi imposta .host parametro come mostrato.

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

Salva il file e chiudilo.

14. Successivamente, devi ricaricare il systemd configurazione del gestore a causa delle modifiche recenti nel file del servizio Varnish, quindi riavvia il servizio Varnish per applicare le modifiche come segue.

# systemctl daemon-reload
# systemctl restart varnish

15. Ora conferma che Nginx e vernice sono in ascolto sul TCP configurato prese.

# ss -tpln

Conferma Nginx e Varnish Ports

Passaggio 4:test dell'impostazione della cache di vernice Nginx

16. Successivamente, verifica che le pagine web vengano pubblicate tramite Varnish Cache come segue. Apri un browser web e naviga utilizzando l'IP del server o FDQN come mostrato nella schermata seguente.

http://www.tecmin.lan
OR
http://10.42.0.144

Verifica le pagine Nginx servite tramite la cache di vernice

17. In alternativa, utilizzare il comando curl come mostrato. Usa l'indirizzo IP del tuo server o l'FQDN del sito web o usa 127.0.0.1 o localhost se stai testando in locale.

# curl -I http:///www.tecmint.lan

Verifica Nginx Varnish Cache Page usando Curl

Utilità di amministrazione della cache di vernice

18. In questa sezione finale, descriveremo brevemente alcuni utili programmi di utilità che Varnish Cache fornito con, che puoi utilizzare per controllare vernishd , accedi ai registri in memoria e alle statistiche generali e altro ancora.

vernishadm

vernishadm un'utilità per controllare un'istanza di Varnish in esecuzione. Stabilisce una connessione CLI a verniciato. Ad esempio, puoi usarlo per elencare i backend configurati come mostrato nello screenshot seguente (leggi man paintadm per ulteriori informazioni).

# varnishadm
varnish> backend.list

Elenca i backend configurati

diario di verniciatura

Il diario di verniciatura l'utilità fornisce l'accesso ai dati specifici della richiesta. Offre informazioni su clienti e richieste specifiche (leggi man paintlog per ulteriori informazioni).

# varnishlog

Controlla le informazioni sui clienti e le richieste

vernishstat

Una vernishstat noto anche come statistiche sulla vernice , che offre uno sguardo alle prestazioni attuali di Varnish fornendo l'accesso a statistiche in memoria come hit e miss nella cache, informazioni sullo spazio di archiviazione, thread creati, oggetti eliminati (leggi man paintstat per ulteriori informazioni).

# varnishstat 

Mostra le statistiche sulla vernice

vernice

Una vernice l'utilità legge i registri della memoria condivisa e presenta un elenco continuamente aggiornato delle voci di registro più comuni (leggi man painttop per ulteriori informazioni).

# varnishtop 

Visualizza i registri della memoria condivisa

verniciatore

Un verniciatore (storia della vernice ) l'utilità analizza i registri della vernice e genera un istogramma continuamente aggiornato che mostra la distribuzione degli ultimi n richieste tramite la loro elaborazione (leggiman painthist per ulteriori informazioni).

# varnishhist

Mostra istogramma richieste

È tutto! In questa guida abbiamo mostrato come installare Varnish Cache ed eseguilo davanti a Nginx HTTP server per accelerare la consegna dei contenuti Web in CentOS/RHEL 8 .

Eventuali pensieri o domande su questa guida possono essere condivisi utilizzando il modulo di feedback di seguito. Per ulteriori informazioni, leggi la documentazione di Varnish Cache 6.0.

Lo svantaggio principale di Varnish Cache è la sua mancanza di supporto nativo per HTTPS . Per abilitare HTTPS sul tuo sito web/applicazione, devi configurare un proxy di terminazione SSL/TLS che funzioni insieme a Varnish Cache per proteggere il tuo sito Nel nostro prossimo articolo, mostreremo come abilitare HTTPS per Varnish Cache usando Hitch su CentOS/RHEL 8 .

Condividere è prendersi cura...
Condividi su FacebookCondividi su TwitterCondividi su LinkedinCondividi su Reddit
Cent OS
  1. Come installare e configurare Varnish Cache 6 con Nginx su CentOS 8

  2. Come installare phpMyAdmin con Nginx su CentOS 7 / RHEL 7

  3. Come installare Varnish Cache su CentOS

  4. Come installare Varnish Cache 4 su CentOS 7

  5. Come installare Varnish Cache su CentOS 8

Come installare Varnish Cache per Nginx su CentOS 8/Almalinux 8

Come installare Varnish Cache per Apache su CentOS/RHEL 8

Come velocizzare Nginx con Varnish Cache su CentOS 7

Come velocizzare Apache con Varnish Cache su CentOS 7

Come installare Varnish Cache su CentOS 7

Come installare la vernice su CentOS 7