Existe-t-il des alternatives majeures pour le basculement automatique sous Linux en plus des combinaisons typiques Heartbeat / Pacemaker / CoroSync? En particulier, je configure le basculement sur les instances EC2, qui ne prend en charge que la monodiffusion - pas de multidiffusion ni de diffusion. J'essaie spécifiquement de gérer les quelques logiciels que nous avons qui ne disposent pas déjà d'un basculement automatique et ne prennent pas en charge les environnements multi-maîtres. Cela inclut des outils comme HAProxy et Solr.
J'ai Heartbeat + Pacemaker qui fonctionne, mais je n'en suis pas ravi. Voici certains de mes problèmes:
- Heartbeat - En soi, limité à deux nœuds. J'aimerais avoir 3+.
- Pacemaker - Impossible de configurer automatiquement. Le cluster doit être exécuté avec un quorum, puis il nécessite toujours une configuration manuelle.
- CoroSync - Ne prend pas en charge la monodiffusion.
Le stimulateur cardiaque fonctionne très bien, bien que sa puissance le rend difficile à configurer. Le vrai problème avec Pacemaker est qu'il n'y a pas de moyen facile d'automatiser la configuration. Je veux vraiment lancer une instance EC2, installer Chef / Puppet et faire lancer le cluster entier sans mon intervention.
Je travaille actuellement sur quelque chose de très similaire à ce que vous avez décrit (un cluster de basculement sur EC2), et après avoir essayé Heartbeat, je me suis installé sur Corosync comme couche de messagerie. Corosync fonctionnera sur plusieurs serveurs et prend en charge Unicast (UDPU) à partir de la version 1.3.0 (à partir de novembre 2010). J'ai installé et testé Corosync sur le cloud EC2 d'Amazon (en utilisant l'AMI Linux d'Amazon) et je peux confirmer que cela fonctionne sans problème.
Un exemple de fichier udpu est installé dans / etc / corosync.
Ajoutez un bloc membre à la section d'interface pour chaque nœud et spécifiez le transport en tant que mise à jour. (J'ai utilisé le même port que Heartbeat dans l'exemple ci-dessous, mais vous pouvez le modifier à votre guise).
par exemple:
(Heartbeat est censé prendre en charge plus de 3 clusters de nœuds dans les versions 1.2.3+, bien que je ne l'ai jamais essayé personnellement et je ne sais pas si cela fonctionnerait avec Unicast).
la source
Désolé, mais la partie sur Pacemaker n'est pas vraie. Les tests de régression et de libération de Pacemaker utilisent largement l'automatisation.
Pour configurer sans cluster actif, préfixez toutes les commandes avec
CIB_file=/var/lib/heartbeat/crm/cib.xml
ou définissez-le dans votre environnement. Assurez-vous simplement de supprimer le fichier .sig avant de démarrer le cluster.Pour les clusters sans quorum, la plupart des outils, sinon tous, devraient prendre en charge
-f
ou--force
qui demanderont au cluster d'accepter le changement de toute façon. Si vous trouvez un outil qui ne fonctionne pas - veuillez signaler un bogue.la source
Dans le monde open source, il y a RedHat Cluster Suite . Cela fait plusieurs années que j'ai mis en œuvre RHCS, je n'ai donc pas beaucoup de choses pertinentes à dire à ce sujet aujourd'hui.
Commercialement, il y a Veritas Cluster Server . Aucune expérience avec cela.
Un outil HA beaucoup plus simple et open source est UCARP . UCARP ne fournit pas à peu près le même type d '"infrastructure" que Heartbeat / Pacemaker / CoroSync, mais vous pouvez créer des solutions HA autour de lui.
Vous pouvez également créer une infrastructure hautement disponible avec des technologies de virtualisation, mais ces solutions ont tendance à se concentrer sur la disponibilité au niveau de l'hôte plutôt que sur la disponibilité au niveau de l'application.
la source
Il existe Oracle Clusterware pour Oracle Unbreakable Linux, mais je ne l'ai pas utilisé.
la source
Si vous utilisez déjà EC2, pourquoi ne pas utiliser Elastic Load Balancing ? Il vous permettra d'atteindre la disponibilité au niveau de l'application sans avoir à configurer le basculement vous-même.
la source
Veritas Cluster est génial (par rapport à Linux-Heartbeat, AIX-hacmp, HP-Serviceguard et Sun cluster), mais il coûte beaucoup d'argent. La dernière fois que je l'ai regardé, son prix était basé sur les cpu-cores du cluster. Fournisseur actuel ist Symantec ...
la source
J'ai écrit un gestionnaire de cluster de basculement dans le shell posix: https://github.com/nackstein/back-to-work
jetez-y un œil, je cherche quelqu'un qui veut l'essayer et aider au développement.
la source
opensvc ( https://www.opensvc.com ) prend en charge plusieurs pilotes de pulsation:
et ont également des mécanismes de quorum en cas de cerveau divisé.
J'ai réussi à configurer automatiquement un cluster à 4 nœuds composé de 2 instances Google Cloud + 2 instances Amazon avec Terraform + Ansible.
la source