Asenna Varnish Cache 5.2 parantaaksesi Apachen suorituskykyä CentOS 7:ssä


Varnish Cache (tunnetaan yleisesti nimellä Varnish) on avoimen lähdekoodin suosittu käänteisen välityspalvelimen HTTP-kiihdytin, joka on tarkoitettu verkkopalvelimien nopeuttamiseen. Se on suunniteltu liikaa käytettyjä API-päätepisteitä ja myös dynaamisia sivustoja varten, jotka palvelevat valtavaa sisältöä ja kokevat paljon liikennettä.

Se periaatteessa auttaa vähentämään suorittimen kuormitusta; tukee verkkopalvelimien kuormituksen tasapainotusta ja mahdollistaa selaimen nopean lataamisen sivustot välimuistin RAM-muistiin tallentamisen seurauksena. Useat suuret yritykset käyttävät sitä, mukaan lukien Facebook, Twitter ja Wikipedia vain muutaman mainitakseni.

Vaatimukset

  1. CentOS 7, johon on asennettu Apache
  2. CentOS 7, jossa on staattinen IP-osoite

Tässä artikkelissa selitän, kuinka Varnish Cache 6.5 asennetaan ja käytetään käyttöliittymänä Apache-verkkopalvelimelle CentOS 7:ssä ( toimii myös RHEL 7:ssä).

Vaihe 1: Asenna Apache Web Server CentOS 7:ään

1. Asenna ensin Apache HTTP-palvelin CentOS-oletusohjelmistovarastoista käyttämällä YUM-paketinhallintaa seuraavasti.

yum install httpd

2. Kun Apache on asennettu, käynnistä se toistaiseksi ja anna sen käynnistyä automaattisesti järjestelmän käynnistyksen yhteydessä.

systemctl start httpd
systemctl enable httpd
systemctl status httpd

3. Päivitä seuraavaksi järjestelmän palomuurisäännöt salliaksesi saapuvat paketit portissa 80 alla olevien komentojen avulla.

firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --reload

Vaihe 2: Asenna Varnish Cache CentOS 7:ään

4. Nyt on valmiiksi käännetyt RPM-paketit Varnish Cache 6:n uusimmalle versiolle (eli 6.5 tätä kirjoitettaessa). sinun on lisättävä virallinen Varnish Cache -tietovarasto.

Ennen sitä sinun on sallittava EPEL-arkisto asentaa useita riippuvuuspaketteja kuvan mukaisesti.

yum install -y epel-release

5. Asenna seuraavaksi pygpgme, paketti GPG-allekirjoitusten ja yum-utilien käsittelyyn. Se on kokoelma hyödyllisiä apuohjelmia, jotka laajentavat yumin alkuperäisiä ominaisuuksia monin eri tavoin.

yum install pygpgme yum-utils

6. Luo nyt tiedosto nimeltä /etc/yum.repos.d/varnishcache_varnish65.repo, joka sisältää alla olevat arkiston määritykset.

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

Tärkeää: Muista korvata el ja 7 alla olevissa määrityksissä Linux-jakelullasi ja -versiollasi:

[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. Päivitä paikallinen yum-välimuisti ja asenna lakkavälimuistipaketti suorittamalla alla oleva komento (älä unohda hyväksyä GPG-avain kirjoittamalla y tai yes paketin asennuksen aikana):

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

8. Kun Varnish Cache on asennettu, pääsuoritettava tiedosto asennetaan muodossa /usr/sbin/varnishd ja lakka-määritystiedostot sijaitsevat >/etc/lakka/:

  • /etc/varnish/default.vcl – tämä on lakan päämääritystiedosto, se on kirjoitettu käyttämällä VCL (vanish Configuration Language) -asetusta.

9. Käynnistä nyt lakkapalvelu, ota se käyttöön automaattisesti järjestelmän käynnistyksen aikana ja tarkista sen tila varmistaaksesi, että se on toiminnassa seuraavasti.

systemctl start varnish
systemctl enable varnish
systemctl status varnish

10. Voit varmistaa, että Varnishin asennus onnistui, kun näet Varnishin suoritettavan tiedoston sijainnin ja järjestelmääsi asennetun version.

which varnishd
varnishd -V
Näytelähtö
varnishd (varnish-6.5.1 revision 1dae23376bb5ea7a6b8e9e4b9ed95cdc9469fb64)
Copyright (c) 2006 Verdens Gang AS
Copyright (c) 2006-2020 Varnish Software

Vaihe 3: Määritä Apache toimimaan lakkavälimuistin kanssa

11. Määritä nyt Apache toimimaan yhdessä Varnish Cachen kanssa. Oletuksena Apache kuuntelee porttia 80, sinun on vaihdettava HTTPD-oletusportiksi 8080 – tämä varmistaa, että HTTPD toimii Varnish-välimuistin takana.

Voit vaihtaa portin 80 portiksi 8080 komennolla sed kuvan mukaisesti.

sed -i "s/Listen 80/Listen 8080/" /etc/httpd/conf/httpd.conf

Huomaa: Sinun on myös vaihdettava portti virtuaalipalvelimesi määrityksissä jokaiselle verkkosivustolle, jota haluat käyttää Varnishin kautta. Tässä on testisivustomme (/etc/httpd/conf.d/tecmint.lan.conf) määritykset.

<VirtualHost *:8080>
    DocumentRoot "/var/www/html/tecmint.lan/"
    ServerName www.tecmint.lan
    # Other directives here
</VirtualHost>

12. Avaa seuraavaksi varnish systemd -määritystiedosto ja etsi parametri ExecStart, joka määrittää portin, jota Varnish kuuntelee, ja muuta sen arvoa arvosta 6081. 80, kuten kuvakaappauksessa näkyy.

systemctl edit --full  varnish

Kokoonpanon pitäisi näyttää tältä, kun se on valmis.

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

13. Määritä seuraavaksi Apache Varnishin välityspalvelimen taustapalvelimeksi /etc/varnish/default.vcl-määritystiedostossa.

vi /etc/varnish/default.vcl 

Etsi backend-osio ja määritä isäntä-IP ja portti. Alla on taustajärjestelmän oletuskokoonpano, aseta tämä osoittamaan todellista sisältöpalvelinta.

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

Jos taustapalvelimesi toimii toisella palvelimella, jonka osoite on 10.42.1.10, isäntäparametrin tulee osoittaa tähän IP-osoitteeseen.

backend server1 {
    .host = "10.42.1.10";
    .port = "8080";
}

14. Kun olet tehnyt kaikki tarvittavat asetukset, käynnistä HTTPD- ja Varnish-välimuisti uudelleen suorittaaksesi yllä olevat muutokset.

systemctl daemon-reload
systemctl restart httpd
systemctl restart varnish

Vaihe 4: Testaa lakkavälimuistia Apachella

15. Testaa lopuksi, onko Varnish käytössä ja toimiiko HTTPD-palvelun kanssa käyttämällä alla olevaa cURL-komentoa, jota voidaan käyttää HTTP-otsikon katseluun.

curl -I http://localhost
Näytelähtö
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

Lisätietoja saat Varnish Cache Github Repositorysta: https://github.com/varnishcache/varnish-cache

Tässä opetusohjelmassa selitimme, kuinka Varnish Cache 6.5 -välityspalvelin määritetään Apache HTTP -palvelimelle CentOS 7:ssä. Jos sinulla on kysyttävää tai muita ideoita jaettavaa, käytä alla olevaa palautelomaketta kirjoittaaksesi meille takaisin .