GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie Varnish Cache 6 für Nginx unter CentOS/RHEL 8

Lack-Cache (allgemein als Lack bezeichnet ) ist ein leistungsstarker und schneller Open-Source-Reverse-Proxy HTTP Beschleuniger mit moderner Architektur und flexibler Konfigurationssprache. Ein Reverse-Proxy zu sein bedeutet einfach, dass es sich um eine Software handelt, die Sie vor Ihrem Webserver (der der Ursprungsserver oder das Backend ist) wie Nginx bereitstellen können , um HTTP-Anforderungen von Clients zu empfangen und zur Verarbeitung an den Ursprungsserver weiterzuleiten. Und es liefert die Antwort vom Ursprungsserver an die Clients.

Lack fungiert als Vermittler zwischen Nginx und Kunden aber mit einigen Leistungsvorteilen. Sein Hauptzweck besteht darin, das Laden Ihrer Anwendungen zu beschleunigen, indem es als Caching-Engine fungiert. Es empfängt Anfragen von Clients und leitet sie einmal an das Backend weiter, um den angeforderten Inhalt zwischenzuspeichern (Dateien und Fragmente von Dateien im Speicher zu speichern). Dann werden alle zukünftigen Anfragen nach genau ähnlichen Inhalten aus dem Cache bedient.

Dadurch werden Ihre Webanwendungen schneller geladen und die Gesamtleistung Ihres Webservers wird indirekt verbessert, da Varnish stellt Inhalte aus dem Speicher bereit, anstatt dass Nginx Dateien von der Speicherfestplatte verarbeitet.

Abgesehen vom Caching, Varnish hat auch mehrere andere Anwendungsfälle, darunter einen HTTP-Anforderungsrouter und einen Lastenausgleich, eine Webanwendungs-Firewall und mehr.

Der Lack wird mit der stark erweiterbaren integrierten Varnish Configuration Language konfiguriert (VCL ), mit der Sie Richtlinien schreiben können, wie eingehende Anfragen behandelt werden sollen. Sie können damit benutzerdefinierte Lösungen, Regeln und Module erstellen.

In diesem Artikel werden wir die Schritte zur Installation von Nginx durchgehen Webserver und Varnish Cache 6 auf einem frischen CentOS 8 oder RHEL 8 Server. RHEL 8 Benutzer sollten sicherstellen, dass sie das RedHat-Abonnement aktivieren.

Zum Einrichten ein komplettes LEMP Stack statt Nginx zu installieren Webserver allein, sehen Sie sich die folgenden Anleitungen an.

  1. So installieren Sie den LEMP-Server auf CentOS 8
  2. So installieren Sie LEMP Server auf RHEL 8

Schritt 1:Nginx-Webserver auf CentOS/RHEL 8 installieren

1. Das CentOS/RHEL 8 wird mit der neuesten Version von Nginx ausgeliefert Webserver-Software, daher werden wir sie mit den folgenden dnf-Befehlen aus dem Standard-Repository installieren.

# dnf update
# dnf install nginx

2. Einmal Nginx installiert ist, müssen Sie den Status mit den folgenden systemctl-Befehlen starten, aktivieren und überprüfen.

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

Überprüfen Sie den Nginx-Dienststatus

3. Wenn Sie ein wenig neugierig sind, können Sie auch den Nginx-TCP-Socket, der standardmäßig auf Port 80 läuft, mit dem folgenden ss-Befehl überprüfen.

# ss -tpln

Überprüfen Sie den Nginx-TCP-Port

4. Wenn Sie die Firewall auf dem System ausführen, stellen Sie sicher, dass Sie die Firewall-Regeln aktualisieren, um Anfragen an einen Webserver zuzulassen.

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

Schritt 2:Varnish Cache 6 auf CentOS/RHEL 8 installieren

5. Das CentOS/RHEL 8 stellt einen Varnish Cache DNF bereit Modul, das standardmäßig die Version 6.0 enthält LTS (Langzeitunterstützung ).

Führen Sie den folgenden Befehl aus, um das Modul zu installieren.

# dnf module install varnish

Varnish Cache in CentOS 8 installieren

6. Sobald die Modulinstallation abgeschlossen ist, können Sie die Version von Varnish bestätigen auf Ihrem System installiert.

# varnishd -V

Lackversion prüfen

7. Nach der Installation von Varnish Cache , der ausführbare Hauptbefehl, der unter /usr/sbin/varnishd installiert ist und Lackkonfigurationsdateien befinden sich in /etc/varnish/ .

Die Datei /etc/varnish/default.vcl ist die Hauptkonfigurationsdatei für den Lack, die mit VCL geschrieben wurde und /etc/varnish/secret ist die Lack-Geheimdatei.

8. Als nächstes starten Sie den Lack aktivieren Sie den automatischen Start während des Systemstarts und vergewissern Sie sich, dass er betriebsbereit ist.

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

Überprüfen Sie den Varnish-Cache auf CentOS 8

Schritt 3:Konfigurieren von Nginx für die Arbeit mit Varnish Cache

9. In diesem Abschnitt zeigen wir, wie Sie Varnish Cache konfigurieren um vor Nginx zu laufen . Standardmäßig lauscht Nginx auf Port 80 , normalerweise ist jeder Serverblock (oder virtueller Host) so konfiguriert, dass er auf diesem Port lauscht.

Sehen Sie sich beispielsweise den in der Hauptkonfigurationsdatei (/etc/nginx/nginx.conf) konfigurierten standardmäßigen nginx-Serverblock an ).

# vi /etc/nginx/nginx.conf

Suchen Sie nach dem Server-Block-Abschnitt, wie im folgenden Screenshot gezeigt.

Konfiguration des Nginx-Serverblocks

10. Um Varnish auszuführen vor Nginx , sollten Sie den standardmäßigen Nginx-Port von 80 ändern bis 8080 (oder einen anderen Port Ihrer Wahl).

Dies sollte in allen zukünftigen Serverblock-Konfigurationsdateien erfolgen (normalerweise erstellt unter /etc/nginx/conf.d/ ) für Websites oder Webanwendungen, die Sie über Varnish bereitstellen möchten .

Zum Beispiel der Serverblock für unsere Testseite tecmint.lan ist /etc/nginx/conf.d/tecmint.lan.conf und hat die folgende Konfiguration.

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 {
        }
}

Konfiguration des Nginx-Serverblocks

Wichtig :Denken Sie daran, den Standardserverblock zu deaktivieren, indem Sie seinen Konfigurationsabschnitt in /etc/nginx/nginx.conf auskommentieren Datei wie im folgenden Screenshot gezeigt. Dadurch können Sie andere Websites/Anwendungen auf Ihrem Server ausführen, andernfalls leitet Nginx Anfragen immer an den Standardserverblock weiter.

Nginx-Serverblock deaktivieren

11. Überprüfen Sie nach Abschluss der Konfiguration die Konfigurationsdatei auf Fehler und starten Sie den Nginx-Dienst neu, um die letzten Änderungen zu übernehmen.

# nginx -t
# systemctl restart nginx

Überprüfen Sie die Nginx-Konfigurationssyntax

12. Als nächstes, um HTTP zu empfangen Anfragen von Clients, müssen wir Varnish konfigurieren auf Port 80 auszuführen . Anders als bei früheren Versionen von Varnish Cache wo diese Änderung im Lack vorgenommen wurde Umgebungsdatei (die jetzt veraltet ist) in Version 6.0 und höher.

Wir müssen die erforderliche Änderung in der Varnish-Servicedatei vornehmen. Führen Sie den folgenden Befehl aus, um die entsprechende Dienstdatei zum Bearbeiten zu öffnen.

# systemctl edit --full  varnish

Suchen Sie die folgende Zeile und ändern Sie den Wert von -a switch, der die Listen-Adresse und den Port angibt. Stellen Sie den Port auf 80 ein wie im folgenden Screenshot gezeigt.

Beachten Sie, wenn Sie keine Adresse angeben, varnishd lauscht auf allen verfügbaren IPv4 und IPv6 auf dem Server aktive Schnittstellen.

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

Varnish Listen Port ändern

Speichern Sie die Änderungen in der Datei und beenden Sie.

13. Als Nächstes müssen Sie den Back-End-Server definieren, der Varnish ist besuchen, um Inhalte abzurufen. Dies geschieht in der Hauptkonfigurationsdatei von Varnish.

# vi /etc/varnish/default.vcl 

Suchen Sie nach dem Abschnitt mit der standardmäßigen Backend-Konfiguration und ändern Sie die Zeichenfolge „default ” an server1 (oder einen beliebigen Namen Ihrer Wahl, um Ihren Ursprungsserver darzustellen). Stellen Sie dann den Port auf 8080 ein (oder der Nginx-Überwachungsport, den Sie in Ihrem Serverblock definiert haben).

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

Standard-Varnish-Backend-Server festlegen

Für diese Anleitung führen wir Varnish aus und Nginx auf demselben Server. Wenn Ihr Nginx-Webserver auf einem anderen Host ausgeführt wird. Zum Beispiel ein anderer Server mit der Adresse 10.42.0.247 , dann legen Sie .host fest Parameter wie gezeigt.

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

Speichern Sie die Datei und schließen Sie sie.

14. Als nächstes müssen Sie die systemd neu laden Manager-Konfiguration aufgrund der letzten Änderungen in der Varnish-Dienstdatei, starten Sie dann den Varnish-Dienst neu, um die Änderungen wie folgt zu übernehmen.

# systemctl daemon-reload
# systemctl restart varnish

15. Bestätigen Sie nun, dass Nginx und Lack lauschen auf dem konfigurierten TCP Steckdosen.

# ss -tpln

Nginx- und Varnish-Ports bestätigen

Schritt 4:Nginx-Varnish-Cache-Setup testen

16. Überprüfen Sie als Nächstes, ob die Webseiten über Varnish Cache bereitgestellt werden wie folgt. Öffnen Sie einen Webbrowser und navigieren Sie mithilfe der Server-IP oder des FDQN, wie im folgenden Screenshot gezeigt.

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

Über Varnish Cache bereitgestellte Nginx-Seiten überprüfen

17. Verwenden Sie alternativ den Curl-Befehl wie gezeigt. Verwenden Sie die IP-Adresse Ihres Servers oder den FQDN der Website oder verwenden Sie 127.0.0.1 oder localhost, wenn Sie lokal testen.

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

Überprüfen Sie die Nginx Varnish Cache-Seite mit Curl

Nützliche Dienstprogramme zur Varnish-Cache-Verwaltung

18. In diesem letzten Abschnitt werden wir kurz einige der nützlichen Hilfsprogramme beschreiben, die den Varnish Cache unterstützen ausgeliefert, mit dem Sie varnishd steuern können , greifen Sie auf In-Memory-Protokolle und Gesamtstatistiken zu und vieles mehr.

varnishadm

varnishadm ein Dienstprogramm zur Steuerung einer laufenden Varnish-Instanz. Es stellt eine CLI-Verbindung zu lackd her. Sie können es beispielsweise verwenden, um konfigurierte Backends aufzulisten, wie im folgenden Screenshot gezeigt (lesen Sie man lackadm für weitere Informationen).

# varnishadm
varnish> backend.list

Konfigurierte Backends auflisten

Lackprotokoll

Das Varnishlog Dienstprogramm bietet Zugriff auf anforderungsspezifische Daten. Es bietet Informationen zu konkreten Kunden und Anfragen (lesen Sie man lacklog für weitere Informationen).

# varnishlog

Überprüfen Sie die Informationen zu Kunden und Anfragen

Lackstatus

Ein Varnishstat auch bekannt als Lackstatistik , das Ihnen einen Überblick über die aktuelle Leistung von Varnish gibt, indem es Zugriff auf In-Memory-Statistiken wie Cache-Hits und -Mißerfolge, Informationen über den Speicher, erstellte Threads, gelöschte Objekte bietet (lesen Sie man polishstat für weitere Informationen).

# varnishstat 

Lackstatistik anzeigen

Lackplatte

Eine Lackplatte Dienstprogramm liest die Shared-Memory-Protokolle und präsentiert eine ständig aktualisierte Liste der am häufigsten vorkommenden Protokolleinträge (lesen Sie man lacktop für weitere Informationen).

# varnishtop 

Shared Memory-Protokolle anzeigen

varnishhist

Ein Varnishhist (Lackverlauf ) analysiert die Lackprotokolle und gibt ein kontinuierlich aktualisiertes Histogramm aus, das die Verteilung der letzten n zeigt Anfragen durch deren Verarbeitung (Lesen Sieman lackhist für weitere Informationen).

# varnishhist

Anforderungshistogramm anzeigen

Das ist alles! In dieser Anleitung haben wir gezeigt, wie man Varnish Cache installiert und führen Sie es vor dem Nginx HTTP aus Server zur Beschleunigung der Bereitstellung von Webinhalten in CentOS/RHEL 8 .

Alle Gedanken oder Fragen zu diesem Leitfaden können über das unten stehende Feedback-Formular mitgeteilt werden. Weitere Informationen finden Sie in der Varnish Cache 6.0-Dokumentation.

Der Hauptnachteil von Varnish Cache ist die fehlende native Unterstützung für HTTPS . Um HTTPS zu aktivieren Auf Ihrer Website/Anwendung müssen Sie einen SSL/TLS-Terminierungsproxy konfigurieren, um in Verbindung mit Varnish Cache zu arbeiten zum Schutz Ihrer Website. In unserem nächsten Artikel zeigen wir, wie Sie HTTPS für Varnish Cache mit Hitch unter CentOS/RHEL 8 aktivieren .

Sharing is Caring…
Auf Facebook teilenAuf Twitter teilenAuf Linkedin teilenAuf Reddit teilen
Cent OS
  1. So installieren und konfigurieren Sie Varnish Cache 6 mit Nginx unter CentOS 8

  2. So installieren Sie phpMyAdmin mit Nginx unter CentOS 7 / RHEL 7

  3. So installieren Sie Varnish Cache auf CentOS

  4. So installieren Sie Varnish Cache 4 unter CentOS 7

  5. So installieren Sie Varnish Cache unter CentOS 8

So installieren Sie Varnish Cache für Nginx unter CentOS 8/Almalinux 8

So installieren Sie Varnish Cache für Apache unter CentOS/RHEL 8

So beschleunigen Sie Nginx mit Varnish Cache unter CentOS 7

So beschleunigen Sie Apache mit Varnish Cache unter CentOS 7

So installieren Sie Varnish Cache unter CentOS 7

So installieren Sie Varnish unter CentOS 7