Tembolok Pernis (umumnya dikenal sebagai Pernis ), adalah akselerator HTTP reverse-proxy populer sumber terbuka yang ditujukan untuk mempercepat server web. Ini dirancang untuk titik akhir API yang digunakan secara berlebihan dan juga untuk situs dinamis yang menyajikan konten besar-besaran dan mengalami lalu lintas tinggi.
Untuk Nginx :Cara Instal Varnish Cache untuk Nginx di CentOS 7Ini pada dasarnya membantu untuk mengurangi beban CPU; mendukung penyeimbangan beban di server web dan memungkinkan browser web memuat situs dengan cepat sebagai hasil dari penyimpanan cache di RAM. Sejumlah perusahaan besar menggunakannya termasuk Facebook , Twitter, dan Wikipedia hanya untuk menyebutkan beberapa saja.
Persyaratan
- Sebuah CentOS 7 dengan Apache terinstal
- Sebuah CentOS 7 dengan alamat IP statis
Pada artikel ini, saya akan menjelaskan cara menginstal dan menggunakan Varnish Cache 6.5 sebagai front-end ke Apache server web di CentOS 7 (juga berfungsi pada RHEL 7 ).
Langkah 1:Instal Apache Web Server di CentOS 7
1. Instal terlebih dahulu server Apache HTTP dari repositori perangkat lunak CentOS default menggunakan manajer paket YUM sebagai berikut.
# yum install httpd

2. Setelah Apache terinstal, jalankan untuk sementara waktu dan aktifkan untuk memulai secara otomatis saat boot sistem.
# systemctl start httpd # systemctl enable httpd # systemctl status httpd

3. Selanjutnya perbarui aturan firewall sistem untuk mengizinkan paket masuk pada port 80 menggunakan perintah di bawah ini.
# firewall-cmd --zone=public --permanent --add-service=http # firewall-cmd --reload

Langkah 2:Instal Varnish Cache di CentOS 7
4. Sekarang ada paket RPM yang telah dikompilasi sebelumnya untuk versi terbaru Varnish Cache 6 (yaitu 6,5 pada saat penulisan), oleh karena itu Anda perlu menambahkan Cache Pernis official resmi penyimpanan.
Sebelum itu, Anda perlu mengaktifkan repositori EPEL untuk menginstal beberapa paket ketergantungan seperti yang ditunjukkan.
# yum install -y epel-release
5. Selanjutnya, instal pygpgme , paket untuk menangani tanda tangan GPG dan yum-utils, kumpulan utilitas berguna yang memperluas fitur asli yum dengan berbagai cara.
# yum install pygpgme yum-utils
6. Sekarang buat file bernama /etc/yum.repos.d/varnishcache_varnish65.repo yang berisi konfigurasi repositori di bawah ini.
# vi /etc/yum.repos.d/varnishcache_varnish65.repo
Penting :Pastikan untuk mengganti el
dan 7
dalam konfigurasi di bawah ini dengan distribusi dan versi Linux Anda:
[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. Sekarang jalankan perintah di bawah ini untuk memperbarui cache yum lokal Anda dan menginstal paket cache pernis (jangan lupa untuk menerima kunci GPG dengan mengetikkan y
atau yes
saat menginstal paket):
# yum -q makecache -y --disablerepo='*' --enablerepo='varnishcache_varnish65' # yum install varnish

8. Setelah menginstal Varnish Cache , executable utama akan diinstal sebagai /usr/sbin/varnishd dan file konfigurasi pernis terletak di /etc/varnish/ :
- /etc/varnish/default.vcl – ini adalah file konfigurasi varnish utama, ditulis menggunakan bahasa konfigurasi vanish (VCL).
9. Sekarang mulai layanan pernis, aktifkan untuk memulai secara otomatis selama boot sistem, dan verifikasi statusnya untuk memastikan bahwa itu aktif dan berjalan sebagai berikut.
# systemctl start varnish # systemctl enable varnish # systemctl status varnish

10. Anda dapat mengonfirmasi bahwa instalasi Varnish berhasil dengan melihat lokasi eksekusi Varnish dan versi yang diinstal pada sistem Anda.
$ which varnishd $ varnishd -V
Contoh Keluaran
varnishd (varnish-6.5.1 revision 1dae23376bb5ea7a6b8e9e4b9ed95cdc9469fb64) Copyright (c) 2006 Verdens Gang AS Copyright (c) 2006-2020 Varnish Software
Langkah 3:Konfigurasi Apache untuk Bekerja dengan Cache Pernis
11. Sekarang konfigurasikan Apache untuk bekerja bersama dengan Varnish Cache. Secara default Apache mendengarkan pada port 80 , Anda perlu mengubah port HTTPD default menjadi 8080 – ini akan memastikan bahwa HTTPD berjalan di belakang cache Varnish.
Anda dapat menggunakan perintah sed untuk mengubah port 80 ke 8080 seperti yang ditunjukkan.
# sed -i "s/Listen 80/Listen 8080/" /etc/httpd/conf/httpd.conf
Catatan :Juga, Anda perlu mengubah port pada konfigurasi host virtual Anda untuk setiap situs web yang ingin Anda layani melalui Varnish. Berikut adalah konfigurasi untuk situs pengujian kami (/etc/httpd/conf.d/tecmint.lan.conf ).
<VirtualHost *:8080> DocumentRoot "/var/www/html/tecmint.lan/" ServerName www.tecmint.lan # Other directives here </VirtualHost>
12. Selanjutnya, buka file konfigurasi varnish systemd dan temukan parameter ExecStart yang menentukan port yang didengarkan Varnish, dan ubah nilainya dari 6081 hingga 80 seperti yang ditunjukkan pada tangkapan layar.
# systemctl edit --full varnish
Konfigurasi akan terlihat seperti ini setelah selesai.
ExecStart=/usr/sbin/varnishd -a :80 -f /etc/varnish/default.vcl -s malloc,256m

13. Selanjutnya, siapkan Apache sebagai server backend untuk proxy Varnish, di /etc/varnish/default.vcl file konfigurasi.
# vi /etc/varnish/default.vcl
Temukan backend bagian, dan tentukan IP dan port host. Di bawah ini adalah konfigurasi backend default, setel ini untuk menunjuk ke server konten Anda yang sebenarnya.
backend default { .host = "127.0.0.1"; .port = "8080"; }
Jika server backend Anda berjalan di server yang berbeda dengan alamat 10.42.1.10 , maka parameter host harus mengarah ke alamat IP ini.
backend server1 { .host = "10.42.1.10"; .port = "8080"; }
14. Setelah melakukan semua konfigurasi yang diperlukan, mulai ulang HTTPD dan cache Varnish untuk melakukan perubahan di atas.
# systemctl daemon-reload # systemctl restart httpd # systemctl restart varnish
Langkah 4:Uji Cache Pernis di Apache
15. Terakhir, uji, apakah Varnish diaktifkan dan berfungsi dengan HTTPD service menggunakan perintah cURL di bawah ini, yang dapat digunakan untuk melihat header HTTP.
# curl -I http://localhost
Contoh Keluaran
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
Untuk informasi lebih lanjut, lihat Repositori Github Pernis Cache:https://github.com/varnishcache/varnish-cache
Dalam tutorial ini, kami menjelaskan cara menyiapkan Varnish Cache 6.5 proxy untuk server HTTP Apache di CentOS 7. Jika Anda memiliki pertanyaan atau ide tambahan untuk dibagikan, gunakan formulir umpan balik di bawah untuk membalas email kami.