Varnish Cache 5.2:n asentaminen Nginxille CentOS 7:ään


Varnish Cache (tunnetaan myös nimellä Varnish) on avoimen lähdekoodin tehokas HTTP-kiihdytin, joka on suunniteltu nopeuttamaan verkkopalvelimia. Viimeisissä artikkeleissamme olemme selittäneet, kuinka Varnish Cache määritetään Apachelle CentOS 7:ssä ja CentOS 8:ssa.

Tässä artikkelissa näytämme, kuinka Varnish Cache asennetaan ja käytetään käyttöliittymänä Nginx HTTP -palvelimelle CentOS 7:ssä. Tämän oppaan pitäisi toimia myös RHEL 7:ssä.

Vaatimukset

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

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

1. Aloita asentamalla Nginx HTTP -palvelin CentOS-oletusohjelmistovarastoista käyttämällä YUM-pakettienhallintaa seuraavasti.

yum install nginx

2. Kun asennus on valmis, käynnistä Nginx-palvelu toistaiseksi ja ota se käyttöön automaattisesti järjestelmän käynnistyksen yhteydessä.

systemctl start nginx
systemctl enable nginx
systemctl status nginx

3. Muokkaa nyt järjestelmän palomuurisääntöjä sallimaan saapuvat paketit portissa 80 alla olevien komentojen avulla.

firewall-cmd --zone=public --permanent --add-port=80/tcp
firewall-cmd --reload
firewall-cmd --zone=public --permanent --add-port=8080/tcp
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 -arkisto.

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_varnish5.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 tärkein lakan määritystiedosto, se on kirjoitettu käyttämällä vanish Configuration Language (VCL) -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ä Nginx toimimaan lakkavälimuistin kanssa

11. Tässä vaiheessa sinun on määritettävä Nginx toimimaan Varnish Cachen kanssa. Oletuksena Nginx kuuntelee porttia 80, sinun tulee vaihtaa Nginx-oletusportiksi 8080, jotta se toimii Varnish-välimuistin takana.

Avaa Nginx-määritystiedosto /etc/nginx/nginx.conf ja etsi rivi kuuntele 80 ja muuta se kuuntelemaan 8080 kuten palvelimessa. alla olevassa kuvakaappauksessa näkyvä lohko.

vi /etc/nginx/nginx.conf

Huomaa: tämä tulee tehdä kaikissa palvelinlohkon määritystiedostoissa (yleensä luotu osoitteessa /etc/nginx/conf.d/) sivustoille, joita haluat käyttää -palvelun kautta. >Lakka.

12. Avaa seuraavaksi lakkapalvelun määritystiedosto ja etsi parametri ExecStart, joka määrittää portin, jota Varnish kuuntelee, ja muuta sen arvoksi 6081. 80.

systemctl edit --full  varnish

Viivan tulee näyttää kuvan mukaiselta.

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

13. Määritä seuraavaksi Nginx 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";
}

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

systemctl daemon-reload
systemctl restart nginx
systemctl restart varnish

Vaihe 4: Testaa lakkavälimuistia Nginxissä

15. Testaa lopuksi, onko Varnish-välimuisti käytössä ja toimiiko Nginx-palvelun kanssa käyttämällä alla olevaa cURL-komentoa nähdäksesi HTTP-otsikon.

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

Löydät lisätietoja Varnish Cache Github Repositorysta: https://github.com/varnishcache/varnish-cache

Tässä opetusohjelmassa selitimme, kuinka Varnish Cache määritetään Nginx HTTP -palvelimelle CentOS 7:ssä. Käytä alla olevaa kommenttilomaketta lähettääksesi meille kyselyitä tai lisäideoita.