Table of Contents
Cómo acelerar Apache con Varnish Cache en CentOS 7
Varnish Cache. (comúnmente conocido como Varnish., es un popular acelerador HTTP de proxy inverso de código abierto destinado a acelerar los servidores web. Está diseñado para puntos finales de API excesivamente utilizados 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 7
Básicamente ayuda a reducir la carga de la CPU; admite el equilibrio de carga en los servidores web y permite que un navegador web cargue sitios rápidamente como resultado de almacenar el caché en la RAM. Varias grandes empresas lo utilizan, incluidas Facebook. Twitter. y Wikipedia. solo por mencionar algunas.
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 interfaz para un servidor web Apache. en CentOS 7. (también funciona en RHEL 7. .
Paso 1: Instale el servidor web Apache en CentOS 7
1.. Primero instale el servidor HTTP Apache desde los repositorios de software predeterminados de CentOS utilizando el administrador de paquetes YUM de la siguiente manera .
# yum install httpd
Instalar Apache en CentOS 7
2.. Una vez instalado Apache, inícielo por el momento y habilítelo para que se inicie automáticamente al arrancar el sistema.
# systemctl start httpd # systemctl enable httpd # systemctl status httpd
Iniciar y habilitar Apache freestar.config.enabled_slots.push (LocationName:” tecmint_incontent “, slotId:” tecmint_incontent ” );
3.. A continuación, actualice las reglas de firewall del sistema para permitir paquetes entrantes en el puerto 80. usando los siguientes comandos.
# firewall-cmd–zone = public–permanent–add-service = http # firewall-cmd–reload Abrir el puerto Apache en el firewall
Paso 2: instalar Varnish Cache en CentOS 7
4.. Ahora hay paquetes RPM precompilados para la última versión de Varnish Cache 6. (es decir, 6.5. en el momento de escribir este artículo), por lo que necesita para agregar el repositorio oficial Varnish Cache.
Antes de eso, necesita habilitar el repositorio EPEL para instalar varios paquetes de dependencia como se muestra.
# yum install-y epel-release
5.. A continuación, instale pygpgme. un paquete para manejar firmas GPG y yum-utils, una colección de utilidades útiles que amplían las características nativas de yum de varias formas. .
# yum install pygpgme yum-utils
6.. Ahora crea un archivo llamado /etc/yum.repos.d/varnishc ache_varnish65.repo. que contiene la configuración del repositorio a continuación.
# 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
7.. Ahora ejecute el siguiente comando para actualizar su caché yum local e instalar el paquete de caché de barniz (no olvide aceptar la clave GPG escribiendo yo sí mientras se instala el paquete):
# yum-q makecache-y–disablerepo = ‘*’–enablerepo = ‘varnishcache_varnish65’ # yum install varnish
Insta ll Varnish Cache en CentOS 7
8.. Después de instalar Varnish Cache. el ejecutable principal se instalará como /usr/sbin/varnishd. y los archivos de configuración de barniz se encuentran en /etc/varnish/.
- /etc/varnish/default.vcl. este es el principal archivo de configuración de barniz, está escrito usando el lenguaje de configuración de vanish (VCL).
9.. Ahora inicie el servicio de barniz, habilítelo para que se inicie automáticamente durante el arranque del sistema, y verifique su estado para asegurarse de que esté en funcionamiento de la siguiente manera.
# systemctl start varnish # systemctl enable varnish # systemctl status varnish
Iniciar Varnish Cache
10.. Puede confirmar que la instalación de Varnish fue exitosa al ver la ubicación del ejecutable de Varnish y la versión instalada en su sistema.
$ which varnishd $ varnishd-V Salida de muestra barnizd (varnish-6.5.1 revisión 1dae23376bb5ea7a6b8e9e4b9ed95cdc9469fb64) Copyright (c) 2006 Verdens Gang AS Copyright (c) 2006-2020 Varnish Software
Paso 3: Configure Apache para que funcione con Varnish Cache
11.. Ahora configure Apache para que funcione junto con Varnish Cache. De forma predeterminada, Apache escucha en el puerto 80. debe cambiar el puerto HTTPD predeterminado a 8080. esto garantizará que HTTPD se ejecute detrás del almacenamiento en caché de Varnish.
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 de nuestro sitio de prueba (/etc/httpd/conf.d/tecmint.lan.conf. .
< VirtualHost *: 8080. DocumentRoot “/var/www/html/tecmint.lan/” ServerName www.tecmint.lan # Otras directivas aquí
12.. A continuación, abra el archivo de configuración de varnish systemd y busque el parámetro ExecStart. que especifica el puerto en el que Varnish escucha, y cambie su valor de 6081. a 80. como se muestra en la captura de pantalla.
# 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
Cambiar el puerto de la caché de Varnish
13.. A continuación, configure Apache como servidor backend para el proxy Varnish, en el archivo de configuración /etc/varnish/default.vcl.
# vi/etc/varnish/default.vcl
Busque la sección backend. y defina la IP y el puerto del host. A continuación se muestra la configuración de backend 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 la 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”;
14.. Después de realizar todas las configuraciones necesarias, reinicie HTTPD y Varnish cache para efectuar los cambios anteriores.
# systemctl daemon-reload # systemctl restart httpd # systemctl restart varnish
Paso 4: Pruebe Varnish Cache en Apache
15.. Por último, pruebe si Varnish está habilitado y funciona con el servicio HTTPD. mediante el comando cURL a continuación, que se puede utilizar para ver el encabezado HTTP.
# curl-I http://localhost Salida de muestra HTTP/1.1 200 OK Fecha: miércoles, 06 de enero de 2021 08:36:07 GMT Servidor: Apache/2.4 .6 (CentOS) Última modificación: jueves 16 de octubre de 2014 13:20:58 GMT ETag: “1321-5058a1e728280” Rangos de aceptación: bytes Longitud de contenido: 4897 Tipo de contenido: texto/html; charset = UTF-8 X-Varnish: 131085 Edad: 0 Vía: barniz 1.1 (Varnish/6.5) Conexión: keep-alive
Para obtener más información, consulte Varnish Cache Github Repository: https://github.com/varnishcache/varnish-cache
En este tutorial, explicamos cómo configurar el proxy Varnish Cache 6.5. para el servidor HTTP Apache 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.