Aller au contenu. | Aller à la navigation

Outils personnels

Navigation

Vous êtes ici : Accueil / Wiki / nginx-varnish

nginx-varnish

passer d'1-n-n à 1-1-n => qu'une instance de varnish pour toutes les instances zope) pour réduire la charge mémoire et cpu sur la machine (waatweb.net et prod.ageliaco.org)

Petite modification des configs qui nécessitent

  1. un test sur une config pilote (je vais choisir la config de "ageliaco" pour faire cette modif
  2. une modification de toutes les configs de chaque machine (avec test à chaque modif pour être sûr que tout fonctionne)

 

Config actuelle

1 instance nginx : gérée dans la partie "/home/admin/zope/plone3/sysbase" avec pour chaque instance un buildout avec une partie [main] (le plus souvent dans le fichier "main.cfg") qui génère le fichier de config "main.conf" (le plus souvent sous "parts/main", mais parfois sous "production/" *

* quand [main] se trouve dans un fichier de config d'extension comme "main.cfg", pour éviter qu'une commande "bin/buildout" n'efface la config de nginx en supprimant tout le dossier "parts/"=> car le fichier "main.conf" n'est généré que si la partie "[main]" est exécutée, et ceci ne se passe que quand on exécute "bin/buildout -c main.cfg" => donc si on lance "bin/buildout" sans argument "parts/" est refait mais pas la config "main.conf"

Les configs "main.conf" de chaque instance est ajoutée en référence dans le /home/admin/zope/plone3/production/extra.conf :
include /home/admin/zope/plone3/dip/parts/main/main.conf;
include /home/admin/zope/plone3/saussure/parts/main/main.conf;
include /home/admin/zope/plone3/membres/parts/main/main.conf;
include /home/admin/zope/plone4/dip/parts/main/main.conf;
include /home/admin/zope/plone3/associations/production/main.conf;
include /home/admin/zope/plone4/associations/parts/main/main.conf;
include /home/admin/zope/plone4/zinstance/production/main.conf;
include /home/admin/zope/plone4.1/copad/production/main.conf;

Alors que varnish (l'application de cache) est générée à chaque instance (autant d'instances de cache que d'instances de zope).

Avec une partie [varnish-build] qui gère la création de l'instance varnish et son installation, et une partie [cache] qui gère la config de varnish en générant le dossier "parts/cache/ qui contient "storage  varnish.pid  varnish.vcl"

A changer

Passer d'une pile applicative "nginx-varnish-zope" de "1-n-n" à "1-1-n".

Pour cela il faut

  1. supprimer la partie [varnish-build] de toutes les instances
  2. l'ajouter à /home/admin/zope/plone3/sysbase
  3. changer la config sous "sysbase" pour permettre d'y ajouter les config particulière à toutes les instances
  4. changer les configs de chaque instance pour n'avoir que la partie concernant les noms de domaines et sous-domaines qui concerne l'instance