Otu esi etinye Varnish Cache 5.2 maka Nginx na CentOS 7


Cache Varnish (nke a na-akpọkwa Varnish) bụ ihe mepere emepe, ngwa ngwa HTTP arụmarụ dị elu emebere maka ịgbasa sava weebụ ọsọ ọsọ. N'ime akụkọ ikpeazụ anyị, anyị akọwala otu esi edozi CentOS 8.

N'isiokwu a, anyị ga-egosi gị otu esi etinye ma jiri Varnish Cache dị ka njedebe n'ihu na Nginx HTTP nkesa na CentOS 7. Ntuziaka a kwesịkwara ịrụ ọrụ na RHEL 7.

  1. CentOS 7 nwere Apache arụnyere
  2. CentOS 7 nwere adreesị IP kwụ ọtọ

Kwụpụ 1: Wụnye Nginx Web Server na CentOS 7

1. Malite site na ịwụnye Nginx HTTP nkesa site na ndabara CentOS software repositories iji YUM ngwugwu njikwa dị ka ndị a.

# yum install nginx

2. Mgbe echichi ahụ mechara, malite ọrụ Nginx ugbu a ma mee ka ọ malite na-akpaghị aka na boot system.

# systemctl start nginx
# systemctl enable nginx
# systemctl status nginx

3. Ugbu a gbanwee iwu firewall sistemu iji kwe ka ngwugwu inbound na ọdụ ụgbọ mmiri 80 jiri iwu ndị dị n'okpuru.

# firewall-cmd --zone=public --permanent --add-port=80/tcp
# firewall-cmd --reload
# firewall-cmd --zone=public --permanent --add-port=8080/tcp
# firewall-cmd --reload

Kwụpụ 2: Wụnye Cache Varnish na CentOS 7

4. Ugbu a enwere ngwugwu RPM achịkọtara nke ọma maka ụdị Varnish Cache 6 kachasị ọhụrụ (ya bụ 6.5 n'oge ederede), yabụ ịkwesịrị ịgbakwunye ebe nchekwa Varnish Cache gọọmentị.

Tupu nke ahụ, ịkwesịrị ịme ka ebe nchekwa EPEL rụnye ọtụtụ ngwugwu ndabere dịka egosiri.

# yum install -y epel-release

5. Na-esote, wụnye pygpgme, ngwugwu maka ijikwa akara GPG na yum-utils, nchịkọta ọrụ bara uru nke na-agbatị njirimara ala yum n'ụzọ dị iche iche.

# yum install pygpgme yum-utils

6. Ugbu a mepụta faịlụ aha ya bụ /etc/yum.repos.d/varnishcache_varnish5.repo nke nwere nhazi nhazi n'okpuru.

# vi /etc/yum.repos.d/varnishcache_varnish65.repo

Ihe dị mkpa: Gbaa mbọ hụ na iji nkesa na ụdị Linux gị dochie el na 7 na nhazi dị n'okpuru:

[varnishcache_varnish65]
name=varnishcache_varnish65
baseurl=https://packagecloud.io/varnishcache/varnish65/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/varnishcache/varnish65/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

[varnishcache_varnish65-source]
name=varnishcache_varnish65-source
baseurl=https://packagecloud.io/varnishcache/varnish65/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/varnishcache/varnish65/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

7. Ugbu a na-agba ọsọ iwu n'okpuru ka imelite gị local yum cache na wụnye varnish cache ngwugwu (echefula ịnakwere igodo GPG site na ịpị y ma ọ bụ ee mgbe ị na-etinye ya ngwugwu):

# yum -q makecache -y --disablerepo='*' --enablerepo='varnishcache_varnish65'
# yum install varnish 

8. Mgbe ị wụnye Varnish Cache, a ga-arụnye isi ọrụ dị ka/usr/sbin/varnished na varnish nhazi faịlụ dị na /etc/varnish/:

  • /etc/varnish/default.vcl - nke a bụ isi faịlụ nhazi varnish, ejiri asụsụ nhazi vanish (VCL) dee ya.

9. Ugbu a bido ọrụ varnish, mee ka ọ malite na-akpaghị aka n'oge buut sistemu, ma nyochaa ọnọdụ ya iji hụ na ọ na-agba ọsọ dị ka ndị a.

# systemctl start varnish
# systemctl enable varnish
# systemctl status varnish

10. Ị nwere ike ikwenye na nrụnye Varnish gara nke ọma site n'ịhụ ebe Varnish executable na ụdị arụnyere na usoro gị.

$ which varnishd
$ varnishd -V
varnishd (varnish-6.5.1 revision 1dae23376bb5ea7a6b8e9e4b9ed95cdc9469fb64)
Copyright (c) 2006 Verdens Gang AS
Copyright (c) 2006-2020 Varnish Software

Kwụpụ 3: Hazie Nginx ka ọ rụọ ọrụ na Cache Varnish

11. N'ime usoro a, ịkwesịrị ịhazi Nginx ka ọ rụọ ọrụ na Varnish Cache. Site na ndabara Nginx na-ege ntị na ọdụ ụgbọ mmiri 80, ị kwesịrị ịgbanwe ọdụ ụgbọ mmiri Nginx na 8080 ka ọ na-aga n'azụ caching Varnish.

Mepee faịlụ nhazi Nginx /etc/nginx/nginx.conf wee chọta ahịrị ahụ gee ntị 80 wee gbanwee ya ka ọ gee ntị 8080 dị ka ọ dị na ngọngọ ihe nkesa egosiri na nseta ihuenyo dị n'okpuru.

# vi /etc/nginx/nginx.conf

Mara: Ekwesịrị ime nke a na faịlụ nhazi ngọngọ sava niile (a na-emepụtakarị n'okpuru /etc/nginx/conf.d/) maka weebụsaịtị ịchọrọ ijere site na Varnish.

12. Ọzọ, mepee faịlụ nhazi ọrụ varnish wee chọta parameter ExecStart nke na-akọwapụta ọdụ ụgbọ mmiri Varnish na-ege ntị, ma gbanwee uru ya site na 6081 gaa na 80.

# systemctl edit --full  varnish

Ahịrị kwesịrị ịdị ka egosiri.

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

13. Ọzọ, guzobe Nginx dị ka ihe nkesa azụ maka Varnish proxy, na faịlụ nhazi /etc/varnish/default.vcl.

# vi /etc/varnish/default.vcl 

Chọta ngalaba azụ azụ, ma kọwaa IP na ọdụ ụgbọ mmiri onye ọbịa. N'okpuru bụ nhazi ndabere ndabere, tọọ nke a ka ọ rụtụ aka na nkesa ọdịnaya gị n'ezie.

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

14. Mgbe ịmechara nhazi niile dị mkpa, malitegharịa Nginx HTTPD na Varnish cache iji mee mgbanwe ndị dị n'elu.

# systemctl daemon-reload
# systemctl restart nginx
# systemctl restart varnish

Kwụpụ 4: Nwalee cache Varnish na Nginx

15. N'ikpeazụ, nwalee ma ọ bụrụ na Varnish cache na-arụ ọrụ na ọrụ Nginx na-eji iwu cURL dị n'okpuru ebe a iji lelee isi HTTP.

# curl -I http://localhost
HTTP/1.1 200 OK
Server: nginx/1.16.1
Date: Wed, 06 Jan 2021 09:24:18 GMT
Content-Type: text/html
Content-Length: 4833
Last-Modified: Fri, 16 May 2014 15:12:48 GMT
ETag: "53762af0-12e1"
X-Varnish: 2
Age: 0
Via: 1.1 varnish (Varnish/6.5)
Accept-Ranges: bytes
Connection: keep-alive

Ị nwere ike ịchọta ozi ndị ọzọ site na Varnish Cache Github Repository: https://github.com/varnishcache/varnish-cache

N'ime nkuzi a, anyị kọwara otu esi edozi Varnish Cache maka sava Nginx HTTP na CentOS 7. Jiri mpempe okwu dị n'okpuru zitere anyị ajụjụ ọ bụla ma ọ bụ echiche ndị ọzọ.