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á.
Projetando seu próprio ElastiCache cluster (Valkey)
A seguir estão as ações únicas que você deve realizar para começar a projetar seu cluster ElastiCache (Valkey).
Etapa 1: criar um grupo de sub-redes
Antes de criar um cluster ElastiCache (Valkey), primeiro você cria um grupo de sub-redes. Um grupo de sub-redes de cache é uma coleção de sub-redes que você pode querer designar aos seus clusters de cache em uma VPC. Ao executar um cluster de cache em uma VPC, é necessário selecionar um grupo de sub-redes de cache. Em seguida, ElastiCache usa esse grupo de sub-redes de cache para atribuir endereços IP dentro dessa sub-rede a cada nó de cache no cluster.
Quando você criar um novo grupo de sub-redes, observe o número de endereços IP disponíveis. Se a sub-rede tiver muito poucos endereços IP livres, talvez haja um limite no que diz respeito ao número de nós adicionais que é possível acrescentar ao cluster. Para resolver esse problema, você pode atribuir uma ou mais sub-redes a um grupo de sub-redes para ter um número suficiente de endereços IP na zona de disponibilidade do seu cluster. Depois disso, você pode adicionar mais nós ao seu cluster.
Para obter mais informações sobre a configuração, ElastiCache consulteConf ElastiCacheiguração.
Os procedimentos a seguir mostram como criar um grupo de sub-rede chamado mysubnetgroup
(console) e a AWS CLI.
O procedimento a seguir mostra como criar um grupo de sub-redes (console).
Como criar um grupo de sub-redes (console)
-
Faça login no AWS Management Console e abra o ElastiCache console em https://console.aws.amazon.com/elasticache/
. -
Na lista de navegação, escolha Subnet Groups (Grupos de sub-redes).
-
Selecione Create Subnet Group (Criar grupo de sub-redes).
-
No assistente Create Subnet Group (Criar grupo de sub-redes), faça o seguinte. Quando estiver satisfeito com todas as configurações, clique em Yes, Create (Sim, criar).
-
Na caixa Name (Nome), digite um nome para o seu grupo de sub-redes.
-
Na caixa Description (Descrição), digite uma descrição para seu grupo de sub-redes.
-
Na caixa VPC ID (ID da VPC_, escolha a Amazon VPC que você criou.
-
Nas listas Zona de disponibilidade e ID de sub-rede, escolha a zona de disponibilidade ou Usando zonas locais com ElastiCache e o ID da sub-rede privada e depois escolha Adicionar.
-
-
Na mensagem de confirmação exibida, escolha Close (Fechar).
Seu novo grupo de sub-redes aparece na lista Grupos de sub-redes do ElastiCache console. Na parte inferior da janela, você pode escolher o grupo de sub-redes para ver detalhes, como todas as sub-redes associadas a esse grupo.
No prompt de comando, use o comando create-cache-subnet-group
para criar um grupo de sub-redes.
Para Linux, macOS ou Unix:
aws elasticache create-cache-subnet-group \ --cache-subnet-group-name
mysubnetgroup
\ --cache-subnet-group-description"Testing"
\ --subnet-idssubnet-53df9c3a
Para Windows:
aws elasticache create-cache-subnet-group ^ --cache-subnet-group-name
mysubnetgroup
^ --cache-subnet-group-description"Testing"
^ --subnet-idssubnet-53df9c3a
Esse comando deve produzir um resultado semelhante ao seguinte:
{
"CacheSubnetGroup": {
"VpcId": "vpc-37c3cd17",
"CacheSubnetGroupDescription": "Testing",
"Subnets": [
{
"SubnetIdentifier": "subnet-53df9c3a",
"SubnetAvailabilityZone": {
"Name": "us-west-2a"
}
}
],
"CacheSubnetGroupName": "mysubnetgroup"
}
}
Para obter mais informações, consulte o AWS CLI tópico create-cache-subnet-group.
Etapa 2: criar um cluster
Antes de criar um cluster para uso em produção, é óbvio que você precisa considerar como configurar o cluster para atender às suas necessidades de negócios. Esses problemas são abordados na seção Preparando um cluster em ElastiCache. Para os propósitos deste exercício de introdução, você criará um cluster com o modo cluster desabilitado e poderá aceitar os valores de configuração padrão onde eles se aplicam.
O cluster que você criará estará ativo, e não em execução em uma sandbox. Você incorrerá nas taxas ElastiCache de uso padrão da instância até excluí-la. As cobranças totais serão mínimas (geralmente menos de um dólar) se você concluir o exercício descrito aqui em uma única sessão e excluir seu cluster quando terminar. Para obter mais informações sobre taxas de ElastiCache uso, consulte Amazon ElastiCache
Seu cluster é iniciado em uma nuvem privada virtual (VPC) com base no serviço da Amazon VPC.
Criação de um cluster do Valkey (modo cluster desabilitado) (console)
Para criar um cluster Valkey (modo de cluster desativado) usando o console ElastiCache
-
Faça login no AWS Management Console e abra o ElastiCache console da Amazon em https://console.aws.amazon.com/elasticache/
. -
Na lista no canto superior direito, escolha a AWS região na qual você deseja iniciar esse cluster.
-
No painel de navegação, escolha Get started (Conceitos básicos).
Escolha Create VPC (Criar VPC) e siga as etapas em Creating a Virtual Private Cloud (VPC) (Criação de uma nuvem privada virtual (VPC)).
Na página do ElastiCache painel, escolha Valkey cache ou Redis OSS cache e escolha Create Valkey cache ou Create Redis OSS cache.
-
Em Cluster settings (Configurações do cluster), faça o seguinte:
Selecione Configure and create a new cluster (Configurar e criar um novo cluster).
Em Cluster mode (Modo cluster), escolha Disabled (Desabilitado).
-
Para o Cluster info (Informações sobre o cluster), insira um valor para Name (Nome).
-
(Opcional) Insira um valor para Description (Descrição).
Em Location (Local):
Assim que o status do seu cluster estiver disponível, você poderá conceder EC2 à Amazon acesso a ele, conectar-se a ele e começar a usá-lo. Para obter mais informações, consulte Etapa 3. Autorizar o acesso ao cluster e Etapa 4. Conectar-se ao nó de um cluster.
Importante
Assim que seu cluster se tornar disponível, você será cobrado por cada hora ou hora parcial em que ele estiver ativo, mesmo que você não o esteja usando ativamente. Para interromper as cobranças aplicáveis para esse cluster, você deve excluí-lo. Consulte Excluindo um cluster no ElastiCache.
Para trabalhar com o modo de cluster habilitado, consulte os seguintes tópicos:
Para usar o console, consulte Criação de um cluster do Valkey ou Redis OSS (modo cluster habilitado) (console).
Para usar o AWS CLI, consulteCriação de um cluster do Valkey ou Redis OSS (modo cluster habilitado) (AWS CLI).
Etapa 3. Autorizar o acesso ao cluster
Esta seção pressupõe que você esteja familiarizado com o lançamento e a conexão com EC2 instâncias da Amazon. Para obter mais informações, consulte o Amazon EC2 Getting Started Guide.
Todos os ElastiCache clusters são projetados para serem acessados a partir de uma EC2 instância da Amazon. O cenário mais comum é acessar um ElastiCache cluster de uma EC2 instância da Amazon na mesma Amazon Virtual Private Cloud (Amazon VPC), o que será o caso deste exercício.
Por padrão, o acesso de rede ao seu cluster é limitado à conta que foi usada para criá-lo. Antes de se conectar a um cluster a partir de uma EC2 instância, você deve autorizar a EC2 instância a acessar o cluster.
O caso de uso mais comum é quando um aplicativo implantado em uma EC2 instância precisa se conectar a um cluster na mesma VPC. A maneira mais simples de gerenciar o acesso entre EC2 instâncias e clusters na mesma VPC é fazer o seguinte:
-
Crie um grupo de segurança de VPC para o seu cluster. Esse security group pode ser usado para restringir o acesso às instâncias do cluster. Por exemplo, é possível criar uma regra personalizada para esse grupo de segurança que permite o acesso TCP usando a porta atribuída ao cluster quando você o criou e um endereço IP que será usado para acessar o cluster.
A porta padrão dos clusters e grupos de replicação Valkey ou Redis OSS é
6379
.Importante
Os grupos ElastiCache de segurança da Amazon são aplicáveis somente a clusters que não estão sendo executados em um ambiente Amazon Virtual Private Cloud (VPC). Se você estiver executando em uma Amazon Virtual Private Cloud, os Grupos de segurança não estarão disponíveis no painel de navegação do console.
Se você estiver executando seus ElastiCache nós em uma Amazon VPC, você controla o acesso aos seus clusters com grupos de segurança da Amazon VPC, que são diferentes dos grupos de segurança. ElastiCache Para obter mais informações sobre o uso ElastiCache em uma Amazon VPC, consulte Amazon VPCs e ElastiCache segurança
-
Crie um grupo de segurança VPC para suas EC2 instâncias (servidores web e de aplicativos). Esse grupo de segurança pode, se necessário, permitir o acesso à EC2 instância pela Internet por meio da tabela de roteamento da VPC. Por exemplo, você pode definir regras nesse grupo de segurança para permitir acesso TCP à EC2 instância pela porta 22.
-
Crie regras personalizadas no grupo de segurança do seu cluster que permitam conexões do grupo de segurança que você criou para suas EC2 instâncias. Isso permitiria que qualquer membro de grupo de segurança acessasse os clusters.
nota
Se você estiver planejando usar Zonas locais, verifique se você as habilitou. Quando você criar um grupo de sub-redes nessa região local, sua VPC será estendida para essa zona local e sua VPC tratará a sub-rede como qualquer sub-rede em qualquer outra zona de disponibilidade. Todos os gateways e tabelas de rotas relevantes serão ajustados automaticamente.
Para criar uma regra em um grupo de segurança de VPC que permita conexões de outro grupo de segurança
-
No painel de navegação, escolha Security Groups (Grupos de segurança).
-
Selecione ou crie um security group que você usará para suas instâncias de cluster. Em Regras de entrada, selecione Editar regras de entrada e escolha Adicionar regra. Esse grupo de segurança permitirá o acesso a membros de outro grupo de segurança.
-
Em Tipo, escolha Regra TCP personalizada.
-
Para Port Range, especifique a porta que você usou quando criou seu cluster.
A porta padrão dos clusters e grupos de replicação Valkey ou Redis OSS é
6379
. -
Na caixa Source, comece a digitar o ID do grupo de segurança. Na lista, selecione o grupo de segurança que você usará para suas EC2 instâncias da Amazon.
-
-
Escolha Save quando terminar.
Depois de habilitar o acesso, você agora estará pronto para se conectar ao nó, conforme discutido na próxima seção.
Para obter informações sobre como acessar seu ElastiCache cluster de uma Amazon VPC diferente, de uma AWS região diferente ou até mesmo de sua rede corporativa, consulte o seguinte:
Etapa 4. Conectar-se ao nó de um cluster
Antes de continuar, conclua Etapa 3. Autorizar o acesso ao cluster.
Esta seção pressupõe que você criou uma EC2 instância da Amazon e pode se conectar a ela. Para obter instruções sobre como fazer isso, consulte o Amazon EC2 Getting Started Guide.
Uma EC2 instância da Amazon pode se conectar a um nó de cluster somente se você a tiver autorizado a fazer isso.
Localize seus endpoints de nó
Quando seu cluster está no estado disponível e você autorizou o acesso a ele, você pode fazer login em uma EC2 instância da Amazon e se conectar ao cluster. Para isso, primeiro você deve determinar o endpoint.
Localização de endpoints de um cluster do Valkey (modo cluster desabilitado) (console)
Se o cluster do Valkey (modo cluster desabilitado) tiver apenas um nó, o endpoint desse nó será usado para tanto para leituras quanto para gravações. Se cluster tiver vários nós, haverá três tipos de endpoints: o endpoint primário, o endpoint leitor e os endpoints de nó.
O endpoint primário é um nome DNS que sempre é resolvido para o nó primário no cluster. O endpoint primário é imune às alterações no seu cluster, como promover uma réplica de leitura para a função primária. Para atividades de gravação, recomendamos que suas aplicações se conectem ao endpoint primário.
Um endpoint de leitura dividirá uniformemente as conexões de entrada com o endpoint entre todas as réplicas de leitura em um cluster. ElastiCache Fatores adicionais, como quando o aplicativo cria as conexões ou como o aplicativo (re)usa as conexões determinarão a distribuição do tráfego. Os endpoints de leitor acompanham as alterações do cluster em tempo real à medida que réplicas são adicionadas ou removidas. Você pode colocar as várias réplicas de leitura do seu ElastiCache cluster em diferentes zonas de AWS disponibilidade (AZ) para garantir a alta disponibilidade dos endpoints de leitura.
nota
Um endpoint leitor não é um balanceador de carga. É um registro DNS que vai resolver para um endereço IP de um dos nós de réplica em uma forma round robin.
Para atividades de leitura, os aplicativos também podem se conectar a qualquer nó no cluster. Ao contrário do endpoint primário, endpoints de nó são resolvidos para endpoints específicos. Se você fizer uma alteração no cluster, como adicionar ou excluir uma réplica, deverá atualizar os endpoints de nó no seu aplicativo.
Para localizar um endpoint de um cluster do Valkey (modo cluster desabilitado) (console)
-
Faça login no AWS Management Console e abra o ElastiCache console em https://console.aws.amazon.com/elasticache/
. -
No painel de navegação, escolha Caches do Valkey ou Caches do Redis OSS.
A tela de clusters aparecerá com uma lista que vai incluir todos os caches com tecnologia sem servidor do Valkey ou Redis OSS, cluster do Valkey (modo de cluster desabilitado) e cluster do Valkey (modo de cluster habilitado). Selecione o cluster que você criou na seção Criação de um cluster do Valkey (modo cluster desabilitado) (console).
-
Para encontrar os endpoints Primário e/ou Leitor do cluster, escolha o nome do cluster (e não o botão de opção).
Endpoints primários e leitores para um cluster do Valkey (modo cluster desabilitado)
Se houver apenas um nó no cluster, não haverá um endpoint primário, e você poderá continuar na próxima etapa.
-
Se o cluster do Valkey (modo cluster desabilitado) tiver nós de réplica, você poderá encontrar seus endpoints dos nós de réplica escolhendo o nome do cluster e escolhendo a guia Nodes (Nós).
A tela de nós aparece com cada nó do cluster, primário e réplicas, listados com seu respectivo endpoint.
Endpoints de nó para um cluster do Valkey (modo cluster desabilitado)
-
Como copiar um endpoint para a área de transferência:
-
Um endpoint por vez, localize o endpoint que você deseja copiar.
-
Escolha o ícone de cópia diretamente na frente do endpoint.
O endpoint agora é copiado para a área de transferência. Para obter informações sobre como usar o endpoint para se conectar a um nó, consulte Conexão a nós.
-
Um endpoint primário do Valkey (modo cluster desabilitado) se assemelha ao seguinte. Há uma diferença, dependendo de a criptografia em trânsito estar ou não habilitada.
Criptografia em trânsito não habilitada
clusterName.xxxxxx
.nodeId
.regionAndAz
.cache.amazonaws.com:port
redis-01.7abc2d.0001.usw2.cache.amazonaws.com:6379
Criptografia em trânsito habilitada
master.clusterName
.xxxxxx
.regionAndAz
.cache.amazonaws.com:port
master.ncit.ameaqx.use1.cache.amazonaws.com:6379
Para explorar mais sobre como ocalizar os endpoints, consulte os tópicos relevantes para o tipo de mecanismo e de cluster que você está executando.
Agora que você tem o endpoint de que precisa, pode fazer login em uma EC2 instância e se conectar ao cluster ou ao grupo de replicação. No exemplo a seguir, você usa o utilitário valkey-cli para se conectar a um cluster. A versão mais recente do valkey-cli também oferece suporte a clusters habilitados. SSL/TLS for connecting encryption/authentication
O exemplo a seguir usa EC2 instâncias da Amazon executando o Amazon Linux e o Amazon Linux 2. Para obter detalhes sobre como instalar e compilar a valkey-cli com outras distribuições Linux, consulte a documentação do seu sistema operacional específico.
nota
Este processo abrange o teste de uma conexão usando o utilitário valkey-cli somente para uso não planejado. Para obter uma lista dos clientes de Valkey e Redis OSS compatíveis, consulte a Documentação do Valkey
Conexão a um cluster não criptografado com modo cluster desabilitado
Execute o comando a seguir para se conectar ao cluster
primary-endpoint
e substituí-loport number
com o endpoint do seu cluster e o número da sua porta. (A porta padrão para o Valkey ou Redis OSS é 6379.)src/valkey-cli -h
primary-endpoint
-pport number
O resultado em um prompt de comando do Valkey ou Redis OSS é semelhante ao seguinte:
primary-endpoint
:port number
Agora você pode executar comandos do Valkey ou Redis OSS.
set x Hello OK get x "Hello"
Conectar a um cluster não criptografado com modo cluster habilitado
Execute o comando a seguir para se conectar ao cluster
configuration-endpoint
e substituí-loport number
com o endpoint do seu cluster e o número da sua porta. (A porta padrão para o Valkey ou Redis OSS é 6379.)src/valkey-cli -h
configuration-endpoint
-c -pport number
nota
No comando anterior, a opção -c habilita o modo cluster em seguida aos redirecionamentos -ASK e -MOVED
. O resultado em um prompt de comando do Valkey ou Redis OSS é semelhante ao seguinte:
configuration-endpoint
:port number
Agora você pode executar comandos do Valkey ou Redis OSS. Observe que o redirecionamento ocorre porque você o habilitou usando a opção -c. Se o redirecionamento não estiver habilitado, o comando retornará o erro MOVED. Para obter mais informações sobre o erro MOVED, consulte Especificação do cluster do Redis OSS
. set x Hi -> Redirected to slot [16287] located at 172.31.28.122:6379 OK set y Hello OK get y "Hello" set z Bye -> Redirected to slot [8157] located at 172.31.9.201:6379 OK get z "Bye" get x -> Redirected to slot [16287] located at 172.31.28.122:6379 "Hi"
Conexão a um cluster com criptografia/autenticação habilitada
Por padrão, a valkey-cli usa uma conexão TCP não criptografada ao se conectar ao Valkey ou Redis OSS. A opção BUILD_TLS=yes
habilita o SSL/TLS no momento da compilação da valkey-cli, conforme mostrado na seção Baixar e configurar o acesso à linha de comando. A ativação do AUTH é opcional. No entanto, você deve habilitar a criptografia em trânsito para habilitar o AUTH. Para obter mais detalhes sobre ElastiCache criptografia e autenticação, consulteElastiCache criptografia em trânsito (TLS).
nota
Você pode usar a opção --tls
com a valkey-cli para se conectar a clusters criptografados com modo cluster habilitado e desabilitado. Se um cluster tiver um conjunto de tokens AUTH, você poderá usar a opção -a
para fornecer uma senha do AUTH.
Nos exemplos a seguir, certifique-se de substituir cluster-endpoint
e port number
com o endpoint do seu cluster e o número da sua porta. (A porta padrão para o Valkey ou Redis OSS é 6379.)
Conexão a clusters criptografados com modo cluster desabilitado
O exemplo a seguir conecta a um cluster habilitado para criptografia e autenticação:
src/valkey-cli -h
cluster-endpoint
--tls -ayour-password
-pport number
O exemplo a seguir conecta a um cluster somente habilitado para criptografia:
src/valkey-cli -h
cluster-endpoint
--tls -pport number
Conexão a clusters criptografados com modo cluster habilitado
O exemplo a seguir conecta a um cluster habilitado para criptografia e autenticação:
src/valkey-cli -c -h
cluster-endpoint
--tls -ayour-password
-pport number
O exemplo a seguir conecta a um cluster somente habilitado para criptografia:
src/valkey-cli -c -h
cluster-endpoint
--tls -pport number
Depois de se conectar ao cluster, você poderá executar os comandos do Valkey ou Redis OSS, conforme mostrado nos exemplos anteriores para clusters não criptografados.
Alternativa com valkey-cli
Se o cluster não estiver habilitado para o modo cluster e você precisar fazer uma conexão com o cluster para um teste curto, mas sem passar pela compilação da valkey-cli, você pode usar telnet ou openssl. Nos comandos de exemplo a seguir, certifique-se de substituir cluster-endpoint
e port number
com o endpoint do seu cluster e o número da sua porta. (A porta padrão para o Valkey ou Redis OSS é 6379.)
O exemplo a seguir conecta a um cluster habilitado para criptografia e/ou autenticação com modo cluster desabilitado:
openssl s_client -connect
cluster-endpoint
:port number
Se o cluster tiver uma senha definida, conecte-se primeiro ao cluster. Após a conexão, autentique o cluster usando o seguinte comando, depois pressione a tecla Enter
. No exemplo a seguir, your-password
substitua pela senha do seu cluster.
Auth
your-password
O exemplo a seguir conecta a um cluster com modo cluster desabilitado que não tenha criptografia ou autenticação habilitada:
telnet
cluster-endpoint
port number
Para se conectar ao cluster Valkey ou Redis OSS a partir de uma instância do EC2 Windows usando a CLI Valkey ou a CLI do Redis OSS, você deve baixar o pacote valkey-cli e usar o valkey-cli.exe para se conectar ao cluster Valkey ou Redis OSS a partir de uma instância do Windows. EC2
No exemplo a seguir, use o utilitário valkey-cli para se conectar a um cluster que não está habilitado para criptografia e que está executando o Valkey ou Redis OSS. Para obter mais informações sobre o Valkey ou Redis OSS e os comandos disponíveis, consulte Comandos do Valkey ou Redis OSS
Para se conectar a um cluster do Valkey ou Redis OSS não habilitado para criptografia usando o valkey-cli
-
Conecte-se à sua EC2 instância da Amazon usando o utilitário de conexão de sua escolha. Para obter instruções sobre como se conectar a uma EC2 instância da Amazon, consulte o Amazon EC2 Getting Started Guide.
Copie e cole o link https://github.com/microsoftarchive/redis/releases/download/win-3.0.504/Redis-x64-3.0.504.zip
em um navegador da Internet para baixar o arquivo zip para o cliente Valkey a partir da versão disponível em GitHub https://github.com/microsoftarchive/redis/releases/tag/win-3.0.504 Extraia o arquivo zip para a pasta/caminho desejado.
Abra o prompt de comando, mude para o diretório do Valkey e execute o comando
c:\Valkey>valkey-cli -h
.Redis_Cluster_Endpoint
-p 6379Por exemplo:
c:\Valkey>valkey-cli -h cmd.xxxxxxx.ng.0001.usw2.cache.amazonaws.com -p 6379
-
Execute os comandos Valkey ou Redis OSS.
Agora, você está conectado ao cluster e pode executar comandos Valkey ou Redis OSS como os seguintes.
set a "hello"
// Set key "a" with a string value and no expiration OKget a
// Get value for key "a" "hello"get b
// Get value for key "b" results in miss (nil)set b "Good-bye" EX 5
// Set key "b" with a string value and a 5 second expiration "Good-bye"get b
// Get value for key "b" "Good-bye" // wait >= 5 secondsget b
(nil) // key has expired, nothing returnedquit
// Exit from valkey-cli
O que faço agora?
Agora que você experimentou o exercício de introdução, pode explorar as seções a seguir para saber mais sobre ElastiCache as ferramentas disponíveis:
Depois de concluir o exercício de introdução, você pode ler estas seções para saber mais sobre ElastiCache administração:
-
Você quer que seu cache seja grande o suficiente para acomodar todos os dados que deseja armazenar em cache. Ao mesmo tempo, você não quer pagar mais cache do que precisa. Use este tópico para ajudá-lo a escolher o melhor tamanho de nó.
-
ElastiCache melhores práticas e estratégias de armazenamento em cache
Identifique e lide com os problemas que podem afetar a eficiência de seu cluster.