Como posso usar o DynamoDB Accelerator (DAX) com o AWS Lambda?

4 minuto de leitura
0

Quero usar meu cluster do Amazon DynamoDB Accelerator (DAX) com minha função do AWS Lambda. Como faço isso?

Resolução

Depois de criar um cluster do DAX, anote o ID da VPC, as sub-redes e o grupo de segurança lançados com o cluster do DAX. Mantenha essas informações disponíveis para referência. Em seguida, siga as etapas abaixo para usar sua função do Lambda com seu cluster do DAX.

Criar uma função do Lambda com acesso à VPC do cluster do DAX

1.    Abra o console do Lambda. Em seguida, abra a página Functions (Funções).

2.    Escolha Create function (Criar função) e, em seguida, insira o Function name (Nome da função).

3.    Escolha o Runtime (Tempo de execução) e a Architecture (Arquitetura) em Basic information (Informações básicas).

4.    Expanda as Advanced settings (Configurações avançadas). Em seguida, marque a caixa de seleção à esquerda de Enable VPC (Ativar VPC).

5.    Na lista suspensa da VPC, escolha a VPC que você anotou anteriormente. Essa é a VPC na qual seu cluster do DAX foi lançado.

6.    Na lista suspensa Subnets (Sub-redes), escolha as sub-redes que você anotou anteriormente. Selecione todas que se aplicam.

7.    Na lista suspensa do Security group (Grupo de segurança), escolha o grupo de segurança da VPC que você anotou anteriormente. O console mostra as regras de entrada e saída desse grupo de segurança.

Importante: para que a função do Lambda se conecte ao cluster do DAX, as Inbound rules (Regras de entrada) para o grupo de segurança devem exibir o TCP como o Protocol (Protocolo). Além disso, deve aparecer 8111 ou 9111 em Ports (Portas). 8111 é para clusters não criptografados e 9111 é para clusters criptografados.

8.    Escolha Create function (Criar função).

Configure uma função do Lambda existente para acessar a VPC do cluster do DAX

1.    Abra o console do Lambda. Em seguida, abra a página Functions (Funções).

2.    Escolha a função que você deseja usar com seu cluster do DAX.

3.    Escolha Configuration (Configuração) na faixa de opções e, em seguida, escolha VPC. Escolha Edit (Editar).

4.    Siga as etapas de 4 a 6 na seção anterior, Criar uma função do Lambda com acesso à VPC do cluster do DAX.

5.    Escolha Save (Salvar).

Teste a conexão da função do Lambda com o seu cluster do DAX

Importante: você deve primeiro preparar um pacote de implantação porque o amazondax não está disponível por padrão no Lambda. Consulte a seção All versions (Todas as versões) no Amazon DynamoDB Accelerator (DAX) para instalar o amazon-dax-client.

Depois de instalar o amazon-dax-client, siga as etapas em Implantar funções do Lambda em Python com arquivos .zip para criar um pacote de implantação. Use o seguinte código em Python para criar o pacote:

import amazondax
import boto3

def lambda_handler(event, context):
    daxclient = amazondax.AmazonDaxClient(endpoint_url='<endpoint-from-your-cluster>')
    print("Connected!!")

No pacote de implantação, altere o endpoint_url para aquele encontrado em seu cluster do DAX. Para fazer isso:

1.    Abra o console do DynamoDB.

2.    No painel de navegação, em DAX, escolha Clusters.

3.    Selecione o cluster do DAX criado anteriormente e, em seguida, escolha Overview (Visão geral).

4.    Em General information (Informações gerais), encontre o Cluster endpoint (Endpoint do cluster). Copie o URL listado.

5.    Substitua o no código Python pelo URL copiado.

  1.     Faça o upload do pacote de implantação como um arquivo .zip ou por meio de um URL do S3. Em seguida, escolha Test (Testar).

  2.    Se sua conexão for configurada com êxito, os Execution results (Resultados da execução) exibirão "Connected!!" ("Conectado!!").


Informações relacionadas

Como configurar o acesso à VPC (console)

Use o DynamoDB Accelerator (DAX) do Lambda para aumentar o desempenho e reduzir os custos

Desenvolver com o cliente do DynamoDB Accelerator (DAX)

AWS OFICIAL
AWS OFICIALAtualizada há um ano