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

Cómo acelerar Apache con Varnish Cache en CentOS 7

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 7

Bá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

  1. Un CentOS 7 con Apache instalado
  2. 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

1. Primero instale el servidor Apache HTTP desde los repositorios de software predeterminados de CentOS utilizando el administrador de paquetes YUM de la siguiente manera.

# yum install httpd

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

3. A continuación, actualice las reglas del cortafuegos del sistema para permitir paquetes entrantes en el puerto 80 usando los comandos a continuación.

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

Paso 2:Instale 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 tanto, debe agregar el caché de barniz oficial repositorio.

Antes de eso, debe 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 maneras.

# yum install pygpgme yum-utils

6. Ahora crea un archivo llamado /etc/yum.repos.d/varnishcache_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 y o yes mientras instala el paquete):

# yum -q makecache -y --disablerepo='*' --enablerepo='varnishcache_varnish65'
# yum install varnish 

8. Después de instalar Varnish Cache , el ejecutable principal se instalará como /usr/sbin/varnishd y los archivos de configuración de Varnish se encuentran en /etc/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).

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é funcionando de la siguiente manera.

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

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
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

11. Ahora configure Apache para que funcione junto con Varnish Cache. Por defecto, 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 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>

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 escucha Varnish y cambia 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

13. A continuación, configure Apache como un servidor back-end para el proxy Varnish, en /etc/varnish/default.vcl archivo de configuración.

# 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";
}

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:Probar Varnish Cache en Apache

15. Por último, pruebe si Varnish está habilitado y funciona con HTTPD. servicio usando el comando cURL a continuación, que se puede usar para ver el encabezado HTTP.

# 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.


Cent OS
  1. Cómo instalar y configurar Varnish Cache 6 con Nginx en CentOS 8

  2. Cómo instalar Varnish Cache en CentOS

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

  4. Cómo instalar Varnish Cache en CentOS 8

  5. Cómo instalar Let's Encrypt con Apache en CentOS 7

Cómo instalar Apache con host virtual en CentOS 8

Cómo acelerar Nginx con Varnish Cache en CentOS 7

Cómo instalar Varnish Cache en CentOS 7

Cómo instalar Drupal en CentOS 7 con Apache

Cómo instalar Varnish en CentOS 7

Cómo instalar Apache con PHP-FPM en CentOS 8