Instalați Varnish Cache 5.2 pentru Apache pe Debian și Ubuntu


Varnish Cache (numit și Varnish) este un accelerator HTTP de înaltă performanță, cu sursă deschisă, cu un design modern. Stochează memoria cache în memorie, asigurându-se că resursele serverului web nu sunt irosite în crearea aceleiași pagini web din nou și din nou atunci când este solicitat de un client.

Poate fi configurat să ruleze în fața unui server web pentru a servi paginile într-un mod mult mai rapid, astfel încât site-urile web se încarcă rapid. Acceptă echilibrarea încărcăturii cu verificarea stării de sănătate a backend-urilor, rescrierea URL-urilor, gestionarea grațioasă a backend-urilor „moarte” și oferă suport parțial pentru ESI (Edge Side Includes).

În seria noastră de articole referitoare la Varnish Cache, am arătat cum să configurați Varnish pentru Nginx și Varnish pentru serverele web Apache pe un sistem CentOS 7.

În acest articol, vom explica cum să instalați și să configurați Varnish Cache 5.2 ca front-end pentru serverul Apache HTTP pe sistemele Debian și Ubuntu.

Cerințe:

  1. Un sistem Ubuntu instalat cu LAMP Stack
  2. Un sistem Debian instalat cu LAMP Stack
  3. Un sistem Debian/Ubuntu cu adresă IP statică

Pasul 1: Instalați Varnish Cache pe Debian și Ubuntu

1. Din fericire, există pachete precompilate pentru cea mai recentă versiune a Varnish Cache 5 (adică 5.2 la momentul scrierii), astfel încât trebuie să adăugați depozitul oficial Varnish în sistemul dvs., așa cum se arată mai jos.

curl -L https://packagecloud.io/varnishcache/varnish5/gpgkey | sudo apt-key add -

Important: dacă utilizați Debian, instalați pachetul debian-archive-keyring pentru a verifica depozitele oficiale Debian .

sudo apt-get install debian-archive-keyring

2. După aceea, creați un fișier denumit /etc/apt/sources.list.d/varnishcache_varnish5.list care conține configurația depozitului de mai jos. Asigurați-vă că înlocuiți ubuntu și xenial cu distribuția și versiunea dvs. Linux.

deb https://packagecloud.io/varnishcache/varnish5/ubuntu/ xenial main  
deb-src https://packagecloud.io/varnishcache/varnish5/ubuntu/ xenial  main

3. Apoi, actualizați depozitul de pachete software și instalați memoria cache de lac folosind următoarele comenzi.

sudo apt update
sudo apt install varnish

4. După instalarea Varnish Cache, fișierele de configurare principale vor fi instalate în directorul /etc/varnish/.

  • /etc/default/varnish – fișierul de configurare a mediului de lac.
  • /etc/varnish/default.vcl – fișierul principal de configurare a lacului, este scris folosind limbajul de configurare vanish (VCL).
  • /etc/varnish/secret – fișier secret lac.

Pentru a confirma că instalarea Varnish a avut succes, rulați următoarea comandă pentru a vedea versiunea.

varnishd -V

Pasul 2: Configurați Apache să funcționeze cu Varnish Cache

5. Acum trebuie să configurați Apache să funcționeze cu Varnish Cache. În mod implicit, Apache ascultă pe portul 80, trebuie să schimbați portul implicit Apache la 8080 pentru a-l permite să ruleze în spatele memoriei cache Varnish.

Așadar, deschideți fișierul de configurare porturi Apache /etc/apache2/ports.conf și găsiți linia ascultați 80, apoi schimbați-o în ascultați 8080.

Ca alternativă, rulați comanda sed pentru a schimba portul 80 în 8080, după cum urmează.

sudo sed -i "s/Listen 80/Listen 8080/" /etc/apache2/ports.conf

6. De asemenea, trebuie să faceți modificări fișierului gazdă virtuală aflat în /etc/apache2/sites-available/.

sudo vi /etc/apache2/sites-available/000-default.conf

Schimbați numărul portului la 8080.

<VirtualHost *:8080>
	#virtual host configs here
</VirtualHost>

7. Pe sistemele care utilizează systemd, fișierul de configurare a mediului /etc/default/varnish este depreciat și nu mai este luat în considerare.

Trebuie să copiați fișierul /lib/systemd/system/varnish.service în /etc/systemd/system/ și să-i faceți câteva modificări.

sudo cp /lib/systemd/system/varnish.service /etc/systemd/system/
sudo vi /etc/systemd/system/varnish.service

Trebuie să modificați directiva de serviciu ExecStart, aceasta definește opțiunile de execuție ale demonului varnish. Setați valoarea indicatorului -a, care definește portul pe care lacul îl ascultă, de la 6081 la 80.

8. Pentru a efectua modificările de mai sus la fișierul unității de serviciu lac, rulați următoarea comandă systemctl:

sudo systemctl daemon-reload

9. Apoi, configurați Apache ca server backend pentru proxy Varnish, în fișierul de configurare /etc/varnish/default.vcl.

sudo vi /etc/varnish/default.vcl 

Folosind secțiunea backend, puteți defini IP-ul gazdei și portul pentru serverul dvs. de conținut. Următoarea este configurația implicită de backend care utilizează localhost (setați aceasta să trimită către serverul dvs. de conținut actual).

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

10. După ce ați efectuat toate configurațiile de mai sus, reporniți demonul Apache și Varnish tastând următoarele comenzi.

sudo systemctl restart apache
sudo systemctl start varnish
sudo systemctl enable varnish
sudo systemctl status varnish

Pasul 3: Testează Varnish Cache pe Apache

11. În cele din urmă, testați dacă memoria cache Varnish este activată și funcționează cu serverul HTTP Apache folosind comanda cURL de mai jos pentru a vedea antetul HTTP.

curl -I http://localhost

Asta este! Pentru mai multe informații despre Varnish Cache, vizitați – https://github.com/varnishcache/varnish-cache

În acest tutorial, am explicat cum să configurați Varnish Cache 5.2 pentru serverul Apache HTTP pe sistemele Debian și Ubuntu. Ne puteți împărtăși orice gânduri sau întrebări prin feedback-ul de mai jos.