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.
In diesem Abschnitt wird beschrieben, wie Sie einen Amazon-DynamoDB-Accelerator-(DAX)-Cluster mit der AWS Command Line Interface (AWS CLI) erstellen. Wenn Sie es noch nicht getan haben, müssen Sie AWS CLI installieren und konfigurieren. Eine Anleitung finden Sie unter den folgenden Themen im AWS Command Line Interface -Benutzerhandbuch:
Wichtig
Um DAX-Cluster mit dem zu verwalten AWS CLI, installieren Sie Version 1.11.110 oder höher oder führen Sie ein Upgrade auf Version 1.11.110 durch.
In allen AWS CLI Beispielen werden die us-west-2
Region und das fiktive Konto verwendet. IDs
Themen
Schritt 1: Erstellen Sie eine IAM-Servicerolle für DAX für den Zugriff auf DynamoDB mithilfe der AWS CLI
Bevor Sie einen Amazon-DynamoDB-Accelerator-(DAX)-Cluster erstellen können, müssen Sie eine Servicerolle dafür erstellen. Eine Servicerolle ist eine AWS Identity and Access Management (IAM-) Rolle, die einen AWS Dienst autorisiert, in Ihrem Namen zu handeln. Die Servicerolle ermöglicht DAX den Zugriff auf Ihre DynamoDB-Tabellen, als würden Sie selbst darauf zugreifen.
In diesem Schritt erstellen Sie eine IAM-Richtlinie und fügen diese dann einer IAM-Rolle hinzu. So können Sie die Rolle einem DAX-Cluster zuweisen, sodass er DynamoDB-Operationen in Ihrem Namen durchführen kann.
So erstellen Sie eine IAM-Service-Rolle für DAX
-
Erstellen Sie eine Datei mit dem Namen
service-trust-relationship.json
und dem folgenden Inhalt.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "dax.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
Erstellen Sie die Servicerolle.
aws iam create-role \ --role-name DAXServiceRoleForDynamoDBAccess \ --assume-role-policy-document file://service-trust-relationship.json
-
Erstellen Sie eine Datei mit dem Namen
service-role-policy.json
und dem folgenden Inhalt.{ "Version": "2012-10-17", "Statement": [ { "Action": [ "dynamodb:DescribeTable", "dynamodb:PutItem", "dynamodb:GetItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem", "dynamodb:Query", "dynamodb:Scan", "dynamodb:BatchGetItem", "dynamodb:BatchWriteItem", "dynamodb:ConditionCheckItem" ], "Effect": "Allow", "Resource": [ "arn:aws:dynamodb:us-west-2:
accountID
:*" ] } ] }Ersetzen Sie es
accountID
durch Ihre AWS Konto-ID. Um Ihre AWS Konto-ID zu finden, wählen Sie in der oberen rechten Ecke der Konsole Ihre Login-ID aus. Ihre AWS Konto-ID wird im Drop-down-Menü angezeigt.Im Beispiel
accountID
muss der Amazon-Ressourcenname (ARN) eine 12-stellige Zahl sein. Verwenden Sie keine Bindestriche oder anderen Satzzeichen. -
Erstellen Sie eine IAM-Richtlinie für die Servicerolle:
aws iam create-policy \ --policy-name DAXServicePolicyForDynamoDBAccess \ --policy-document file://service-role-policy.json
Beachten Sie in der Ausgabe den ARN für die Richtlinie, die Sie erstellt haben.
arn:aws:iam::123456789012:policy/DAXServicePolicyForDynamoDBAccess
-
Fügen Sie die Richtlinie der Servicerolle an. Ersetzen Sie
arn
im folgenden Code durch den tatsächlichen Rollen-ARN aus dem vorherigen Schritt.aws iam attach-role-policy \ --role-name DAXServiceRoleForDynamoDBAccess \ --policy-arn
arn
Als Nächstes geben Sie eine Subnetzgruppe für Ihre Standard-VPC an. Eine Subnetzgruppe ist eine Sammlung eines oder mehrerer Subnetze innerhalb der VPC. Siehe Schritt 2: Erstellung einer Subnetzgruppe.
Schritt 2: Erstellung einer Subnetzgruppe
Gehen Sie wie folgt vor, um mithilfe von () eine Subnetzgruppe für Ihren Amazon DynamoDB Accelerator (DAX) -Cluster zu erstellen. AWS Command Line Interface AWS CLI
Anmerkung
Wenn Sie bereits eine Subnetzgruppe für die Standard-VPC erstellt haben, können Sie diesen Schritt überspringen.
DAX wurde für die Ausführung in einer Amazon-Virtual-Private-Cloud-Umgebung (Amazon VPC) entwickelt. Wenn Sie Ihr AWS -Konto nach dem 4. Dezember 2013 erstellt haben, verfügen Sie bereits in jeder AWS -Region über eine Standard-VPC. Weitere Informationen finden Sie unter Standard-VPC und Standard-Subnetze im Amazon-VPC-Benutzerhandbuch.
Anmerkung
Die VPC mit diesem DAX-Cluster kann andere Ressourcen und sogar VPC-Endpunkte für die anderen Dienste mit Ausnahme des VPC-Endpunkts für enthalten ElastiCache und kann zu Fehlern bei den DAX-Clustervorgängen führen.
So erstellen Sie eine Subnetzgruppe
-
Um die ID des Standard-VPCs zu bestimmen, geben Sie den folgenden Befehl ein.
aws ec2 describe-vpcs
Beachten Sie in der Ausgabe die ID der Standard-VPC, wie im folgenden Beispiel dargestellt.
vpc-12345678
-
Ermitteln Sie das Subnetz, das Ihrer Standard-VPC IDs zugeordnet ist.
vpcID
Ersetzen Sie es durch Ihre tatsächliche VPC-ID, z. B.vpc-12345678
aws ec2 describe-subnets \ --filters "Name=vpc-id,Values=
vpcID
" \ --query "Subnets[*].SubnetId"Notieren Sie sich in der Ausgabe die Subnetz-IDs – z. B.
subnet-11111111
. -
Erstellen Sie die Subnetzgruppe. Stellen Sie sicher, dass Sie mindestens eine Subnetz-ID im Parameter
--subnet-ids
angeben.aws dax create-subnet-group \ --subnet-group-name my-subnet-group \ --subnet-ids
subnet-11111111
subnet-22222222
subnet-33333333
subnet-44444444
Informationen zum Erstellen des Clusters finden Sie unter Schritt 3: Erstellen Sie einen DAX-Cluster mit dem AWS CLI.
Schritt 3: Erstellen Sie einen DAX-Cluster mit dem AWS CLI
Gehen Sie wie folgt vor, um mit AWS Command Line Interface (AWS CLI) einen Amazon DynamoDB Accelerator (DAX) -Cluster in Ihrer Standard-Amazon-VPC zu erstellen.
So erstellen Sie einen DAX-Cluster
-
Rufen Sie den Amazon-Ressourcennamen (ARN) für die Servicerolle ab.
aws iam get-role \ --role-name DAXServiceRoleForDynamoDBAccess \ --query "Role.Arn" --output text
Beachten Sie in der Ausgabe den Servicerollen-ARN, wie im folgenden Beispiel dargestellt.
arn:aws:iam::123456789012:role/DAXServiceRoleForDynamoDBAccess
-
DAX-Cluster erstellen. Ersetzen Sie
mit der ARN aus dem vorherigen Schritt.roleARN
aws dax create-cluster \ --cluster-name mydaxcluster \ --node-type dax.r4.large \ --replication-factor 3 \ --iam-role-arn
roleARN
\ --subnet-group my-subnet-group \ --sse-specification Enabled=true \ --region us-west-2Alle Knoten in dem Cluster sind vom Typ
dax.r4.large
(--node-type
). Es gibt drei Knoten (--replication-factor
) – einen primären Knoten und zwei Replikate.Anmerkung
Da
sudo
undgrep
-reservierte Schlüsselwörter sind, können Sie keinen DAX-Cluster mit diesen Wörtern im Cluster-Namen erstellen. Beispiel:sudo
undsudocluster
sind ungültige Cluster-Namen.
Zum Anzeigen des Cluster-Status geben Sie den folgenden Befehl ein:
aws dax describe-clusters
Der Status wird in der Ausgabe angezeigt - z. B. "Status":
"creating"
.
Anmerkung
Das Erstellen des Clusters kann einige Minuten dauern. Sobald der Cluster bereit ist, ändert sich sein Status zu available
. Fahren Sie in der Zwischenzeit mit Schritt 4: Konfigurieren Sie Regeln für eingehende Sicherheitsgruppen mithilfe der AWS CLI fort und folgen Sie den Anweisungen.
Schritt 4: Konfigurieren Sie Regeln für eingehende Sicherheitsgruppen mithilfe der AWS CLI
Die Knoten in dem Amazon-DynamoDB-Accelerator-(DAX)-Cluster verwenden die Standardsicherheitsgruppe für Ihre Amazon VPC. Für die Standardsicherheitsgruppe müssen Sie eingehenden Datenverkehr auf TCP-Port 8111 für unverschlüsselte Cluster oder Port 9111 für verschlüsselte Cluster autorisieren. Dadurch können EC2 Amazon-Instances in Ihrer Amazon VPC auf Ihren DAX-Cluster zugreifen.
Anmerkung
Wenn Sie den DAX-Cluster mit einer anderen Sicherheitsgruppe (einer anderen als default
) gestartet haben, müssen Sie stattdessen den hier beschriebenen Prozess für diese Gruppe durchführen.
So konfigurieren Sie Regeln für eingehenden Datenverkehr für Sicherheitsgruppen
-
Um die Standard-Sicherheitsgruppen-ID zu bestimmen, geben Sie den folgenden Befehl ein. Ersetzen Sie
mit der tatsächlichen VPC-ID (aus Schritt 2: Erstellung einer Subnetzgruppe).vpcID
aws ec2 describe-security-groups \ --filters Name=vpc-id,Values=
vpcID
Name=group-name,Values=default \ --query "SecurityGroups[*].{GroupName:GroupName,GroupId:GroupId}"Beachten Sie in der Ausgabe die Sicherheitsgruppen-ID - z. B.
sg-01234567
. -
Geben Sie dann Folgendes ein. Ersetzen Sie
mit der tatsächlichen Sicherheitsgruppen-ID. Verwenden Sie PortsgID
8111
für unverschlüsselte Cluster und9111
für verschlüsselte Cluster.aws ec2 authorize-security-group-ingress \ --group-id
sgID
--protocol tcp --port8111