Comment construire un cluster personnel?

9

J'ai un serveur debian exécutant certains services (mail, web, git, mysql ...). Mais il est seul, ce qui signifie que s'il se casse, je dois le réparer pour accéder à mes services.

Je voudrais mettre un deuxième serveur pour que si le premier meurt, le second soit automatiquement prêt à fonctionner. Je ne veux pas que l'un de ces serveurs soit un maître et l'autre un esclave. L'idée est d'empêcher une défaillance matérielle de l'un des deux serveurs.

J'ai trouvé beaucoup d'informations sur la façon de créer de gros clusters, mais je n'ai rien trouvé qui implique seulement deux serveurs.

Clément Roblot
la source
C'est une question intéressante, mais vous obtiendrez peut-être une meilleure réponse sur le site Server Fault SE.
n0pe
@MaxMackie La partie "personnelle" semble rendre cette question hors sujet sur SF.
un CVn
1
pour les configurations, je vous recommande d'utiliserpuppet
ixtmixilix

Réponses:

7

La création d'un environnement ha comporte de nombreuses mises en garde et est compliquée, et dépend souvent du logiciel réel (par exemple, la création d'un environnement maître-esclave pour mysql est différente de celle de postfix0

Si vous voulez commencer et ne voulez avoir que deux systèmes et que vous n'avez pas le temps de configurer tous vos démons en conséquence, vous devriez jeter un œil à drbd , raid-1 sur le réseau. Avec cela, tout le contenu du blockdevice sera répliqué sur votre autre système. Combinez cela avec quelque chose comme corosyncou heartbeatet vous pouvez laisser l'autre système prendre automatiquement le relais.

En général, cela se résume à:

  1. Avoir une sorte de stockage partagé, soit SAN, drbd etc. ou avoir le support du système serveur
  2. Détectez automatiquement une panne d'un système et prenez la responsabilité (par exemple IP ou supprimez-la du cluster)

Si vous n'avez pas de système de stockage partagé, vous devez généralement avoir un support dans votre application, ces systèmes sont par exemple cassandra, mongodb etc.

Ulrich Dangel
la source
1
Il existe un bon ensemble de documents sur linuxvirtualserver.org sur la façon de fournir un frontal HA pour tout ce que votre service répliqué peut être.
Matt
1
@mindthemonkey les exemples semblent être tous spécifiques à http / application. mais oui le principe sous-jacent, le stockage partagé, le système de surveillance, etc., il y a aussi linux-ha.org qui fournit une introduction aux différents composants logiciels.
Ulrich Dangel
1

Le rythme cardiaque est déconseillé.

Utilisez Pacemaker + Corosync pour les clusters 1 + 1, N + 1, N + N

RAM
la source