Clustering sous debian

Salut Salut,
Quels différent moyen y a-t-il pour partager les bande passante de différents serveur pour une seul nom de domaine?

Je sais qu’il devrait y avoir un moyen avec le load balancing mais dans ce cas là, les utilisateurs sont partagé entres les serveurs clones mais la bande passante que l’utilisateur voit n’est pas boostée, elle est juste allégée.

Et plus intéressant; Y a-t-il un moyen en passant par du clustering? J’essais de lire sur le sujet, mon but est d’arriver a faire un cluster apache mariadb d’ici la fin de la semaine. Vous avez des ressources sur le sujet?

Les connexions se feront quoi qu’il arrive sur des IPs publiques, enregistrés pour servir des noms de domaines.

Si tu possède plusieurs serveurs il te faudra quoi qu’il arrive un point central qui va gérer les requêtes web et les acheminer vers les serveurs webs.

Le clustering à proprement parlé ne résoudra pas ta problématique, il te permettra juste de profiter de failover ou de scalabilité des services (ce qui est déjà beaucoup).

Mais quel est l’idée derrière (le vrai besoin de cumuler les bandes passante pou un seul et même domaine) ?.

le vrai besoin est juste de geeker ^^
J’essais de m’intéresser aux cluster et je m’étais demandé si on pouvais doper une bande passante ^^

C’était deux choses attrayante, aller sur de la haute disponibilité, faire du balancing et de l’actif-passif, et booster la bp (dommage pour le dernier).

Par contre si j’ai bien compris pour de la haute disponibilité
il faut un HAProxy, si possible en actif passif à l’entrée,
il est courant de gérer les cluster avec heartbeat corosync et pacemaker sou debian.

Pour du load balancing il faut faire une configuration en actif-actif?

Donc si load balancing + haute disponibilité il faudrait 2 cluster?

Par contre j’essais d’en savoir plus, l’idée c’est de faire un cluster pour le répartiteur de charge,
1 cluster pour apache
1 pour mariadb
chaque cluster serait étalé sur 2 ou 3 nodes répartis dans plusieurs datacenter différents (j’ai vu des tuto pour configurer le tout lorsque les nodes étaient sur le même sous réseau mais pas dans mon cas).
Donc j’essais d’en apprendre d’avantage et j’aimerais faire un test.

Un cluster actif/actif est tout à fais concevable avec du corosync/pacemaker, par contre pour le web pas de soucis, pour le sql il te faudra soit avec du actif/passif et du drdb, soit du perconna/galera et passer à plus de deux serveur afin d’avoir un corum acceptable.

En bref pour du hautement disponible compte pas moins de trois serveurs + une solution en amont de type loadbalancing .

Qi c’est pour apprendre pourquoi ne pas te diriger vers du cluster de Raspberry pi à moindre frais tu pourra mettre ç en place avec ne plus un stockage sur un nas par exemple avec du nfs ou de l’iscsi.

Pour le côté banda passante ce doit être possible mais je ne vois pas comment à première vue avec du serveur chez de l’hébergeur sans avoir accès au matériel en amont.

Et quand c’est deux cartes réseau? :smiley: c’est possible d’utiliser les deux en même temps?

Sinon ya de la doc pas trop compliqué pour comprendre et installer corosync, pacemaker, et drdb?

C’est de l’agrégat de lien, c’est encore autre chose.

Sans doute je te laisse chercher la documentation pour ces outils pullule sur la toile, pense juste à regarder les dates et à ne pas hésitez à recroiser un peu quelques tutoriels (si tu n’utilise pas les documentations officielles).

Pas besoin de corrosync, pacemaker et drdb pour un cluster web (http/db)

Il te faut minimum 6 machines:

  • Une machine de front qui servira de reverse proxy / load balancer, HA Proxy peut gérer l’HTTP pour Apache/Nginx et le TCP pour MariaDB.

  • Deux machines (ou plus) HTTP, Apache ou Nginx, après tu doit synchro les fichiers et la tu peux utiliser plusieurs methodes: rsync, glusterfs (trois machines minium), syncthing ou encore un storage partagé genre NFS.

  • Trois machines pour un cluster Galera/Perconna et attention que, contrairement a ce qu’ils annoncent, ce n’est pas un remplacement transparent de MySQL/MariaDB, il y’a des limites qui peuvent poser problème et certaines fonctionnalités SQL sont manquante.

1 J'aime

si on laisse qu’une seule machine pour le reverse proxy ou load balancer on perd pas l’intérêt du clustering?

Sinon une redondance sur 2 serveurs c’est pas suffisant? on peut vraiment craindre que les deux serveurs soient down au même moment dans deux datacenter différent?

1 J'aime

Alors pour la première partie non bien entendu la chance est quasiment nulle, par contre si tu compte faire fonctionner deux serveurs en actif/passif voir en actif/actif dans deux data center différents et sans doute avec deux hébergeurs différents … c’est franchement pas une bonne idée.

A cause des débit qui pourraient être trop bas? De mémoire, OVH par exemple a son propre réseau privé qui peut relier plusieurs datacenter ce qui permettrait d’avoir de très bon débits. Je dois vérifier mais je pense que c’est pareil avec Online.

Sinon la solution ce serait plutôt du rsync?

J’ose même pas imaginé comment tu compte séparé les interfaces d’administration, de communication inter noeud, publique et d’accès à la data pour chaque machine.

Une resynchronisation régulière dans le cas de serveur en actif/passif consomme beaucoup de ressources déjà.
Et ce quelque soit la techno utilisé.

Mais alors vouloir utilisé du ceph ou du gluster pour avoir en permanence la data répliqué c’est un besoin en bande passante rien que pour cet utilisation non négligeable pour avoir de la performance.

Commence par te faire un vrai plan de mise ne place et à bien compté tes ressources actuellement disponible et ce que tu souhaite mettre en place.

Entre ce faire un lab à la maison et mettre quelque chose ne place d’un minimum sérieux chez des hébergeurs c’est autre chose, à moins que tu parte sur IAAS chez un hébergeur permettant à minima de gérer le ou les routeurs virtuels avec du loadbalancing et une gestion correctes des groupes de sécurité pour isoler tes différentes ressources.

j’en suis trèèèès loin de ce niveau là.

routeur virtuel, jamais entendu parlé. Load balancing, ca je comptais le faire moi-même.

les interfaces d’administration? jamais utilisé. Je vise un pool de moins de 10 serveurs donc je pensais utiliser exclusivement les lignes de commandes. je pensais faire mon propre système d’automatisation et surveillance mais je vois qu’il en existe déjà pas mal…

l’idée c’est de faire une interface pour moldu qui permet de commander une instance via l’api des hébergeurs et permet simplement d’ajouter des virtualhost de les brider, activer des backup, mettre en place de la HA,monitorer etc… le but c’est d’éviter au moldu la ligne de commande

Pour le routeur virtuel au pris des instances lowcost je peux me le faire moi-même non?

Dans ce cas code toi ton dashboard pour fonctionner avec du terraform par exemple couplé à l’API d’un ou plusieurs hébergeur de solution cloud.

Mais ce que maintenant tu décrits s’est de l’hébergement et ça beaucoup de petits et grands hébergeurs le font déjà avec plus ou moins de succès et de facilité.

Du actif/actif avec deux machines c’est asse dangereux dans certains cas comme Perconna/Galera car pas de Quorum.
Pour la partie failover de HAProxy j’avais deux PFSense avec IP virtuelles CARP et trois liens BGP, nous avions notre propre numéro AS et un /24 à notre nom, ça aide pas mal :smiley:

Et sinon je pense que des hébergeurs tel que OVH proposent des IP virtuelles et des serveurs sur plusieurs data-center.

:confused: je suis en train d’essayer so you start, j’ai de drôles de perf… et leur interface pour commander des ip failover bug