Sakinisha Cache ya Varnish 5.2 ya Apache kwenye Debian na Ubuntu


Cache ya Varnish (pia inaitwa Varnish) ni chanzo huria, kiongeza kasi cha HTTP chenye utendakazi wa juu chenye muundo wa kisasa. Huhifadhi akiba kwenye kumbukumbu ili kuhakikisha kuwa rasilimali za seva ya wavuti hazipotei katika kuunda ukurasa huo wa wavuti tena na tena wakati mteja atakapoombwa.

Inaweza kusanidiwa kuendeshwa mbele ya seva ya wavuti ili kutumikia kurasa kwa njia ya haraka zaidi na hivyo kufanya tovuti zipakie haraka. Inaauni kusawazisha upakiaji na ukaguzi wa kiafya wa viambajengo vya nyuma, uandishi upya wa URL, ushughulikiaji mzuri wa sehemu za nyuma zilizokufa na hutoa usaidizi wa sehemu kwa ESI (Edge Side Inajumuisha).

Katika safu yetu ya vifungu vinavyohusu Varnish kwa seva za wavuti za Apache kwenye mfumo wa CentOS 7.

Katika makala haya, tutaelezea jinsi ya kusakinisha na kusanidi Varnish Cache 5.2 kama sehemu ya mbele ya seva ya Apache HTTP kwenye mifumo ya Debian na Ubuntu.

  1. Mfumo wa Ubuntu uliosakinishwa kwa Rafu ya LAMP
  2. Mfumo wa Debian uliosakinishwa kwa Rafu ya LAMP
  3. Mfumo wa Debian/Ubuntu wenye anwani tuli ya IP

Hatua ya 1: Sakinisha Cache ya Varnish kwenye Debian na Ubuntu

1. Kwa bahati nzuri, kuna vifurushi vilivyokusanywa mapema vya toleo jipya zaidi la Varnish Cache 5 (yaani 5.2 wakati wa kuandika), kwa hivyo unahitaji kuongeza hazina rasmi ya Varnish kwenye mfumo wako kama inavyoonyeshwa hapa chini.

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

Muhimu: Ikiwa unatumia Debian, sakinisha kifurushi cha debian-archive-keyring kwa kuthibitisha hazina rasmi za Debian.

$ sudo apt-get install debian-archive-keyring

2. Baada ya hapo, unda faili inayoitwa /etc/apt/sources.list.d/varnishcache_varnish5.list ambayo ina usanidi wa hifadhi hapa chini. Hakikisha umebadilisha ubuntu na xenial na usambazaji na toleo lako la Linux.

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

3. Kisha, sasisha hifadhi ya kifurushi cha programu na usakinishe cache ya varnish kwa kutumia amri zifuatazo.

$ sudo apt update
$ sudo apt install varnish

4. Baada ya kufunga Cache ya Varnish, faili kuu za usanidi zitawekwa chini ya /etc/varnish/ directory.

  • /etc/default/varnish - faili ya usanidi wa mazingira ya varnish.
  • /etc/varnish/default.vcl - faili kuu ya usanidi wa varnish, imeandikwa kwa kutumia lugha ya usanidi ya vanish (VCL).
  • /etc/varnish/secret - faili ya siri ya varnish.

Ili kuthibitisha kuwa usakinishaji wa Varnish ulifanikiwa, endesha amri ifuatayo ili kuona toleo.

$ varnishd -V

Hatua ya 2: Sanidi Apache kufanya kazi na Cache ya Varnish

5. Sasa unahitaji kusanidi Apache kufanya kazi na Varnish Cache. Kwa chaguo-msingi, Apache inasikiza kwenye mlango wa 80, unahitaji kubadilisha lango chaguo-msingi la Apache hadi 8080 ili kuiwasha iendeshe nyuma ya akiba ya Varnish.

Kwa hivyo fungua faili ya usanidi wa bandari za Apache /etc/apache2/ports.conf na utafute laini ya kusikiliza 80, kisha uibadilishe ili usikilize 8080.

Vinginevyo, endesha tu sed amri ya kubadilisha bandari 80 hadi 8080 kama ifuatavyo.

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

6. Pia unahitaji kufanya mabadiliko kwa faili yako ya seva pangishi iliyo katika /etc/apache2/sites-available/.

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

Badilisha nambari ya bandari hadi 8080.

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

7. Kwenye mifumo inayotumia systemd, faili ya /etc/default/varnish ya usanidi wa mazingira imeacha kutumika na haizingatiwi tena.

Unahitaji kunakili faili /lib/systemd/system/varnish.service kwa /etc/systemd/system/ na ufanye mabadiliko machache kwake.

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

Unahitaji kurekebisha maagizo ya huduma ExecStart, inafafanua chaguzi za wakati wa kukimbia za daemon ya varnish. Weka thamani ya -a bendera, ambayo inafafanua varnish ya mlango inasikiza, kutoka 6081 hadi 80.

8. Ili kutekeleza mabadiliko yaliyo hapo juu kwenye faili ya kitengo cha huduma ya varnish, endesha amri ya systemctl ifuatayo:

$ sudo systemctl daemon-reload

9. Kisha, sanidi Apache kama seva ya nyuma kwa seva mbadala ya Varnish, katika faili ya usanidi ya /etc/varnish/default.vcl.

# sudo vi /etc/varnish/default.vcl 

Kwa kutumia sehemu ya nyuma, unaweza kufafanua IP mwenyeji na mlango wa seva yako ya maudhui. Ifuatayo ni usanidi chaguo-msingi wa mazingira nyuma ambao hutumia mwenyeji (weka hii ili kuelekeza kwenye seva yako halisi ya maudhui).

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

10. Mara baada ya kutekeleza usanidi wote hapo juu, anzisha upya Apache na Varnish daemon kwa kuandika amri zifuatazo.

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

Hatua ya 3: Jaribu Cache ya Varnish kwenye Apache

11. Hatimaye, jaribu kama akiba ya Varnish imewashwa na ufanye kazi na seva ya Apache HTTP kwa kutumia amri ya cURL iliyo hapa chini ili kutazama kichwa cha HTTP.

$ curl -I http://localhost

Hiyo ndiyo! Kwa habari zaidi kuhusu Cache ya Varnish, tembelea - https://github.com/varnishcache/varnish-cache

Katika somo hili, tumeelezea jinsi ya kusanidi Cache ya Varnish 5.2 kwa seva ya Apache HTTP kwenye mifumo ya Debian na Ubuntu. Unaweza kushiriki nasi mawazo au maswali yoyote kupitia maoni kutoka hapa chini.