Varnish - Instalación básica

Publicado por Lucas Hedding el 15 de Septiembre de 2012

Pasos para habilitar Varnish en el servidor

Instalar Varnish a través del método estándar de instalación de su plataforma. Instalé en un sistema basado en Debian, así que acabo de ejecutar

sudo apt-get install varnish

Usted necesita proporcionar una configuración de varnish y VCL que está personalizado para Drupal. Hay algunas opciones que deberían establecerse cuando se inicia el daemon. Otras deben ir en la VCL. En nuestro ambiente, la configuración es default.vcl para leer un backend.vcl que es diferente para cada entorno basado en direcciones IP backend, etc y un drupal.vcl que es idéntica para todos los entornos.

# Configuration file for varnish
#
# /etc/init.d/varnish expects the variable $DAEMON_OPTS to be set from this
# shell script fragment.
#

# Maximum number of open files (for ulimit -n)
NFILES=131072

# Locked shared memory (for ulimit -l)
# Default log size is 82MB + header
MEMLOCK=82000

# Maximum size of corefile (for ulimit -c). Default in Fedora is 0
# DAEMON_COREFILE_LIMIT="unlimited"

# Set this to 1 to make init script reload try to switch vcl without restart.
# To make this work, you need to set the following variables
# explicit: VARNISH_VCL_CONF, VARNISH_ADMIN_LISTEN_ADDRESS,
# VARNISH_ADMIN_LISTEN_PORT, VARNISH_SECRET_FILE, or in short,
# use Alternative 3, Advanced configuration, below
RELOAD_VCL=1

# # Default address and port to bind to
# # Blank address means all IPv4 and IPv6 interfaces, otherwise specify
# # a host name, an IPv4 dotted quad, or an IPv6 address in brackets.
VARNISH_LISTEN_ADDRESS=
VARNISH_LISTEN_PORT=80
#
# # Telnet admin interface listen address and port
VARNISH_ADMIN_LISTEN_ADDRESS=
VARNISH_ADMIN_LISTEN_PORT=6082
#
# # Shared secret file for admin interface
VARNISH_SECRET_FILE=/etc/varnish/secret
#
# http://www.lullabot.com/articles/varnish-multiple-web-servers-drupal
# # The minimum number of worker threads to start
VARNISH_MIN_THREADS=400
#
# http://www.lullabot.com/articles/varnish-multiple-web-servers-drupal
# # The Maximum number of worker threads to start
VARNISH_MAX_THREADS=1000
#
# # Idle timeout for worker threads
VARNISH_THREAD_TIMEOUT=120
# # Main configuration file.
VARNISH_VCL_CONF=/etc/varnish/default.vcl
#
# # Cache file size: in bytes, optionally using k / M / G / T suffix,
# # or in percentage of available disk space using the % suffix.
VARNISH_STORAGE_SIZE=2G
#
# # Backend storage specification
VARNISH_STORAGE="malloc,${VARNISH_STORAGE_SIZE}"
#
# # Default TTL used when the backend does not specify one
VARNISH_TTL=120
#
# # Other parameters for Varnish.
VARNISH_CLI_TIMEOUT="cli_timeout=25"
VARNISH_SESS_TIMEOUT="sess_timeout=5"
VARNISH_SESS_WORKSPACE="sess_workspace=262144"

DAEMON_OPTS="-a ${VARNISH_LISTEN_ADDRESS}:${VARNISH_LISTEN_PORT} \
             -f ${VARNISH_VCL_CONF} \
             -T ${VARNISH_ADMIN_LISTEN_ADDRESS}:${VARNISH_ADMIN_LISTEN_PORT} \
             -t ${VARNISH_TTL} \
             -w ${VARNISH_MIN_THREADS},${VARNISH_MAX_THREADS},${VARNISH_THREAD_TIMEOUT} \
             -u varnish -g varnish \
             -S ${VARNISH_SECRET_FILE} \
             -s ${VARNISH_STORAGE} \
             -p ${VARNISH_CLI_TIMEOUT} \
             -p ${VARNISH_SESS_TIMEOUT} \
             -p ${VARNISH_SESS_WORKSPACE}"

Pasos para habilitar módulos Varnish

Instalar varios módulos de Drupal para ayudar a controlar el almacenamiento en caché de Varnish.

referencias

  • Varnish - proporciona un reemplazo para el caché caché de páginas y permite que otros módulos se comuniquen con la interfaz de administración de servidores de Varnish.
  • Expire - proporciona un medio para finalizar el caché de Varnish cuando un nodo, entidad, termino, etc se edita.
  • Purge - trabaja con Expire para prohibir artículos cuando han expirado.

¿Está buscando construir o personalizar un sitio de Drupal? Escríbanos sobre su proyecto y nos pondremos en contacto con usted dentro de 48 horas.

Si desea obtener más información sobre por qué Drupal es el sistema de gestión de contenido de código abierto más utilizado en el mundo, visite drupal.org/about.