Įdiekite „Varnish Cache 5.2“, skirtą „Apache“, „Debian“ ir „Ubuntu“.


Lako talpykla (taip pat vadinama Lakas) yra atvirojo kodo, didelio našumo šiuolaikiško dizaino HTTP spartintuvas. Jis saugo talpyklą atmintyje, užtikrindamas, kad žiniatinklio serverio ištekliai nebūtų švaistomi kuriant tą patį tinklalapį vėl ir vėl, kai to paprašo klientas.

Jį galima sukonfigūruoti taip, kad jis veiktų prieš žiniatinklio serverį, kad puslapiai būtų aptarnaujami daug greičiau, todėl svetainės įkeliamos greitai. Jis palaiko apkrovos balansavimą su užpakalinių sistemų būklės patikrinimu, URL perrašymu, grakščiai „negyvomis“ sistemomis ir dalinai palaiko ESI (Edge Side Includes).

Straipsnių serijoje apie „Varnish Cache“ parodėme, kaip „CentOS 7“ sistemoje nustatyti „Varnish for Nginx“ ir „Varnish for Apache“ žiniatinklio serverius.

Šiame straipsnyje paaiškinsime, kaip įdiegti ir konfigūruoti Varnish Cache 5.2 kaip Apache HTTP serverio sąsają Debian ir Ubuntu sistemose.

Reikalavimai:

  1. Ubuntu sistema įdiegta su LAMP Stack
  2. Debian sistema įdiegta su LAMP Stack
  3. Debian/Ubuntu sistema su statiniu IP adresu

1 veiksmas: „Debian“ ir „Ubuntu“ įdiekite „Varnish Cache“.

1. Laimei, yra iš anksto sudarytų paketų, skirtų naujausiai Varnish Cache 5 versijai (t. y. 5.2 rašymo metu), todėl jūs reikia į savo sistemą įtraukti oficialią Varnish saugyklą, kaip parodyta toliau.

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

Svarbu: jei naudojate Debian, įdiekite paketą debian-archive-keyring, kad patikrintumėte oficialias Debiano saugyklas .

sudo apt-get install debian-archive-keyring

2. Po to sukurkite failą pavadinimu /etc/apt/sources.list.d/varnishcache_varnish5.list, kuriame yra toliau nurodyta saugyklos konfigūracija. Būtinai pakeiskite ubuntu ir xenial savo Linux platinimu ir versija.

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

3. Tada atnaujinkite programinės įrangos paketų saugyklą ir įdiekite lako talpyklą naudodami šias komandas.

sudo apt update
sudo apt install varnish

4. Įdiegus „Varnish Cache“, pagrindiniai konfigūracijos failai bus įdiegti kataloge /etc/varnish/.

  • /etc/default/varnish – lako aplinkos konfigūracijos failas.
  • /etc/varnish/default.vcl – pagrindinis lako konfigūracijos failas, parašytas naudojant Vanish Configuration Language (VCL).
  • /etc/varnish/secret – slaptas lako failas.

Norėdami patvirtinti, kad lako diegimas buvo sėkmingas, paleiskite šią komandą, kad pamatytumėte versiją.

varnishd -V

2 veiksmas: sukonfigūruokite „Apache“ darbui su lako talpykla

5. Dabar reikia sukonfigūruoti „Apache“, kad jis veiktų su „Varnish Cache“. Pagal numatytuosius nustatymus „Apache“ klauso per prievadą 80, turite pakeisti numatytąjį „Apache“ prievadą į 8080, kad jis veiktų naudojant „Lako talpyklą“.

Taigi atidarykite „Apache“ prievadų konfigūracijos failą /etc/apache2/ports.conf ir raskite eilutę klausykite 80, tada pakeiskite ją į klausykite 8080.

Arba tiesiog paleiskite komandą sed, kad pakeistumėte prievadą 80 į 8080, kaip nurodyta toliau.

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

6. Taip pat turite pakeisti virtualiosios prieglobos failą, esantį /etc/apache2/sites-available/.

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

Pakeiskite prievado numerį į 8080.

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

7. Sistemose, kuriose naudojama systemd, aplinkos konfigūracijos failas /etc/default/varnish yra pasenęs ir nebelaikomas.

Turite nukopijuoti failą /lib/systemd/system/varnish.service į /etc/systemd/system/ ir atlikti keletą jo pakeitimų.

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

Turite pakeisti paslaugų direktyvą ExecStart, kuri apibrėžia lako demono vykdymo parinktis. Nustatykite vėliavėlės -a, kuri apibrėžia prievado lako klausymą, reikšmę nuo 6081 iki 80.

8. Norėdami atlikti anksčiau nurodytus lako aptarnavimo vieneto failo pakeitimus, paleiskite šią systemctl komandą:

sudo systemctl daemon-reload

9. Tada /etc/varnish/default.vcl konfigūracijos faile sukonfigūruokite „Apache“ kaip pagrindinį „Varnish“ tarpinio serverio serverį.

sudo vi /etc/varnish/default.vcl 

Naudodami skiltį backend galite apibrėžti pagrindinio kompiuterio IP ir turinio serverio prievadą. Toliau pateikiama numatytoji užpakalinės sistemos konfigūracija, kuri naudoja „localhost“ (nustatykite, kad ji nukreiptų į tikrąjį turinio serverį).

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

10. Atlikę visą aukščiau nurodytą konfigūraciją, iš naujo paleiskite „Apache“ ir „Varnish“ demoną įvesdami šias komandas.

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

3 veiksmas: išbandykite lako talpyklą „Apache“.

11. Galiausiai patikrinkite, ar „Varnish“ talpykla įgalinta ir veikia su „Apache“ HTTP serveriu, naudodami toliau pateiktą cURL komandą, kad peržiūrėtumėte HTTP antraštę.

curl -I http://localhost

Viskas! Norėdami gauti daugiau informacijos apie Lako talpyklą, apsilankykite – https://github.com/varnishcache/varnish-cache

Šiame vadove paaiškinome, kaip nustatyti Varnish Cache 5.2, skirtą Apache HTTP serveriui Debian ir Ubuntu sistemose. Galite pasidalinti mintimis ar užklausomis su mumis naudodami toliau pateiktą atsiliepimą.