Alijo de barniz (comúnmente conocido como Barniz ), es un popular acelerador HTTP de proxy inverso de código abierto diseñado para acelerar los servidores web. Está diseñado para puntos finales de API utilizados en exceso y también para sitios dinámicos que ofrecen contenido masivo y experimentan mucho tráfico.
Para Nginx :Cómo instalar Varnish Cache para Nginx en CentOS 7Básicamente ayuda a reducir la carga de la CPU; admite el equilibrio de carga en servidores web y permite que un navegador web cargue sitios rápidamente como resultado del almacenamiento de la memoria caché en la RAM. Varias grandes empresas lo utilizan, incluido Facebook. , Twitter, y Wikipedia solo por mencionar algunos.
Requisitos
- Un CentOS 7 con Apache instalado
- Un CentOS 7 con una dirección IP estática
En este artículo, explicaré cómo instalar y usar Varnish Cache 6.5 como front-end para un Apache servidor web en CentOS 7 (también funciona en RHEL 7 ).
Paso 1:Instale el servidor web Apache en CentOS 7
# yum install httpd
# systemctl start httpd # systemctl enable httpd # systemctl status httpd
# firewall-cmd --zone=public --permanent --add-service=http # firewall-cmd --reload
Paso 2:Instale Varnish Cache en CentOS 7
Antes de eso, debe habilitar el repositorio EPEL para instalar varios paquetes de dependencia como se muestra.
# yum install -y epel-release
# yum install pygpgme yum-utils
# vi /etc/yum.repos.d/varnishcache_varnish65.repo
Importante :Asegúrese de reemplazar el
y 7
en la configuración a continuación con su distribución y versión de Linux:
[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
y
o yes
mientras instala el paquete):
# yum -q makecache -y --disablerepo='*' --enablerepo='varnishcache_varnish65' # yum install varnish
- /etc/varnish/default.vcl – este es el archivo de configuración principal de Varnish, está escrito usando el lenguaje de configuración Vanish (VCL).
# systemctl start varnish # systemctl enable varnish # systemctl status varnish
$ which varnishd $ varnishd -V
Salida de muestra
varnishd (varnish-6.5.1 revision 1dae23376bb5ea7a6b8e9e4b9ed95cdc9469fb64) Copyright (c) 2006 Verdens Gang AS Copyright (c) 2006-2020 Varnish Software
Paso 3:Configure Apache para que funcione con Varnish Cache
Puede usar el comando sed para cambiar el puerto 80 a 8080 como se muestra.
# sed -i "s/Listen 80/Listen 8080/" /etc/httpd/conf/httpd.conf
Nota :Además, debe cambiar el puerto en la configuración de su host virtual para cada sitio web que desee servir a través de Varnish. Aquí está la configuración para nuestro sitio de prueba (/etc/httpd/conf.d/tecmint.lan.conf ).
<VirtualHost *:8080> DocumentRoot "/var/www/html/tecmint.lan/" ServerName www.tecmint.lan # Other directives here </VirtualHost>
# systemctl edit --full varnish
La configuración debería verse así cuando termine.
ExecStart=/usr/sbin/varnishd -a :80 -f /etc/varnish/default.vcl -s malloc,256m
# vi /etc/varnish/default.vcl
Encuentra el backend y defina la IP y el puerto del host. A continuación se muestra la configuración de back-end predeterminada, configúrela para que apunte a su servidor de contenido real.
backend default { .host = "127.0.0.1"; .port = "8080"; }
Si su servidor backend se ejecuta en un servidor diferente con dirección 10.42.1.10 , entonces el parámetro de host debe apuntar a esta dirección IP.
backend server1 { .host = "10.42.1.10"; .port = "8080"; }
# systemctl daemon-reload # systemctl restart httpd # systemctl restart varnish
Paso 4:Probar Varnish Cache en Apache
# curl -I http://localhost
Salida de muestra
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
Para obtener más información, consulte el repositorio Varnish Cache Github:https://github.com/varnishcache/varnish-cache
En este tutorial, explicamos cómo configurar Varnish Cache 6.5 proxy para el servidor Apache HTTP en CentOS 7. En caso de que tenga alguna consulta o ideas adicionales para compartir, utilice el formulario de comentarios a continuación para escribirnos.