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 (RedisOSS)
A seguir estão as ações únicas que você deve realizar para criar seu próprio cluster ElastiCache (RedisOSS).
Para obter mais informações sobre a configuração, ElastiCache consulteConfigurando ElastiCache.
Tópicos
Etapa 1: criar um grupo de sub-redes
Antes de criar seu cluster, crie primeiro um grupo de sub-redes. Um grupo de sub-redes de cache é uma coleção de sub-redes que você pode querer designar para seus clusters de cache em um. VPC Ao iniciar um cluster de cache em umVPC, você precisa 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.
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 VPCID, escolha a Amazon VPC que você criou.
-
Nas listas Availability Zone (Zona de disponibilidade) e Subnet ID (ID da sub-rede), escolha a zona de disponibilidade ou a Local Zone (Zona local) e o ID da sub-rede privada, e depois escolha Add (Adicionar).
-
-
Na mensagem de confirmação exibida, escolha 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 é lançado em uma nuvem privada virtual (VPC) com base no VPC serviço da Amazon.
Criação de um cluster Redis OSS (modo de cluster desativado) (console)
Para criar um cluster Redis OSS (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 Criar VPC e siga as etapas descritas em Criação de uma nuvem privada virtual (VPC).
Na página do ElastiCache painel, escolha Valkey cache ou Redis OSS cache. Para este exercício, escolheremos o OSScache do Redis e, em seguida, escolheremos Criar cache do Redis OSS.
-
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 ter mais informações, consulte Etapa 3. Autorizar o acesso ao cluster e Etapa 4. Conecte-se ao nó do 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.
exemplo
O CLI código a seguir cria um cluster de cache Redis OSS (modo de cluster desativado) sem réplicas.
Para Linux, macOS ou Unix:
aws elasticache create-cache-cluster \ --cache-cluster-id
my-cluster
\ --cache-node-typecache.r4.large
\ --engineredis
\ --num-cache-nodes1
\ --snapshot-arnsarn:aws:s3:::my_bucket/snapshot.rdb
Para Windows:
aws elasticache create-cache-cluster ^ --cache-cluster-id
my-cluster
^ --cache-node-typecache.r4.large
^ --engineredis
^ --num-cache-nodes1
^ --snapshot-arnsarn:aws:s3:::my_bucket/snapshot.rdb
Para trabalhar com o modo de cluster habilitado, consulte os seguintes tópicos:
Para usar o console, consulte Criação de um cluster Valkey ou Redis OSS (modo de cluster ativado) (console).
Para usar o AWS CLI, consulteCriando um cluster Valkey ou Redis OSS (modo de cluster ativado) ()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 (AmazonVPC), 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. As etapas necessárias dependem de você ter lançado seu cluster no EC2 - VPC ou no EC2 -Classic.
O caso de uso mais comum é quando um aplicativo implantado em uma EC2 instância precisa se conectar a um cluster na mesmaVPC. A maneira mais simples de gerenciar o acesso entre EC2 instâncias e clusters da mesma forma VPC é fazer o seguinte:
-
Crie um grupo VPC de segurança para seu cluster. Esse security group pode ser usado para restringir o acesso às instâncias do cluster. Por exemplo, você pode criar uma regra personalizada para esse grupo de segurança que permita o TCP acesso usando a porta que você atribuiu ao cluster quando o criou e um endereço IP que você usará para acessar o cluster.
A porta padrão para OSS clusters e grupos de replicação do Redis é.
6379
Importante
Os grupos ElastiCache de segurança da Amazon são aplicáveis somente aos clusters que não estão sendo executados em um ambiente da 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 AmazonVPC, você controla o acesso aos seus clusters com grupos de VPC segurança da Amazon, que são diferentes dos grupos de ElastiCache segurança. Para obter mais informações sobre o uso ElastiCache em uma AmazonVPC, consulte Amazon VPCs e ElastiCache segurança
-
Crie um grupo VPC de segurança 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 VPC da tabela de roteamento. Por exemplo, você pode definir regras nesse grupo de segurança para permitir o TCP acesso à 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ê planeja usarUsando zonas locais com ElastiCache, certifique-se de tê-los habilitado. Quando você cria um grupo de sub-redes nessa zona local, ele VPC é estendido para essa zona local e você 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 VPC de segurança que permita conexões de outro grupo de segurança
-
Faça login no AWS Management Console e abra o VPC console da Amazon em https://console.aws.amazon.com/vpc
. -
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 TCPRegra personalizada.
-
Para Port Range, especifique a porta que você usou quando criou seu cluster.
A porta padrão para OSS clusters e grupos de replicação do Redis é.
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 diferenteVPC, de uma AWS região diferente ou até mesmo de sua rede corporativa, consulte o seguinte:
Etapa 4: conexão ao nó do 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.
Encontrando os endpoints de um cluster Valkey ou Redis OSS (modo de cluster desativado) (console)
Se um cluster Redis OSS (modo de cluster desativado) tiver somente um nó, o endpoint do nó será usado para leituras e 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 DNS nome 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 (Redis). OSS 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 cluster ElastiCache (RedisOSS) 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 DNS registro que será resolvido para um endereço IP de um dos nós de réplica de forma redonda.
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 encontrar os endpoints de um cluster Redis OSS (modo de cluster desativado)
-
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 Redis OSS.
A tela de clusters aparecerá com uma lista que incluirá todos os caches OSS sem servidor Valkey ou Redis existentes, clusters Redis (modo de cluster desativado) e clusters Redis OSS (modo de cluster ativado). OSS Selecione o cluster que você criou na seção Criação de um cluster Redis OSS (modo de cluster desativado) (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 Reader para um cluster Redis OSS (modo de cluster desativado)
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 Redis OSS (modo de cluster desativado) tiver nós de réplica, você poderá encontrar os endpoints do nó de réplica do cluster escolhendo o nome do cluster e, em seguida, escolhendo a guia Nodes.
A tela de nós aparece com cada nó do cluster, primário e réplicas, listados com seu respectivo endpoint.
Endpoints de nós para um cluster Redis OSS (modo de cluster desativado)
-
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 Redis OSS (modo de cluster desativado) se parece com o 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 suportaSSL/TLSpara conectar clusters habilitados para criptografia/autenticação.
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 o valkey-cli com outras distribuições Linux, consulte a documentação do seu sistema operacional específico.
nota
Esse processo abrange o teste de uma conexão usando o utilitário valkey-cli somente para uso não planejado. Para obter uma lista de clientes 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 e substituir
primary-endpoint
eport number
com o endpoint do seu cluster e o número da porta. (A porta padrão para Valkey e Redis OSS é 6379.)src/valkey-cli -h
primary-endpoint
-pport number
O resultado em um prompt de comando é semelhante ao seguinte:
primary-endpoint
:port number
Agora você pode executar os comandos Valkey e RedisOSS.
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 e substituir
configuration-endpoint
eport number
com o endpoint do seu cluster e o número da porta. (A porta padrão para Valkey e Redis OSS é 6379.)src/valkey-cli -h
configuration-endpoint
-c -pport number
nota
No comando anterior, a opção -c ativa o modo de cluster seguindo os redirecionamentos - ASK e - MOVED
. O resultado em um prompt de comando é semelhante ao seguinte:
configuration-endpoint
:port number
Agora você pode executar os comandos Valkey e RedisOSS. Observe que o redirecionamento ocorre porque você o habilitou usando a opção -c. Se o redirecionamento não estiver ativado, o comando retornará o MOVED erro. Para obter mais informações sobre o MOVED erro, consulte a especificação do cluster
. 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, o valkey-cli usa uma TCP conexão não criptografada ao se conectar ao Valkey e ao Redis. OSS A opção BUILD_TLS=yes
habilitaSSL/TLSno momento da compilação do valkey-cli, conforme mostrado na seção anterior. Baixe e configure o acesso à linha de comando A ativação AUTH é opcional. No entanto, você deve habilitar a criptografia em trânsito para AUTH habilitar. 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 valkey-cli para se conectar aos clusters criptografados ativados e desativados no modo de cluster. Se um cluster tiver um conjunto de AUTH tokens, você poderá usar a opção -a
de fornecer uma AUTH senha.
Nos exemplos a seguir, certifique-se de substituir cluster-endpoint
e port number
com o endpoint do seu cluster e o número da porta. (A porta padrão para 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ê pode executar os OSS comandos Valkey ou Redis, conforme mostrado nos exemplos anteriores para clusters não criptografados.
Uma alternativa ao valkey-cli ou ao Redis-cli
Se o cluster não estiver habilitado no modo cluster e você precisar fazer uma conexão com o cluster para um breve teste, mas sem passar pela compilação valkey-cli ou redis-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 porta. (A porta padrão para 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, substitua your-password
com a 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 a partir de uma instância do EC2 Windows usando o Valkey ou o Redis OSSCLI, você deve baixar o pacote valkey-cli e usar o valkey-cli.exe para se conectar ao cluster Valkey ou Redis a partir de uma instância do Windows. OSS EC2
No exemplo a seguir, você usa o utilitário valkey-cli para se conectar a um cluster que não tem criptografia habilitada e está executando Valkey ou Redis. OSS Para obter mais informações sobre o Valkey e os comandos disponíveis, consulte Comandos do Valkey no site
Para se conectar a um OSS cluster Valkey ou Redis que não esteja habilitado para criptografia usando 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 OSS cliente Redis 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, vá para o diretório Valkey e execute o comando
c:\Valkey>valkey-cli -h
.Valkey_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 RedisOSS.
Agora você está conectado ao cluster e pode executar OSS comandos Valkey ou Redis 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