- HLB1 et HLB2

  • haproxy
  • configurations identiques
  • ip reprises par corosync si chute du maître
  • Conservation des sessions web pour éviter le jump

- Cluster de serveurs apache en backend des HLB

  • nfs ou glusterfs répliqué pour /var/www/
  • php-fpm pour les performances
  • memcached pour le stockage des sessions

- Mysql en réplication Maitre-Maitre avec identifiants décalés (pair/impair) pour éviter les collisions

  • corosync pour haute disponibilité avec ip 1 maitre sur mysql 1 et ip 2 maitre sur mysql 2 (idée à valider)
  • synchro faite sur ip privée et non publique (pour éviter la synchro avec soi meme)

On peut aussi utiliser repcached pour faire de la réplication de memcached.

Il reste encore plein de possibilité pour améliorer tout cela :

  • Accelérateurs HTTP (varnish)
  • Backend cache statiques en parallèle avec serveur actifs pour clients particuliers

Liens utiles :