View a markdown version of this page

Crie um cache sem servidor Valkey com um endpoint público - Amazon ElastiCache

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Crie um cache sem servidor Valkey com um endpoint público

Com um endpoint público, você pode se conectar a um cache ElastiCache sem servidor diretamente pela Internet sem uma VPC. Os endpoints públicos estão disponíveis no ElastiCache Serverless for Valkey 9.0 ou posterior.

Pré-requisitos

  • Uma AWS conta com permissões para criar ElastiCache recursos.

  • Ou AdministratorAccess as permissões do IAM que incluemelasticache:CreateServerlessCache. Se você planeja criar um grupo de usuários personalizado em vez de usar o padrão, você também precisa elasticache:CreateUser elasticache:CreateUserGroup e.

  • Sua identidade do IAM deve ter permissão para criar caches com um endpoint público. Essa permissão pode ser restringida usando a chave de elasticache:ConnectionType condição. Para obter mais informações, consulte Políticas de exemplo: usando condições para controle de Fine-Grained parâmetros.

  • A AWS CLI versão 2 instalada e configurada, para as etapas da CLI.

Com ElastiCache, você pode usar o usuário (default.iam-user) e o grupo de usuários () do IAM gerenciados pelo sistema para começar sem criar usuários personalizados. default.iam-user-group Para usar um grupo de usuários personalizado, primeiro crie um grupo de usuários em que todos os usuários usem a autenticação do IAM e, em seguida, crie o cache.

Console de gerenciamento da AWS
  1. Abra o ElastiCache console em https://console.aws.amazon.com/elasticache/. Se solicitado, faça login.

  2. Escolha Começar para abrir a página Criar cache.

    A página inicial do ElastiCache console com o botão Começar.
  3. Em Engine, escolha Valkey.

    A seção Mecanismo da página Criar cache com o Valkey selecionado.
  4. Na opção Implantação, escolha Sem servidor.

    A seção de opções de implantação com a opção Sem servidor selecionada.
  5. Em Configurações, insira um Nome para seu cache. Opcionalmente, insira uma Description (Descrição).

    A seção Configurações mostrando os campos Nome e Descrição.
  6. Em Versão do mecanismo, mantenha o padrão selecionado ou escolha 9 ou posterior.

    O controle de versão do Engine com a versão 9 selecionada.
  7. Em Tipo de conexão, escolha Público.

    A seção Tipo de conexão com Público selecionada.
  8. Por padrão, ElastiCache usa as configurações recomendadas que funcionam para a maioria das cargas de trabalho. Escolha Personalizar configurações padrão se precisar alterar o tipo de rede, ajustar os limites de uso do cache ou selecionar um grupo de usuários diferente. O grupo de usuários padrão édefault.iam-user-group. Todos os usuários do grupo devem usar a autenticação do IAM.

    A área Personalizar configurações padrão mostrando o tipo de rede, as configurações de segurança e o grupo de usuários.
  9. (Opcional) Em Tags, escolha Adicionar nova tag e adicionar tags para pesquisar e filtrar seus caches ou monitorar seus AWS custos.

    A seção Tags com o botão Adicionar nova tag.
  10. Escolha Criar. Após o envio, você é redirecionado para a página de detalhes do cache, onde o status do cache é mostrado como Criando.

    A página de detalhes do cache mostrando o status do cache como Criando.
  11. Espere até que o status na página de detalhes do cache mude de Criando para Disponível antes de se conectar ao cache. A página é atualizada automaticamente quando o cache está pronto.

    A página de detalhes do cache mostrando o status do cache foi alterada para Disponível.
AWS CLI

Execute o comando a seguir para criar um cache com um endpoint público usando o grupo de usuários do IAM padrão gerenciado pelo sistema:

aws elasticache create-serverless-cache \ --serverless-cache-name my-public-cache \ --engine valkey \ --major-engine-version 9 \ --connection-type public \ --user-group-id default.iam-user-group

O comando retorna uma resposta que inclui o endpoint do cache:

{ "ServerlessCache": { "ServerlessCacheName": "my-public-cache", "Status": "creating", "Engine": "valkey", "MajorEngineVersion": "9", "ConnectionType": "public", "Endpoint": { "Address": "my-public-cache-x2e9hv.public.serverless.use1.cache.amazonaws.com", "Port": 6379 }, "UserGroupId": "default.iam-user-group" } }

Observe o valor Endpoint.Address. Você usa esse valor para se conectar ao seu cache.

Para usar um grupo de usuários personalizado em vez do padrão, default.iam-user-group substitua pelo ID do seu grupo de usuários. Todos os usuários do grupo de usuários devem usar a autenticação do IAM.

AWS SDK

Os exemplos a seguir criam um cache com um endpoint público.

Python (boto3)

import boto3 client = boto3.client("elasticache", region_name="us-east-1") response = client.create_serverless_cache( ServerlessCacheName="my-public-cache", Engine="valkey", MajorEngineVersion="9", ConnectionType="public", UserGroupId="default.iam-user-group", ) print(response["ServerlessCache"]["Endpoint"]["Address"])

JavaScript (AWS SDK v3)

import { ElastiCacheClient, CreateServerlessCacheCommand } from "@aws-sdk/client-elasticache"; const client = new ElastiCacheClient({ region: "us-east-1" }); const response = await client.send(new CreateServerlessCacheCommand({ ServerlessCacheName: "my-public-cache", Engine: "valkey", MajorEngineVersion: "9", ConnectionType: "public", UserGroupId: "default.iam-user-group", })); console.log(response.ServerlessCache?.Endpoint?.Address);

Java (AWS SDK v2)

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.elasticache.ElastiCacheClient; import software.amazon.awssdk.services.elasticache.model.CreateServerlessCacheRequest; import software.amazon.awssdk.services.elasticache.model.CreateServerlessCacheResponse; try (ElastiCacheClient client = ElastiCacheClient.builder() .region(Region.US_EAST_1) .build()) { CreateServerlessCacheResponse response = client.createServerlessCache( CreateServerlessCacheRequest.builder() .serverlessCacheName("my-public-cache") .engine("valkey") .majorEngineVersion("9") .connectionType("public") .userGroupId("default.iam-user-group") .build()); System.out.println(response.serverlessCache().endpoint().address()); }

Depois que seu cache estiver disponível, consulteConecte-se a um cache com um endpoint público.