Debian we Ubuntu-da Apache üçin Varnish Cache 5.2 guruň


Lak Keşi (Warniş hem diýilýär) açyk çeşme, häzirki zaman dizaýny bilen ýokary öndürijilikli HTTP tizlendiriji. Keş, müşderi tarapyndan haýyş edilende, şol bir web sahypasyny döretmekde web serwer çeşmeleriniň biderek sarp edilmezligini üpjün edýän ýadynda saklaýar.

Sahypalara has çalt hyzmat etmek üçin web serweriniň öňünde işlemek üçin düzülip bilner, şeýlelik bilen web sahypalary çalt ýüklener. Arka taraplaryň saglygyny barlamak, URL-ni täzeden ýazmak, “öli” arka taraplary sypaýy işlemek bilen ýük balansyny goldaýar we ESI üçin bölekleýin goldaw hödürleýär (Edge Side Includes).

CentOS 7 ulgamyndaky Apache web serwerleri üçin Varnish hakda makalalar tapgyrymyzda.

Bu makalada, Debian we Ubuntu ulgamlarynda Apache HTTP serweriniň öň tarapy hökmünde Varnish Cache 5.2-ni nädip gurmalydygyny we sazlamalydygyny düşündireris.

  1. LAMP Stack bilen gurlan Ubuntu ulgamy
  2. LAMP Stack bilen gurlan Debian ulgamy
  3. Statik IP adresi bolan Debian/Ubuntu ulgamy

1-nji ädim: Debian we Ubuntu-da lak keşini guruň

1. Bagtymyza, Varnish Cache 5-iň soňky wersiýasy üçin öňünden düzülen paketler bar (ýazylanda 5.2), şonuň üçin aşakda görkezilişi ýaly ulgamyňyza resmi Varnish ammaryny goşmaly.

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

Üns beriň: Debian ulanýan bolsaňyz, resmi Debian ammarlaryny barlamak üçin debian-archive-keyring paketini guruň.

$ sudo apt-get install debian-archive-keyring

2. Ondan soň, aşakdaky ammar konfigurasiýasyny öz içine alýan /etc/apt/sources.list.d/varnishcache_varnish5.list atly faýl dörediň. Linux koduňyzy paýlamak we wersiýa bilen ubuntu we ksenial çalyşmagy unutmaň.

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

3. Ondan soň, programma üpjünçiligi bukjasynyň ammaryny täzeläň we aşakdaky buýruklary ulanyp lak keşini guruň.

$ sudo apt update
$ sudo apt install varnish

4. Lak Keşini guranyňyzdan soň esasy konfigurasiýa faýllary/etc/lak/katalogynyň aşagynda gurlar.

  • /etc/default/lak - lak gurşawynyň konfigurasiýa faýly.
  • /etc/varnish/default.vcl - esasy lak konfigurasiýa faýly, ýitip barýan konfigurasiýa dili (VCL) bilen ýazylýar.
  • /etc/lak/syr - lak gizlin faýl.

Lak gurnamagynyň üstünlikli bolandygyny tassyklamak üçin wersiýasyny görmek üçin aşakdaky buýrugy işlediň.

$ varnishd -V

2-nji ädim: Apache lak keşi bilen işlemek üçin sazlaň

5. Indi “Varnish Cache” bilen işlemek üçin “Apache” -ni sazlamaly. Adaty tertipde Apache 80-nji porty diňleýär, Varnish keş keşbiniň aňyrsynda işlemegi üçin deslapky Apache portuny 8080-e üýtgetmeli.

Şonuň üçin Apache portlarynyň konfigurasiýa faýlyny /etc/apache2/ports.conf açyň we 80 diňlemek setirini tapyň, soňra 8080 diňlemek üçin üýtgediň.

Ativea-da bolmasa, 80-den 8080-nji porty aşakdaky ýaly üýtgetmek üçin sed buýrugyny işlediň.

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

6. Şeýle hem/etc/apache2/sites-available/-de ýerleşýän wirtual host faýlyňyza üýtgeşmeler girizmeli.

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

Port belgisini 8080-e üýtgediň.

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

7. systemd ulanýan ulgamlarda/etc/default/lak gurşaw konfigurasiýa faýly köneldi we indi hasap edilmeýär.

/Lib/systemd/system/varnish.service faýlyny/etc/systemd/system/-e göçürip, oňa birnäçe üýtgeşme girizmeli.

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

ExecStart hyzmat direktiwasyny üýtgetmeli, ol lak daemon iş wagtynyň opsiýalaryny kesgitleýär. Port lakynyň diňleýänini kesgitleýän -a baýdagynyň bahasyny 6081-den 80-e çenli düzüň.

8. lak hyzmaty bölüminiň faýlyna ýokardaky üýtgeşmeleri girizmek üçin aşakdaky systemctl buýrugyny işlediň:

$ sudo systemctl daemon-reload

9. Soňra, /etc/varnish/default.vcl konfigurasiýa faýlynda Varnish proksi üçin arka serweri hökmünde Apache düzüň.

# sudo vi /etc/varnish/default.vcl 

Yzky bölümi ulanyp, mazmun serweri üçin esasy IP we porty kesgitläp bilersiňiz. Aşakda ýerlihost ulanýan deslapky arka konfigurasiýasy (muny hakyky mazmun serweriňize görkezmek üçin düzüň).

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

10. aboveokardaky konfigurasiýany ýerine ýetireniňizden soň, aşakdaky buýruklary ýazyp, Apache we Varnish daemonyny täzeden açyň.

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

3-nji ädim: Apache-de lak keşini barlaň

11. Netijede, Varnish keş keşbiniň açykdygyny we HTTP sözbaşysyny görmek üçin aşakdaky cURL buýrugyny ulanyp, Apache HTTP serweri bilen işleýändigini barlaň.

$ curl -I http://localhost

Bu! Lak Keşi barada has giňişleýin maglumat üçin https://github.com/varnishcache/varnish-cache girip görüň

Bu gollanmada, Debian we Ubuntu ulgamlarynda Apache HTTP serweri üçin Varnish Cache 5.2-i nädip gurnamalydygyny düşündirdik. Islän pikirleriňizi ýa-da soraglaryňyzy aşakdaky pikirleriň üsti bilen paýlaşyp bilersiňiz.