Verwenden von Amazon Keyspaces mit Schnittstellen-VPC-Endpunkten - 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.

Verwenden von Amazon Keyspaces mit Schnittstellen-VPC-Endpunkten

Schnittstellen-VPC-Endpunkte ermöglichen die private Kommunikation zwischen Ihrer Virtual Private Cloud (VPC), die in Amazon VPC läuft, und Amazon Keyspaces. Schnittstelle, über die VPC-Endpunkte betrieben werden. Dabei handelt es sich um einen AWS Dienst AWS PrivateLink, der die private Kommunikation zwischen VPCs und Diensten ermöglicht. AWS

AWS PrivateLink ermöglicht dies durch die Verwendung einer elastic network interface mit privaten IP-Adressen in Ihrer VPC, sodass der Netzwerkverkehr das Amazon-Netzwerk nicht verlässt. Schnittstellen-VPC-Endpunkte benötigen keinen Internet-Gateway, kein NAT-Gerät, keine VPN-Verbindung und keine AWS Direct Connect -Verbindung. Weitere Informationen finden Sie unter Amazon Virtual Private Cloud und Interface VPC-Endpoints ()AWS PrivateLink.

Verwenden von Schnittstellen-VPC-Endpunkten für Amazon Keyspaces

Sie können einen VPC-Schnittstellen-Endpunkt erstellen, sodass der Datenverkehr zwischen Amazon Keyspaces und Ihren Amazon VPC-Ressourcen über den VPC-Endpunkt der Schnittstelle fließt. Folgen Sie zunächst den Schritten zum Erstellen eines Schnittstellen-Endpunkts. Bearbeiten Sie als Nächstes die Sicherheitsgruppe, die dem Endpunkt zugeordnet ist, den Sie im vorherigen Schritt erstellt haben, und konfigurieren Sie eine Regel für eingehenden Datenverkehr für Port 9142. Weitere Informationen finden Sie unter Regeln hinzufügen, entfernen und aktualisieren.

Ein step-by-step Tutorial zur Konfiguration einer Verbindung zu Amazon Keyspaces über einen VPC-Endpunkt finden Sie unter. Tutorial: Herstellen einer Verbindung zu Amazon Keyspaces mithilfe eines Schnittstellen-VPC-Endpunkts Informationen zum Konfigurieren des kontoübergreifenden Zugriffs für Amazon Keyspaces-Ressourcen getrennt von Anwendungen AWS-Konten in verschiedenen VPC finden Sie unter. Konfigurieren von für den Keyspaces

Auffüllen von system.peers Tabelleneinträgen mit VPC-Endpunktinformationen der Schnittstelle

Apache Cassandra-Treiber verwenden die system.peers Tabelle, um Knoteninformationen über den Cluster abzufragen. Cassandra-Treiber verwenden die Knoteninformationen für den Lastenausgleich bei Verbindungen und für Wiederholungsvorgänge. Amazon Keyspaces füllt automatisch neun Einträge in der system.peers Tabelle für Clients, die sich über den öffentlichen Endpunkt verbinden.

Um Kunden, die sich über VPC-Endpunkte mit Schnittstellen verbinden, ähnliche Funktionen zu bieten, füllt Amazon Keyspaces die system.peers Tabelle in Ihrem Konto mit einem Eintrag für jede Availability Zone, in der ein VPC-Endpunkt verfügbar ist. Um verfügbare Schnittstellen-VPC-Endpunkte in der system.peers Tabelle zu suchen und zu speichern, verlangt Amazon Keyspaces, dass Sie der IAM-Entität, die für die Verbindung mit Amazon Keyspaces verwendet wird, Zugriffsberechtigungen gewähren, um Ihre VPC nach den Endpunkt- und Netzwerkschnittstelleninformationen abzufragen.

Wichtig

Wenn Sie die system.peers Tabelle mit Ihren verfügbaren Schnittstellen-VPC-Endpunkten füllen, wird der Lastenausgleich verbessert und der Lese-/Schreibdurchsatz erhöht. Es wird für alle Clients empfohlen, die über VPC-Endpunkte auf Amazon Keyspaces zugreifen, und ist für Apache Spark erforderlich.

Um der IAM-Entität, die für die Verbindung mit Amazon Keyspaces verwendet wird, Berechtigungen zum Abrufen der erforderlichen VPC-Endpunktinformationen für die Schnittstelle zu gewähren, können Sie Ihre bestehende IAM-Rolle oder Benutzerrichtlinie aktualisieren oder eine neue IAM-Richtlinie erstellen, 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.

Um zu überprüfen, ob die Richtlinie korrekt eingerichtet wurde, fragen Sie die system.peers Tabelle nach Netzwerkinformationen ab. Wenn die system.peers Tabelle leer ist, könnte dies darauf hinweisen, dass die Richtlinie nicht erfolgreich konfiguriert wurde oder dass Sie das Kontingent für die Anforderungsrate DescribeNetworkInterfaces und DescribeVPCEndpoints API-Aktionen überschritten haben. DescribeVPCEndpointsfällt in die Describe* Kategorie und wird als nicht mutierende Aktion angesehen. DescribeNetworkInterfacesfällt in die Untergruppe der ungefilterten und nicht paginierten, nicht mutierenden Aktionen, für die unterschiedliche Quoten gelten. Weitere Informationen finden Sie in der Amazon EC2 EC2-API-Referenz unter Bucket-Größen und Nachfüllraten anfordern.

Wenn Sie eine leere Tabelle sehen, versuchen Sie es einige Minuten später erneut, um Probleme mit der Quote für Anfragen auszuschließen. Informationen dazu, ob Sie die VPC-Endpoints korrekt konfiguriert haben, finden Sie unter. Meine VPC-Endpunktverbindung funktioniert nicht richtig Wenn Ihre Abfrage Ergebnisse aus der Tabelle zurückgibt, wurde Ihre Richtlinie korrekt konfiguriert.

Steuerung des Zugriffs auf VPC-Schnittstellen-Endpunkte für Amazon Keyspaces

Mit VPC-Endpunktrichtlinien können Sie den Zugriff auf Ressourcen auf zwei Arten steuern:

  • IAM-Richtlinie — Sie können die Anfragen, Benutzer oder Gruppen steuern, die über einen bestimmten VPC-Endpunkt auf Amazon Keyspaces zugreifen dürfen. Sie können dies tun, indem Sie einen Bedingungsschlüssel in der Richtlinie verwenden, der einem IAM-Benutzer, einer IAM-Gruppe oder einer IAM-Rolle zugeordnet ist.

  • VPC-Richtlinie — Sie können kontrollieren, welche VPC-Endpunkte Zugriff auf Ihre Amazon Keyspaces-Ressourcen haben, indem Sie ihnen Richtlinien zuordnen. Um den Zugriff auf einen bestimmten Schlüsselraum oder eine Tabelle einzuschränken, sodass nur Datenverkehr über einen bestimmten VPC-Endpunkt zugelassen wird, bearbeiten Sie die bestehende IAM-Richtlinie, die den Ressourcenzugriff einschränkt, und fügen Sie diesen VPC-Endpunkt hinzu.

Im Folgenden finden Sie Beispiele für Endpunktrichtlinien für den Zugriff auf Amazon Keyspaces-Ressourcen.

  • Beispiel für eine IAM-Richtlinie: Beschränken Sie den gesamten Zugriff auf eine bestimmte Amazon Keyspaces-Tabelle, sofern der Datenverkehr nicht vom angegebenen VPC-Endpunkt stammt — Diese Beispielrichtlinie kann einem IAM-Benutzer, einer IAM-Rolle oder einer IAM-Gruppe zugewiesen werden. Es schränkt den Zugriff auf eine bestimmte Amazon Keyspaces-Tabelle ein, es sei denn, der eingehende Verkehr stammt von einem bestimmten VPC-Endpunkt.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "UserOrRolePolicyToDenyAccess", "Action": "cassandra:*", "Effect": "Deny", "Resource": [ "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable", "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*" ], "Condition": { "StringNotEquals" : { "aws:sourceVpce": "vpce-abc123" } } } ] }
    Anmerkung

    Um den Zugriff auf eine bestimmte Tabelle einzuschränken, müssen Sie auch den Zugriff auf die Systemtabellen einbeziehen. Systemtabellen sind schreibgeschützt.

  • Beispiel für eine VPC-Richtlinie: Schreibgeschützter Zugriff — Diese Beispielrichtlinie kann an einen VPC-Endpunkt angehängt werden. (Weitere Informationen finden Sie unter Steuern des Zugriffs auf Amazon VPC-Ressourcen). Es beschränkt Aktionen auf den schreibgeschützten Zugriff auf Amazon Keyspaces-Ressourcen über den VPC-Endpunkt, mit dem es verbunden ist.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "ReadOnly", "Principal": "*", "Action": [ "cassandra:Select" ], "Effect": "Allow", "Resource": "*" } ] }
  • Beispiel für eine VPC-Richtlinie: Beschränken Sie den Zugriff auf eine bestimmte Amazon Keyspaces-Tabelle — Diese Beispielrichtlinie kann an einen VPC-Endpunkt angehängt werden. Es schränkt den Zugriff auf eine bestimmte Tabelle über den VPC-Endpunkt ein, an den sie angehängt ist.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "RestrictAccessToTable", "Principal": "*", "Action": "cassandra:*", "Effect": "Allow", "Resource": [ "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable", "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*" ] } ] }
    Anmerkung

    Um den Zugriff auf eine bestimmte Tabelle einzuschränken, müssen Sie auch den Zugriff auf die Systemtabellen einbeziehen. Systemtabellen sind schreibgeschützt.

Verfügbarkeit

Amazon Keyspaces unterstützt die Verwendung von VPC-Endpunkten mit Schnittstellen überall dort, AWS-Regionen wo der Service verfügbar ist. Weitere Informationen finden Sie unter Service-Endpunkte für Amazon Keyspaces.

VPC-Endpunktrichtlinien und Amazon point-in-time Keyspaces-Wiederherstellung (PITR)

Wenn Sie IAM-Richtlinien mit Bedingungsschlüsseln verwenden, um den eingehenden Datenverkehr einzuschränken, schlägt der Vorgang zur Wiederherstellung der Tabelle möglicherweise fehl. Wenn Sie beispielsweise den Quelldatenverkehr mithilfe von aws:SourceVpce Bedingungsschlüsseln auf bestimmte VPC-Endpunkte beschränken, schlägt die Tabellenwiederherstellung fehl. Damit Amazon Keyspaces im Namen Ihres Principals einen Wiederherstellungsvorgang durchführen kann, müssen Sie Ihrer IAM-Richtlinie einen aws:ViaAWSService Bedingungsschlüssel hinzufügen. Der aws:ViaAWSService Bedingungsschlüssel ermöglicht den Zugriff, wenn ein AWS Dienst unter Verwendung der Anmeldeinformationen des Prinzipals eine Anfrage stellt. Weitere Informationen finden Sie unter IAM-JSON-Richtlinienelemente: Bedingungsschlüssel im IAM-Benutzerhandbuch. Die folgende Richtlinie ist ein Beispiel dafür.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"CassandraAccessForVPCE", "Effect":"Allow", "Action":"cassandra:*", "Resource":"*", "Condition":{ "Bool":{ "aws:ViaAWSService":"false" }, "StringEquals":{ "aws:SourceVpce":[ "vpce-12345678901234567" ] } } }, { "Sid":"CassandraAccessForAwsService", "Effect":"Allow", "Action":"cassandra:*", "Resource":"*", "Condition":{ "Bool":{ "aws:ViaAWSService":"true" } } } ] }

Häufige Fehler und Warnungen

Wenn Sie Amazon Virtual Private Cloud verwenden und eine Verbindung zu Amazon Keyspaces herstellen, wird möglicherweise die folgende Warnung angezeigt.

Control node cassandra.us-east-1.amazonaws.com/1.111.111.111:9142 has an entry for itself in system.peers: this entry will be ignored. This is likely due to a misconfiguration; please verify your rpc_address configuration in cassandra.yaml on all nodes in your cluster.

Diese Warnung tritt auf, weil die system.peers Tabelle Einträge für alle Amazon VPC-Endpoints enthält, zu deren Anzeige Amazon Keyspaces berechtigt ist, einschließlich des Amazon VPC-Endpunkts, über den Sie verbunden sind. Sie können diese Warnung getrost ignorieren.

Informationen zu anderen Fehlern finden Sie unterMeine VPC-Endpunktverbindung funktioniert nicht richtig.