comment configurer apache avec mod_cache et mod_proxybalance pour un hébergement virtuel massif

J'ai une batterie de servers IIS qui fournit quelque chose de similaire aux sites de stationnement de domaine, avec des milliers de domaines affectés au système et le contenu généré dynamicment. J'ai besoin d'une solution d'équilibrage de charge et de cache. Mon intention est d'utiliser Apache 2.2 avec mod_cache et mod_proxybalance pour y parvenir.

Mon expérience antérieure avec Apache a été plutôt limitée et ne concerne généralement que quelques hôtes virtuels basés sur des noms. Je n'ai jamais mis en place d'équilibrage de charge ou de proxy avant.

Lors de la search d'une configuration, je suis en train de me gratter la tête sur certaines directives de configuration de base que je ne suis pas certain de configurer pour cet environnement. En particulier, les docs apache donnent des avertissements terribles sur la non-configuration des directives ServerName correctement. Dans cette situation, je ne suis pas sûr de savoir comment gérer cela.

Le site ne sert pas son propre contenu, mais plutôt le contenu mis en cache et avancé. Je ne peux pas mettre tous les noms de domaine dans des directives virutalhost distinctes. Des directives comme ServerName (ou d'autres directives qui semblent nécessiter des noms de domaine) sont-elles même nécessaires dans cette situation?

MODIFIER:

Si vous souhaitez proposer d'autres solutions, je suis ouvert à eux. Jusqu'à présent, ngnix a été proposé, mais ngnix ne peut pas utiliser les servers virtuels basés sur un nom de proxy en raison de son code proxy uniquement à l'aide de http 1.0 sur les servers backend. Je suis également incertain s'il peut mettre en cache des hôtes virtuels basés sur des noms.

Le vernis ressemble à une solution de cache possible, mais j'aimerais beaucoup aimer quelque chose que je puisse héberger sur le même server, donc je n'ai pas besoin de plusieurs servers pour chaque fonction.

Si vous souhaitez replace le backend, mod_vhost_alias

Sinon, si vous mettez simplement la caching en face de votre solution existante, le vernis ou le calmar serait mieux adapté. Varnish a un support embedded pour l'équilibrage de charge de backend, les controls de santé, etc. Vous pouvez également exécuter une paire de servers ipvs en avant pour équilibrer la charge et fournir 100% de disponibilité à une paire (ou plus) servers de vernis.

Fondamentalement, vous aurez besoin d'un <VirtualHost *> pour chaque domaine, chacun avec son ServerName et ServerAlias , à l'intérieur de chacun d'eux, vous mettez les directives relatives au proxy et au cache.

Je vous suggère de mettre un domaine par file, dans un directory commun, et de l'inclure dans un file principal d'apache. La plupart des dissortingbuteurs linux utilisent actuellement des directorys tels que les sites-available Debian / Ubuntu sites-available et les sites-enabled ; tous les domaines sont des files à l'intérieur du directory disponible et simplement liés dans le directory activé activé.

Et je sais que ce n'est pas ce que vous avez demandé, mais comme c'est juste un domaine de stationnement, avez-vous envisagé d'utiliser nginx ? Il est conçu pour des choses comme celles-ci (front end pour recevoir de gros succès et servir de contenu statique / mis en cache / proxy).

Vous voudrez peut-être consulter http://httpd.apache.org/docs/2.0/vhosts/mass.html et surtout le dernier paragraphe. J'ai réussi à exécuter le vhosting de masse avec mod_rewrite.