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.
Fehlerbehebung: Allgemeines Amazon MQ
Verwenden Sie die Informationen in diesem Abschnitt, um häufige Probleme zu diagnostizieren, die beim Arbeiten mit Amazon MQ-Brokern auftreten können, z. B. Probleme beim Herstellen der Verbindung mit Ihrem Broker und Neustarts von Broker.
Inhalt
- Ich kann keine Verbindung zu meiner Broker-Webkonsole oder -Endpunkten herstellen.
- Mein Broker läuft und ich kann die Konnektivität mit telnet bestätigen, aber meine Clients können keine Verbindung herstellen und geben SSL-Ausnahmen zurück.
- Ich habe einen Broker erstellt, aber die Brokererstellung ist fehlgeschlagen.
- Mein Broker wurde neu gestartet und ich bin mir nicht sicher, warum.
Ich kann keine Verbindung zu meiner Broker-Webkonsole oder -Endpunkten herstellen.
Wenn Probleme beim Herstellen einer Verbindung mit Ihrem Broker über die Webkonsole oder Wire-Level-Endpunkte auftreten, empfehlen wir die folgenden Schritte.
-
Überprüfen Sie, ob Sie versuchen, sich hinter einer Firewall mit Ihrem Broker zu verbinden. Möglicherweise müssen Sie die Firewall so konfigurieren, dass der Zugriff auf Ihren Broker gewährt wird.
-
Prüfen Sie, ob Sie versuchen, eine Verbindung zu Ihrem Broker über einen FIPS
-Endpunkt zu erstellen. Amazon MQ unterstützt FIPS-Endpunkte nur bei Verwendung von API-Operationen und nicht für Verbindungen auf Wire-Level mit der Broker-Instance selbst. -
Überprüfen Sie, ob die Option Public Accessibility (öffentliche Zugänglichkeit) für Ihren Broker auf Yes (Ja) gestellt ist. Wenn dies auf Nein gestellt ist, überprüfen Sie das Netzwerk Ihres SubnetzesZugriffskontrolllisten (ACL)-Regeln. Wenn Sie ein benutzerdefiniertes Netzwerk erstellt haben ACLs, müssen Sie möglicherweise die Netzwerk-ACL-Regeln ändern, um Zugriff auf Ihren Broker zu gewähren. Weitere Informationen zu Amazon VPC Netzwerken finden Sie unterEinrichten des InternetzugangsimAmazon VPC-Benutzerhandbuch
-
Überprüfen Sie die Sicherheitsgruppenregeln Ihres Brokers. Stellen Sie sicher, dass Sie Verbindungen zu den folgenden Ports zulassen:
Anmerkung
Die folgenden Ports sind nach Engine-Typen gruppiert, da ActiveMQ auf Amazon MQ und RabbitMQ auf Amazon MQ unterschiedliche Ports für Verbindungen verwenden.
ActiveMQ auf Amazon MQ
Webkonsole — Port
8162
OpenWire — Hafen
61617
AMQP — Port
5671
STOMP – Portierung von
61614
MQT-Port
8883
WSS — Port
61619
RabbitMQ auf Amazon MQ
Webkonsole und Verwaltungs-API — Port
443
und15671
AMQP — Port
5671
-
Führen Sie die folgenden Netzwerkkonnektivitätstests für Ihren Broker-Engine-Typ .
Anmerkung
Führen Sie für Broker ohne öffentlichen Zugriff die Tests von einer EC2 Amazon-Instance innerhalb derselben Amazon VPC aus wie Ihr Amazon MQ-Broker und bewerten Sie die Antworten.
Um die Netzwerkkonnektivität Ihres ActiveMQ on Amazon MQ Brokers zu testen
-
Öffnen Sie ein Terminal-Fenster oder eine Eingabeaufforderung.
-
Führen Sie Folgendes aus:
nslookup
, um Ihren Broker-DNS-Eintrag abzufragen. Füraktive/Standby-Funktion-Bereitstellungen verwenden, testen Sie sowohl die aktiven als auch die Standby-Endpunkte. Die Aktiv-/Standby-Endpunkte werden mit einem Suffix,-1
oder-2
der eindeutigen Broker-ID hinzugefügt. Ersetzen Sie den Endpunkt durch Ihre Informationen.$
nslookup
b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
Wird der Befehl erfolgreich ausgeführt, wird Ihnen eine Ausgabe ähnlich der folgenden angezeigt:
Non-authoritative answer: Server: dns-resolver-corp-sfo-1.sfo.corp.amazon.com Address: 172.10.123.456 Name: ec2-12-345-123-45.us-west-2.compute.amazonaws.com Address: 12.345.123.45 Aliases: b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
Die aufgelöste IP-Adresse sollte mit den in der Amazon MQ Konsole angegebenen IP-Adressen übereinstimmen. Dies bedeutet, dass der Domänenname auf dem DNS-Server korrekt aufgelöst wird, und Sie können mit dem nächsten Schritt fortfahren.
-
Führen Sie Folgendes aus:
telnet
, um den Netzwerkpfad für Ihren Broker zu testen. Ersetzen Sie den Endpunkt durch Ihre Informationen.port
Ersetzen Sie diese durch die Portnummer8162
für die Webkonsole oder durch andere Anschlüsse auf Kabelebene, um bei Bedarf zusätzliche Protokolle zu testen.Anmerkung
Für Acive-/Standby-Bereitstellungen erhalten Sie eine
Connect failed
Fehlermeldung, wenn Sietelnet
mit dem Standby-Endpunkt. Dies wird erwartet, da die Standby-Instance selbst ausgeführt wird, der ActiveMQ Prozess jedoch nicht ausgeführt wird und keinen Zugriff auf das Amazon EFS Speichervolume des Brokers hat. Führen Sie den Befehl für-1
und-2
-Endpunkte, um sicherzustellen, dass Sie sowohl die aktive als auch die Standby-Instance testen.$
telnet
b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
port
Für die aktive Instance wird eine Ausgabe ähnlich der folgenden angezeigt.
Connected to b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com. Escape character is '^]'.
-
Führen Sie eine der folgenden Aufgaben aus.
-
Wenn der Befehl
telnet
erfolgreich ist, überprüfen Sie die Metrik EstablishedConnectionsCount und bestätigen Sie, dass der Broker die maximale Grenze für Wire-Limits nicht erreicht hat. Sie können auch bestätigen, ob das Limit erreicht wurde, indem Sie den BrokerGeneral
-Protokolle. Wenn diese Metrik größer als Null ist, ist derzeit mindestens ein Client mit dem Broker verbunden. Wenn die Metrik keine Verbindungen anzeigt, führen Sie dietelnet
-Pfadtest erneut und warten Sie mindestens eine Minute, bevor Sie die Verbindung trennen, da Broker-Metriken jede Minute veröffentlicht werden. -
Wenn das Symbol
telnet
-Befehl fehlschlägt, überprüfen Sie den Status IhrerElastic Network-Schnittstelle, und bestätigen Sie, dass der Statusin-use
ist. Erstellen eines Amazon VPC Flow-Protokollsfür die Netzwerkschnittstelle jeder Instance und überprüfen Sie die generierten Flow-Protokolle. Suchen Sie nach den IP-Adressen des Brokers, wenn Sie dietelnet
und vergewissern Sie sich, dass die VerbindungspaketeACCEPTED
, einschließlich eines Rücksendepakets. Weitere Informationen und ein Beispiel für ein Flow Log finden Sie unterBeispiele für Flow-ProtokolldatensätzeimEntwicklerhandbuch für Amazon VPC.
-
-
Führen Sie Folgendes aus:
curl
, um die Konnektivität zur ActiveMQ -Admin-Webkonsole zu überprüfen.$
curl https://
b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-west-2.amazonaws.com
:8162/index.htmlWird der Befehl erfolgreich ausgeführt, sollte es sich bei der Ausgabe um ein HTML-Dokument handeln, das dem folgenden ähnelt.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Apache ActiveMQ</title> ...
Mein Broker läuft und ich kann die Konnektivität mit telnet
bestätigen, aber meine Clients können keine Verbindung herstellen und geben SSL-Ausnahmen zurück.
Ihr Broker-Endpunktzertifikat wurde möglicherweise während des Wartungsfensters des Brokers aktualisiert. Amazon MQ-Brokerzertifikate werden regelmäßig rotiert, um die fortgesetzte Verfügbarkeit und Sicherheit von Brokern zu gewährleisten.
Wir empfehlen die Verwendung der Amazon-Root-Zertifizierungsstelle (CA) in Amazon Trust Services
Ich habe einen Broker erstellt, aber die Brokererstellung ist fehlgeschlagen.
Wenn sich Ihr Broker in einemCREATION_FAILED
-Status haben, gehen Sie wie folgt vor.
Überprüfen Sie Ihre IAM-Berechtigungen. Um einen Broker zu erstellen, müssen Sie entweder die AWS verwaltete IAM-Richtlinie verwenden
AmazonMQFullAccess
oder über die richtigen EC2 Amazon-Berechtigungen in Ihrer benutzerdefinierten IAM-Richtlinie verfügen. Weitere Informationen zu den erforderlichen EC2 Amazon-Berechtigungen, die Sie benötigen, finden Sie unter IAM-Berechtigungen, die für die Erstellung eines Amazon MQ-Brokers erforderlich sind.-
Überprüfen Sie, ob sich das Subnetz, das Sie für Ihren Broker auswählen, in einer freigegebenen Amazon Virtual Private Cloud (VPC) befindet. Um einen Amazon MQ-Broker in einer freigegebenen Amazon VPC zu erstellen, müssen Sie ihn in dem Konto erstellen, das Eigentümer der Amazon VPC ist.
Mein Broker wurde neu gestartet und ich bin mir nicht sicher, warum.
Wird Ihr Broker automatisch neu gestartet, kann dies auf einen der folgenden Gründe zurückzuführen sein:
-
Ihr Broker wurde möglicherweise aufgrund eines geplanten wöchentlichen Wartungsfensters neu gestartet. In regelmäßigen Abständen führt Amazon MQ Wartungsarbeiten an der Hardware, dem Betriebssystem oder der Engine-Software eines Nachrichtenbrokers durch. Die Dauer der Wartung variiert, kann jedoch bis zu zwei Stunden dauern, abhängig von den Vorgängen, die für den Nachrichtenbroker geplant sind. Broker können jederzeit während des zweistündigen Wartungsfensters neu starten. Weitere Informationen über Broker-Wartungsfenster finden Sie unter Planung des Wartungsfensters für einen Amazon MQ-Broker.
-
Ihr Broker-Instance-Typ ist möglicherweise nicht für Ihre Anwendungs-Workload geeignet. Beispiel: Ausführen eines Produktions-Workloads auf einem
mq.t2.micro
kann dazu führen, dass dem Broker keine Ressourcen mehr zur Verfügung stehen. Eine hohe CPU-Auslastung oder eine hohe Broker-Speicherauslastung kann dazu führen, dass ein Broker unerwartet neu gestartet wird. Verwenden Sie die folgenden CloudWatch Kennzahlen für Ihren Engine-Typ, um zu sehen, wie viel CPU und Arbeitsspeicher von Ihrem Broker genutzt werden.-
ActiveMQ auf Amazon MQ — Prüfen Sie
CpuUtilization
den Prozentsatz der zugewiesenen EC2 Amazon-Recheneinheiten, die der Broker derzeit verwendet. ÜberprüfenHeapUsage
Sie den Prozentsatz des ActiveMQ JVM-Speicherlimits, den der Broker derzeit verwendet. -
RabbitMQ auf Amazon MQ — Prüfen Sie
SystemCpuUtilization
den Prozentsatz der zugewiesenen EC2 Amazon-Recheneinheiten, die der Broker derzeit verwendet. CheckRabbitMQMemUsed
für das Volumen des in Bytes verwendeten RAM und dividieren durchRabbitMQMemLimit
für den Prozentsatz des Speichers, der vom RabbitMQ-Knoten verwendet wird.
Weitere Informationen zu Broker-Instance-Typen und zur Auswahl des richtigen Instance-Typs für Ihre Workload finden Sie unterBroker instance types.
-