View a markdown version of this page

Privates Netzwerk für Amazon MQ für RabbitMQ - Amazon MQ

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Privates Netzwerk für Amazon MQ für RabbitMQ

Private Netzwerke ermöglichen es Amazon MQ for RabbitMQ-Brokern, eine Verbindung zu privaten Ressourcen in Ihrer VPC herzustellen. Zu diesen Ressourcen können private Identitätsanbieter (LDAP oder OAuth2), andere Amazon MQ für RabbitMQ-Broker oder selbst gehostete RabbitMQ-Broker gehören. Sie können sich privat mit Ihren Ressourcen verbinden, ohne das öffentliche Internet nutzen zu müssen.

Verfügbarkeit
  • Private Netzwerke sind nur für Amazon MQ für RabbitMQ-Broker verfügbar. ActiveMQ-Broker werden nicht unterstützt.

  • Private Netzwerke sind in den Regionen AWS GovCloud (USA) nicht verfügbar.

  • Private Netzwerke sind nur in AWS Regionen verfügbar, in denen Amazon VPC Lattice verfügbar ist. Weitere Informationen zu den Regionen, in denen VPC Lattice verfügbar ist, finden Sie unter Amazon VPC Lattice-Endpunkte und -Kontingente in der Allgemeinen Referenz. AWS

So funktionieren private Netzwerke

Private Netzwerke verwenden Amazon VPC Lattice, AWS Resource Access Manager (AWS RAM) und AWS PrivateLink um Ihren Broker mit einem privaten Ziel in Ihrer VPC zu verbinden.

Das Setup umfasst die folgenden Komponenten:

  1. Ein VPC Lattice Resource Gateway in Ihrer VPC dient als Einstiegspunkt für den Datenverkehr vom Broker zu Ihren privaten Ressourcen.

  2. Eine oder mehrere VPC-Lattice-Ressourcenkonfigurationen definieren die privaten Ziele (IP-Adresse oder DNS-Name), die über das Ressourcen-Gateway erreichbar sind.

  3. Eine AWS RAM-Ressourcenfreigabe verpackt die Ressourcenkonfigurationen und ist über den UpdateBroker API-Vorgang mit dem Broker verknüpft.

  4. Während eines Broker-Neustarts erstellt Amazon MQ Ressourcen-VPC-Endpunkte in der VPC des Brokers. Diese Endpunkte legen den Netzwerkpfad durch Ihr Ressourcen-Gateway zu den konfigurierten Zielen fest.

Voraussetzungen

Bevor Sie ein privates Netzwerk einrichten, stellen Sie Folgendes sicher:

  • Sie haben einen Amazon MQ for RabbitMQ-Broker in einem Bundesstaat. RUNNING

  • Sie haben eine VPC mit mindestens einem Subnetz. Diese VPC hostet das Resource Gateway und muss nicht dieselbe VPC wie der Broker sein. Verwenden Sie Subnetze in mehreren Availability Zones, um eine hohe Verfügbarkeit zu erzielen.

  • Das VPC Lattice Resource Gateway muss sich mindestens eine Availability Zone mit dem Broker teilen. Dies ist nur für Single-Instance-Broker ein Problem. Cluster-Broker verwenden jede verfügbare Availability Zone.

Anmerkung

Der Broker muss nicht privat sein. Ein öffentlich zugänglicher Broker kann auch private Netzwerke nutzen.

Einrichtung eines privaten Netzwerks

Folgen Sie diesen Schritten, um ein privates Netzwerk für Ihren Amazon MQ for RabbitMQ-Broker einzurichten.

Schritt 1: Erstellen Sie ein VPC Lattice Resource Gateway

Erstellen Sie ein VPC Lattice Resource Gateway in einer VPC, das Ihre privaten Ressourcen erreichen kann. Das Resource Gateway fungiert als transparenter Proxy. Es leitet den Datenverkehr vom Broker zu den konfigurierten Zielen weiter.

  1. Öffnen Sie die Amazon VPC-Konsole.

  2. Wählen Sie im Navigationsbereich unter VPC Lattice die Option Resource Gateways aus.

  3. Wählen Sie Create Resource Gateway aus.

  4. Konfigurieren Sie das Resource Gateway mit einer VPC, Subnetzen und einer Sicherheitsgruppe. Stellen Sie sicher, dass sich mindestens ein Subnetz in einer Availability Zone befindet, die mit Ihrem Broker gemeinsam genutzt wird.

Weitere Informationen finden Sie unter Resource Gateways im Amazon VPC Lattice-Benutzerhandbuch.

Schritt 2: Erstellen Sie VPC Lattice-Ressourcenkonfigurationen

Erstellen Sie eine oder mehrere Ressourcenkonfigurationen, die die privaten Ziele definieren, die Ihr Broker erreichen muss. Jede Ressourcenkonfiguration gibt eine IP-Adresse oder einen DNS-Namen an, der in der VPC, in der Sie das Ressourcen-Gateway einrichten, aufgelöst werden kann.

Sie können einer Ressourcenkonfiguration optional einen benutzerdefinierten Domänennamen hinzufügen. Nur verifizierte Domainnamen können für die DNS-Auflösung des Brokers verwendet werden. Wenn Ihre Ressourcenkonfiguration keinen verwendbaren Domainnamen hat, stellt Amazon MQ über den DescribeSharedResources API-Vorgang einen DNS-Namen bereit. Sie können diesen DNS-Namen in Ihrer Broker-Konfiguration verwenden.

Weitere Informationen finden Sie unter Ressourcenkonfigurationen im Benutzerhandbuch für Amazon VPC Lattice.

Schritt 3: Erstellen Sie eine AWS Teilen Sie die RAM-Ressource

Erstellen Sie eine AWS RAM-Ressourcenfreigabe und fügen Sie Ihre VPC-Lattice-Ressourcenkonfigurationen hinzu. Den Ressourcenanteil verknüpfen Sie mit Ihrem Amazon MQ-Broker.

Wichtig

Die gemeinsame Nutzung der Ressource muss externe Principals zulassen. Ressourcenfreigaben, die auf Ihre Organisation beschränkt sind (allowExternalPrincipals=false), können nicht mit Amazon MQ verwendet werden.

Weitere Informationen finden Sie unter Erstellen einer Ressourcenfreigabe im AWS Resource Access Manager-Benutzerhandbuch.

Schritt 4: Ordnen Sie die Ressourcenfreigabe Ihrem Broker zu

Verwenden Sie die UpdateBroker API-Operation, um die AWS RAM-Ressourcenfreigabe Ihrem Broker zuzuordnen. Sie können mehrere Ressourcenfreigaben zuordnen, indem Sie eine Liste von ARNs für Ressourcenfreigaben bereitstellen.

Beispiel Ordnen Sie eine Ressourcenfreigabe mithilfe von AWS CLI
aws mq update-broker \ --broker-id b-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --resource-share-arns arn:aws:ram:us-east-1:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222

Ersetzen Sie die Platzhalter durch Ihre eigenen Werte:

  • --broker-id— Die eindeutige ID Ihres Brokers (der b-a1b2c3d4-... Wert).

  • --resource-share-arns— Der Amazon-Ressourcenname (ARN) Ihres AWS RAM-Ressourcenanteils (der arn:aws:ram:... Wert).

Weitere Informationen finden Sie UpdateBroker in der Amazon MQ REST API-Referenz.

Um mehrere Ressourcenfreigaben zuzuordnen, trennen Sie die ARNs durch Leerzeichen:

aws mq update-broker \ --broker-id b-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 \ --resource-share-arns arn:aws:ram:us-east-1:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222 arn:aws:ram:us-east-1:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE33333
Anmerkung

Wenn Sie vor dem Neustart UpdateBroker mehrmals anrufen, wird nur der letzte Anruf wirksam. Bei dem resourceShareArns Parameter handelt es sich um eine vollständige Ersetzung (Put), nicht um eine additive Operation. Sie müssen bei jedem Aufruf UpdateBroker die vollständige Liste der ARNs für Ressourcenfreigaben angeben, die Sie dem Broker zuordnen möchten.

Anmerkung

Änderungen an den Ressourcenfreigabezuordnungen erfordern einen Neustart des Brokers, damit sie wirksam werden. Durch das UpdateBroker Aufrufen wird die Ressourcenfreigabe dem Broker zugeordnet, der Netzwerkpfad wird jedoch nicht sofort eingerichtet.

Schritt 5: Starten Sie den Broker neu

Starten Sie den Broker neu, um die ausstehenden Änderungen an der Ressourcenfreigabe zu übernehmen. Während des Neustarts erstellt Amazon MQ Ressourcen-VPC-Endpunkte in der VPC des Brokers. Anschließend wird der Netzwerkpfad zu Ihren privaten Ressourcen eingerichtet.

Beispiel Starten Sie den Broker neu mit dem AWS CLI
aws mq reboot-broker --broker-id b-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Ein Neustart führt zu Ausfallzeiten für Single-Instance-Broker und zu einer kurzzeitigen Nichtverfügbarkeit (Failover) für Cluster-Broker. Warten Sie, bis der Broker wieder in den Status zurückkehrt, bevor Sie fortfahren. RUNNING Dies dauert in der Regel 10 bis 20 Minuten.

Weitere Informationen finden Sie RebootBroker in der Amazon MQ REST API-Referenz.

Schritt 6: Überprüfen Sie das Setup

Verwenden Sie den DescribeSharedResources API-Vorgang, um zu überprüfen, ob Ihre Ressourcen verfügbar sind. Sie können es auch verwenden, um die DNS-Namen zur Verwendung in Ihrer Broker-Konfiguration abzurufen.

BeispielÜberprüfen Sie gemeinsam genutzte Ressourcen mit dem AWS CLI
aws mq describe-shared-resources --broker-id b-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Wenn das Setup abgeschlossen ist, wird der AVAILABLE Status „Ressourcenfreigaben“ angezeigt. Zu jeder Ressourcenkonfiguration wird der zugehörige DNS-Name angezeigt.

Weitere Informationen finden Sie DescribeSharedResources in der Amazon MQ REST API-Referenz.

Anwendungsfälle

In den folgenden Abschnitten werden häufige Anwendungsfälle für private Netzwerke beschrieben.

Verbindung zu einem privaten Identitätsanbieter herstellen

Sie können private Netzwerke verwenden, um Ihren Broker mit einem privaten LDAP- oder OAuth2-Identitätsanbieter zu verbinden, ohne ihn dem öffentlichen Internet auszusetzen. Verwenden Sie nach dem Einrichten eines privaten Netzwerks den DNS-Namen aus der DescribeSharedResources API-Antwort in der Authentifizierungskonfiguration Ihres Brokers.

Weitere Informationen zur Konfiguration der Authentifizierung finden Sie unter LDAP-Authentifizierung und Autorisierung für Amazon MQ for RabbitMQ undOAuth 2.0 Authentifizierung und Autorisierung für Amazon MQ for RabbitMQ.

Verbindung zu einem anderen Amazon MQ für den RabbitMQ-Broker herstellen

Sie können private Netzwerke verwenden, um Ihren Broker mithilfe von Shovel- oder Federation-Plugins mit einem anderen Amazon MQ for RabbitMQ-Broker zu verbinden. Dies ermöglicht die private Kommunikation von Broker zu Broker, ohne dass einer der Broker dem öffentlichen Internet ausgesetzt ist.

Wenn Sie die Ressourcenkonfiguration für einen anderen Amazon MQ-Broker erstellen, geben Sie den Broker-Endpunkt (z. B.b-xxxx.mq.us-east-1.on.aws) als benutzerdefinierten Domainnamen an. Dadurch wird sichergestellt, dass die TLS-Zertifikatsvalidierung erfolgreich ist. RabbitMQ 4 und höher erzwingt diese Validierung standardmäßig für Shovel- und Federation-Verbindungen. Weitere Informationen finden Sie unter SSL-Konfiguration des AMQP-Clients.

Verwenden Sie den DNS-Namen aus der DescribeSharedResources API-Antwort als Ziel in Ihrer Shovel- oder Federation-Konfiguration.

Anmerkung

Bei RabbitMQ-Versionen vor 4 wird die Peer-Verifizierung des TLS-Zertifikats für Shovel und Federation standardmäßig nicht erzwungen. Sie können entweder den Broker-Endpunkt als benutzerdefinierten Domainnamen angeben oder die Peer-Verifizierung über die Konfiguration deaktivieren. Weitere Informationen finden Sie unter SSL-Konfiguration des AMQP-Clients.

Verbindung zu einem selbst gehosteten RabbitMQ-Broker herstellen

Sie können private Netzwerke verwenden, um Ihren Amazon MQ-Broker mithilfe von Shovel- oder Federation-Plugins mit einem selbst gehosteten RabbitMQ-Broker in Ihrer VPC zu verbinden. Erstellen Sie eine Ressourcenkonfiguration, die auf die IP-Adresse oder den DNS-Namen Ihres selbst gehosteten Brokers verweist. Verwenden Sie den DNS-Namen aus der DescribeSharedResources API-Antwort in Ihrer Shovel- oder Federation-Konfiguration.

RabbitMQ 4 und höher erzwingt standardmäßig die Peer-Verifizierung des TLS-Zertifikats. Sie müssen entweder einen verifizierten Domainnamen verwenden oder die Peer-Verifizierung über die Konfiguration deaktivieren. Weitere Informationen finden Sie unter SSL-Konfiguration des AMQP-Clients.

Gemeinsam genutzte Ressourcen ändern

Sie können die Ihrem Broker zugewiesenen Ressourcenanteile jederzeit ändern. Rufen Sie den UpdateBroker API-Vorgang mit einer aktualisierten Liste der ARNs für Ressourcenfreigaben auf. Änderungen werden nach dem nächsten Broker-Neustart wirksam.

Um alle Ressourcenfreigaben von einem Broker zu trennen, rufen Sie UpdateBroker mit einer leeren Liste von Ressourcenfreigabe-ARNs auf und starten Sie dann den Broker neu.

Wichtig

Sie können die AWS RAM-Ressourcenfreigaben jederzeit ändern. Sie können VPC-Lattice-Ressourcenkonfigurationen zu einer Ressourcenfreigabe hinzufügen oder daraus entfernen. Amazon MQ erkennt diese Änderungen erst, wenn Sie den Broker anrufen UpdateBroker und neu starten. Wenn Sie jedoch eine Ressourcenkonfiguration entfernen, die zuvor auf den Broker angewendet wurde, wird dem Broker sofort der Zugriff auf diese Ressource entzogen. Für diese Sperrung ist kein Aufruf UpdateBroker oder Neustart erforderlich, aber der Ressourcenstatus in DescribeSharedResources wird erst aktualisiert, wenn Sie ihn aufrufen UpdateBroker und neu starten.

Kontingente

Die folgenden Kontingente gelten für private Netzwerke:

Ressource Standardlimit Description
AWS Anteile an RAM-Ressourcen pro Broker 10 Wenn dieses Limit überschritten wird, schlägt der UpdateBroker API-Aufruf fehl.
VPC-Lattice-Ressourcenkonfigurationen pro Broker 100 Die Summe aller zugehörigen Ressourcenanteile. Überschüssige Ressourcenkonfigurationen werden wie ERROR in der DescribeSharedResources Antwort gekennzeichnet.

Status der Ressourcen

Verwenden Sie den DescribeSharedResources API-Vorgang, um den Status Ihrer gemeinsam genutzten Ressourcen zu überprüfen. In der folgenden Tabelle werden die möglichen Zustände beschrieben:

Status Description
SETUP_IN_PROGRESS Die Ressource wird gerade konfiguriert. Dieser Status wird nach dem Anruf angezeigt UpdateBroker und bleibt bestehen, bis der Neustart des Brokers abgeschlossen ist.
AVAILABLE Die Ressource ist aktiv und der Broker kann das konfigurierte Ziel erreichen.
DELETION_IN_PROGRESS Die Ressource wird aus dem Broker entfernt.
PENDING_CREATE Die Ressource befindet sich in der Warteschlange für die Erstellung von VPC-Endpunkten. Dieser Status ist kurz und wird während des Workflows zum Neustart des Brokers angezeigt.
PENDING_DELETE Die Ressource befindet sich in der Warteschlange für das Löschen des VPC-Endpunkts. Dieser Status ist kurz und wird während des Workflows zum Neustart des Brokers angezeigt.
ERROR Die Ressource konnte nicht konfiguriert werden. Rufen Sie an, DescribeSharedResources um die Fehlerdetails zu erfahren. Ein UpdateBroker erneuter Aufruf verschiebt die Ressource zurück zuSETUP_IN_PROGRESS.

Fehlerbehebung

Die Ressourcenkonfiguration befindet sich nach dem Neustart im ERROR-Status

Überprüfen Sie die Fehlerdetails mithilfe der DescribeSharedResources API-Operation. Zu den häufigsten Ursachen gehören:

  • Das VPC Lattice Resource Gateway teilt sich keine Availability Zone mit dem Broker.

  • Die Gesamtzahl der Ressourcenkonfigurationen für alle Ressourcenanteile überschreitet das Kontingent.

Nachdem Sie das Problem gelöst haben, rufen Sie UpdateBroker erneut auf (auch mit denselben ARNs für die Ressourcenfreigabe), um die Ressource wieder dorthin zu verschiebenSETUP_IN_PROGRESS, und starten Sie dann den Broker neu.

UpdateBroker schlägt mit einem Validierungsfehler fehl

Stellen Sie Folgendes sicher:

  • Der ARN für die Ressourcenfreigabe ist gültig und gehört Ihrem Konto.

  • Der Ressourcenanteil befindet sich in derselben Region wie der Broker.

  • Die gemeinsame Nutzung der Ressource ermöglicht externe Principals.

  • Sie haben die Quote für den Ressourcenanteil pro Broker nicht überschritten.

Der Broker kann die private Ressource nach dem Neustart nicht erreichen

Überprüfen Sie Folgendes:

  • Der Ressourcenstatus ist AVAILABLE in der DescribeSharedResources Antwort enthalten.

  • Die Sicherheitsgruppe auf dem Ressourcen-Gateway ermöglicht ausgehenden Datenverkehr zum Ziel an den erforderlichen Ports.

  • Die Ziel-IP oder der DNS-Name in der Ressourcenkonfiguration ist von der VPC aus erreichbar, auf der das Ressourcen-Gateway bereitgestellt wird.

  • Sie verwenden den richtigen DNS-Namen aus der DescribeSharedResources Antwort in Ihrer Broker-Konfiguration.