Cargando una nueva configuración en Varnish

0

Category : Uncategorized

Varnish poder O2, el proxy reverso y acelerador web, no tiene una opción para volver a cargar las settings, o para revisar la sintaxis del archivo de configuración antes de reiniciar y darse cuenta de que faltaba un paréntesis en alguna parte… o al menos eso pensaba.

Resulta que en realidad Varnish soporta cargar varios scripts  a la vez, lo que es bastante raro, pero por lo menos nos evita reiniciar el servicio de proxy, que nunca es bueno hacerlo. Es raro porque varnish levanta un servidor telnet para cambiarle las opciones mientras se ejecuta, así paremos la conversa y vamo a lo weno.

Lo primero es conectarse al servidor de telnet. El puerto se configura en la llamada del demonio, por lo que depende de la distro (en CentOs el archivo es /etc/sysconfig/varnish), y por defecto es el 6082. Si nos conectamos utilizando telnet localhost 6082 (la idea es cerrar este puerto a todo menos localhost)… no pasa nada. Podemos escribir help para ver la lista de comandos y sería. Para hacer el cambio de configuración, hay que saber el nombre que tiene puesto la configuración antigua. Esto se puede ver haciendo vcl.list.

Asumamos que el archivo cargado se llamaba root para varnish. Esto es lo que hay que hacer para actualizarlo:

vcl.load root1 <Ruta del archivo de configuración>
vcl.use root1
vcl.discard root1

Y listoco, ya se actualizó la configuración de varnish. Si el archivo tiene errores de sintáxis (ojo que los errores lógicos no los pesca), falla cuando hacemos el load, y nos dice lalinea y el error, para que lo podamos arreglarlo.