Fehlerbehebung bei Verbindungen in Amazon Keyspaces - Amazon Keyspaces (für Apache Cassandra)

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 bei Verbindungen in Amazon Keyspaces

Haben Sie Probleme beim Herstellen einer Verbindung? Hier finden Sie einige häufig auftretende Probleme und wie Sie sie lösen können.

Fehler beim Herstellen einer Verbindung zu einem Amazon Keyspaces-Endpunkt

Fehlgeschlagene Verbindungen und Verbindungsfehler können zu unterschiedlichen Fehlermeldungen führen. Der folgende Abschnitt behandelt die häufigsten Szenarien.

Ich kann mit cqlsh keine Verbindung zu Amazon Keyspaces herstellen

Sie versuchen, mit cqlsh eine Verbindung zu einem Amazon Keyspaces-Endpunkt herzustellen, und die Verbindung schlägt mit a fehl. Connection error

Wenn Sie versuchen, eine Verbindung zu einer Amazon Keyspaces-Tabelle herzustellen und cqlsh nicht richtig konfiguriert wurde, schlägt die Verbindung fehl. Der folgende Abschnitt enthält Beispiele für die häufigsten Konfigurationsprobleme, die zu Verbindungsfehlern führen, wenn Sie versuchen, eine Verbindung mit cqlsh herzustellen.

Anmerkung

Wenn Sie versuchen, von einer VPC aus eine Verbindung zu Amazon Keyspaces herzustellen, sind zusätzliche Berechtigungen erforderlich. Um eine Verbindung mithilfe von VPC-Endpunkten erfolgreich zu konfigurieren, folgen Sie den Schritten in. Tutorial: Herstellen einer Verbindung zu Amazon Keyspaces mithilfe eines Schnittstellen-VPC-Endpunkts

Sie versuchen, mit cqlsh eine Verbindung zu Amazon Keyspaces herzustellen, erhalten aber einen Verbindungsfehler. timed out

Dies kann der Fall sein, wenn Sie nicht den richtigen Port angegeben haben, was zu dem folgenden Fehler führt.

# cqlsh cassandra.us-east-1.amazonaws.com 9140 -u "USERNAME" -p "PASSWORD" --ssl Connection error: ('Unable to connect to any servers', {'3.234.248.199': error(None, "Tried connecting to [('3.234.248.199', 9140)]. Last error: timed out")})

Um dieses Problem zu beheben, stellen Sie sicher, dass Sie Port 9142 für die Verbindung verwenden.

Sie versuchen, mit cqlsh eine Verbindung zu Amazon Keyspaces herzustellen, erhalten aber eine Fehlermeldung. Name or service not known

Dies kann der Fall sein, wenn Sie einen Endpunkt verwendet haben, der falsch geschrieben ist oder nicht existiert. Im folgenden Beispiel ist der Name des Endpunkts falsch geschrieben.

# cqlsh cassandra.us-east-1.amazon.com 9142 -u "USERNAME" -p "PASSWORD" --ssl Traceback (most recent call last): File "/usr/bin/cqlsh.py", line 2458, in >module> main(*read_options(sys.argv[1:], os.environ)) File "/usr/bin/cqlsh.py", line 2436, in main encoding=options.encoding) File "/usr/bin/cqlsh.py", line 484, in __init__ load_balancing_policy=WhiteListRoundRobinPolicy([self.hostname]), File "/usr/share/cassandra/lib/cassandra-driver-internal-only-3.11.0-bb96859b.zip/cassandra-driver-3.11.0-bb96859b/cassandra/policies.py", line 417, in __init__ socket.gaierror: [Errno -2] Name or service not known

Um dieses Problem zu beheben, wenn Sie öffentliche Endpunkte für die Verbindung verwenden, wählen Sie einen verfügbaren Endpunkt aus und stellen Sie sicherService-Endpunkte für Amazon Keyspaces, dass der Name des Endpunkts keine Fehler enthält. Wenn Sie VPC-Endpunkte für die Verbindung verwenden, stellen Sie sicher, dass die VPC-Endpunktinformationen in Ihrer cqlsh-Konfiguration korrekt sind.

Sie versuchen, mit cqlsh eine Verbindung zu Amazon Keyspaces herzustellen, erhalten aber eine Fehlermeldung. OperationTimedOut

Amazon Keyspaces setzt voraus, dass SSL für Verbindungen aktiviert ist, um eine hohe Sicherheit zu gewährleisten. Der SSL-Parameter fehlt möglicherweise, wenn Sie die folgende Fehlermeldung erhalten.

# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" Connection error: ('Unable to connect to any servers', {'3.234.248.192': OperationTimedOut('errors=Timed out creating connection (5 seconds), last_host=None',)}) #

Um dieses Problem zu beheben, fügen Sie dem Befehl cqlsh connection das folgende Flag hinzu.

--ssl

Sie versuchen, mit cqlsh eine Verbindung zu Amazon Keyspaces herzustellen, und erhalten eine Fehlermeldung. SSL transport factory requires a valid certfile to be specified

In diesem Fall fehlt der Pfad zum SSL/TLS-Zertifikat, was zu dem folgenden Fehler führt.

# cat .cassandra/cqlshrc [connection] port = 9142 factory = cqlshlib.ssl.ssl_transport_factory # # cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" --ssl Validation is enabled; SSL transport factory requires a valid certfile to be specified. Please provide path to the certfile in [ssl] section as 'certfile' option in /root/.cassandra/cqlshrc (or use [certfiles] section) or set SSL_CERTFILE environment variable. #

Um dieses Problem zu beheben, fügen Sie den Pfad zur Zertifikatsdatei auf Ihrem Computer hinzu.

certfile = path_to_file/sf-class2-root.crt

Sie versuchen, mit cqlsh eine Verbindung zu Amazon Keyspaces herzustellen, erhalten aber eine Fehlermeldung. No such file or directory

Dies kann der Fall sein, wenn der Pfad zur Zertifikatsdatei auf Ihrem Computer falsch ist, was zu dem folgenden Fehler führt.

# cat .cassandra/cqlshrc [connection] port = 9142 factory = cqlshlib.ssl.ssl_transport_factory [ssl] validate = true certfile = /root/wrong_path/sf-class2-root.crt # # cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" --ssl Connection error: ('Unable to connect to any servers', {'3.234.248.192': IOError(2, 'No such file or directory')}) #

Um dieses Problem zu beheben, stellen Sie sicher, dass der Pfad zur Zertifikatsdatei auf Ihrem Computer korrekt ist.

Sie versuchen, mit cqlsh eine Verbindung zu Amazon Keyspaces herzustellen, erhalten aber eine Fehlermeldung. [X509] PEM lib

Dies kann der Fall sein, wenn die SSL/TLS-Zertifikatsdatei nicht gültig sf-class2-root.crt ist, was zu dem folgenden Fehler führt.

# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" --ssl Connection error: ('Unable to connect to any servers', {'3.234.248.241': error(185090057, u"Tried connecting to [('3.234.248.241', 9142)]. Last error: [X509] PEM lib (_ssl.c:3063)")}) #

Um dieses Problem zu beheben, laden Sie das digitale Starfield-Zertifikat mit dem folgenden Befehl herunter. Speichern Sie es sf-class2-root.crt lokal oder in Ihrem Home-Verzeichnis.

curl https://certs.secureserver.net/repository/sf-class2-root.crt -O

Sie versuchen, mit cqlsh eine Verbindung zu Amazon Keyspaces herzustellen, erhalten aber einen unknown SSL-Fehler.

Dies kann der Fall sein, wenn die SSL/TLS-Zertifikatsdatei leer sf-class2-root.crt ist, was zu dem folgenden Fehler führt.

# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" --ssl Connection error: ('Unable to connect to any servers', {'3.234.248.220': error(0, u"Tried connecting to [('3.234.248.220', 9142)]. Last error: unknown error (_ssl.c:3063)")}) #

Um dieses Problem zu beheben, laden Sie das digitale Starfield-Zertifikat mit dem folgenden Befehl herunter. Speichern Sie es sf-class2-root.crt lokal oder in Ihrem Home-Verzeichnis.

curl https://certs.secureserver.net/repository/sf-class2-root.crt -O

Sie versuchen, mit cqlsh eine Verbindung zu Amazon Keyspaces herzustellen, erhalten aber eine Fehlermeldung. SSL: CERTIFICATE_VERIFY_FAILED

Dies kann der Fall sein, wenn die SSL/TLS-Zertifikatsdatei nicht verifiziert werden konnte, was zu dem folgenden Fehler führt.

Connection error: ('Unable to connect to any servers', {'3.234.248.223': error(1, u"Tried connecting to [('3.234.248.223', 9142)]. Last error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)")})

Um dieses Problem zu beheben, laden Sie die Zertifikatsdatei mit dem folgenden Befehl erneut herunter. Speichern Sie sf-class2-root.crt lokal oder in Ihrem Home-Verzeichnis.

curl https://certs.secureserver.net/repository/sf-class2-root.crt -O

Sie versuchen, mit cqlsh eine Verbindung zu Amazon Keyspaces herzustellen, erhalten aber eine Fehlermeldung. Last error: timed out

Dies kann der Fall sein, wenn Sie in Ihrer Amazon EC2-Sicherheitsgruppe keine ausgehende Regel für Amazon Keyspaces konfiguriert haben, was zu dem folgenden Fehler führt.

# cqlsh cassandra.us-east-1.amazonaws.com 9142 -u "USERNAME" -p "PASSWORD" --ssl Connection error: ('Unable to connect to any servers', {'3.234.248.206': error(None, "Tried connecting to [('3.234.248.206', 9142)]. Last error: timed out")}) #

Um zu überprüfen, ob dieses Problem durch die Konfiguration der Amazon EC2 EC2-Instance verursacht wird und nichtcqlsh, können Sie versuchen, eine Verbindung zu Ihrem Keyspace herzustellen AWS CLI, indem Sie beispielsweise den folgenden Befehl verwenden.

aws keyspaces list-tables --keyspace-name 'my_keyspace'

Wenn auch bei diesem Befehl ein Timeout auftritt, ist die Amazon EC2 EC2-Instance nicht korrekt konfiguriert.

Um zu bestätigen, dass Sie über ausreichende Berechtigungen für den Zugriff auf Amazon Keyspaces verfügen, können Sie die verwenden, AWS CloudShell um eine Verbindung cqlsh herzustellen. Wenn diese Verbindungen hergestellt werden, müssen Sie die Amazon EC2 EC2-Instance konfigurieren.

Um dieses Problem zu beheben, stellen Sie sicher, dass Ihre Amazon EC2 EC2-Instance über eine ausgehende Regel verfügt, die Datenverkehr zu Amazon Keyspaces zulässt. Ist dies nicht der Fall, müssen Sie eine neue Sicherheitsgruppe für die EC2-Instance erstellen und eine Regel hinzufügen, die ausgehenden Datenverkehr zu Amazon Keyspaces-Ressourcen zulässt. Um die Regel für ausgehenden Datenverkehr zu Amazon Keyspaces zu aktualisieren, wählen Sie CQLSH/CASSANDRA aus dem Drop-down-Menü Typ aus.

Nachdem Sie die neue Sicherheitsgruppe mit der Regel für ausgehenden Datenverkehr erstellt haben, müssen Sie sie der Instance hinzufügen. Wählen Sie die Instance aus und klicken Sie dann auf Aktionen, dann Sicherheit und dann Sicherheitsgruppen ändern. Fügen Sie die neue Sicherheitsgruppe mit der Regel für ausgehenden Datenverkehr hinzu, stellen Sie jedoch sicher, dass die Standardgruppe ebenfalls verfügbar bleibt.

Weitere Informationen zum Anzeigen und Bearbeiten von EC2-Regeln für ausgehenden Datenverkehr finden Sie unter Regeln zu einer Sicherheitsgruppe hinzufügen im Amazon EC2 EC2-Benutzerhandbuch.

Sie versuchen, mit cqlsh eine Verbindung zu Amazon Keyspaces herzustellen, erhalten aber eine Fehlermeldung. Unauthorized

Dies kann der Fall sein, wenn Ihnen Amazon Keyspaces-Berechtigungen in der IAM-Benutzerrichtlinie fehlen, was zu dem folgenden Fehler führt.

# cqlsh cassandra.us-east-1.amazonaws.com 9142 -u "testuser-at-12345678910" -p "PASSWORD" --ssl Connection error: ('Unable to connect to any servers', {'3.234.248.241': AuthenticationFailed('Failed to authenticate to 3.234.248.241: Error from server: code=2100 [Unauthorized] message="User arn:aws:iam::12345678910:user/testuser has no permissions."',)}) #

Um dieses Problem zu beheben, stellen Sie sicher, dass der IAM-Benutzer testuser-at-12345678910 über Zugriffsberechtigungen für Amazon Keyspaces verfügt. Beispiele für IAM-Richtlinien, die Zugriff auf Amazon Keyspaces gewähren, finden Sie unter. Beispiele für identitätsbasierte Richtlinien von Amazon Keyspaces

Anleitungen zur Fehlerbehebung speziell für den IAM-Zugriff finden Sie unter. Fehlerbehebung bei Identität und Zugriff auf Amazon Keyspaces

Sie versuchen, mit cqlsh eine Verbindung zu Amazon Keyspaces herzustellen, erhalten aber eine Fehlermeldung. Bad credentials

Dies kann der Fall sein, wenn der Benutzername oder das Passwort falsch ist, was zu dem folgenden Fehler führt.

# cqlsh cassandra.us-east-1.amazonaws.com 9142 -u "USERNAME" -p "PASSWORD" --ssl Connection error: ('Unable to connect to any servers', {'3.234.248.248': AuthenticationFailed('Failed to authenticate to 3.234.248.248: Error from server: code=0100 [Bad credentials] message="Provided username USERNAME and/or password are incorrect"',)}) #

Um dieses Problem zu beheben, stellen Sie sicher, dass der BENUTZERNAME und das PASSWORT in Ihrem Code mit dem Benutzernamen und dem Passwort übereinstimmen, die Sie bei der Generierung der dienstspezifischen Anmeldeinformationen erhalten haben.

Wichtig

Wenn beim Versuch, eine Verbindung mit cqlsh herzustellen, weiterhin Fehler auftreten, führen Sie den Befehl mit der --debug Option erneut aus und fügen Sie die detaillierte Ausgabe bei der Kontaktaufnahme hinzu. AWS Support

Ich kann mit einem Cassandra-Client-Treiber keine Verbindung zu Amazon Keyspaces herstellen

In den folgenden Abschnitten werden die häufigsten Fehler beim Herstellen einer Verbindung mit einem Cassandra-Client-Treiber beschrieben.

Sie versuchen, mithilfe des DataStax Java-Treibers eine Verbindung zu einer Amazon Keyspaces-Tabelle herzustellen, erhalten aber eine NodeUnavailableException Fehlermeldung.

Wenn die Verbindung, über die die Anfrage versucht wird, unterbrochen ist, führt dies zu dem folgenden Fehler.

[com.datastax.oss.driver.api.core.NodeUnavailableException: No connection was available to Node(endPoint=vpce-22ff22f2f22222fff-aa1bb234.cassandra.us-west-2.vpce.amazonaws.com/11.1.1111.222:9142, hostId=1a23456b-c77d-8888-9d99-146cb22d6ef6, hashCode=123ca4567)]

Um dieses Problem zu beheben, ermitteln Sie den Heartbeat-Wert und senken Sie ihn auf 30 Sekunden, falls er höher ist.

advanced.heartbeat.interval = 30 seconds

Suchen Sie dann nach dem zugehörigen Timeout und stellen Sie sicher, dass der Wert auf mindestens 5 Sekunden eingestellt ist.

advanced.connection.init-query-timeout = 5 seconds

Sie versuchen, mithilfe eines Treibers und des Sigv4-Plug-ins eine Verbindung zu einer Amazon Keyspaces-Tabelle herzustellen, erhalten aber eine AttributeError Fehlermeldung.

Wenn die Anmeldeinformationen nicht korrekt konfiguriert sind, führt dies zu dem folgenden Fehler.

cassandra.cluster.NoHostAvailable: (‘Unable to connect to any servers’, {‘44.234.22.154:9142’: AttributeError(“‘NoneType’ object has no attribute ‘access_key’“)})

Um dieses Problem zu beheben, stellen Sie sicher, dass Sie die Ihrem IAM-Benutzer oder Ihrer IAM-Rolle zugewiesenen Anmeldeinformationen weitergeben, wenn Sie das SigV4-Plug-In verwenden. Das SigV4-Plugin benötigt die folgenden Anmeldeinformationen.

  • AWS_ACCESS_KEY_ID— Gibt einen AWS Zugriffsschlüssel an, der einem IAM-Benutzer oder einer IAM-Rolle zugeordnet ist.

  • AWS_SECRET_ACCESS_KEY— Gibt den geheimen Schlüssel an, der dem Zugriffsschlüssel zugeordnet ist. Dies ist im Wesentlichen das "Passwort" für den Zugriffsschlüssel.

Weitere Informationen über Zugriffsschlüssel und das SigV4-Plugin finden Sie unterSo erstellen und konfigurieren Sie AWS Anmeldeinformationen für Amazon Keyspaces.

Sie versuchen, mithilfe eines Treibers eine Verbindung zu einer Amazon Keyspaces-Tabelle herzustellen, erhalten aber eine PartialCredentialsError Fehlermeldung.

Wenn der AWS_SECRET_ACCESS_KEY fehlt, kann dies zu dem folgenden Fehler führen.

cassandra.cluster.NoHostAvailable: (‘Unable to connect to any servers’, {‘44.234.22.153:9142’: PartialCredentialsError(‘Partial credentials found in config-file, missing: aws_secret_access_key’)})

Um dieses Problem zu beheben, stellen Sie sicher, dass Sie bei der Verwendung des SigV4-Plug-ins AWS_ACCESS_KEY_ID sowohl das AWS_SECRET_ACCESS_KEY als auch das übergeben. Weitere Informationen zu Zugriffsschlüsseln und dem SigV4-Plugin finden Sie unter. So erstellen und konfigurieren Sie AWS Anmeldeinformationen für Amazon Keyspaces

Sie versuchen, mithilfe eines Treibers eine Verbindung zu einer Amazon Keyspaces-Tabelle herzustellen, erhalten aber eine Invalid signature Fehlermeldung.

Dies kann der Fall sein, wenn Sie falsche Anmeldeinformationen verwendet haben, was zu dem folgenden Fehler führt.

cassandra.cluster.NoHostAvailable: (‘Unable to connect to any servers’, {‘44.234.22.134:9142’: AuthenticationFailed(‘Failed to authenticate to 44.234.22.134:9142: Error from server: code=0100 [Bad credentials] message=“Authentication failure: Invalid signature”’)})

Um dieses Problem zu beheben, stellen Sie sicher, dass die von Ihnen übergebenen Anmeldeinformationen dem IAM-Benutzer oder der IAM-Rolle zugeordnet sind, die Sie für den Zugriff auf Amazon Keyspaces konfiguriert haben. Weitere Informationen über Zugriffsschlüssel und das SigV4-Plugin finden Sie unter. So erstellen und konfigurieren Sie AWS Anmeldeinformationen für Amazon Keyspaces

Meine VPC-Endpunktverbindung funktioniert nicht richtig

Sie versuchen, über VPC-Endpunkte eine Verbindung zu Amazon Keyspaces herzustellen, erhalten aber Tokenzuordnungsfehler oder Sie haben einen niedrigen Durchsatz.

Dies kann der Fall sein, wenn die VPC-Endpunktverbindung nicht korrekt konfiguriert ist.

Überprüfen Sie die folgenden Konfigurationsdetails, um diese Probleme zu beheben. Ein step-by-step Tutorial zur Konfiguration einer Verbindung über Schnittstellen-VPC-Endpunkte für Amazon Keyspaces finden Sie unter. Tutorial: Herstellen einer Verbindung zu Amazon Keyspaces mithilfe eines Schnittstellen-VPC-Endpunkts

  1. Vergewissern Sie sich, dass die IAM-Entität, die für die Verbindung mit Amazon Keyspaces verwendet wird, Lese-/Schreibzugriff auf die Benutzertabelle und Lesezugriff auf die Systemtabellen hat, wie im folgenden Beispiel gezeigt.

    { "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "cassandra:Select", "cassandra:Modify" ], "Resource":[ "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable", "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*" ] } ] }
  2. Vergewissern Sie sich, dass die für die Verbindung mit Amazon Keyspaces verwendete IAM-Entität über die erforderlichen Leseberechtigungen für den Zugriff auf die VPC-Endpunktinformationen auf Ihrer Amazon EC2 EC2-Instance verfügt, wie im folgenden Beispiel gezeigt.

    { "Version":"2012-10-17", "Statement":[ { "Sid":"ListVPCEndpoints", "Effect":"Allow", "Action":[ "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcEndpoints" ], "Resource":"*" } ] }
    Anmerkung

    Die verwalteten Richtlinien AmazonKeyspacesReadOnlyAccess_v2 AmazonKeyspacesFullAccess enthalten die erforderlichen Berechtigungen, damit Amazon Keyspaces auf die Amazon EC2 EC2-Instance zugreifen kann, um Informationen über verfügbare Schnittstellen-VPC-Endpunkte zu lesen.

    Weitere Informationen zu VPC-Endpunkten finden Sie unter Verwenden von Schnittstellen-VPC-Endpunkten für Amazon Keyspaces

  3. Stellen Sie sicher, dass die SSL-Konfiguration des Java-Treibers die Hostnamenvalidierung auf False setzt, wie in diesem Beispiel gezeigt.

    hostname-validation = false

    Weitere Hinweise zur Treiberkonfiguration finden Sie unterSchritt 2: Konfigurieren Sie den Treiber.

  4. Um zu überprüfen, ob der VPC-Endpunkt korrekt konfiguriert wurde, können Sie die folgende Anweisung in Ihrer VPC ausführen.

    Anmerkung

    Sie können Ihre lokale Entwicklerumgebung oder den Amazon Keyspaces CQL-Editor nicht verwenden, um diese Konfiguration zu bestätigen, da sie den öffentlichen Endpunkt verwenden.

    SELECT peer FROM system.peers;

    Die Ausgabe sollte diesem Beispiel ähneln und je nach VPC-Setup und AWS Region zwischen 2 und 6 Knoten mit privaten IP-Adressen zurückgeben.

    peer --------------- 192.0.2.0.15 192.0.2.0.24 192.0.2.0.13 192.0.2.0.7 192.0.2.0.8 (5 rows)

Ich kann keine Verbindung herstellen mit cassandra-stress

Sie versuchen, mit dem cassandra-stress Befehl eine Verbindung zu Amazon Keyspaces herzustellen, erhalten aber eine SSL context Fehlermeldung.

Dies passiert, wenn Sie versuchen, eine Verbindung zu Amazon Keyspaces herzustellen, der TrustStore aber nicht richtig eingerichtet ist. Amazon Keyspaces erfordert die Verwendung von Transport Layer Security (TLS), um Verbindungen mit Clients zu sichern.

In diesem Fall wird der folgende Fehler angezeigt.

Error creating the initializing the SSL Context

Um dieses Problem zu lösen, folgen Sie den Anweisungen zur Einrichtung eines TrustStores, wie in diesem Thema Bevor Sie beginnen beschrieben.

Sobald der TrustStore eingerichtet ist, sollten Sie mit dem folgenden Befehl eine Verbindung herstellen können.

./cassandra-stress user profile=./profile.yaml n=100 "ops(insert=1,select=1)" cl=LOCAL_QUORUM -node "cassandra.eu-north-1.amazonaws.com" -port native=9142 -transport ssl-alg="PKIX" truststore="./cassandra_truststore.jks" truststore-password="trustStore_pw" -mode native cql3 user="user_name" password="password"

Ich kann mit IAM-Identitäten keine Verbindung herstellen

Sie versuchen, mithilfe einer IAM-Identität eine Verbindung zu einer Amazon Keyspaces-Tabelle herzustellen, erhalten aber eine Unauthorized Fehlermeldung.

Dies passiert, wenn Sie versuchen, mithilfe einer IAM-Identität (z. B. eines IAM-Benutzers) eine Verbindung zu einer Amazon Keyspaces-Tabelle herzustellen, ohne die Richtlinie zu implementieren und dem Benutzer zuerst die erforderlichen Berechtigungen zu erteilen.

In diesem Fall wird der folgende Fehler angezeigt.

Connection error: ('Unable to connect to any servers', {'3.234.248.202': AuthenticationFailed('Failed to authenticate to 3.234.248.202: Error from server: code=2100 [Unauthorized] message="User arn:aws:iam::1234567890123:user/testuser has no permissions."',)})

Überprüfen Sie die Berechtigungen des IAM-Benutzers, um dieses Problem zu beheben. Um eine Verbindung mit einem Standardtreiber herzustellen, muss ein Benutzer mindestens SELECT Zugriff auf die Systemtabellen haben, da die meisten Treiber die Systemschlüsselbereiche/Tabellen lesen, wenn sie die Verbindung herstellen.

Beispiele für IAM-Richtlinien, die Zugriff auf das System und Benutzertabellen von Amazon Keyspaces gewähren, finden Sie unter. Zugreifen auf Amazon Keyspaces-Tabellen

Den Abschnitt zur Fehlerbehebung speziell für IAM finden Sie unter. Fehlerbehebung bei Identität und Zugriff auf Amazon Keyspaces

Ich versuche, Daten mit cqlsh zu importieren und die Verbindung zu meiner Amazon Keyspaces-Tabelle ist unterbrochen

Sie versuchen, Daten mit cqlsh auf Amazon Keyspaces hochzuladen, erhalten aber Verbindungsfehler.

Die Verbindung zu Amazon Keyspaces schlägt fehl, nachdem der cqlsh-Client drei aufeinanderfolgende Fehler beliebiger Art vom Server empfangen hat. Der Cqlsh-Client schlägt mit der folgenden Meldung fehl.

Failed to import 1 rows: NoHostAvailable - , will retry later, attempt 3 of 100

Um diesen Fehler zu beheben, müssen Sie sicherstellen, dass die zu importierenden Daten dem Tabellenschema in Amazon Keyspaces entsprechen. Überprüfen Sie die Importdatei auf Analysefehler. Sie können versuchen, eine einzelne Datenzeile zu verwenden, indem Sie eine INSERT-Anweisung verwenden, um den Fehler zu isolieren.

Der Client versucht automatisch, die Verbindung wiederherzustellen.