AWS announces preview of AWS Interconnect - multicloud
AWS announces AWS Interconnect – multicloud (preview), providing simple, resilient, high-speed private connections to other cloud service providers. AWS Interconnect - multicloud is easy to configure and provides high-speed, resilient connectivity with dedicated bandwidth, enabling customers to interconnect AWS networking services such as AWS Transit Gateway, AWS Cloud WAN, and Amazon VPC to other cloud service providers with ease.
Wie behebe ich Verbindungs- und Socket-Timeout-Probleme mit OpenSearch Service?
Bei meiner Client-Anwendung treten Verbindungs-Timeout- oder Socket-Fehler auf, wenn ich versuche, eine Verbindung zu Amazon OpenSearch Service herzustellen.
Lösung
Probleme mit dem Timeout beheben
Ergreife die folgenden Maßnahmen:
- Aktiviere Slow-Protokolle für den OpenSearch-Service-Index, um die Abfragen zu identifizieren, deren Bearbeitung lange dauert und die du optimieren musst. Weitere Informationen findest du unter Slow-Protokolle in OpenSearch Service anzeigen.
- Verwende kleinere Abfragen, um die Datenmenge in den Anforderungen und die Zeit zu reduzieren, die für die Bearbeitung der Anforderungen benötigt wird.
- Verwende einen größeren Amazon Elastic Compute Cloud (Amazon EC2)-Instance-Typ. Weitere Informationen findest du unter Auswahl von Instance-Typen und Tests und Unterstützte Instance-Typen in OpenSearch Service.
- Konfiguriere exponentielle Backoff- und Wiederholungsmechanismen, damit deine Anwendung erneut Anforderungen versucht, die einen Timeout verursachen.
- Verwende Massenanforderungen anstelle von Einzelanforderungen, um den Overhead für den Cluster zu reduzieren.
- Verwende das Profile-API-Debugging-Tool, um detaillierte Timeout-Informationen zu erhalten. Weitere Informationen findest du unter Profile API auf der OpenSearch-Website.
Beheben des „Connection timed out“-Fehlers
Wenn bei der Verbindung ein Timeout auftritt, erhältst du eine Fehlermeldung, die dem folgenden Beispiel ähnelt:
„curl: (7) Failed to connect to vpc-acbdefxyz.us-east-1.es.amazonaws.com port 443: Connection timed out
curl: (28) Operation timed out after 1001 milliseconds with 0 out of 0 bytes received“
Führe je nach verwendetem Domaintyp die folgenden Maßnahmen zur Problembehandlung durch.
Öffentliche Domains
Öffentliche Domains sind über das Internet zugänglich, wenn der Client über Konnektivität oder Routen zum Internet verfügt. Wenn der Client nicht über Konnektivität oder Routen zum Internet verfügt, erhältst du möglicherweise die folgende Ausgabe, wenn du einen telnet- oder curl-Befehl ausführst:
Trying xyz.xyz.xyz.xyz... telnet: connect to address xyz.xyz.xyz.xyz: Connection timed out
-oder-
* Trying xyz.xyz.xyz.xyz:443... * connect to xyz.xyz.xyz.xyz port 443 failed: Operation timed out * Failed to connect to search-domain-name-someid.aws-region.es.amazonaws.com port 443 after 75243 ms: Couldn't connect to server * Closing connection 0 curl: (28) Failed to connect to search-domain-name-someid.aws-region.es.amazonaws.com port 443 after 75243 ms: Couldn't connect to server
Um dieses Problem zu lösen, stelle sicher, dass der Client Routen zum Internet hat und ausgehende Anforderungen an den Suchendpunkt nicht blockiert.
Führe den folgenden Befehl aus, um die Verbindung zu testen:
telnet search-domain-name-someid.aws-region.es.amazonaws.com 443
Hinweis: Ersetze search-domain-name-someid durch deinen Domainnamen und aws-region durch deine AWS-Region.
Beispiel für eine erfolgreiche Antwort vom Suchendpunkt:
Trying xyz.xyz.xyz.xyz... Connected to search-domain-name-someid.aws-region.es.amazonaws.com. Escape character is '^]'.
Domains innerhalb einer VPC
Bei OpenSearch-Service-Domains, die du in einer Virtual Private Cloud (VPC) erstellst, verfügt jeder Datenknoten in der VPC über eine Elastic-Network-Schnittstelle. Die Netzwerkschnittstellen leiten den Netzwerkdatenverkehr an deine Domain weiter.
Gehe wie folgt vor, um die Konnektivität zwischen den Netzwerkschnittstellen und der Domain zu überprüfen:
-
Führe einen der folgenden Befehle aus, um die IP-Adressen der Netzwerkschnittstelle in der VPC abzurufen:
nslookup -q=A vpc-domain-name-id.aws-region.es.amazonaws.com-oder-
dig +short vpc-domain-name-id.aws-region.es.amazonaws.comHinweis: Ersetze domain-name-id durch deinen Domainnamen und aws-region durch deine Region.
Notiere dir in der Ausgabe die IP-Adresse der Netzwerkschnittstelle. -
Um die Verbindung zu testen, führe einen der folgenden Befehle für jede IP-Adresse des Datenknotens aus:
telnet ip-address 443-oder-
curl -v telnet://ip-address:443Hinweis: Ersetze ip-address durch die IP-Adresse der Netzwerkschnittstelle.
Beispiel für eine Timeout-Antwort:Trying xyz.xyz.xyz.xyz...telnet: connect to address xyz.xyz.xyz.xyz: Connection timed outBeispiel für eine Erfolgs-Antwort:
Trying xyz.xyz.xyz.xyz...Connected to xyz.xyz.xyz.xyz. Escape character is '^]'. -
Wenn bei der Verbindung ein Timeout auftritt, stelle sicher, dass die Sicherheitsgruppen, Routing-Tabellen und die Netzwerk-Zugriffssteuerungsliste (Netzwerk-ACL) der VPC den Zugriff auf die Domain erlauben. Wenn du eine Verbindung zu einigen Netzwerkschnittstellen herstellen kannst, bei anderen jedoch ein Timeout auftritt, erstelle einen AWS-Supportfall.
Hinweis: Du kannst von außerhalb der VPC nicht auf die OpenSearch-Service-Domains zugreifen. Weitere Informationen findest du unter Starten der OpenSearch-Service-Domains innerhalb einer VPC.
Beheben des „HTTP 504 gateway timeout“-Fehlers
Der Load Balancer verteilt den eingehenden Datenverkehr an den Datenknoten. Wenn die OpenSearch-Service-Anforderung innerhalb des Zeitspanne für Inaktivitäts-Timeout keine Bestätigung zurückgibt, schließt der Load Balancer die TCP-Verbindung. Infolgedessen erhältst du eine Fehlermeldung ähnlich dem folgenden Beispiel:
„error msg: org.elasticsearch.client.ResponseException:
method[POST], host[https: //acbdefjhxyz.eu-central-1.es.amazonaws.com:443],
URI [/eks*/_search?typed_keys=true],status line [HTTP/1.1 504 Gateway Time-out]“
In der Regel tritt der Fehler „HTTP 504 Gateway timeout“ auf, wenn OpenSearch Service zu viele gleichzeitige Anforderungen empfängt oder Anforderungen komplex sind. Der Fehler weist nicht unbedingt auf ein Problem im Cluster hin. Weitere Informationen zu Ursachen und Schritten zur Problembehandlung findest du unter HTTP 504: Gateway-Timeout.
Beheben des „SocketTimeoutException“-Fehlers
Socket-Timeout-Fehler treten normalerweise auf, wenn ein Client zu viele Anforderungen oder komplexe Anforderungen sendet. In der OpenSearch-Service-Domain kann es zu einer hohen Ressourcennutzung mit verzögerten Client-Antworten kommen. Beispiel für eine Fehlermeldung:
„j.net.SocketTimeoutException: 30,000 milliseconds timeout on connection http-outgoing-5083 [ACTIVE]
java.net.SocketTimeoutException: Read timed out
Caused by: java.net.SocketTimeoutException: Read timed out“
Gehe wie folgt vor, um dieses Problem zu beheben:
- Passe die Timeout-Werte des Clusters an. Weitere Informationen findest du unter Search settings (Sucheinstellungen) auf der OpenSearch-Website.
- Optimiere deine Abfragen.
- Skaliere die OpenSearch-Service-Domain, um die Bedingungen für die Anforderung zu erfüllen.
Ähnliche Informationen
Problembehandlung bei OpenSearch Service
Wie behebe ich Suchlatenzspitzen in meinem OpenSearch-Service-Cluster?
Wie kann ich die Indexierungsleistung in meinem OpenSearch-Service-Cluster verbessern?
- Themen
- Analytics
- Sprache
- Deutsch

Relevanter Inhalt
AWS OFFICIALAktualisiert vor 3 Jahren
AWS OFFICIALAktualisiert vor einem Jahr
AWS OFFICIALAktualisiert vor 2 Jahren
AWS OFFICIALAktualisiert vor 3 Monaten