Settu upp Varnish Cache 5.2 til að auka Apache árangur á CentOS 7
Varnish Cache (almennt þekktur sem Varnish), er opinn uppspretta, vinsæll öfugur proxy HTTP hraðall ætlaður til að flýta fyrir vefþjónum. Það er hannað fyrir óhóflega notaða API endapunkta og einnig fyrir kraftmiklar síður sem þjóna gríðarlegu efni og upplifa mikla umferð.
Það hjálpar í grundvallaratriðum að minnka CPU álag; styður álagsjafnvægi á vefþjónum og gerir vafra kleift að hlaða vefsvæðum fljótt vegna geymslu skyndiminni í vinnsluminni. Fjöldi stórfyrirtækja nota það, þar á meðal Facebook, Twitter og Wikipedia, svo aðeins sé nefnt.
- CentOS 7 með Apache uppsettu
- CentOS 7 með fastri IP tölu
Í þessari grein mun ég útskýra hvernig á að setja upp og nota Varnish Cache 6.5 sem framhlið á Apache vefþjóni í CentOS 7 (virkar líka á RHEL 7).
Skref 1: Settu upp Apache vefþjón á CentOS 7
1. Settu fyrst upp Apache HTTP miðlara frá sjálfgefnum CentOS hugbúnaðargeymslum með því að nota YUM pakkastjórann sem hér segir.
# yum install httpd
2. Þegar Apache hefur verið sett upp skaltu ræsa það í bili og gera það kleift að ræsast sjálfkrafa við ræsingu kerfisins.
# systemctl start httpd # systemctl enable httpd # systemctl status httpd
3. Uppfærðu næst eldveggreglur kerfisins til að leyfa pakka á heimleið á höfn 80 með því að nota skipanirnar hér að neðan.
# firewall-cmd --zone=public --permanent --add-service=http # firewall-cmd --reload
Skref 2: Settu upp Varnish Cache á CentOS 7
4. Nú eru til forsamdir RPM pakkar fyrir nýjustu útgáfuna af Varnish Cache 6 (þ.e. 6.5 þegar þetta er skrifað), þess vegna þarftu að bæta við opinberu Varnish Cache geymslunni.
Áður en það gerist þarftu að virkja EPEL geymsluna til að setja upp nokkra ósjálfstæðispakka eins og sýnt er.
# yum install -y epel-release
5. Settu næst upp pygpgme, pakka til að meðhöndla GPG undirskriftir og yum-utils, safn af gagnlegum tólum sem útvíkka innfædda eiginleika yum á ýmsan hátt.
# yum install pygpgme yum-utils
6. Búðu til skrá sem heitir /etc/yum.repos.d/varnishcache_varnish65.repo sem inniheldur geymsluuppsetninguna hér að neðan.
# vi /etc/yum.repos.d/varnishcache_varnish65.repo
Mikilvægt: Gakktu úr skugga um að skipta út el
og 7
í stillingunum hér að neðan fyrir Linux dreifingu og útgáfu:
[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. Keyrðu nú skipunina hér að neðan til að uppfæra staðbundna yum skyndiminni og settu upp lakk skyndiminni pakkann (ekki gleyma að samþykkja GPG lykilinn með því að slá inn y
eða yes
meðan þú setur upp pakki):
# yum -q makecache -y --disablerepo='*' --enablerepo='varnishcache_varnish65' # yum install varnish
8. Eftir að Varnish Cache hefur verið sett upp verður aðal keyrslan sett upp sem /usr/sbin/varnishd og lakkstillingarskrár eru staðsettar í /etc/varnish/:
- /etc/varnish/default.vcl – þetta er aðal lakkstillingarskráin, hún er skrifuð með vanish configuration language (VCL).
9. Ræstu nú lakkþjónustuna, gerðu henni kleift að ræsast sjálfkrafa við ræsingu kerfisins og staðfestu stöðu hennar til að tryggja að hún sé í gangi sem hér segir.
# systemctl start varnish # systemctl enable varnish # systemctl status varnish
10. Þú getur staðfest að uppsetning Varnish hafi heppnast með því að sjá staðsetningu Varnish executable og útgáfu uppsett á kerfinu þínu.
$ which varnishd $ varnishd -V
varnishd (varnish-6.5.1 revision 1dae23376bb5ea7a6b8e9e4b9ed95cdc9469fb64) Copyright (c) 2006 Verdens Gang AS Copyright (c) 2006-2020 Varnish Software
Skref 3: Stilltu Apache til að vinna með Varnish Cache
11. Stilltu nú Apache til að vinna í tengslum við Varnish Cache. Sjálfgefið er að Apache hlustar á höfn 80, þú þarft að breyta sjálfgefna HTTPD tenginu í 8080 – þetta mun tryggja að HTTPD keyri á bak við Varnish skyndiminni.
Þú getur notað sed skipunina til að breyta höfn 80 í 8080 eins og sýnt er.
# sed -i "s/Listen 80/Listen 8080/" /etc/httpd/conf/httpd.conf
Athugið: Einnig þarftu að breyta höfninni á sýndarhýsingarstillingunum þínum fyrir hverja vefsíðu sem þú vilt þjóna í gegnum Varnish. Hér er uppsetningin fyrir prófunarsíðuna okkar (/etc/httpd/conf.d/tecmint.lan.conf).
<VirtualHost *:8080> DocumentRoot "/var/www/html/tecmint.lan/" ServerName www.tecmint.lan # Other directives here </VirtualHost>
12. Næst skaltu opna varnish systemd stillingarskrána og finna færibreytuna ExecStart sem tilgreinir portið sem Varnish hlustar á og breyta gildi þess úr 6081 í 80 eins og sýnt er á skjámyndinni.
# systemctl edit --full varnish
Uppsetningin ætti að líta svona út þegar henni er lokið.
ExecStart=/usr/sbin/varnishd -a :80 -f /etc/varnish/default.vcl -s malloc,256m
13. Næst skaltu setja upp Apache sem bakendaþjón fyrir Varnish proxy, í /etc/varnish/default.vcl stillingarskránni.
# vi /etc/varnish/default.vcl
Finndu bakendahlutann og skilgreindu IP og höfn gestgjafans. Hér að neðan er sjálfgefna stuðningur stillingar, stilltu þetta til að benda á raunverulegan innihaldsþjón þinn.
backend default { .host = "127.0.0.1"; .port = "8080"; }
Ef bakendaþjónninn þinn er í gangi á öðrum netþjóni með heimilisfangið 10.42.1.10, þá ætti hýsilbreytan að benda á þessa IP tölu.
backend server1 { .host = "10.42.1.10"; .port = "8080"; }
14. Eftir að hafa framkvæmt allar nauðsynlegar stillingar skaltu endurræsa HTTPD og Varnish skyndiminni til að framkvæma ofangreindar breytingar.
# systemctl daemon-reload # systemctl restart httpd # systemctl restart varnish
Skref 4: Prófaðu Varnish Cache á Apache
15. Prófaðu að lokum hvort Varnish er virkt og vinnur með HTTPD þjónustunni með því að nota cURL skipunina hér að neðan, sem hægt er að nota til að skoða HTTP hausinn.
# curl -I http://localhost
HTTP/1.1 200 OK Date: Wed, 06 Jan 2021 08:36:07 GMT Server: Apache/2.4.6 (CentOS) Last-Modified: Thu, 16 Oct 2014 13:20:58 GMT ETag: "1321-5058a1e728280" Accept-Ranges: bytes Content-Length: 4897 Content-Type: text/html; charset=UTF-8 X-Varnish: 131085 Age: 0 Via: 1.1 varnish (Varnish/6.5) Connection: keep-alive
Fyrir frekari upplýsingar, skoðaðu Varnish Cache Github Repository: https://github.com/varnishcache/varnish-cache
Í þessari kennslu, útskýrðum við hvernig á að setja upp Varnish Cache 6.5 proxy fyrir Apache HTTP netþjón á CentOS 7. Ef þú hefur einhverjar fyrirspurnir eða frekari hugmyndir til að deila, notaðu athugasemdareyðublaðið hér að neðan til að skrifa okkur til baka.