Aller au contenu

Cluster à répartition de charge


Reivilo

Sujets conseillés

Bonjour,

Je cherche des informations sur les clusters à répartition de charge (basé sur LVS). Ce cluster n'aura pas pour but d'apaiser un gros site, mais serait plutôt exploité comme pour un hébergeur : des centaines de sites, des changements de zones dns, vhosts,... très fréquent, etc...

Bref, en dehors d'applications professionnelles, les clusters sont peu exploité et donc la doc est difficile à trouver (en dehors de celle de Linux Virtual Server ou de quelques fiches descriptives). J'espère trouver ici quelqu'un qui a déjà mis en place ou utilisé ce type de cluster pour répondre à quelques-une de mes questions.

Ce que j'ai retenu est assez maigre : un serveur répartiteur de charge (voire un deuxième redondant pour la haute accessibilité) répartir les requêtes clients vers un serveur apache opérationnel qui lui-même ira piocher des données sur un filer tout en se servant sur le serveur MySQL pour renvoyer le tout au client. Les serveurs mails, DNS et SQL tournent sur des machines à part.

Donc, tous les serveurs Apache sont identiques, il serait logique d'utiliser le même httpd.conf sur le filer, mais y a-t'il une solution propre pour redémarrer tous les serveurs Apache pour prendre en compte un changement de vhost par exemple ?

J'ai aussi du mal à dimensionner le trafic entrant sur le répartiteur ainsi que sa configuration hardware, certains parlent de machines de fond de grenier : PIII 500MHz :smartass: Est-ce bien raisonnable ?

J'ai encore une foule de questions, mais commençant doucement et surtout, voyons si quelqu'un a des compétences dans ce domaine :cool:

Merci d'avance pour ceux qui sauraient répondre et bonne nuit aux autres ;)

Lien vers le commentaire
Partager sur d’autres sites

slt

la haute disponnibilite en environnement web est un sujet tres vaste...

perso, je fais du failover pour la messagerie de mon entreprise, ce qui permet d'assurer

la disponibilite de service si le serveur primaire tombe.

J'utilise heartbeat pour cela, qui gere l'adresse ip de disponibilte du cluster pour deux serveurs physiques.

mais avant tout... quels sont tes moyens?

il te faut imperativement plusieurs serveurs physiques, et idealement les avoir a dispo

dans tes locaux, ou pouvoir te rendre dans une salle blanche.

Lien vers le commentaire
Partager sur d’autres sites

Les moyens ce n'est pas un problème et pour la baie, consommation électrique et la bande passante non plus. Ce qui est important pour l'instant, c'est de connaître la configuration du cluster la plus adaptée ainsi qu'un ordre de grandeur de la puissance hardware, principalement pour le répartiteur de charge.

Voici quelques ordres de grandeurs :

Filer : 0.5-1 To d'espace utile en raid5 (là, je pense à du Sata2 voire des Raptor plutôt qu'à du SCSI pour des questions de coûts, maintenant si vous avez d'autres avis, ils sont bienvenus). Une question au passage : une fois le raid5 en place, on ne peut pas changer sa capacité (en ajoutant un disque dur) sans le reconstruire, c'est bien ça ?

Bon allez, je vous en donne une deuxième en prime : Quelle configuration est conseillée ? Je vois de tout, allant du pentium 2GHz au bi-xeon 3GHz avec 16Go de ram... un PIV 3GHz avec 2Go de ram est-ce un bon choix ?

BP : < 25 Mbps mais l'évolutivité de ce côté n'est pas un problème.

Le reste des serveurs (3-4 Apache au début, 1 Mail (avec dns primaire) et 1 SQL (avec dns secondaire)) serait assez classique (PIV HT 3GHz, 2Go de Ram (ou 1?)) sauf le SQL qui aurait un bi-xeon avec 4Go de RAM et des disques SCSI en raid1. Je pense ajouter encore 1 serveur de backup. En gros, ce sera le point de départ (car le but du cluster est de : répartir la charge, simplifier l'évolutivité).

Pour simplifier, voici ce que je cherche principalement :

- Une idée réaliste du serveur répartiteur de charge (configuration hard).

- La configuration conseillée pour un second serveur répartiteur de secours (heartbeat par exemple).

- Une idée de temps à prévoir pour la configuration, rodage, stabilisation de LVS.

- Je cherche également des idées pour simplifier la gestion du cluster et des sites en utilisant une interface commune (genre Cpanel, mais ce serait du sur-mesure), pour gérer un serveur je vois parfaitement, mais pour gérer un cluster de manière propre, je vois moins bien.

- Ensuite il y a la question du monitoring, que conseillez-vous ? Cacti, Munin, autre ?

Merci pour ta réponse ;)

Lien vers le commentaire
Partager sur d’autres sites

- Une idée réaliste du serveur répartiteur de charge (configuration hard).

- La configuration conseillée pour un second serveur répartiteur de secours (heartbeat par exemple).

alors si tu as une baie de plusieurs serveurs, voila ce que je ferai a ta place.

- un "noeud" dedié aux données. (comptes utilisateurs, fichiers de conf etc.)

Il te faut donc un system de fichier fait pour cela, du type GFS

- des noeuds hebergeant les services (apache, bind etc.) ayant acces aux données et aux fichiers de conf

sur lesquels tu vas faire du failover et du loadbalancing.

- Une idée de temps à prévoir pour la configuration, rodage, stabilisation de LVS.

tout depend de tes connaissances et moyens

- Je cherche également des idées pour simplifier la gestion du cluster et des sites en utilisant une interface commune (genre Cpanel, mais ce serait du sur-mesure), pour gérer un serveur je vois parfaitement, mais pour gérer un cluster de manière propre, je vois moins bien.

ben si tu travailles avec un system de noeuds de données, la question ne se pose plus,

puisque ton ficher de config est accessible depuis tes noeuds de service.

(par contre, il te faut gerer le redemarrage de chaque service sur chaque noeud)

- Ensuite il y a la question du monitoring, que conseillez-vous ? Cacti, Munin, autre ?

Nagios!

Lien vers le commentaire
Partager sur d’autres sites

(par contre, il te faut gerer le redemarrage de chaque service sur chaque noeud)
Oui justement c'est ça que je cherche.

Pour Nagios, ça me semble parfait merci.

Sinon comme OS, qu'est-ce que tu mettrais ? pour Le NFS GFS, Red Hat (ou Fedora ?) est obligé ?

Modifié par Reivilo
Lien vers le commentaire
Partager sur d’autres sites

Oui justement c'est ça que je cherche.

bah au pire, fais toi un shell qui va se connecter sur test serveur et relancer tes services...

Sinon comme OS, qu'est-ce que tu mettrais ? pour Le NFS GFS, Red Hat (ou Fedora ?) est obligé ?

peut importe..

perso, sur mes serveurs j'utilise Debian, et dernierement dans ma boite, pour etre dans plus homogene

avec l'environnement, je mets la SLES de Novell (Suse Linux Entreprise Server)

Apres... un linux c'est un linux, peut importe la distrib.

c'est plus une histoire d'habitude qu'autre chose ;)

Lien vers le commentaire
Partager sur d’autres sites

bah disons que ca depend des services...

ce qui pompe le plus c'est MySql.

donc si tu fais un serveur dedié qu'a ca, gonfle le bien surtout si tu as beaucoup de sites.

apres... apache, bind, ftp etc... a part pour de gros besoin, un serveur "normal" suffit,

du moment que tu les administres bien (cache php, limitation de processus etc.)

re --- pas bien lu ton post

tu parles du serveur qui va gerer la repartition...

je n'ai pas d'experience significative a ce sujet.

je fais plus du failover ... pour la repartition de charge pour les sites web, j'utilise

des reverseproxy.

Lien vers le commentaire
Partager sur d’autres sites

Oui, ça correspond à ce que j'ai écrit plus haut non ? Pour ça je vois assez bien les configurations nécessaires, mais ce pour quoi je n'ai aucune idée c'est pour le serveur qui répartira la charge entre les serveurs Apache (bref, celui qui gérera LVS), quelle connectique faut-il prévoir, quel genre de processeur, combien de ram,.. ? As-tu une idée ? Je préfère pas lui consacrer un serveur bi-xeon si un simple celeron 512mo de ram suffit ;)

Et côté disques, tu conseilles quoi entre du sata 7,2 krpm, du sata raptor à 10krpm et du scsi à 10-15 krpm pour le NFS ?

En tout cas merci bien pour toutes ces informations :rolleyes:

Lien vers le commentaire
Partager sur d’autres sites

mon post d'en haut, il a ete fusionné:

--------------------

re --- pas bien lu ton post

tu parles du serveur qui va gerer la repartition...

je n'ai pas d'experience significative a ce sujet.

je fais plus du failover ... pour la repartition de charge pour les sites web, j'utilise

des reverseproxy.

Lien vers le commentaire
Partager sur d’autres sites

bah logiquement, ca doit pas etre enorme...

mais il faut kan meme que ce soit une machine fiable, puisqu'au finale,

c'est elle qui devient critique.

il faut donc prevoir un solution de failover pour ton system de load balancing...

tu as beau avoir tes serveurs operationnels derriere ton cluster...

si ce dernier est out, aucun de ces serveurs ne bosseront :D

tu comprends pourquoi la haute disponnibilite coute cher?

Lien vers le commentaire
Partager sur d’autres sites

tu comprends pourquoi la haute disponnibilite coute cher?
Oh oui que oui ;)

En encore, on a beau mettre tous les services redondants possible, il restera toujours des failles, là on ne peut pas vraiment parler de haute dispo sinon il faudra mettre le serveur SQL redondant ou en cluster SQL, de même pour le serveur Mail et idem pour le NFS, et encore raid5 c'est bien beau, mais si 2 disques claquent en même temps (ou simplement détectés comme corrompus)... et là ce serait encore dépendant d'un datacenter... enfin bon, on essaye juste de faire du mieux qu'on peut avec les moyens à disposition :whistling:

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...