Mon groupe RabbitMQ est-il actif ou passif actif?

j'ai créé un cluster composé de trois noeuds RabbitMQ utilisant la commande join_cluster.

c'est à dire

rabbitmqctl –n rabbit2@MYPC1 join_cluster rabbit2@MYPC1 

(actuellement le cluster tourne sur un seul ordinateur)

Questions:

Dans le documents il est dit qu'il y a une implémentation pour Active passive et une autre pour active active.

  1. Qu'ai-je configuré?
  2. Qu'est-ce que j'en sais?
  3. Comment changer?
  4. "1519140920 il y a une grande performance compromis entre Actif Actif & Passif Actif?
  5. Quelle est la meilleure pratique pour interagir avec active/active?

    c'est à dire installer un équilibrage de charge? apache qui va round robin
  6. Quelle est la meilleure pratique pour interagir avec Actif/Passif?

    si je interagir avec seulement l'actif - il s'agit d'un point unique de défaillance F

Merci.

1
demandé sur Bick 2014-02-04 18:59:32

1 réponses

j'ai fait quelques recherches sur les options de disponibilité avec RabbitMQ et bien que je sois encore assez nouveau, je vais essayer de répondre à vos questions avec la connaissance que j'ai. Veuillez comprendre que ces réponses ne se veulent pas exhaustives.

avant d'en venir aux questions et réponses, je pense qu'il est utile de souligner que je pense que l'utilisation des termes Active / Active et Active / Passive dans le contexte d'un cluster tournant sur un seul ordinateur ne vraiment s'appliquer. Active/Active et Active/Passive sont généralement des termes utilisés pour décrire des clusters hautement disponibles où vous avez un système de plus d'un serveur logique (dans votre cas, plusieurs clusters RabbitMQ), stockage partagé / redondant, capacités réseau, puissance, etc.

  1. Qu'ai-je configuré?

    sans aucun équilibrage de charge pour les noeuds de votre cluster ou miroir de file d'attente vous n'avez ni l'un ni l'autre, ce qui signifie que vous n'avez pas une haute cluster disponible.
  2. Qu'est-ce que j'en sais?

    RabbitMQ ne fournit aucune gestion de connexion de sorte que le trafic avec un noeud défectueux ne sera pas automatiquement transmis à un autre noeud, ce qui est nécessaire pour un cluster actif/actif. Sans miroir de file d'attente, vous n'avez pas de nœuds complètement redondants dans votre cluster, ce qui est requis pour Actif/Passif.
  3. Comment changer?

    même si vous implémentez l'équilibrage de charge et/ou le mirroring de file d'attente, vous manquez un certain nombre d'exigences pour offrir un cluster RabbitMQ très disponible. Principalement, avec un cluster RabbitMQ, vous n'avez qu'un seul courtier logique (au moins deux sont nécessaires pour un cluster HA).
  4. "151950920 il y a une grande performance compromis entre Actif Actif & Passif Actif?

    je pense que vous allez commencer à voir des performances pénalités lorsque vous commencez à introduire la réplication et/ou la redondance des données, ce qui affecterait à la fois actif/actif et actif/passif. Si vous utilisez la réplication synchrone des données, alors vous verrez un plus grand succès de performance que si vous répliquez des données de manière asynchrone. Il y a beaucoup plus, mais pour moi, c'est comme s'il y avait un plus grand succès de performance en utilisant Active/Active, mais cela dépend fortement de la vitesse à laquelle toutes les pièces travaillent ensemble. Dans Active / Passive où vous pouvez utiliser réplication asynchrone entre les serveurs vos performances peuvent sembler meilleures, mais dans une situation de basculement, vous devrez attendre que la réplication soit terminée avant de pouvoir passer à votre serveur secondaire.
  5. Quelle est la meilleure pratique pour interagir avec active/active? c'est à dire installer un équilibrage de charge? apache qui va round robin

    RabbitMQ recommande l'utilisation d'un équilibreur de charge afin que vous n'ayez pas à divulguer des détails sur le noeuds dans votre cluster pour les clients.
  6. Quelle est la meilleure pratique pour interagir avec Actif/Passif? si j'interagis avec seulement l'actif-c'est un point unique d'échec

    c'est un point d'échec, mais avec L'Actif/Passif, vous pouvez mettre en œuvre une stratégie d'Échec pour rejouer le serveur suivant disponible ou tous les serveurs restants. Avec ces stratégies en place, vous pouvez établir un scénario où les capacités de votre cluster sont simplement dégradé alors qu'un basculement se produit au lieu de totalement indisponible. De plus, vous pouvez interagir avec le côté passif, mais les types d'interactions peuvent être très différents (c.-à-d. accès en lecture seule) puisqu'il peut y avoir moins de ressources disponibles du côté passif et il peut y avoir des retards dans la réplication des données.

Voici quelques références utilisées pour recueillir cette information:

8
répondu Erik Gillespie 2014-06-12 18:09:13