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

Installieren Sie Varnish Cache 6 für Apache/Nginx auf CentOS 8

Varnish Cache ist ein leistungsstarker Reverse-HTTP-Proxy zur Beschleunigung von Webanwendungen, der als Open-Source-Software verfügbar ist. Varnish speichert sowohl statische als auch dynamische Inhalte. Es verarbeitet alle eingehenden Anfragen, bevor sie auf Ihrem Webserver-Backend landen. Es befindet sich zwischen einem Webbrowser und einem Apache- oder Nginx-Webserver. Der Varnish-Cache speichert alle eingehenden Seitenanforderungen im Arbeitsspeicher, sodass Webserver nicht immer wieder dieselbe Webseite erstellen müssen.

In diesem Beitrag zeigen wir Ihnen, wie Sie den Varnish-Cache mit Apache und Nginx unter CentOS 8 installieren.

Voraussetzungen

  • Ein Server mit CentOS 8.
  • Auf Ihrem Server ist ein Root-Passwort konfiguriert.

Erste Schritte

Bevor Sie beginnen, wird empfohlen, Ihre Systempakete auf die neueste Version zu aktualisieren. Sie können sie aktualisieren, indem Sie den folgenden Befehl ausführen:

dnf update -y

Sobald alle Pakete aktualisiert sind, können Sie mit dem nächsten Schritt fortfahren.

Installieren Sie Varnish

Standardmäßig ist das Varnish-Paket im CentOS 8-Standardrepo enthalten. Sie können es installieren, indem Sie den folgenden Befehl ausführen:

dnf install lack -y

Bearbeiten Sie nach der Installation von Varnish die Standardkonfigurationsdatei von Varnish und definieren Sie die vom Nginx- oder Apache-Webserver unterstützte Adresse.

nano /etc/varnish/default.vcl

Ändern Sie die folgenden Zeilen:

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

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Lack konfigurieren

Standardmäßig überwacht Varnish Port 6081. Daher müssen Sie Varnish so konfigurieren, dass es Port 80 überwacht. Sie können dies konfigurieren, indem Sie die Datei „firnis.service“ bearbeiten:

nano /lib/systemd/system/varnish.service

Suchen Sie die folgende Zeile:

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

Ersetzte es durch die folgende Zeile:

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

Speichern und schließen Sie die Datei und laden Sie dann den systemd-Daemon neu, um die Änderungen zu übernehmen:

systemctl daemon-reload

Starten Sie als Nächstes den Varnish-Dienst und aktivieren Sie ihn mit dem folgenden Befehl, damit er beim Systemneustart gestartet wird:

systemctl start lack
systemctl enable lack

Sie können den Status des Lacks auch mit dem folgenden Befehl überprüfen:

Systemctl-Statuslack

Sie sollten die folgende Ausgabe erhalten:

? lack.service – Varnish Cache, ein Hochleistungs-HTTP-Beschleuniger Geladen:geladen (/usr/lib/systemd/system/varnish.service; deaktiviert; Herstellervoreinstellung:deaktiviert) Aktiv:aktiv (läuft) seit 12.03.2021 04:17:32 EST; Vor 4s Prozess:6391 ExecStart=/usr/sbin/varnishd -a :80 -f /etc/varnish/default.vcl -s malloc,256m (code=exited, status=0/SUCCESS) Haupt-PID:6392 (varnishd) Aufgaben:217 Arbeitsspeicher:99,5 MB CGroup:/system.slice/varnish.service ??6392 /usr/sbin/varnishd -a :80 -f /etc/varnish/default.vcl -s malloc,256m ??6402 /usr /sbin/varnishd -a :80 -f /etc/varnish/default.vcl -s malloc,256mMar 12 04:17:32 masternode systemd[1]:Starten von Varnish Cache, einem Hochleistungs-HTTP-Beschleuniger ... 12. März 04:17:32 Masternode lackd[6391]:Debug:Version:lack-6.0.6 Revision 29a1a8243dbef3d973aec28dc90403188c1dc8e7Mar 12 04:17:32 Masternode lackd[6391]:Debug:Plattform:Linux,4.18.0-193.6.3.el8_2. x86_64,x86_64,-junix,-smalloc,-sdefault,-hcritbit12. März 04:17:32 Masternode lackd[6392]:Version:lack-6.0.6 Revision 29a1a8243dbef3d973aec28dc90403188c1dc8e712. März 04:17:32 masternode lackd:[6392] Linux,4.18.0-193.6.3.el8_2.x86_64,x86_64,-junix,-smalloc,-sdefault,-hcrit bitMar 12 04:17:32 masternode lackd[6391]:Debug:Child (6402) StartedMar 12 04:17:32 masternode lackd[6392]:Child (6402) StartedMar 12 04:17:32 masternode lackd[6392]:Child (6402) sagte Child startet am 12. März 04:17:32 masternode systemd[1]:Varnish Cache gestartet, ein Hochleistungs-HTTP-Beschleuniger.

An diesem Punkt wird Varnish gestartet und lauscht auf Port 80. Sie können dies mit dem folgenden Befehl überprüfen:

ss -antpl | grep lackd

Sie sollten die folgende Ausgabe erhalten:

LISTEN 0 10 127.0.0.1:34977 0.0.0.0:* Benutzer:(("varnishd",pid=1532,fd=11)) LISTEN 0 128 0.0.0.0:80 0.0.0.0:* Benutzer:(( "cache-main",pid=1542,fd=6),("varnishd",pid=1532,fd=6)) LISTEN 0 128 [::]:80 [::]:* Benutzer:(("cache -main",pid=1542,fd=7),("varnishd",pid=1532,fd=7)) LISTEN 0 10 [::1]:34909 [::]:* Benutzer:(("varnishd" ,pid=1532,fd=10)) 

An diesem Punkt ist Varnish installiert und konfiguriert. Sie können jetzt mit dem nächsten Schritt fortfahren.

Installieren und konfigurieren Sie Nginx für die Arbeit mit Varnish

Zuerst müssen Sie das Nginx-Paket auf Ihrem Server installieren. Sie können es mit dem folgenden Befehl installieren:

dnf install nginx -y

Nach der Installation müssen Sie den Nginx-Listening-Port von 80 auf 8080 ändern. Sie können dies tun, indem Sie die Nginx-Standardkonfigurationsdatei bearbeiten:

nano /etc/nginx/nginx.conf

Ändern Sie die folgenden Zeilen:

hören 8080 default_server; listen [::]:8080 default_server;

Speichern und schließen Sie die Datei und überprüfen Sie dann Nginx mit dem folgenden Befehl auf Syntaxfehler:

nginx -t

Sie sollten die folgende Ausgabe erhalten:

nginx:Die Syntax der Konfigurationsdatei /etc/nginx/nginx.conf ist oknginx:Der Test der Konfigurationsdatei /etc/nginx/nginx.conf ist erfolgreich

Starten Sie als Nächstes den Nginx-Dienst und aktivieren Sie ihn so, dass er beim Systemneustart gestartet wird:

systemctl start nginx
systemctl enable nginx

Sie können den Nginx-Listening-Port auch mit dem folgenden Befehl überprüfen:

ss -antpl | grep 8080

Sie sollten die folgende Ausgabe erhalten:

LISTEN 0 128 0.0.0.0:8080 0.0.0.0:* Benutzer:(("nginx",pid=5569,fd=8),("nginx",pid=5568,fd=8)) LISTEN 0 128 [::]:8080 [::]:* Benutzer:(("nginx",pid=5569,fd=9),("nginx",pid=5568,fd=9)) 

An diesem Punkt ist der Varnish-Cache installiert und konfiguriert, um alle Anfragen, die auf Port 80 kommen, an den Nginx-Webserver weiterzuleiten, der Port 8080 überwacht.

Sie können mit dem folgenden Befehl überprüfen, ob der Varnish-Cache funktioniert oder nicht:

curl -I http://localhost

Sie sollten die folgende Ausgabe erhalten:

HTTP/1.1 200 OKServer:nginx/1.14.1Datum:Freitag, 12. März 2021 09:18:32 GMTInhaltstyp:text/htmlInhaltslänge:4057Zuletzt geändert:Montag, 07. Oktober 2019 21:16:24 GMTETag :"5d9bab28-fd9"X-Lack:2Alter:0Via:1.1 Lack (Lack/6.0)Accept-Ranges:bytesConnection:keep-alive

Installieren und konfigurieren Sie Apache für die Arbeit mit Varnish

Zuerst müssen Sie das Apache-Webserver-Paket auf Ihrem System installieren. Sie können es mit dem folgenden Befehl installieren:

dnf install httpd -y

Bearbeiten Sie nach der Installation von Apache die Apache-Standardkonfigurationsdatei und ändern Sie den Überwachungsport von 80 auf 8080.

nano /etc/httpd/conf/httpd.conf

Ändern Sie die folgende Zeile:

Hören Sie 8080

Speichern und schließen Sie die Datei, starten Sie dann den Apache-Dienst und ermöglichen Sie ihm, beim Systemneustart mit dem folgenden Befehl zu starten:

systemctl start httpd
systemctl enable httpd

Sie können den Apache-Listening-Port auch mit dem folgenden Befehl überprüfen:

ss -antpl | grep httpd

Sie sollten die folgende Ausgabe erhalten:

LISTEN 0 128 *:8080 *:* Benutzer:(("httpd",pid=7556,fd=4),("httpd",pid=7555,fd=4),("httpd",pid=7554,fd=4),("httpd",pid=7552,fd=4))

An diesem Punkt ist der Varnish-Cache installiert und konfiguriert, um alle Anfragen, die auf Port 80 kommen, an den Apache-Webserver weiterzuleiten, der auf Port 8080 lauscht.

Sie können mit dem folgenden Befehl überprüfen, ob der Varnish-Cache funktioniert oder nicht:

curl -I http://localhost

Sie sollten die folgende Ausgabe erhalten:

Datum:Fr, 12. März 2021 09:21:14 GMTServer:Apache/2.4.37 (centos)Inhaltsspeicherort:index.html.zh-CNVary:negotie,accept-languageTCN:choiceLast-Modified:Fr, 14 Jun 2019 03:37:43 GMTETag:"fa6-58b405e7d6fc0;5bd5365602e05"Accept-Ranges:bytesContent-Length:4006Content-Type:text/html; charset=UTF-8Content-Language:zh-cnX-Lack:2Alter:0Via:1.1 Lack (Lack/6.0)Verbindung:keep-alive

Arbeiten mit der Varnish-Befehlszeile

Varnish wird mit mehreren nützlichen Dienstprogrammen geliefert, die Ihnen helfen, Varnish zu überwachen und zu steuern.

lackadm ist ein Befehlszeilendienstprogramm zum Auflisten konfigurierter Backends.

varnishadm

Sie sollten die folgende Ausgabe sehen:

200 ----------------------------- Varnish Cache CLI 1.0------------- ----------------Linux,4.18.0-193.6.3.el8_2.x86_64,x86_64,-junix,-smalloc,-sdefault,-hcritbitvarnish-6.0.6 Revision 29a1a8243dbef3d973aec28dc90403188c1dc8e7Type ' help' für die Befehlsliste. Geben Sie 'quit' ein, um die CLI-Sitzung zu schließen.

Führen Sie nun den folgenden Befehl aus, um alle Backends aufzulisten:

varnish>backend.list

Sie sollten die folgende Ausgabe sehen:

200 Back-End-Name Admin Probe Letzte Aktualisierungboot.default probe Fehlerfrei (keine Probe) Sa, 13. März 2021 03:00:02 GMT

Lacklog

Das Hilfsprogramm lacklog wird verwendet, um die Protokolle aller Benutzeranfragen anzuzeigen.

Varnishlog

Sie sollten die folgende Ausgabe erhalten:

* <> 6 - Begin bereq 5 fetch- VCL_use boot- Timestamp Start:1615604631.507187 0.000000 0.000000- BereqMethod GET- BereqURL /- BereqProtocol HTTP/1.1- BereqHeader Host:69.87.218.214- BereqHeader-Upgrade-Insecure :1- BereqHeader User-Agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36- BereqHeader Accept:text/html,application/xhtml+xml,application/ xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9- BereqHeader Accept-Language:en-GB,en -US;q=0.9,en;q=0.8- BereqHeader X-Forwarded-For:106.213.193.241- BereqHeader Accept-Encoding:gzip- BereqHeader X-Varnish:6- VCL_call BACKEND_FETCH- VCL_return fetch- BackendOpen 31 boot.default 127.0 .0.1 8080 127.0.0.1 58860- BackendStart 127.0.0.1 8080- Timestamp Bereq:1615604631.507458 0.000270 0.00027 0- Timestamp Beresp:1615604631.507844 0.000657 0.000386- BerespProtocol HTTP/1.1- BerespStatus 200- BerespReason OK- BerespHeader Server:nginx/1.14.1- BerespHeader Date:Sat, 13. März 2021 03:03:51 GMT- Beresp /html- BerespHeader Content-Length:4057- BerespHeader Last-Modified:Mo, 07. Okt. 2019 21:16:24 GMT

Lackstat

Der Befehl polishstat liefert Ihnen Informationen über In-Memory-Statistiken, Speicher, erstellte Threads und gelöschte Objekte.

Lackstat

Sie sollten den folgenden Bildschirm sehen:

Lackplatte

Der Befehl polishtop liest die Protokolle des gemeinsam genutzten Speichers von lackd und präsentiert eine ständig aktualisierte Liste der am häufigsten vorkommenden Protokolleinträge.

Lackplatte

Sie sollten den folgenden Bildschirm sehen:

Varnishhist

Varnishhist analysiert die Lackprotokolle und gibt die letzten n Anfragen nach ihrer Verarbeitung aus.

varnishhist

Sie sollten den folgenden Bildschirm sehen:

Schlussfolgerung

In der obigen Anleitung haben Sie gelernt, wie Sie den Varnish-Cache mit dem Apache- und Nginx-Webserver installieren und konfigurieren. Sie können jetzt den Varnish-Cache in der Produktionsumgebung implementieren und die Leistung Ihrer Website beschleunigen. Fühlen Sie sich frei, mich zu fragen, wenn Sie irgendwelche Fragen haben.


Cent OS
  1. So installieren Sie das SSL-Zertifikat auf Apache für CentOS 7

  2. So installieren und konfigurieren Sie Varnish Cache 6 mit Nginx unter CentOS 8

  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 Apache unter CentOS/RHEL 8

So installieren Sie Varnish Cache 6 für Nginx 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