Alijo de barniz (también conocido como barniz ) es un acelerador HTTP de código abierto y alto rendimiento diseñado para acelerar los servidores web. En nuestros últimos artículos, explicamos cómo configurar Varnish Cache para Apache en CentOS 7 y CentOS 8.
En este artículo, le mostraremos cómo instalar y usar Varnish Cache como front-end para el servidor HTTP Nginx en CentOS 7 . Esta guía también debería funcionar en RHEL 7 .
Requisitos
- Un CentOS 7 con Apache instalado
- Un CentOS 7 con una dirección IP estática
Paso 1:Instale el servidor web Nginx en CentOS 7
# yum install nginx
# systemctl start nginx # systemctl enable nginx # systemctl status nginx
# firewall-cmd --zone=public --permanent --add-port=80/tcp # firewall-cmd --reload # firewall-cmd --zone=public --permanent --add-port=8080/tcp # 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 principal de configuración 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 Nginx para que funcione con Varnish Cache
Abra el archivo de configuración de Nginx /etc/nginx/nginx.conf y encuentra la línea escucha 80 y cámbialo para escuchar 8080 como en el bloque del servidor que se muestra en la siguiente captura de pantalla.
# vi /etc/nginx/nginx.conf
Nota :Esto debe hacerse en todos los archivos de configuración del bloque del servidor (generalmente creados en /etc/nginx/conf.d/ ) para los sitios web que desea publicar a través de Varnish .
# systemctl edit --full varnish
La línea debería verse como se muestra.
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"; }
# systemctl daemon-reload # systemctl restart nginx # systemctl restart varnish
Paso 4:Probar Varnish Cache en Nginx
# curl -I http://localhost
Salida de muestra
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
Puede encontrar información adicional en el repositorio Varnish Cache Github:https://github.com/varnishcache/varnish-cache
En este tutorial, explicamos cómo configurar Varnish Cache para el servidor HTTP Nginx en CentOS 7. Utilice el formulario de comentarios a continuación para enviarnos consultas o ideas adicionales.