GNU/Linux Varnish

Publicado

GNU/Linux Varnish Caché https://varnish-cache.org ha sido concebido como un acelerador de aplicaciones web, o también conocido como proxy inverso de caché HTTP. Puede ser instalado en cualquier servidor que use HTTP y se configura para almacenar en caché los contenidos de dicho servidor. Varnish Cache es veloz, por regla general, acelera la entrega con un factor de 300 – 1000x, dependiendo de la arquitectura usada.
Rendimiento: Varnish está vinculado por la velocidad de la red, y su capacidad de velocidad se ha comprobado hasta en 20 Gbps
Flexible: Una de las principales características de Varnish es la flexibilidad de su lenguaje de configuración, VCL. Con VCL será posible escribir políticas sobre cómo deben manejarse las solicitudes entrantes y así, en dicha política, decidir qué contenido deseamos publicar, desde dónde se desea obtener el contenido y cómo debe modificarse la solicitud o la respuesta.
Varnish puede ser instalado en sistema operativos FreeBSD, ArchLinux, Debian, Ubuntu, RedHat, OpenBSD y más.

Instalación:

  1. apt-cache search varnish
    libvarnishapi1 – Bibliotecas compartidas para Varnish
    collectd-core – statistics collection and monitoring daemon (core system)
    nagios-plugins-contrib – Plugins for nagios compatible monitoring systems
    prometheus-varnish-exporter – Prometheus exporter for Varnish
    resource-agents – Cluster Resource Agents
    libvarnishapi-dev – development files for Varnish
    varnish – state of the art, high-performance web accelerator
    varnish-doc – documentation for Varnish Cache
    varnish-modules – Varnish module collection

  1. apt-get install varnish

Configurar:

Vamos a la ruta /etc/default/ y alli encontramos el archivo varnish y escogemos la opcion 2, con el fin de que se utilice el archivo default.vcl en la ruta /etc/varnish/default.vcl

DAEMON_OPTS=”-a :6081 \
-T localhost:6082 \
-f /etc/varnish/default.vcl \
-S /etc/varnish/secret \
-s malloc,256m”
256m son los megas de almacenamiento, si se quiere aumentar por ejemplo a 1 Giga se coloca 1g.

Ahora configuramos el archivo default.vcl en /etc/varnish

  1. Default backend definition. Set this to point to your content server.
    backend default {
    .host = “la ip de su servidor”;
    .port = “8080”;
    }

Luego vamos al arhcivo ports.conf en /etc/apache, y cambiamos Listen 80 por Listen 8080

Listen 8080

Luego vamos al archivo de configuracion de tu sitio o tus sitios web, y hacemos el cambio en la linea inicial así:

Cambiamos VirtualHost *:80
Por VirtualHost *:8080

Si no tiene archivos por separados para cada sitio web, entonces en el archivo 000-default.conf .

Por ultimo reiniciamos apache2 y varnish.

Una vez iniciados, los accesos a la web estarán en cache y en memoria, puedes ver los detalles y progresos de Varnish con el siguiente comando:

  1. varnishstat

Una prueba para comparar la mejora en el rendimiento de tu web, con este comando:

ab -n 1000 -c 5 http://tu-web-a-probar/index.php

Autor