GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar Varnish Cache 6 para Nginx en CentOS/RHEL 8

Alijo de barniz (comúnmente conocido como barniz ) es un proxy inverso de código abierto, potente y rápido HTTP acelerador con arquitectura moderna y lenguaje de configuración flexible. Ser un proxy inverso simplemente significa que es un software que puede implementar frente a su servidor web (que es el servidor de origen o backend) como Nginx , para recibir solicitudes HTTP de clientes y reenviarlas al servidor de origen para su procesamiento. Y entrega la respuesta desde el servidor de origen a los clientes.

Barniz actúa como intermediario entre Nginx y clientes pero con algunos beneficios de rendimiento. Su objetivo principal es hacer que sus aplicaciones se carguen más rápido, al funcionar como un motor de almacenamiento en caché. Recibe solicitudes de los clientes y las reenvía al backend una vez para almacenar en caché el contenido solicitado (almacenar archivos y fragmentos de archivos en la memoria). Luego, todas las solicitudes futuras de contenido exactamente similar se atenderán desde el caché.

Esto hace que sus aplicaciones web se carguen más rápido e indirectamente mejora el rendimiento general de su servidor web porque Varnish servirá contenido desde la memoria en lugar de que Nginx procese archivos desde el disco de almacenamiento.

Aparte del almacenamiento en caché, Varnish también tiene varios otros casos de uso, incluido un enrutador de solicitud HTTP y un equilibrador de carga, un firewall de aplicaciones web y más.

El barniz se configura usando el Lenguaje de configuración Varnish incorporado altamente extensible (VCL ) que le permite escribir políticas sobre cómo deben manejarse las solicitudes entrantes. Puede usarlo para crear soluciones, reglas y módulos personalizados.

En este artículo, veremos los pasos para instalar Nginx servidor web y Varnish Cache 6 en un nuevo CentOS 8 o RHEL 8 servidor. RHEL 8 los usuarios deben asegurarse de habilitar la suscripción a redhat.

Para configurar, un LEMP completo pila en lugar de instalar el Nginx servidor web solo, consulta las siguientes guías.

  1. Cómo instalar el servidor LEMP en CentOS 8
  2. Cómo instalar el servidor LEMP en RHEL 8

Paso 1:Instale el servidor web Nginx en CentOS/RHEL 8

1. El CentOS/RHEL 8 se envía con la última versión de Nginx software de servidor web, por lo que lo instalaremos desde el repositorio predeterminado usando los siguientes comandos dnf.

# dnf update
# dnf install nginx

2. Una vez Nginx instalado, debe iniciar, habilitar y verificar el estado mediante los siguientes comandos systemctl.

# systemctl start nginx
# systemctl enable nginx
# systemctl status nginx

Verificar el estado del servicio Nginx

3. Si tiene un poco de curiosidad, también puede verificar el socket Nginx TCP, que se ejecuta en el puerto 80 de manera predeterminada, usando el siguiente comando ss.

# ss -tpln

Compruebe el puerto TCP de Nginx

4. Si está ejecutando el cortafuegos en el sistema, asegúrese de actualizar las reglas del cortafuegos para permitir solicitudes a un servidor web.

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

Paso 2:Instalación de Varnish Cache 6 en CentOS/RHEL 8

5. El CentOS/RHEL 8 proporciona un varnish caché DNF módulo por defecto que contiene la versión 6.0 LTS (Soporte a largo plazo ).

Para instalar el módulo, ejecute el siguiente comando.

# dnf module install varnish

Instalar Varnish Cache en CentOS 8

6. Una vez completada la instalación del módulo, puede confirmar la versión de Varnish instalado en su sistema.

# varnishd -V

Comprobar versión de barniz

7. Después de instalar Varnish Cache , el comando ejecutable principal instalado en /usr/sbin/varnishd y los archivos de configuración de Varnish se encuentran en /etc/varnish/ .

El archivo /etc/varnish/default.vcl es el archivo de configuración de barniz principal escrito usando VCL y /etc/varnish/secret es el archivo secreto de barniz.

8. A continuación, inicie el Barniz servicio, habilítelo para que se inicie automáticamente durante el arranque del sistema y confirme que está en funcionamiento.

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

Verifique Varnish Cache en CentOS 8

Paso 3:Configuración de Nginx para que funcione con Varnish Cache

9. En esta sección, mostraremos cómo configurar Varnish Cache correr delante de Nginx . Por defecto, Nginx escucha en el puerto 80 , normalmente cada bloque de servidor (o host virtual) está configurado para escuchar en este puerto.

Por ejemplo, eche un vistazo al bloque de servidor nginx predeterminado configurado en el archivo de configuración principal (/etc/nginx/nginx.conf ).

# vi /etc/nginx/nginx.conf

Busque la sección de bloqueo del servidor como se muestra en la siguiente captura de pantalla.

Configuración del bloque del servidor Nginx

10. Para ejecutar Varnish frente a Nginx , debe cambiar el puerto Nginx predeterminado de 80 a 8080 (o cualquier otro puerto de su elección).

Esto debe hacerse en todos los archivos de configuración de bloque de servidor futuros (generalmente creados en /etc/nginx/conf.d/ ) para sitios o aplicaciones web que desea servir a través de Varnish .

Por ejemplo, el bloque del servidor para nuestro sitio de prueba tecmint.lan es /etc/nginx/conf.d/tecmint.lan.conf y tiene la siguiente configuración.

server {
        listen       8080;
        server_name  www.tecmint.lan;
        root         /var/www/html/tecmint.lan/;
        location / {
        }

        error_page 404 /404.html;
            location = /40x.html {
        }
        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
}

Configuración del bloque del servidor Nginx

Importante :Recuerde deshabilitar el bloqueo del servidor predeterminado comentando su sección de configuración en /etc/nginx/nginx.conf archivo como se muestra en la siguiente captura de pantalla. Esto le permite comenzar a ejecutar otros sitios web/aplicaciones en su servidor; de lo contrario, Nginx siempre dirigirá las solicitudes al bloque de servidor predeterminado.

Deshabilitar el bloqueo del servidor Nginx

11. Una vez completada la configuración, verifique el archivo de configuración en busca de errores y reinicie el servicio Nginx para aplicar los cambios recientes.

# nginx -t
# systemctl restart nginx

Comprobar la sintaxis de configuración de Nginx

12. A continuación, para recibir HTTP solicitudes de clientes, necesitamos configurar Varnish para ejecutarse en el puerto 80 . A diferencia de versiones anteriores de Varnish Cache donde se hizo este cambio en el Barniz archivo de entorno (que ahora está en desuso), en la versión 6.0 y superiores.

Necesitamos hacer el cambio requerido en el archivo de servicio Varnish. Ejecute el siguiente comando para abrir el archivo de servicio apropiado para editarlo.

# systemctl edit --full  varnish

Busque la siguiente línea y cambie el valor de -a switch, que especifica la dirección de escucha y el puerto. Establezca el puerto en 80 como se muestra en la siguiente captura de pantalla.

Tenga en cuenta que si no especifica una dirección, varnishd escuchará en todos los IPv4 disponibles y IPv6 interfaces activas en el servidor.

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

Cambiar el puerto de escucha de Varnish

Guarde los cambios en el archivo y salga.

13. A continuación, debe definir el servidor backend que Varnish visitará para obtener contenido de. Esto se hace en el archivo de configuración principal de Varnish.

# vi /etc/varnish/default.vcl 

Busque la sección de configuración de back-end predeterminada y cambie la cadena "default ” a servidor1 (o cualquier nombre de su elección para representar su servidor de origen). Luego configure el puerto en 8080 (o el puerto de escucha de Nginx que definiste en tu bloque de servidor).

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

Establecer servidores backend predeterminados de Varnish

Para esta guía, estamos ejecutando Varnish y Nginx en el mismo servidor. Si su servidor web Nginx se ejecuta en un host diferente. Por ejemplo, otro servidor con dirección 10.42.0.247 , luego configura .host parámetro como se muestra.

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

Guarde el archivo y ciérrelo.

14. A continuación, debe volver a cargar el systemd configuración del administrador debido a los cambios recientes en el archivo del servicio Varnish, luego reinicie el servicio Varnish para aplicar los cambios de la siguiente manera.

# systemctl daemon-reload
# systemctl restart varnish

15. Ahora confirma que Nginx y Barniz están escuchando en el TCP configurado enchufes.

# ss -tpln

Confirmar puertos Nginx y Varnish

Paso 4:Probar la configuración de caché de Nginx Varnish

16. A continuación, verifique que las páginas web se publiquen a través de caché Varnish. como sigue. Abra un navegador web y navegue usando la IP del servidor o FDQN como se muestra en la siguiente captura de pantalla.

http://www.tecmin.lan
OR
http://10.42.0.144

Verificar las páginas de Nginx servidas a través de Varnish Cache

17. Alternativamente, use el comando curl como se muestra. Use la dirección IP de su servidor o el FQDN del sitio web o use 127.0.0.1 o localhost si está probando localmente.

# curl -I http:///www.tecmint.lan

Verifique la página de caché de Nginx Varnish usando Curl

Utilidades útiles de administración de caché Varnish

18. En esta sección final, describiremos brevemente algunos de los útiles programas de utilidad que Varnish Cache se envía con, que puede usar para controlar varnishd , acceda a registros en memoria y estadísticas generales y más.

barnizhadm

barnizhadm una utilidad para controlar una instancia de Varnish en ejecución. Establece una conexión CLI con varnishd. Por ejemplo, puede usarlo para enumerar los backends configurados como se muestra en la siguiente captura de pantalla (lea man varnishadm para más información).

# varnishadm
varnish> backend.list

Lista de servidores configurados

registro de barniz

El registro de barniz La utilidad proporciona acceso a datos específicos de la solicitud. Ofrece información sobre solicitudes y clientes específicos (lea man varnishlog para más información).

# varnishlog

Consultar información sobre clientes y solicitudes

varnishstat

Un varnishstat también conocido como estadísticas de barniz , que le brinda un vistazo al rendimiento actual de Varnish al proporcionar acceso a estadísticas en memoria, como aciertos y errores de caché, información sobre el almacenamiento, subprocesos creados, objetos eliminados (lea man varnishstat para más información).

# varnishstat 

Mostrar estadísticas de barniz

tapa barnizada

Un tapa de barniz La utilidad lee los registros de memoria compartida y presenta una lista continuamente actualizada de las entradas de registro que ocurren con más frecuencia (leer man varnishtop para más información).

# varnishtop 

Ver registros de memoria compartida

barnizista

Un barnicista (historial de barniz ) La utilidad analiza los registros de barniz y genera un histograma continuamente actualizado que muestra la distribución de los últimos n solicitudes por su procesamiento (léase man varnishhist para más información).

# varnishhist

Mostrar histograma de solicitudes

¡Eso es todo! En esta guía, hemos mostrado cómo instalar Varnish Cache y ejecútelo delante de Nginx HTTP servidor para acelerar la entrega de contenido web en CentOS/RHEL 8 .

Cualquier pensamiento o pregunta sobre esta guía se puede compartir utilizando el formulario de comentarios a continuación. Para obtener más información, lea la documentación de Varnish Cache 6.0.

El principal inconveniente de Varnish Cache es su falta de soporte nativo para HTTPS . Para habilitar HTTPS en su sitio web/aplicación, debe configurar un proxy de terminación SSL/TLS para que funcione junto con Varnish Cache para proteger su sitio. En nuestro próximo artículo, mostraremos cómo habilitar HTTPS para Varnish Cache usando Hitch en CentOS/RHEL 8 .

Compartir es cuidar…
Compartir en FacebookCompartir en TwitterCompartir en LinkedinCompartir en Reddit
Cent OS
  1. Cómo instalar y configurar Varnish Cache 6 con Nginx en CentOS 8

  2. Cómo instalar phpMyAdmin con Nginx en CentOS 7 / RHEL 7

  3. Cómo instalar Varnish Cache en CentOS

  4. Cómo instalar Varnish Cache 4 en CentOS 7

  5. Cómo instalar Varnish Cache en CentOS 8

Cómo instalar Varnish Cache para Nginx en CentOS 8/Almalinux 8

Cómo instalar Varnish Cache para Apache en CentOS/RHEL 8

Cómo acelerar Nginx con Varnish Cache en CentOS 7

Cómo acelerar Apache con Varnish Cache en CentOS 7

Cómo instalar Varnish Cache en CentOS 7

Cómo instalar Varnish en CentOS 7