Plug-ins - Amazon MQ

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Plug-ins

Amazon MQ pour RabbitMQ prend également en charge les plug-ins suivants.

Plugin de gestion RabbitMQ

Amazon MQ pour RabbitMQ prend en charge le plug-in de gestion RabbitMQ, qui fournit une API de gestion basée sur HTTP ainsi qu'une interface utilisateur basée sur un navigateur pour la console Web RabbitMQ. Vous pouvez utiliser la console web et l'API de gestion pour créer et gérer des utilisateurs et des politiques de l'agent.

Plug-in Shovel

Amazon MQ pour RabbitMQ prend en charge le plugin RabbitMQ shovel, qui vous permet de déplacer des messages d'une file d'attente ou d'un échange d'un courtier à un autre. Vous pouvez utiliser la pelle pour connecter des agents à couplage faible et distribuer des messages loin des nœuds avec des charges de messages plus lourdes.

Important

Vous ne pouvez pas configurer de pelle entre les files d'attente ou les échanges si la destination de la pelle est un agent privé.

Amazon MQ ne prend pas en charge l'utilisation de pelles statiques.

Seules les pelles dynamiques sont prises en charge. Les pelles dynamiques sont configurées à l'aide de paramètres d'exécution et peuvent être démarrées et arrêtées à tout moment par programmation via une connexion client. Par exemple, à l'aide de l'API de gestion RabbitMQ, vous pouvez créer une requête PUT vers le point de terminaison d'API suivant pour configurer une pelle dynamique. Dans l'exemple, {vhost} peut être remplacé par le nom du vhost du broker, et {name} par le nom de la nouvelle pelle dynamique.

/api/parameters/shovel/{vhost}/{name}

Dans le corps de requête, vous devez spécifier soit une file d'attente, soit un échange, mais pas les deux. L'exemple ci-dessous configure une pelle dynamique entre une file locale spécifiée dans src-queue et une file distante définie dans dest-queue. De même, vous pouvez utiliser les paramètres src-exchange et dest-exchange pour configurer une pelle entre deux échanges.

{ "value": { "src-protocol": "amqp091", "src-uri": "amqp://localhost", "src-queue": "source-queue-name", "dest-protocol": "amqp091", "dest-uri": "amqps://b-c8352341-ec91-4a78-ad9c-a43f23d325bb.mq.us-west2.amazonaws.com:5671", "dest-queue": "destination-queue-name" } }

Plugin de fédération

Amazon MQ prend en charge les échanges fédérés et les files d'attente à l'aide du plug-in de fédération RabbitMQ. Avec la fédération, vous pouvez répliquer le flux de messages entre les files d'attente, les échanges et les consommateurs sur des agents distincts. Les files d'attente fédérées et les échanges utilisent point-to-point des liens pour entrer en contact avec les pairs d'autres courtiers. Alors que les échanges fédérés, par défaut, acheminent les messages une fois, les files d'attente fédérées peuvent déplacer des messages n'importe quel nombre de fois selon les besoins des consommateurs.

Vous pouvez utiliser la fédération pour autoriser un agent en aval pour consommer un message provenant d'un échange ou d'une file d'attente en amont. Vous pouvez activer la fédération sur les agents en aval à l'aide de la console web RabbitMQ ou de l'API de gestion.

Important

Vous ne pouvez pas configurer de fédération si la file d'attente ou l'échange en amont se trouve dans un agent privé. Vous pouvez uniquement configurer de fédération entre les files d'attente ou les échanges dans des agents publics, ou entre une file d'attente ou un échange en amont dans un agent public, et une file d'attente ou un échange en aval dans un agent privé.

Par exemple, l'API de gestion vous permet de configurer la fédération en procédant comme suit.

  • Configurez un ou plusieurs flux en amont qui définissent les connexions de fédération à d'autres nœuds. Vous pouvez définir des connexions de fédération à l'aide de la console web RabbitMQ ou de l'API de gestion. À l'aide de l'API de gestion, vous pouvez créer une requête POST vers/api/parameters/federation-upstream/%2f/myupstreamavec le corps de requête suivant.

    {"value":{"uri":"amqp://server-name","expires":3600000}}
  • Configurez une politique pour permettre à vos files d'attente ou échanges d'être fédérés. Vous pouvez configurer des politiques à l'aide de la console web RabbitMQ ou de l'API de gestion. À l'aide de l'API de gestion, vous pouvez créer une requête POST pour/api/policies/%2f/federate-me avec le corps de requête suivant.

    {"pattern":"^amq\.", "definition":{"federation-upstream-set":"all"}, "apply-to":"exchanges"}
    Note

    Le corps de la requête suppose que les échanges sur le serveur sont nommés en commençant par amq. L'utilisation de l'expression régulière ^amq \. garantira que la fédération est activée pour tous les échanges dont le nom commence par « amq ». Les échanges sur votre serveur RabbitMQ peuvent être nommés différemment.

Plugin d'échange de hachage cohérent

Amazon MQ pour RabbitMQ prend en charge le plug-in RabbitMQ Consistent Hash Exchange Type. Les échanges de hachage cohérent acheminent les messages vers les files d'attente en fonction d'une valeur de hachage calculée à partir de la clé de routage d'un message. Compte tenu d'une clé de routage raisonnablement uniforme, les échanges de hachage cohérents peuvent répartir les messages entre les files d'attente de manière raisonnablement uniforme.

Pour les files d'attente liées à un échange de hachage cohérent, la clé de liaison est a number-as-a-string qui détermine le poids de liaison de chaque file d'attente. Les files d'attente avec un poids de liaison plus élevé recevront une distribution proportionnellement plus élevée de messages provenant de l'échange de hachage cohérent auquel elles sont liées. Dans une topologie d'échange de hachage cohérent, les éditeurs peuvent simplement publier des messages dans l'échange, mais les consommateurs doivent être explicitement configurés pour consommer des messages provenant de files d'attente spécifiques.

OAuth Plug-in 2.0

Amazon MQ pour RabbitMQ prend en charge le plug-in principal d'authentification à 2 niveaux. OAuth Ce plugin est activé de manière conditionnelle en fonction de la configuration de votre courtier. Lorsqu'il est activé, ce plugin fournit une authentification et une autorisation OAuth 2.0 avec intégration à des fournisseurs d'identité OAuth 2.0 externes pour une gestion centralisée des utilisateurs et un contrôle d'accès. Pour plus d'informations sur l'authentification OAuth 2.0, consultezOAuth Authentification et autorisation 2.0.

Plug-in LDAP

Amazon MQ pour RabbitMQ prend en charge le plug-in principal d'authentification LDAP. Ce plugin est activé de manière conditionnelle en fonction de la configuration de votre courtier. Lorsqu'il est activé, ce plugin fournit une authentification et une autorisation LDAP avec intégration à des services d'annuaire LDAP externes pour une authentification et une autorisation centralisées des utilisateurs. Pour plus d'informations sur l'authentification LDAP, consultezAuthentification et autorisation LDAP.

Plug-in HTTP

Amazon MQ pour RabbitMQ prend en charge le plugin principal d'authentification HTTP. Ce plugin est activé de manière conditionnelle en fonction de la configuration de votre courtier. Lorsqu'il est activé, ce plugin fournit une authentification et une autorisation HTTP avec intégration à des serveurs HTTP externes pour une authentification et une autorisation centralisées des utilisateurs. Pour plus d'informations sur l'authentification HTTP, consultezAuthentification et autorisation HTTP.

Note

Le plug-in d'authentification HTTP est uniquement disponible pour Amazon MQ pour RabbitMQ version 4 et supérieure.

Plug-in de certificat SSL

Amazon MQ prend en charge le protocole TLS mutuel (MTL) pour les courtiers RabbitMQ. Le plugin d'authentification SSL utilise des certificats clients issus de connexions mTLS pour authentifier les utilisateurs. Ce plugin est activé de manière conditionnelle en fonction de la configuration de votre courtier. Lorsqu'il est activé, il fournit une authentification basée sur des certificats à l'aide de certificats clients X.509 pour une authentification renforcée sans transmettre d'informations d'identification sur le réseau. Pour plus d'informations sur l'authentification par certificat SSL, consultezAuthentification par certificat SSL.

Note

Le plug-in d'authentification par certificat SSL est uniquement disponible pour Amazon MQ pour RabbitMQ version 4 et supérieure.

plugin aws

Le plugin aws est activé de manière conditionnelle par Amazon MQ pour RabbitMQ en fonction de la configuration de votre courtier. Ce plugin communautaire, développé et maintenu par Amazon MQ, permet de récupérer en toute sécurité les informations d'identification et les certificats des AWS services utilisés AWS ARNs dans les paramètres de configuration de RabbitMQ. Pour plus d'informations sur la prise en charge de l'ARN, consultezARN support in RabbitMQ configuration.