Kuidas kiirendada Apache'i lakivahemikuga CentOS 7-s


Varnish Cache (üldnimega Varnish) on avatud lähtekoodiga populaarne pöördproxy HTTP kiirendi, mis on mõeldud veebiserverite kiirendamiseks. See on loodud liiga kasutatavate API-lõpp-punktide jaoks ning ka dünaamiliste saitide jaoks, mis teenindavad suurt sisu ja kogevad suurt liiklust.

Põhimõtteliselt aitab see vähendada protsessori koormust; toetab veebiserverite koormuse tasakaalustamist ja võimaldab veebibrauseril vahemällu RAM-i salvestamise tulemusena saite kiiresti laadida. Paljud suured ettevõtted kasutavad seda, sealhulgas Facebook, Twitter ja Wikipedia.

  1. CentOS 7, millele on installitud Apache
  2. staatilise IP-aadressiga CentOS 7

Selles artiklis selgitan, kuidas Varnish Cache 6.5 installida ja kasutada CentOS 7-s Apache'i veebiserveri esiotsa (töötab ka RHEL 7-l).

1. samm: installige Apache veebiserver CentOS 7-sse

1. Esmalt installige Apache HTTP-server CentOS-i vaikehoidlatest, kasutades YUM-paketi haldurit järgmiselt.

# yum install httpd

2. Kui Apache on installitud, käivitage see esialgu ja lubage see automaatselt käivitada süsteemi käivitamisel.

# systemctl start httpd
# systemctl enable httpd
# systemctl status httpd

3. Järgmisena värskendage süsteemi tulemüüri reegleid, et lubada sissetulevaid pakette pordil 80, kasutades alltoodud käske.

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

2. samm: installige laki vahemälu CentOS 7-sse

4. Nüüd on Varnish Cache 6 uusima versiooni jaoks (st kirjutamise ajal 6.5) eelnevalt koostatud RPM-paketid, seetõttu peate lisama ametliku Varnish Cache'i hoidla.

Enne seda peate lubama EPEL-i hoidla mitme sõltuvuspaketi installimiseks, nagu näidatud.

# yum install -y epel-release

5. Järgmisena installige GPG-allkirjade ja yum-utils-i haldamiseks mõeldud pakett pygpgme - kasulik utiliitide kogu, mis laiendab yumi kohalikke funktsioone mitmel viisil.

# yum install pygpgme yum-utils

6. Nüüd looge fail nimega /etc/yum.repos.d/varnishcache_varnish65.repo, mis sisaldab allpool asuvat hoidla konfiguratsiooni.

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

Tähtis: asendage allolevas konfiguratsioonis el ja 7 kindlasti oma Linuxi distributsiooni ja versiooniga:

[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. Nüüd käivitage allolev käsk kohaliku yum-vahemälu värskendamiseks ja installige laki vahemälu pakett (ärge unustage GPG-võtit aktsepteerima, tippides y või yes pakend):

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

8. Pärast Varnish Cache installimist installitakse peamine käivitatav fail nimega/usr/sbin/varnishd ja laki konfiguratsioonifailid asuvad/etc/varnish /

  • /etc/varnish/default.vcl - see on peamine laki konfiguratsioonifail, see on kirjutatud vanish configuration language (VCL) abil.

9. Nüüd käivitage lakiteenus, lubage sellel süsteemi käivitamisel automaatselt käivituda ja kontrollige selle olekut, et see oleks töökorras järgmiselt.

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

10. Saate kinnitada, et laki installimine õnnestus, kui näete oma süsteemi installitud käivitatava faili ja versiooni asukohta.

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

3. samm: konfigureerige Apache lakivahemikuga töötamiseks

11. Nüüd konfigureerige Apache töötama koos Varnish Cache'iga. Vaikimisi kuulab Apache porti 80, peate HTTPD vaikepordiks muutma 8080 - see tagab, et HTTPD töötab laki vahemällu.

Saate käsu sed abil muuta pordi 80 asendiks 8080, nagu näidatud.

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

Märkus. Samuti peate muutma oma virtuaalse hostikonfiguratsiooni porti iga veebisaidi jaoks, mida soovite laki kaudu teenida. Siin on meie testsaidi konfiguratsioon (/etc/httpd/conf.d/tecmint.lan.conf).

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

12. Seejärel avage laki systemd konfiguratsioonifail ja leidke parameeter ExecStart, mis määrab laki, mida kuulab, ja muutke selle väärtust 6081-lt 80-le, nagu ekraanipildil näidatud.

# systemctl edit --full  varnish

Lõpetamisel peaks konfiguratsioon välja nägema selline.

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

13. Järgmisena seadistage Apache varukomplekti puhverserveri jaoks /etc/varnish/default.vcl konfiguratsioonifaili.

# vi /etc/varnish/default.vcl 

Leidke taustaprogrammi jaotis ja määrake hosti IP ja port. Allpool on taustaprogrammi vaikekonfiguratsioon, määrake see oma tegelikule sisuserverile osutamiseks.

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

Kui teie taustaprogrammi server töötab teises serveris aadressiga 10.42.1.10, peaks hostparameeter osutama sellele IP-aadressile.

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

14. Pärast kõigi vajalike konfiguratsioonide tegemist taaskäivitage ülaltoodud muudatuste tegemiseks HTTPD ja Varnish vahemälu.

# systemctl daemon-reload
# systemctl restart httpd
# systemctl restart varnish

4. samm: testige laki vahemälu Apache'is

15. Lõpuks testige, kas lakk on lubatud ja töötab HTTPD-teenusega, kasutades allpool olevat käsku cURL, mida saab kasutada HTTP-päise vaatamiseks.

# 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

Lisateabe saamiseks vaadake lakkide vahemälu Githubi hoidlat: https://github.com/varnishcache/varnish-cache

Selles õpetuses selgitasime, kuidas seadistada CentOS 7-s Apache HTTP-serveri jaoks Varnish Cache 6.5 puhverserverit. Kui teil on jagamiseks mingeid päringuid või täiendavaid ideid, kasutage meile tagasi kirjutamiseks allpool olevat tagasisidevormi.