Creazione di un DAX cluster utilizzando AWS CLI - Amazon DynamoDB

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Creazione di un DAX cluster utilizzando AWS CLI

Questa sezione descrive come creare un cluster Amazon DynamoDB Accelerator DAX () utilizzando (). AWS Command Line Interface AWS CLI Se non l'hai ancora fatto, installa e configura AWS CLI. Per le istruzioni, consulta i seguenti argomenti nella Guida per l'utente di AWS Command Line Interface :

Importante

Per gestire DAX i cluster utilizzando AWS CLI, installa o esegui l'aggiornamento alla versione 1.11.110 o successiva.

Tutti gli AWS CLI esempi utilizzano la us-west-2 regione e l'account fittizio. IDs

Fase 1: Creare un ruolo IAM di servizio per accedere DAX a DynamoDB utilizzando AWS CLI

Prima di poter creare un cluster Amazon DynamoDB Accelerator DAX (), devi crearne un ruolo di servizio. Un ruolo di servizio è un ruolo AWS Identity and Access Management (IAM) che autorizza un AWS servizio ad agire per tuo conto. Il ruolo di servizio consente di accedere DAX alle tabelle DynamoDB come se si stesse accedendo a tali tabelle da soli.

In questo passaggio, si crea una IAM policy e poi la si associa a un IAM ruolo. Ciò consente di assegnare il ruolo a un DAX cluster in modo che possa eseguire operazioni DynamoDB per conto dell'utente.

Per creare un ruolo di servizio per IAM DAX
  1. Crea un file denominato service-trust-relationship.json con i seguenti contenuti.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "dax.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. Crea il ruolo del servizio.

    aws iam create-role \ --role-name DAXServiceRoleForDynamoDBAccess \ --assume-role-policy-document file://service-trust-relationship.json
  3. Crea un file denominato service-role-policy.json con i seguenti contenuti.

    { "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:*" ] } ] }

    Replace (Sostituisci) accountID con l'ID AWS del tuo account. Per trovare l'ID AWS del tuo account, nell'angolo in alto a destra della console, scegli il tuo ID di accesso. L'ID AWS del tuo account viene visualizzato nel menu a discesa.

    Nell'esempio in Amazon Resource Name (ARN), accountID deve essere un numero di 12 cifre. Non usare trattini o altra punteggiatura.

  4. Crea una IAM politica per il ruolo di servizio.

    aws iam create-policy \ --policy-name DAXServicePolicyForDynamoDBAccess \ --policy-document file://service-role-policy.json

    Nell'output, prendete nota della ARN policy che avete creato, come nell'esempio seguente.

    arn:aws:iam::123456789012:policy/DAXServicePolicyForDynamoDBAccess

  5. Collega la policy al ruolo del servizio. Replace (Sostituisci) arn nel codice seguente con il ruolo effettivo ARN del passaggio precedente.

    aws iam attach-role-policy \ --role-name DAXServiceRoleForDynamoDBAccess \ --policy-arn arn

Successivamente, si specifica un gruppo di sottoreti come predefinitoVPC. Un gruppo di sottoreti è una raccolta di una o più sottoreti all'interno di. VPC Per informazioni, consulta Fase 2: creazione di un gruppo di sottoreti.

Fase 2: creazione di un gruppo di sottoreti

Segui questa procedura per creare un gruppo di sottoreti per il tuo cluster Amazon DynamoDB DAX Accelerator () utilizzando (). AWS Command Line Interface AWS CLI

Nota

Se hai già creato un gruppo di sottoreti predefinitoVPC, puoi saltare questo passaggio.

DAXè progettato per funzionare all'interno di un ambiente Amazon Virtual Private Cloud (AmazonVPC). Se hai creato il tuo AWS account dopo il 4 dicembre 2013, hai già un account predefinito VPC in ogni AWS regione. Per ulteriori informazioni, consulta la sezione Sottoreti predefinite VPC e predefinite nella Amazon VPC User Guide.

Nota

La VPC presenza di questo DAX cluster può contenere altre risorse e persino VPC endpoint per gli altri servizi ad eccezione dell'VPCendpoint for ElastiCache e può causare errori nelle operazioni del cluster. DAX

Per creare un gruppo di sottoreti
  1. Per determinare l'identificatore predefinitoVPC, inserisci il seguente comando.

    aws ec2 describe-vpcs

    Nell'output, annotate l'identificatore predefinitoVPC, come nell'esempio seguente.

    vpc-12345678

  2. Determina la sottorete IDs associata all'impostazione predefinita. VPC Replace (Sostituisci) vpcID con il tuo VPC ID effettivo, ad esempio. vpc-12345678

    aws ec2 describe-subnets \ --filters "Name=vpc-id,Values=vpcID" \ --query "Subnets[*].SubnetId"

    Nell'output prendere nota degli identificatori delle sottoreti, ad esempio subnet-11111111.

  3. Crea il gruppo di sottoreti. Assicurati di specificare almeno un ID sottorete nel parametro --subnet-ids.

    aws dax create-subnet-group \ --subnet-group-name my-subnet-group \ --subnet-ids subnet-11111111 subnet-22222222 subnet-33333333 subnet-44444444

Per creare il cluster, consulta Fase 3: Creare un DAX cluster utilizzando AWS CLI.

Fase 3: Creare un DAX cluster utilizzando AWS CLI

Segui questa procedura per utilizzare AWS Command Line Interface (AWS CLI) per creare un cluster Amazon DynamoDB Accelerator DAX () nel tuo Amazon predefinito. VPC

Per creare un cluster DAX
  1. Ottieni l'Amazon Resource Name (ARN) per il tuo ruolo di servizio.

    aws iam get-role \ --role-name DAXServiceRoleForDynamoDBAccess \ --query "Role.Arn" --output text

    Nell'output, annota il ruolo del servizioARN, come nell'esempio seguente.

    arn:aws:iam::123456789012:role/DAXServiceRoleForDynamoDBAccess

  2. Crea il cluster DAX. Sostituiscilo roleARN ARN con quello del passaggio precedente.

    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-2

    Tutti i nodi nel cluster sono di tipo dax.r4.large (--node-type). Sono presenti sono tre nodi (--replication-factor), un nodo primario e due repliche.

    Nota

    Poiché sudo e grep sono parole chiave riservate, non è possibile creare un DAX cluster con queste parole nel nome del cluster. Ad esempio, sudo e sudocluster sono nomi cluster non validi.

Per visualizzare lo stato del cluster, immetti il seguente comando.

aws dax describe-clusters

Lo stato viene visualizzato nell'output, ad esempio "Status": "creating".

Nota

La creazione del cluster richiede diversi minuti. Quando il cluster è pronto, il suo stato diventa available. Nel frattempo, passa a Passaggio 4: Configurare le regole in entrata dei gruppi di sicurezza utilizzando AWS CLI e segui le istruzioni indicate.

Passaggio 4: Configurare le regole in entrata dei gruppi di sicurezza utilizzando AWS CLI

I nodi del cluster Amazon DynamoDB Accelerator DAX () utilizzano il gruppo di sicurezza predefinito per Amazon. VPC Per il gruppo di sicurezza predefinito, devi autorizzare il traffico in entrata sulla TCP porta 8111 per i cluster non crittografati o sulla porta 9111 per i cluster crittografati. Ciò consente alle EC2 istanze Amazon nel tuo Amazon VPC di accedere al tuo DAX cluster.

Nota

Se hai avviato il DAX cluster con un gruppo di sicurezza diverso (diverso dadefault), devi invece eseguire questa procedura per quel gruppo.

Per configurare le regole in entrata del gruppo di sicurezza
  1. Per determinare l'identificatore del gruppo di sicurezza predefinito, immetti il seguente comando: Sostituiscilo vpcID con il tuo VPC ID effettivo (daFase 2: creazione di un gruppo di sottoreti).

    aws ec2 describe-security-groups \ --filters Name=vpc-id,Values=vpcID Name=group-name,Values=default \ --query "SecurityGroups[*].{GroupName:GroupName,GroupId:GroupId}"

    Nell'output prendere nota dell'identificatore del gruppo di sicurezza, ad esempio sg-01234567.

  2. Quindi immetti i seguenti dati. Sostituisci sgID con l'identificatore del gruppo di sicurezza effettivo. Usare la porta 8111 per cluster non crittografati e 9111 per cluster crittografati.

    aws ec2 authorize-security-group-ingress \ --group-id sgID --protocol tcp --port 8111