

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á.

# Criação e gerenciamento de um cluster baseado em nós ElastiCache
<a name="designing-elasticache-cluster"></a>

Se você precisar de um controle refinado sobre seu ElastiCache cluster, poderá criar um cluster baseado em nós. ElastiCache permite que você opere um cluster baseado em nós escolhendo o tipo de nó, o número de nós e o posicionamento dos nós nas zonas de AWS disponibilidade do seu cluster. Como ElastiCache é um serviço totalmente gerenciado, ele gerencia automaticamente o provisionamento de hardware, o monitoramento, as substituições de nós e a aplicação de patches de software para seu cluster.

Para obter informações sobre como configurar, consulte [Conf ElastiCacheiguração](set-up.md). Para obter detalhes sobre como gerenciar, atualizar ou excluir nós ou clusters, consulte [Gerenciamento de nós no ElastiCache](CacheNodes.md). Para uma visão geral dos principais componentes de uma ElastiCache implantação da Amazon ao criar um ElastiCache cluster baseado em nós, consulte esses [conceitos-chave](WhatIs.corecomponents.md). 

**Topics**
+ [ElastiCache componentes e recursos](WhatIs.Components.md)
+ [ElastiCache terminologia](WhatIs.Terms.md)
+ [Tutorial: Como criar um cluster baseado em nós ElastiCache](SubnetGroups.designing-cluster-pre.md)
+ [Excluir um cluster](Clusters.Delete-gs.redis.md)
+ [Outros tutoriais e vídeos do ElastiCache](Tutorials.md)
+ [Gerenciamento de nós no ElastiCache](CacheNodes.md)
+ [Gerenciamento de clusters no ElastiCache](Clusters.md)
+ [Comparação de clusters Valkey, Memcached e Redis OSS baseados em nós](SelectEngine.md)
+ [Migração on-line para o Valkey ou Redis OSS](OnlineMigration.md)
+ [Seleção de regiões e zonas de disponibilidade para o ElastiCache](RegionsAndAZs.md)

# ElastiCache componentes e recursos
<a name="WhatIs.Components"></a>

A seguir, você encontrará uma visão geral dos principais componentes de uma ElastiCache implantação da Amazon.

**Topics**
+ [ElastiCache nós](#WhatIs.Components.Nodes)
+ [ElastiCache cacos](#WhatIs.Components.Shards)
+ [ElastiCache aglomerados](#WhatIs.Components.Clusters)
+ [ElastiCache replicação](#WhatIs.Components.ReplicationGroups)
+ [ElastiCache endpoints](#WhatIs.Components.Endpoints)
+ [ElastiCache grupos de parâmetros](#WhatIs.Components.ParameterGroups)
+ [ElastiCache segurança](#WhatIs.Components.Security)
+ [ElastiCache grupos de sub-redes](#WhatIs.Components.SubnetGroups)
+ [ElastiCache backups](#WhatIs.Components.Snapshots)
+ [ElastiCache eventos](#WhatIs.Components.Events)

## ElastiCache nós
<a name="WhatIs.Components.Nodes"></a>

Um *nó* é o menor componente de uma ElastiCache implantação. Um nó pode existir isoladamente ou em algum relacionamento com outros nós.

Um nó é um bloco de tamanho fixo da RAM em armazenamento anexado a rede seguro. Cada nó executa uma instância do mecanismo e da versão escolhidos ao criar o cluster. Se necessário, você pode expandir ou reduzir os nós em um cluster para um tipo de instância diferente. Para obter mais informações, consulte [Dimensionamento ElastiCache](Scaling.md).

Cada nó dentro de um cluster é do mesmo tipo de instância e executa o mesmo mecanismo de cache. Cada nó de cache possui seu próprio nome DNS (Serviço de Nomes de Domínio) e porta. Vários tipos de nós de cache são suportados, cada um com quantidades diversificadas de memória associada. Para obter uma lista dos tipos de instâncias de nó, consulte [Tipos de nó compatíveis](CacheNodes.SupportedTypes.md).

Você pode comprar nós em uma pay-as-you-go base, pagando apenas pelo uso de um nó. Ou você pode comprar nós reservados a uma taxa por hora bastante reduzida. Se a sua taxa de uso for alta, a compra de nós reservados poderá economizar dinheiro. Suponha que seu cluster está quase sempre em uso e você ocasionalmente adiciona nós para lidar com picos de uso. Nesse caso, você pode comprar uma série de nós reservados para execução na maior parte do tempo. Em seguida, você pode comprar pay-as-you-go nós nos momentos em que precisar adicionar nós ocasionalmente. Para obter mais informações sobre nós reservados, consulte [Nós reservados](CacheNodes.Reserved.md).

Para obter mais informações sobre nós, consulte [Gerenciamento de nós no ElastiCache](CacheNodes.md).

## ElastiCache cacos
<a name="WhatIs.Components.Shards"></a>

Um *fragmento* do Valkey ou Redis OSS (chamado de *grupo de nós* na API e na CLI) é um agrupamento de um a seis nós relacionados. Um cluster do Valkey ou Redis OSS com modo de cluster habilitado sempre tem pelo menos um fragmento.

A fragmentação é um método de particionamento de banco de dados que separa grandes bancos de dados em partes menores, mais rápidas e mais fáceis de gerenciar, chamadas fragmentos de dados. Isso pode aumentar a eficiência do banco de dados distribuindo as operações em várias seções separadas. O uso de fragmentos pode oferecer muitos benefícios, incluindo melhor desempenho, escalabilidade e eficiência de custos.

 Os clusters Valkey e Redis OSS com o modo de cluster habilitado podem ter até 500 fragmentos, com seus dados particionados entre os fragmentos. O limite de nó ou fragmento pode ser aumentado para um máximo de 500 por cluster se a versão do mecanismo Valkey ou Redis OSS for 5.0.6 ou posterior. Por exemplo, você pode optar por configurar um cluster de 500 nós que varia entre 83 fragmentos (uma primária e 5 réplicas por fragmento) e 500 fragmentos (primário único e sem réplicas). Verifique se existem endereços IP disponíveis suficientes para acomodar o aumento. As armadilhas comuns incluem as sub-redes no grupo de sub-redes têm um intervalo CIDR muito pequeno ou as sub-redes são compartilhadas e fortemente usadas por outros clusters. Para obter mais informações, consulte [Criação de um grupo de sub-redes](SubnetGroups.Creating.md). Para versões abaixo de 5.0.6, o limite é 250 por cluster.

Para solicitar um aumento de limite, consulte [Limites de serviço da AWS](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) e selecione o tipo de limite **Nodes per cluster per instance type** (Nós por cluster por tipo de instância). 

Um *fragmento de vários nós* implementa a replicação por ter um nó primário de leitura/gravação e de 1 a 5 nós de réplicas. Para obter mais informações, consulte [Alta disponibilidade com o uso de grupos de replicação](Replication.md).

Para obter mais informações sobre fragmentos, consulte [Operação com fragmentos no ElastiCache](Shards.md).

## ElastiCache aglomerados
<a name="WhatIs.Components.Clusters"></a>

Um *cluster* é um agrupamento lógico de um ou mais [nós](CacheNodes.md). Os dados são particionados entre os nós em um cluster Memcached e entre os fragmentos em um cluster Valkey ou Redis OSS que tem o modo de cluster habilitado.

Muitas ElastiCache operações são direcionadas a clusters:
+ Criação de um cluster
+ Modificar um cluster
+ Tirar snapshots de um cluster (todas as versões do Redis)
+ Excluir um cluster
+ Visualizar os elementos em um cluster
+ Adicionar ou remover tags de alocação de custos para e de um cluster

Para obter informações mais detalhadas, consulte os seguintes tópicos relacionados:
+ [Gerenciamento de clusters no ElastiCache](Clusters.md) e [Gerenciamento de nós no ElastiCache](CacheNodes.md)

  Informações sobre clusters, nós e operações relacionadas.
+ [AWS limites de serviço: Amazon ElastiCache](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_elasticache)

  Informações sobre ElastiCache limites, como o número máximo de nós ou clusters. Para exceder alguns desses limites, você pode fazer uma solicitação usando o [formulário de solicitação de nós de ElastiCache cache da Amazon](https://aws.amazon.com/contact-us/elasticache-node-limit-request/).
+ [Atenuar falhas](disaster-recovery-resiliency.md#FaultTolerance)

  Informações sobre como melhorar a tolerância a falhas dos seus clusters e grupos de replicação Valkey ou Redis OSS.

### Configurações de cluster típicas
<a name="WhatIs.Components.Clusters.TypicalConfigurations"></a>

Veja a seguir configurações de cluster típicas.

#### Clusters Valkey ou Redis OSS
<a name="WhatIs.Components.Clusters.TypicalConfigurations.Redis"></a>

 Os clusters Valkey ou Redis OSS com o modo de cluster desabilitado sempre contêm apenas um fragmento (na API e na CLI, um grupo de nós). Um fragmento Valkey ou Redis OSS contém de um a seis nós. Se houver mais de um nó em um fragmento, este oferecerá suporte para a replicação. Nesse caso, um nó é o nó read/write primário e os outros são nós de réplica somente para leitura.

Para melhorar a tolerância a falhas, recomendamos ter pelo menos dois nós em um cluster do Valkey ou Redis OSS e habilitar o Multi-AZ. Para obter mais informações, consulte [Atenuar falhas](disaster-recovery-resiliency.md#FaultTolerance).

Conforme a demanda do seu cluster Valkey ou Redis OSS muda, você pode diminuir ou aumentar a escala verticalmente. Para fazer isso, mova seu cluster para um tipo de instância de nó diferente. Se sua aplicação exigir muita leitura, recomendamos adicionar réplicas somente leitura ao cluster. Ao fazer isso, você pode distribuir as leituras entre um número mais apropriado de nós.

Você também pode usar a classificação de dados em níveis. Os dados acessados mais frequentemente são armazenados em memória e os dados acessados menos frequentemente são armazenados em disco. A vantagem de usar a classificação de dados em níveis é que ela diminui os requisitos de memória. Para obter mais informações, consulte [Classificação de dados em níveis no ElastiCache](data-tiering.md).

ElastiCache suporta a alteração dinâmica do tipo de nó de um cluster Valkey ou Redis OSS para um tipo de nó maior. Para obter informações sobre como expandir ou reduzir a escala, consulte [Escalonamento para Valkey ou Redis OSS (modo cluster desabilitado)](scaling-redis-classic.md#Scaling.RedisStandalone) ou [Escalar nós de réplica para Valkey ou Redis OSS (modo cluster desativado)](Scaling.RedisReplGrps.md).

#### Configurações de cluster típicas para Memcached
<a name="WhatIs.Components.Clusters.TypicalConfigurations"></a>

O Memcached suporta até 300 nós por cliente em cada AWS região, com cada cluster tendo de 1 a 60 nós. Você pode particionar seus dados entre os nós em um cluster Memcached.

Quando você executa o mecanismo do Memcached, os clusters podem ser formados por de 1 a 60 nós. Você particiona seu banco de dados entre os nós. Seu aplicativo lê e grava no endpoint de cada nó. Para obter mais informações consulte [Descoberta automática](AutoDiscovery.md).

Para melhorar a tolerância a falhas, localize seus nós do Memcached em várias zonas de disponibilidade (AZs) dentro da região do AWS cluster. Dessa forma, uma falha em uma AZ terá um impacto mínimo em todo o seu cluster e no aplicativo. Para obter mais informações, consulte [Atenuar falhas](disaster-recovery-resiliency.md#FaultTolerance).

À medida que a demanda em seu cluster Memcached mudar, você poderá expandir ou reduzir adicionando ou removendo nós, e isso reparticiona seus dados entre o novo número de nós. Ao particionar seus dados, recomendamos usar o hashing consistente. Para obter mais informações sobre o hashing consistente, consulte [Configurando seu ElastiCache cliente para balanceamento de carga eficiente (Memcached)](BestPractices.LoadBalancing.md).

## ElastiCache replicação
<a name="WhatIs.Components.ReplicationGroups"></a>

Para o Valkey e Redis OSS, a replicação é implementada agrupando de dois a seis nós em um fragmento (na API e CLI, chamado de grupo de nós). Um desses nós é o nó primário de leitura/gravação. Todos os outros nós são nós de réplica somente leitura. As replicações estão disponíveis somente ElastiCache para Valkey e Redis OSS, e não para Memcached. ElastiCache 

Cada nó réplica mantém uma cópia dos dados do nó primário do cluster. Os nós de réplica usam mecanismos de replicação assíncronos para se manterem sincronizados com o nó primário. Os aplicativos podem ler de qualquer nó no cluster, mas podem gravar apenas em nós primários. As réplicas de leitura aumentam a escalabilidade, distribuindo as leituras entre vários endpoints. As réplicas de leitura também melhoram a tolerância a falhas, mantendo várias cópias dos dados. Localizar réplicas de leitura em várias zonas de disponibilidade melhora ainda mais a tolerância a falhas. Para obter mais informações sobre a tolerância a falhas, consulte [Atenuar falhas](disaster-recovery-resiliency.md#FaultTolerance).

 Os clusters Valkey ou Redis OSS oferecem suporte para um único fragmento (na API e CLI, chamado de *grupo de nós*).

A replicação sob a perspectiva da API e da CLI usa uma terminologia diferente para manter a compatibilidade com as versões anteriores, mas os resultados são os mesmos. A tabela a seguir mostra os termos da API e da CLI para implementar a replicação.

**Comparando replicação: Valkey ou Redis OSS (modo cluster desabilitado) e Valkey ou Redis OSS (modo cluster habilitado)--> Cluster Valkey ou Redis OSS com modo cluster habilitado vs. Cluster Valkey ou Redis OSS com modo cluster desabilitado**

Na tabela a seguir, você pode encontrar uma comparação dos recursos dos grupos de replicação Valkey ou Redis OSS (modo cluster desabilitado) e Valkey ou Redis OSS (modo cluster habilitado).


****  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/WhatIs.Components.html)

Todos os fragmentos (na API e CLI, grupos de nós) e grupos de nós devem residir na mesma região da AWS. No entanto, você pode provisionar os nós individuais em várias zonas de disponibilidade dentro dessa AWS região. 

Réplicas de leitura protegem contra a perda de dados em potencial, pois seus dados são replicados em dois ou mais nós: o primário e uma ou mais réplicas de leitura. Para maior confiabilidade e recuperação mais rápida, recomendamos que você crie uma ou mais réplicas de leitura em diferentes zonas de disponibilidade.

Você também pode aproveitar os datastores globais. Ao usar o recurso Global Datastore for Redis OSS, você pode trabalhar com replicação totalmente gerenciada, rápida, confiável e segura em todas as regiões.AWS Usando esse recurso, você pode criar clusters de réplicas de leitura entre regiões ElastiCache para permitir leituras de baixa latência e recuperação de desastres em todas as regiões.AWS Para obter mais informações, consulte [Replicação entre AWS regiões usando armazenamentos de dados globais](Redis-Global-Datastore.md).

**Replicação: limites e exclusões**
+ O Multi-AZ não tem suporte em tipos de nó T1.

## ElastiCache endpoints
<a name="WhatIs.Components.Endpoints"></a>

Um *endpoint* é o endereço exclusivo que seu aplicativo usa para se conectar a um ElastiCache nó ou cluster.

### Endpoints de nó único para Valkey ou Redis OSS com modo de cluster desabilitado
<a name="WhatIs.Components.Endpoints.Redis"></a>

O endpoint para um cluster Valkey ou Redis OSS de nó único é usado para se conectar ao cluster para leituras e gravações.

### Endpoints de vários nós para Valkey ou Redis OSS com modo de cluster desabilitado
<a name="WhatIs.Components.Endpoints.Redis.Multi"></a>

Um cluster Valkey ou Redis OSS de vários nós com modo de cluster desabilitado tem dois tipos de endpoints. O endpoint primário sempre se conecta ao nó primário no cluster, mesmo que o nó específico na função primária mude. Use o endpoint primário para todas as gravações no cluster.

Use o Endpoint de leitor para dividir uniformemente as conexões de entrada no endpoint entre todas as réplicas de leitura. Use os pontos finais individuais do Node para operações de leitura (neles API/CLI são chamados de pontos finais de leitura).

### Endpoints Valkey ou Redis OSS (modo cluster habilitado)
<a name="WhatIs.Components.Endpoints.Redis.Cluster"></a>

Um cluster Valkey ou Redis OSS com modo de cluster habilitado tem um único endpoint de configuração. Ao se conectar ao endpoint de configuração, a aplicação pode descobrir os endpoints primários e os endpoints de leitura para cada fragmento no cluster.

Para obter mais informações, consulte [Encontrar endpoints de conexão no ElastiCache](Endpoints.md).

### ElastiCache para endpoints Memcached
<a name="WhatIs.Components.Endpoints.Memcached"></a>

Cada nó em um cluster Memcached tem seu próprio endpoint. O cluster também possui um endpoint chamado de *endpoint de configuração*. Se você habilitar a Descoberta automática e se conectar ao endpoint de configuração, seu aplicativo *conhecerá* automaticamente cada endpoint de nó, mesmo depois de adicionar ou remover nós do cluster. Para obter mais informações consulte [Descoberta automática](AutoDiscovery.md).

Para obter mais informações, consulte [Encontrar endpoints de conexão no ElastiCache](Endpoints.md).

## ElastiCache grupos de parâmetros
<a name="WhatIs.Components.ParameterGroups"></a>

Parameter groups de cache são uma maneira fácil de gerenciar as configurações de tempo de execução do software do mecanismo com suporte. Os parâmetros são usados para controlar o uso de memória, as políticas de remoção, o tamanho dos itens e muito mais. Um grupo de ElastiCache parâmetros é uma coleção nomeada de parâmetros específicos do mecanismo que você pode aplicar a um cluster. Ao fazê-lo, você garante que todos os nós do cluster sejam configurados exatamente da mesma forma.

Para obter uma lista de parâmetros com suporte, seus valores padrão e quais podem ser modificados, consulte [DescribeEngineDefaultParameters](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeEngineDefaultParameters.html) (ILC: [describe-engine-default-parameters](https://docs.aws.amazon.com/cli/latest/reference/elasticache/describe-engine-default-parameters.html)).

Para obter informações mais detalhadas sobre grupos de ElastiCache parâmetros, consulte[Configuração de parâmetros do mecanismo usando grupos de parâmetros do ElastiCache](ParameterGroups.md).

## ElastiCache segurança
<a name="WhatIs.Components.Security"></a>

Para maior segurança, o acesso aos ElastiCache nós é restrito aos aplicativos em execução nas EC2 instâncias da Amazon que você permite. Você pode controlar as EC2 instâncias da Amazon que podem acessar seu cluster usando grupos de segurança.

Por padrão, todos os novos ElastiCache clusters são lançados em um ambiente Amazon Virtual Private Cloud (Amazon VPC). Você pode usar *grupos de sub-redes* para conceder acesso ao cluster a partir de EC2 instâncias da Amazon em execução em sub-redes específicas. 

Além de restringir o acesso ao nó, ElastiCache oferece suporte a TLS e criptografia local para nós que executam versões especificadas do. ElastiCache Para saber mais, consulte:
+ [Segurança de dados no Amazon ElastiCache](encryption.md)
+ [Autenticar com o comando AUTH do Valkey e Redis OSS](auth.md)

## ElastiCache grupos de sub-redes
<a name="WhatIs.Components.SubnetGroups"></a>

Um *grupo de sub-redes* é uma coleção de sub-redes (normalmente privadas) que você pode designar para clusters em execução em um ambiente de Amazon VPC.

Se você criar um cluster em uma VPC da Amazon, deverá especificar um grupo de sub-rede de cache. O ElastiCache usa esse grupo de sub-redes de cache para escolher uma sub-rede e endereços IP dentro dessa sub-rede para associar aos seus nós de cache.

Para obter mais informações sobre o uso de grupos de sub-redes de cache em um ambiente da Amazon VPC, consulte o seguinte:
+ [Amazon VPCs e ElastiCache segurança](VPCs.md)
+ [Etapa 3. Autorizar o acesso ao cluster](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.AuthorizeAccess.valkey)
+ [Sub-redes e grupos de sub-redes](SubnetGroups.md)

## ElastiCache backups
<a name="WhatIs.Components.Snapshots"></a>

Um *backup* é uma point-in-time cópia de um cluster OSS Valkey ou Redis ou cache sem servidor, ou um cache sem servidor Memcached. Backups podem ser usados para restaurar um cluster existente ou para propagar um novo cluster. Backups consistem em todos os dados de um cluster mais alguns metadados. 

Dependendo da versão do Valkey ou Redis OSS em execução no seu cluster, o processo de backup exige diferentes quantidades de memória reservada para ter sucesso. Para saber mais, consulte: 
+ [Snapshots e restauração](backups.md)
+ [Como a sincronização e o backup são implementados](Replication.Redis.Versions.md)
+ [Impacto sobre o desempenho dos backups de clusters baseados em nós](backups.md#backups-performance)
+ [Garantir que você tem memória suficiente para criar um snapshot do Valkey ou Redis OSS](BestPractices.BGSAVE.md)

## ElastiCache eventos
<a name="WhatIs.Components.Events"></a>

Quando eventos importantes acontecem em um cluster, ElastiCache envia uma notificação para um tópico específico do Amazon SNS. Esses eventos podem incluir fatores como falha ou êxito ao adicionar um nó, modificação de um grupo de segurança, etc. Ao monitorar eventos importantes, você pode se manter informado sobre o estado atual de seus clusters e, em vários casos, executar a ação corretiva.

Para obter mais informações sobre ElastiCache eventos, consulte[Monitoramento de eventos do ElastiCache pelo Amazon SNS](ECEvents.md).

# ElastiCache terminologia
<a name="WhatIs.Terms"></a>

Em outubro de 2016, a Amazon ElastiCache lançou o suporte para o Redis OSS 3.2. Nesse ponto, adicionamos suporte para particionar seus dados em até 500 fragmentos (chamados de grupos de nós na ElastiCache API e).AWS CLI Para preservar a compatibilidade com as versões anteriores, ampliamos as operações da API versão 2015-02-02 para incluir a nova funcionalidade do Redis OSS. 

Ao mesmo tempo, começamos a usar a terminologia no ElastiCache console que é usada nessa nova funcionalidade e é comum em todo o setor. Essas mudanças significam que, em alguns pontos, a terminologia usada na API e na CLI pode ser diferente da terminologia usada no console. A lista a seguir identifica termos que podem diferir entre a API e a CLI e o console.

**Cluster ou nó de cache vs. nó**  
Há uma one-to-one relação entre um nó e um cluster quando não há nós de réplica. Assim, o ElastiCache console costumava usar os termos de forma intercambiável. O console agora usa apenas o termo *nó*. A única exceção é o botão **Create Cluster**, que executa o processo para criar um cluster com ou sem nós de réplica.  
A ElastiCache API e AWS CLI continue usando os termos como usavam no passado.

**Cluster versus grupo de replicação do Valkey ou Redis OSS**  
O console agora usa o termo *cluster* ElastiCache para todos os clusters Redis OSS. O console usa o termo Cluster em todas essas circunstâncias:   
+ Quando o cluster é um cluster Valkey ou Redis OSS de nó único.
+ Quando o cluster é um do Valkey ou Redis OSS (modo cluster desabilitado) com suporte para replicação dentro de um único fragmento (na API e CLI, chamado de *grupo de nós*).
+ Quando o cluster é um do Valkey ou Redis (modo cluster habilitado) que oferece suporte à replicação em 1-90 fragmentos ou até 500 com uma solicitação de aumento de limite. Para solicitar um aumento de limite, consulte [Limites do serviço da AWS](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) e escolha o tipo de limite **Nodes per cluster per instance type** (Nós por cluster por tipo de instância). 
Para obter mais informações sobre grupos de replicação do Valkey ou do Redis OSS, consulte [Alta disponibilidade com o uso de grupos de replicação](Replication.md).  
O diagrama a seguir ilustra as várias topologias dos ElastiCache clusters OSS do Redis a partir da perspectiva do console.  

![\[Imagem: ElastiCache clusters (visualização do console)\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-Clusters-ConsoleView.png)

A ElastiCache API e AWS CLI as operações ainda distinguem um único nó ElastiCache para clusters Redis OSS de grupos de replicação Valkey ou Redis OSS de vários nós. O diagrama a seguir ilustra as várias ElastiCache topologias do Redis OSS a partir da API e da ElastiCache perspectiva.AWS CLI  

![\[Imagem: ElastiCache para cluster Redis OSS e grupos de replicação Valkey ou Redis OSS (visualização de API e CLI)\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-Clusters-APIView.png)


**Grupo de replicação do Valkey ou do Redis OSS versus datastore global**  
Um datastore global é uma coleção de um ou mais clusters que são replicados entre regiões, enquanto um grupo de replicação do Valkey ou Redis OSS replica dados em um cluster habilitado para modo cluster com vários fragmentos. Um datastore global consiste no seguinte:  
+ **Cluster primário (ativo)**: um cluster primário aceita gravações que são replicadas para todos os clusters dentro do datastore global. Um cluster primário também aceita solicitações de leitura. 
+ **Cluster secundário (passivo)**: um cluster secundário só aceita solicitações de leitura e replica as atualizações de dados de um cluster primário. Um cluster secundário precisa estar em uma AWS região diferente do cluster primário. 
Para obter informações sobre datastores globais, consulte [Replicação entre AWS regiões usando datastores globais](Redis-Global-Datastore.md).

# Tutorial: Como criar um cluster baseado em nós ElastiCache
<a name="SubnetGroups.designing-cluster-pre"></a>

Veja como criar um ElastiCache cluster baseado em nós para Valkey, Memcached e Redis OSS.

**Topics**
+ [Criação de um ElastiCache cluster baseado em nós para o Valkey](SubnetGroups.designing-cluster-pre.valkey.md)
+ [Criação de um ElastiCache cluster baseado em nós para o Redis OSS](SubnetGroups.designing-cluster-pre.redis.md)

# Criação de um ElastiCache cluster baseado em nós para o Valkey
<a name="SubnetGroups.designing-cluster-pre.valkey"></a>

A seguir estão as ações únicas que você deve realizar para criar um ElastiCache cluster baseado em nós para o Valkey. 

## Etapa 1: criar um grupo de sub-redes
<a name="SubnetGroups.Creating-cluster-setup.valkey"></a>

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 em uma VPC. Ao executar um cluster 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 consulte[Conf ElastiCacheiguração](set-up.md).

Os procedimentos a seguir mostram como criar um grupo de sub-rede chamado `mysubnetgroup` (console) e a AWS CLI.

### Criação de um grupo de sub-redes (console)
<a name="SubnetGroups.Creating.CON.valkey"></a>

O procedimento a seguir mostra como criar um grupo de sub-redes (console).

**Como criar um grupo de sub-redes (console)**

1. Faça login no AWS Management Console e abra o ElastiCache console em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista de navegação, escolha **Subnet Groups** (Grupos de sub-redes).

1. Selecione **Create Subnet Group** (Criar grupo de sub-redes).

1. 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).

   1. Na caixa **Name** (Nome), digite um nome para o seu grupo de sub-redes.

   1. Na caixa **Description** (Descrição), digite uma descrição para seu grupo de sub-redes.

   1. Na caixa **VPC ID** (ID da VPC\$1, escolha a Amazon VPC que você criou.

   1. Nas listas **Zona de disponibilidade** e **ID de sub-rede**, escolha a zona de disponibilidade ou [Uso de zonas locais com o ElastiCache](Local_zones.md) e o ID da sub-rede privada e depois escolha **Adicionar**.  
![\[Imagem: tela Create Subnet VPC (Criar VPC de sub-rede)\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/vpc-03.png)

1. 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.

### Criar um grupo de sub-redes (AWS CLI)
<a name="SubnetGroups.Creating.CLI.valkey"></a>

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-ids subnet-53df9c3a
```

Para Windows:

```
aws elasticache create-cache-subnet-group ^
    --cache-subnet-group-name mysubnetgroup ^
    --cache-subnet-group-description "Testing" ^
    --subnet-ids subnet-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](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-cache-subnet-group.html).

## Etapa 2: criar um cluster
<a name="GettingStarted.CreateCluster.valkey"></a>

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 [Preparação de um cluster no ElastiCache](Clusters.Prepare.md). 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](https://aws.amazon.com/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)
<a name="Clusters.Create.CON.valkey-gs"></a>

**Para criar um cluster Valkey (modo de cluster desativado) usando o console ElastiCache**

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console da Amazon em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista no canto superior direito, escolha a AWS região na qual você deseja iniciar esse cluster.

1. No painel de navegação, escolha **Get started** (Conceitos básicos).

1. Escolha **Create VPC** (Criar VPC) e siga as etapas em [Creating a Virtual Private Cloud (VPC)](VPCs.CreatingVPC.md) (Criação de uma nuvem privada virtual (VPC)).

1. Na página do ElastiCache painel, escolha **Valkey cache ou Redis OSS cache** **e, em seguida, escolha Create Valkey cache** **ou **Create** Redis OSS cache**.

1. Em **Cluster settings** (Configurações do cluster), faça o seguinte:

   1. Selecione **Configure and create a new cluster** (Configurar e criar um novo cluster).

   1. Em **Cluster mode** (Modo cluster), escolha **Disabled** (Desabilitado).

   1. Para o **Cluster info** (Informações sobre o cluster), insira um valor para **Name** (Nome). 

   1. (Opcional) Insira um valor para **Description** (Descrição).

1. Em **Location** (Local):

------
#### [ AWS Cloud  ]

   1. Para **AWS Cloud** (Nuvem), recomendamos que você aceite as configurações padrão de **Multi-AZ** e **Failover automático**. Para obter mais informações, consulte [Minimizando o tempo de inatividade no ElastiCache Redis OSS](AutoFailover.md) com Multi-AZ.

   1. Em **Cluster settings** (Configurações do cluster)

      1. Em **Engine version** (Versão do mecanismo), escolha a versão do mecanismo.

      1. Em **Port** (Porta), use a porta padrão, 6379. Se você tiver um motivo para usar uma porta diferente, insira o número da porta.

      1. Em **Grupo de parâmetro** (Parameter group), escolha um grupo de parâmetro ou crie um novo. Os grupo de parâmetros controlam os parâmetros de tempo de execução do seu cluster. Para obter mais informações sobre grupo de parâmetros, consulte [Parâmetros do Valkey e do Redis OSS](ParameterGroups.Engine.md#ParameterGroups.Redis) e [Criação de um grupo de parâmetros do ElastiCache](ParameterGroups.Creating.md).
**nota**  
Quando você seleciona um grupo de parâmetros para definir os valores de configuração do mecanismo, esse grupo de parâmetros é aplicado a todos os clusters no datastore global. Na página **Parameter Groups** (Grupos de parâmetros), o atributo **Global** indica se um grupo de parâmetros faz parte de um datastore global.

      1. Para **Node type** (Tipo de nó), escolha a seta para baixo (![\[Downward-pointing triangle icon, typically used to indicate a dropdown menu.\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-DnArrow.png)). Na caixa de diálogo **Change node type** (Alterar tipo de nó), escolha um valor para a **Instance family** (Família de instâncias) para o tipo de nó desejado. Depois disso, escolha o tipo de nó que deseja usar para este cluster e escolha **Save** (Salvar).

         Para obter mais informações, consulte [Escolha do tamanho do nó](CacheNodes.SelectSize.md).

         Se você escolher um tipo de nó r6gd, a classificação de dados em níveis será ativada automaticamente. Para obter mais informações, consulte [Classificação de dados em níveis no ElastiCache](data-tiering.md).

      1. Em **Number of nodes** (Número de nós), escolha o número de réplicas de leitura desejado. Se você tiver habilitado Multi-AZ, o número deverá estar entre 1 e 5.

   1. Em **Connectivity** (Conectividade)

      1. Em **Network type** (Tipo de rede), escolha as versões de IP compatíveis com esse cluster. 

      1. Em **Grupos de sub-redes**, escolha a sub-rede que você deseja aplicar a esse cluster. ElastiCache usa esse grupo de sub-redes para escolher uma sub-rede e endereços IP dentro dessa sub-rede para associar aos seus nós. ElastiCache os clusters exigem uma sub-rede de pilha dupla com ambos IPv4 e IPv6 endereços atribuídos a eles para operar no modo de pilha dupla e uma IPv6 sub-rede somente para operar somente como -only. IPv6

         Ao criar um novo grupo de sub-rede, insira o **VPC ID** (ID da VPC) ao qual ele pertence.

         Para obter mais informações, consulte:
         + [Escolhendo um tipo de rede em ElastiCache](network-type.md).
         + [Criar uma sub-rede na VPC](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#AddaSubnet).

         Se você for [Uso de zonas locais com o ElastiCache](Local_zones.md), deverá criar ou escolher uma sub-rede que esteja na região local. 

         Para obter mais informações, consulte [Sub-redes e grupos de sub-redes](SubnetGroups.md).

   1. Em **Availability zone placements** (Posicionamentos de zona de disponibilidade), você tem duas opções:
      + **Sem preferência** — ElastiCache escolhe a Zona de Disponibilidade.
      + **Specify availability zones** (Especificar zonas de disponibilidade): você especifica a zona de disponibilidade para cada cluster.

        Se optar por especificar as zonas de disponibilidade, para cada cluster em cada fragmento, escolha a zona de disponibilidade na lista.

      Para obter mais informações, consulte [Seleção de regiões e zonas de disponibilidade para o ElastiCache](RegionsAndAZs.md).

   1. Escolha **Next** (Próximo)

   1. Em **Configurações avançadas do Valkey ou do Redis OSS**

      1. Para **Security** (Segurança): 

        1. Para criptografar seus dados, você tem as seguintes opções:
           + **Criptografia em repouso**: permite a criptografia de dados armazenados em disco. Para obter mais informações, consulte [Criptografia em repouso](at-rest-encryption.md).
**nota**  
Você tem a opção de fornecer uma chave de criptografia diferente escolhendo a chave **AWS KMS gerenciada pelo cliente** e escolhendo a chave. Para obter mais informações, consulte [Usar chaves gerenciadas pelo cliente do AWS KMS](at-rest-encryption.md#using-customer-managed-keys-for-elasticache-security).
           + **Encryption in-transit** (Criptografia em trânsito): permite a criptografia de dados na conexão. Para obter mais informações, consulte [criptografia em trânsito](in-transit-encryption.md). Para o Valkey ou Redis OSS versão 6.0 em diante, ao habilitar a criptografia em trânsito, você será solicitado a especificar uma das seguintes opções de **Access Control** (Controle de acesso):
             + **No Access Control** (Sem controle de acesso): essa é a configuração padrão. Isso indica que não há restrições no acesso do usuário ao cluster.
             + **User Group Access Control List** (Lista de controle de acesso de grupo de usuários): selecione um grupo de usuários com um conjunto definido de usuários que possam acessar o cluster. Para obter mais informações, consulte [Gerenciamento de grupos de usuários com o console e a CLI](Clusters.RBAC.md#User-Groups).
             + **AUTH Default User** (Usuário padrão AUTH): um mecanismo de autenticação para o servidor Redis OSS. Para obter mais informações, consulte [AUTH](auth.md).
           + **AUTH**: um mecanismo de autenticação para o servidor Redis OSS. Para obter mais informações, consulte [AUTH](auth.md).
**nota**  
Para versões do Valkey e do Redis OSS 3.2.6 em diante, excluindo a versão 3.2.10, o Redis OSS AUTH é a única opção.

        1. Em **Grupos de segurança**, escolha os grupos de segurança desejados para esse cluster. Um *grupo de segurança* atua como um firewall para controlar o acesso à rede ao cluster. É possível usar o grupo de segurança padrão para sua VPC ou criar um novo.

           Para obter mais informações sobre grupos de segurança, consulte [Grupos de segurança para sua VPC](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) no *Guia do usuário da Amazon VPC*.

   1. Para backups automáticos agendados regularmente, selecione **Enable automatic backups** (Habilitar backups automáticos) e insira o número de dias que deseja que cada backup automático seja mantido antes de ser excluído automaticamente. Se não quiser backups automáticos agendados regularmente, desmarque a caixa de seleção **Enable automatic backups** (Habilitar backups automáticos). Em ambos os casos, você sempre tem a opção de criar backups manuais.

      Para obter mais informações sobre o backup e a restauração do Redis OSS, consulte [Snapshots e restauração](backups.md).

   1. (Opcional) Especifique uma janela de manutenção. A opção *janela de manutenção* é o tempo, geralmente uma hora de duração, a cada semana quando o ElastiCache agenda a manutenção do sistema para seu cluster. Você pode permitir que o ElastiCache escolha o dia e a hora da sua janela de manutenção (*No preference*) ou pode escolher o dia, a hora e a duração por conta própria (*Specify maintenance window*). Se você escolher *Especificar janela de manutenção*, nas listas, escolha *Dia de início*, *Hora de início* e *Duração* (em horas) para sua janela de manutenção. Todos os horários são em UCT.

      Para obter mais informações, consulte [Gerenciamento de manutenção de cluster do ElastiCache](maintenance-window.md).

   1. (Opcional) Para **Logs**:
      + Em **Log format** (Formato do log), escolha **Text** (Texto) ou **JSON**.
      + Em **Tipo de destino**, escolha **CloudWatch Logs** ou **Kinesis Firehose**.
      + Em **Destino do registro**, escolha **Criar novo** e insira o nome do grupo de CloudWatch registros do Logs ou o nome do stream do Firehose, ou escolha **Selecionar existente** e escolha o nome do grupo de CloudWatch registros do Logs ou o nome do stream do Firehose,

   1. Para **Tags**, para ajudá-lo a gerenciar seus clusters e outros ElastiCache recursos, você pode atribuir seus próprios metadados a cada recurso na forma de tags. Para obter mais informações, consulte [Marcando seus recursos ElastiCache](Tagging-Resources.md).

   1. Escolha **Next** (Próximo).

   1. Revise todas as suas entradas e opções e faça as correções necessárias. Quando estiver pronto, escolha **Create** (Criar).

------
#### [ On premises ]

   1. Para **On-premises**, recomendamos que você deixe **Auto-failover** (Failover automático) habilitado. Para obter mais informações, consulte [Minimizando o tempo de inatividade no ElastiCache Redis](AutoFailover.md) OSS com Multi-AZ

   1. Para concluir a criação do cluster, siga as etapas em [Using Outposts](ElastiCache-Outposts.md) (Uso do Outposts).

------

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](#GettingStarted.AuthorizeAccess.valkey) e [Etapa 4: Conectar-se ao nó de um cluster](#GettingStarted.ConnectToCacheNode.valkey).

**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](Clusters.Delete.md). 

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)](Clusters.Create.md#Clusters.Create.CON.RedisCluster).
+ Para usar o AWS CLI, consulte[Criação de um cluster do Valkey ou Redis OSS (modo cluster habilitado) (AWS CLI)](Clusters.Create.md#Clusters.Create.CLI.RedisCluster).

## Etapa 3. Autorizar o acesso ao cluster
<a name="GettingStarted.AuthorizeAccess.valkey"></a>

 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](https://docs.aws.amazon.com/AWSEC2/latest/GettingStartedGuide/)*. 

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:

1. 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](VPCs.md)

1. 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.

1. 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](Local_zones.md), 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**

1. [Faça login no AWS Management Console e abra o console da Amazon VPC em https://console.aws.amazon.com /vpc.](https://console.aws.amazon.com/vpc)

1. No painel de navegação, escolha **Security Groups (Grupos de segurança)**.

1. 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.

1. Em **Tipo**, escolha **Regra TCP personalizada**.

   1. 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`.

   1. 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.

1. Escolha **Save** quando terminar.  
![\[\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/VPC-Rules.png)

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:
+ [Padrões de acesso para acessar um cache do ElastiCache em um Amazon VPC](elasticache-vpc-accessing.md)
+ [Acessando ElastiCache recursos de fora AWS](accessing-elasticache.md#access-from-outside-aws)

## Etapa 4: Conectar-se ao nó de um cluster
<a name="GettingStarted.ConnectToCacheNode.valkey"></a>

Antes de continuar, conclua [Etapa 3. Autorizar o acesso ao cluster](#GettingStarted.AuthorizeAccess.valkey).

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](https://docs.aws.amazon.com/AWSEC2/latest/GettingStartedGuide/). 

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ó
<a name="GettingStarted.FindEndpoints.valkey"></a>

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)
<a name="Endpoints.Find.valkey-gs"></a>

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)**

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console em [ https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. 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)](#Clusters.Create.CON.valkey-gs).

1. Para encontrar os endpoints do Primary and/or Reader do cluster, escolha o nome do cluster (não o botão de opção).  
![\[Imagem: Endpoint primário para um cluster do Valkey (modo cluster desabilitado)\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/Reader-Endpoint.png)

   *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.

1. 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.  
![\[Imagem: Endpoint de nó para um cluster do Valkey (modo cluster desabilitado)\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-Endpoints-Redis-Node.png)

   *Endpoints de nó para um cluster do Valkey (modo cluster desabilitado)*

1. Como copiar um endpoint para a área de transferência:

   1. Um endpoint por vez, localize o endpoint que você deseja copiar.

   1. 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](nodes-connecting.md).

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. 
+ [Encontrar endpoints de conexão no ElastiCache](Endpoints.md)
+ [Localização de endpoints para um cluster do Valkey ou do Redis OSS (modo cluster habilitado) (console)](Endpoints.md#Endpoints.Find.RedisCluster): você precisa do endpoint de configuração do cluster.
+ [Localizar endpoints (AWS CLI)](Endpoints.md#Endpoints.Find.CLI)
+ [Localização de endpoints (API do ElastiCache)](Endpoints.md#Endpoints.Find.API)

### Conexão a um cluster ou grupo de replicação do Valkey ou Redis OSS (Linux)
<a name="GettingStarted.ConnectToCacheNode.Valkey.Linux"></a>

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 suporta SSL/TLS a conexão de clusters habilitados. 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](https://valkey.io/). Para obter exemplos de uso do AWS SDKs com ElastiCache, consulte[Tutoriais: conceitos básicos do Python e do ElastiCache](ElastiCache-Getting-Started-Tutorials.md).

#### Conexão a um cluster não criptografado com modo cluster desabilitado
<a name="Connecting-to-a-cluster-mode-disabled-unencrypted-cluster.valkey"></a>

1. Execute o comando a seguir para se conectar ao cluster *primary-endpoint* e substituí-lo *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.)

   ```
   src/valkey-cli -h primary-endpoint -p port number
   ```

   O resultado em um prompt de comando do Valkey ou Redis OSS é semelhante ao seguinte:

   ```
   primary-endpoint:port number
   ```

1. 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
<a name="Connecting-to-a-cluster-mode-enabled-unencrypted-cluster.valkey"></a>

1. Execute o comando a seguir para se conectar ao cluster *configuration-endpoint* e substituí-lo *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.)

   ```
   src/valkey-cli -h configuration-endpoint -c -p port number
   ```
**nota**  
No comando anterior, a opção -c habilita o modo cluster em seguida aos [redirecionamentos -ASK e -MOVED](https://valkey.io/topics/cluster-spec).

   O resultado em um prompt de comando do Valkey ou Redis OSS é semelhante ao seguinte:

   ```
   configuration-endpoint:port number
   ```

1. 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](https://valkey.io/topics/cluster-spec).

   ```
   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"
   ```

#### Conectando-se a um cluster Encryption/Authentication habilitado
<a name="Connecting-to-an-Encryption-Authentication-enabled-cluster.valkey"></a>

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` SSL/TLS ativada no momento da compilação do valkey-cli, conforme mostrado na seção anterior. [Baixar e configurar o acesso à linha de comando](set-up.md#Download-and-install-cli) 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, consulte[ElastiCache criptografia em trânsito (TLS)](in-transit-encryption.md).

**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 -a your-password -p port number
```

O exemplo a seguir conecta a um cluster somente habilitado para criptografia:

```
src/valkey-cli -h cluster-endpoint --tls -p port 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 -a your-password -p port number
```

O exemplo a seguir conecta a um cluster somente habilitado para criptografia:

```
src/valkey-cli -c -h cluster-endpoint --tls -p port 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
<a name="valkey-cli-alternative"></a>

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 se conecta a um cluster desativado no modo de cluster habilitado para and/or autenticação por criptografia:

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

### Conexão a um cluster ou grupo de replicação do Valkey ou Redis OSS (Windows)
<a name="GettingStarted.ConnectToCacheNode.valkey.Windows"></a>

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](http://valkey.io/commands) no site do Valkey.

**Para se conectar a um cluster do Valkey ou Redis OSS não habilitado para criptografia usando o *valkey-cli***

1. 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](https://docs.aws.amazon.com/AWSEC2/latest/GettingStartedGuide/). 

1. Copie e cole o link [https://github.com/microsoftarchive/redis/releases/download/win-3.0.504/Redis-x64-3.0.504.zip](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](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 6379`.

   Por exemplo:

   ```
   c:\Valkey>valkey-cli -h cmd.xxxxxxx.ng.0001.usw2.cache.amazonaws.com -p 6379
   ```

1. 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
   OK
   get 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 seconds
   get b
   (nil)                  // key has expired, nothing returned
   quit                   // Exit from valkey-cli
   ```

## O que faço agora?
<a name="GettingStarted.WhereGoFromHere.valkey"></a>

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:
+ [Começando com AWS](https://aws.amazon.com/getting-started/)
+ [Ferramentas para a Amazon Web Services](https://aws.amazon.com/tools/)
+ [AWS Command Line Interface](https://aws.amazon.com/cli/)
+ [Referência de ElastiCache API da Amazon](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/Welcome.html)

Depois de concluir o exercício de introdução, você pode ler estas seções para saber mais sobre ElastiCache administração:
+ [Escolha do tamanho do nó](CacheNodes.SelectSize.md)

  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ó.
+ [Práticas recomendadas e estratégias de armazenamento em cache do ElastiCache](BestPractices.md)

  Identifique e lide com os problemas que podem afetar a eficiência de seu cluster.

# Criação de um ElastiCache cluster baseado em nós para o Redis OSS
<a name="SubnetGroups.designing-cluster-pre.redis"></a>

A seguir estão as ações únicas que você deve realizar para criar um ElastiCache cluster baseado em nós para o Redis OSS. 

Para obter mais informações sobre a configuração, ElastiCache consulte[Conf ElastiCacheiguração](set-up.md).

**Topics**
+ [Etapa 1: criar um grupo de sub-redes](#SubnetGroups.Creating-gs.redis)
+ [Etapa 2: criar um cluster](#GettingStarted.CreateCluster.redis)
+ [Etapa 3: autorizar o acesso ao cluster](#GettingStarted.AuthorizeAccess.redis)
+ [Etapa 4: conexão ao nó do cluster](#GettingStarted.ConnectToCacheNode.redis)

## Etapa 1: criar um grupo de sub-redes
<a name="SubnetGroups.Creating-gs.redis"></a>

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 aos seus clusters em uma VPC. Ao executar um cluster 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.

Os procedimentos a seguir mostram como criar um grupo de sub-rede chamado `mysubnetgroup` (console) e a AWS CLI.

### Criação de um grupo de sub-redes (console)
<a name="SubnetGroups.Creating.CON.redis"></a>

O procedimento a seguir mostra como criar um grupo de sub-redes (console).

**Como criar um grupo de sub-redes (console)**

1. Faça login no AWS Management Console e abra o ElastiCache console em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista de navegação, escolha **Subnet Groups** (Grupos de sub-redes).

1. Selecione **Create Subnet Group** (Criar grupo de sub-redes).

1. 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).

   1. Na caixa **Name** (Nome), digite um nome para o seu grupo de sub-redes.

   1. Na caixa **Description** (Descrição), digite uma descrição para seu grupo de sub-redes.

   1. Na caixa **VPC ID** (ID da VPC\$1, escolha a Amazon VPC que você criou.

   1. Nas listas **Availability Zone** (Zona de disponibilidade) e **Subnet ID** (ID da sub-rede), escolha a zona de disponibilidade ou a [Local Zone](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/Local_zones.html) (Zona local) e o ID da sub-rede privada, e depois escolha **Add** (Adicionar).  
![\[Imagem: tela Create Subnet VPC (Criar VPC de sub-rede)\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/vpc-03.png)

1. 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.

### Criar um grupo de sub-redes (AWS CLI)
<a name="SubnetGroups.Creating.redis.CLI"></a>

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-ids subnet-53df9c3a
```

Para Windows:

```
aws elasticache create-cache-subnet-group ^
    --cache-subnet-group-name mysubnetgroup ^
    --cache-subnet-group-description "Testing" ^
    --subnet-ids subnet-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](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-cache-subnet-group.html).

## Etapa 2: criar um cluster
<a name="GettingStarted.CreateCluster.redis"></a>

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 [Preparação de um cluster no ElastiCache](Clusters.Prepare.md). 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](https://aws.amazon.com/elasticache/).

Seu cluster é iniciado em uma nuvem privada virtual (VPC) com base no serviço da Amazon VPC. 

### Criação de um cluster do Redis OSS (modo cluster desabilitado) (console)
<a name="Clusters.Create.CON.Redis-gs"></a>

**Para criar um cluster Redis OSS (modo de cluster desativado) usando o console ElastiCache**

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console da Amazon em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista no canto superior direito, escolha a AWS região na qual você deseja iniciar esse cluster.

1. No painel de navegação, escolha **Get started** (Conceitos básicos).

1. Escolha **Create VPC** (Criar VPC) e siga as etapas em [Creating a Virtual Private Cloud (VPC)](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/VPCs.CreatingVPC.html) (Criação de uma nuvem privada virtual (VPC)).

1. Na página do ElastiCache painel, escolha **Valkey cache** ou **Redis OSS** cache. Para este exercício, escolheremos o **cache Redis OSS** e, em seguida, **Criar cache Redis OSS**.

1. Em **Cluster settings** (Configurações do cluster), faça o seguinte:

   1. Selecione **Configure and create a new cluster** (Configurar e criar um novo cluster).

   1. Em **Cluster mode** (Modo cluster), escolha **Disabled** (Desabilitado).

   1. Para o **Cluster info** (Informações sobre o cluster), insira um valor para **Name** (Nome). 

   1. (Opcional) Insira um valor para **Description** (Descrição).

1. Em **Location** (Local):

------
#### [ AWS Cloud  ]

   1. Para **AWS Cloud** (Nuvem), recomendamos que você aceite as configurações padrão de **Multi-AZ** e **Failover automático**. Para obter mais informações, consulte [Minimizando o tempo de inatividade no ElastiCache Redis OSS](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/AutoFailover.html) com Multi-AZ.

   1. Em **Cluster settings** (Configurações do cluster)

      1. Em **Engine version** (Versão do mecanismo), escolha a versão do mecanismo.

      1. Em **Port** (Porta), use a porta padrão, 6379. Se você tiver um motivo para usar uma porta diferente, insira o número da porta.

      1. Em **Grupo de parâmetro** (Parameter group), escolha um grupo de parâmetro ou crie um novo. Os grupo de parâmetros controlam os parâmetros de tempo de execução do seu cluster. Para obter mais informações sobre grupo de parâmetros, consulte [Parâmetros do Valkey e do Redis OSS](ParameterGroups.Engine.md#ParameterGroups.Redis) e [Criação de um grupo de parâmetros do ElastiCache](ParameterGroups.Creating.md).
**nota**  
Quando você seleciona um grupo de parâmetros para definir os valores de configuração do mecanismo, esse grupo de parâmetros é aplicado a todos os clusters no datastore global. Na página **Parameter Groups** (Grupos de parâmetros), o atributo **Global** indica se um grupo de parâmetros faz parte de um datastore global.

      1. Para **Node type** (Tipo de nó), escolha a seta para baixo (![\[Downward-pointing triangle icon, typically used to indicate a dropdown menu.\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-DnArrow.png)). Na caixa de diálogo **Change node type** (Alterar tipo de nó), escolha um valor para a **Instance family** (Família de instâncias) para o tipo de nó desejado. Depois disso, escolha o tipo de nó que deseja usar para este cluster e escolha **Save** (Salvar).

         Para obter mais informações, consulte [Escolha do tamanho do nó](CacheNodes.SelectSize.md).

         Se você escolher um tipo de nó r6gd, a classificação de dados em níveis será ativada automaticamente. Para obter mais informações, consulte [Classificação de dados em níveis no ElastiCache](data-tiering.md).

      1. Em **Number of nodes** (Número de nós), escolha o número de réplicas de leitura desejado. Se você tiver habilitado Multi-AZ, o número deverá estar entre 1 e 5.

   1. Em **Connectivity** (Conectividade)

      1. Em **Network type** (Tipo de rede), escolha as versões de IP compatíveis com esse cluster. 

      1. Em **Grupos de sub-redes**, escolha a sub-rede que você deseja aplicar a esse cluster. ElastiCache usa esse grupo de sub-redes para escolher uma sub-rede e endereços IP dentro dessa sub-rede para associar aos seus nós. ElastiCache os clusters exigem uma sub-rede de pilha dupla com ambos IPv4 e IPv6 endereços atribuídos a eles para operar no modo de pilha dupla e uma IPv6 sub-rede somente para operar como somente. IPv6

         Ao criar um novo grupo de sub-rede, insira o **VPC ID** (ID da VPC) ao qual ele pertence.

         Para obter mais informações, consulte:
         + [Escolhendo um tipo de rede em ElastiCache](network-type.md).
         + [Criar uma sub-rede na VPC](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#AddaSubnet).

         Se você for [Uso de zonas locais com o ElastiCache](Local_zones.md), deverá criar ou escolher uma sub-rede que esteja na região local. 

         Para obter mais informações, consulte [Sub-redes e grupos de sub-redes](SubnetGroups.md).

   1. Em **Availability zone placements** (Posicionamentos de zona de disponibilidade), você tem duas opções:
      + **Sem preferência** — ElastiCache escolhe a Zona de Disponibilidade.
      + **Specify availability zones** (Especificar zonas de disponibilidade): você especifica a zona de disponibilidade para cada cluster.

        Se optar por especificar as zonas de disponibilidade, para cada cluster em cada fragmento, escolha a zona de disponibilidade na lista.

      Para obter mais informações, consulte [Seleção de regiões e zonas de disponibilidade para o ElastiCache](RegionsAndAZs.md).

   1. Escolha **Next** (Próximo)

   1. Em **Advanced Redis OSS settings**

      1. Para **Security** (Segurança): 

        1. Para criptografar seus dados, você tem as seguintes opções:
           + **Criptografia em repouso**: permite a criptografia de dados armazenados em disco. Para obter mais informações, consulte [Criptografia em repouso](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/at-rest-encryption.html).
**nota**  
Você tem a opção de fornecer uma chave de criptografia diferente escolhendo a chave **AWS KMS gerenciada pelo cliente** e escolhendo a chave. Para obter mais informações, consulte [Usar chaves gerenciadas pelo cliente do AWS KMS](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/at-rest-encryption.html#using-customer-managed-keys-for-elasticache-security).
           + **Encryption in-transit** (Criptografia em trânsito): permite a criptografia de dados na conexão. Para obter mais informações, consulte [criptografia em trânsito](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/in-transit-encryption.html). **Para a versão 6.0 ElastiCache do mecanismo para Redis OSS e versões posteriores, se você ativar a criptografia em trânsito, você será solicitado a especificar uma das seguintes opções de controle de acesso:**
             + **No Access Control** (Sem controle de acesso): essa é a configuração padrão. Isso indica que não há restrições no acesso do usuário ao cluster.
             + **User Group Access Control List** (Lista de controle de acesso de grupo de usuários): selecione um grupo de usuários com um conjunto definido de usuários que possam acessar o cluster. Para obter mais informações, consulte [Gerenciamento de grupos de usuários com o console e a CLI](Clusters.RBAC.md#User-Groups).
             + **AUTH Default User** (Usuário padrão AUTH): um mecanismo de autenticação para o servidor Valkey e Redis OSS. Para obter mais informações, consulte [AUTH](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/auth.html).
           + **AUTH**: um mecanismo de autenticação para o servidor Redis OSS. Para obter mais informações, consulte [AUTH](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/auth.html).
**nota**  
Para versões do Redis OSS 3.2.6 em diante, excluindo a versão 3.2.10, o Redis OSS AUTH é a única opção.

        1. Em **Grupos de segurança**, escolha os grupos de segurança desejados para esse cluster. Um *grupo de segurança* atua como um firewall para controlar o acesso à rede ao cluster. É possível usar o grupo de segurança padrão para sua VPC ou criar um novo.

           Para obter mais informações sobre grupos de segurança, consulte [Grupos de segurança para sua VPC](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) no *Guia do usuário da Amazon VPC*.

   1. Para backups automáticos agendados regularmente, selecione **Enable automatic backups** (Habilitar backups automáticos) e insira o número de dias que deseja que cada backup automático seja mantido antes de ser excluído automaticamente. Se não quiser backups automáticos agendados regularmente, desmarque a caixa de seleção **Enable automatic backups** (Habilitar backups automáticos). Em ambos os casos, você sempre tem a opção de criar backups manuais.

      Para obter mais informações sobre backup e restauração, consulte [Snapshots e restauração](backups.md).

   1. (Opcional) Especifique uma janela de manutenção. A opção *janela de manutenção* é o tempo, geralmente uma hora de duração, a cada semana quando o ElastiCache agenda a manutenção do sistema para seu cluster. Você pode permitir que o ElastiCache escolha o dia e a hora da sua janela de manutenção (*No preference*) ou pode escolher o dia, a hora e a duração por conta própria (*Specify maintenance window*). Se você escolher *Especificar janela de manutenção*, nas listas, escolha *Dia de início*, *Hora de início* e *Duração* (em horas) para sua janela de manutenção. Todos os horários são em UCT.

      Para obter mais informações, consulte [Gerenciamento de manutenção de cluster do ElastiCache](maintenance-window.md).

   1. (Opcional) Para **Logs**:
      + Em **Log format** (Formato do log), escolha **Text** (Texto) ou **JSON**.
      + Em **Tipo de destino**, escolha **CloudWatch Logs** ou **Kinesis Firehose**.
      + Em **Destino do registro**, escolha **Criar novo** e insira o nome do grupo de CloudWatch registros do Logs ou o nome do stream do Firehose, ou escolha **Selecionar existente** e escolha o nome do grupo de CloudWatch registros do Logs ou o nome do stream do Firehose,

   1. Para **Tags**, para ajudá-lo a gerenciar seus clusters e outros ElastiCache recursos, você pode atribuir seus próprios metadados a cada recurso na forma de tags. Para obter mais informações, consulte [Marcando seus recursos ElastiCache](Tagging-Resources.md).

   1. Escolha **Next** (Próximo).

   1. Revise todas as suas entradas e opções e faça as correções necessárias. Quando estiver pronto, escolha **Create** (Criar).

------
#### [ On premises ]

   1. Para **On-premises**, recomendamos que você deixe **Auto-failover** (Failover automático) habilitado. Para obter mais informações, consulte [Minimizando o tempo de inatividade no ElastiCache Redis](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/AutoFailover.html) OSS com Multi-AZ

   1. Para concluir a criação do cluster, siga as etapas em [Using Outposts](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/ElastiCache-Outposts.html) (Uso do Outposts).

------

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](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.AuthorizeAccess.valkey) e [Etapa 4: Conectar-se ao nó de um cluster](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.ConnectToCacheNode.valkey).

**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](Clusters.Delete.md). 

### Criação de um cluster do Redis OSS (modo de cluster desabilitado) (AWS CLI)
<a name="Clusters.Create.CLI.Redis-gs"></a>

**Example**  
O código da CLI a seguir cria um cluster Redis OSS (modo cluster desabilitado) sem réplicas.  
Para Linux, macOS ou Unix:  

```
aws elasticache create-cache-cluster \
--cache-cluster-id my-cluster \
--cache-node-type cache.r4.large \
--engine redis \
--num-cache-nodes 1 \
--snapshot-arns arn:aws:s3:::my_bucket/snapshot.rdb
```
Para Windows:  

```
aws elasticache create-cache-cluster ^
--cache-cluster-id my-cluster ^
--cache-node-type cache.r4.large ^
--engine redis ^
--num-cache-nodes 1 ^
--snapshot-arns arn: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 do Valkey ou Redis OSS (modo cluster habilitado) (console)](Clusters.Create.md#Clusters.Create.CON.RedisCluster).
+ Para usar o AWS CLI, consulte[Criação de um cluster do Valkey ou Redis OSS (modo cluster habilitado) (AWS CLI)](Clusters.Create.md#Clusters.Create.CLI.RedisCluster).

## Etapa 3: autorizar o acesso ao cluster
<a name="GettingStarted.AuthorizeAccess.redis"></a>

 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](https://docs.aws.amazon.com/AWSEC2/latest/GettingStartedGuide/)*. 

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. As etapas necessárias dependem de você ter iniciado seu cluster em EC2 -VPC ou EC2 -Classic.

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:

1. 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 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](VPCs.md)

1. 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.

1. 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 [Uso de zonas locais com o ElastiCache](Local_zones.md), 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**

1. [Faça login no AWS Management Console e abra o console da Amazon VPC em https://console.aws.amazon.com /vpc.](https://console.aws.amazon.com/vpc)

1. No painel de navegação, escolha **Security Groups (Grupos de segurança)**.

1. 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.

1. Em **Tipo**, escolha **Regra TCP personalizada**.

   1. Para **Port Range**, especifique a porta que você usou quando criou seu cluster.

      A porta padrão dos clusters e grupos de replicação Redis OSS é `6379`.

   1. 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.

1. Escolha **Save** quando terminar.  
![\[\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/VPC-Rules.png)

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:
+ [Padrões de acesso para acessar um cache do ElastiCache em um Amazon VPC](elasticache-vpc-accessing.md)
+ [Acessando ElastiCache recursos de fora AWS](accessing-elasticache.md#access-from-outside-aws)

## Etapa 4: conexão ao nó do cluster
<a name="GettingStarted.ConnectToCacheNode.redis"></a>

Antes de continuar, conclua [Etapa 3: autorizar o acesso ao cluster](#GettingStarted.AuthorizeAccess.redis).

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](https://docs.aws.amazon.com/AWSEC2/latest/GettingStartedGuide/). 

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ó
<a name="GettingStarted.FindEndpoints.redis"></a>

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 ou do Redis OSS (modo cluster desabilitado) (console)
<a name="Endpoints.Find.Redis-gs"></a>

Se o cluster do Redis OSS (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 OSS ElastiCache for Redis. 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 cluster ElastiCache for Redis OSS 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 Redis OSS (modo cluster desabilitado) (console)**

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console em [ https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel de navegação, escolha **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, clusters do Redis OSS (modo de cluster desabilitado) e do Redis OSS (modo de cluster habilitado). Selecione o cluster que você criou na seção [Criação de um cluster do Redis OSS (modo cluster desabilitado) (console)](#Clusters.Create.CON.Redis-gs).

1. Para encontrar os endpoints do Primary and/or Reader do cluster, escolha o nome do cluster (não o botão de opção).  
![\[Imagem: Endpoint primário para um cluster do Redis OSS (modo cluster desabilitado)\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/Reader-Endpoint.png)

   *Endpoints primários e leitores para um cluster do Redis OSS (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.

1. Se o cluster do Redis OSS (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 **Nós**.

   A tela de nós aparece com cada nó do cluster, primário e réplicas, listados com seu respectivo endpoint.  
![\[Imagem: Endpoint de nó para um cluster do Redis OSS (modo cluster desabilitado)\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-Endpoints-Redis-Node.png)

   *Endpoint de nó para um cluster do Redis OSS (modo cluster desabilitado)*

1. Como copiar um endpoint para a área de transferência:

   1. Um endpoint por vez, localize o endpoint que você deseja copiar.

   1. 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](nodes-connecting.md).

Um endpoint primário do Redis OSS (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. 
+ [Encontrar endpoints de conexão no ElastiCache](Endpoints.md)
+ [Localização de endpoints para um cluster do Valkey ou do Redis OSS (modo cluster habilitado) (console)](Endpoints.md#Endpoints.Find.RedisCluster): você precisa do endpoint de configuração do cluster.
+ [Localizar endpoints (AWS CLI)](Endpoints.md#Endpoints.Find.CLI)
+ [Localização de endpoints (API do ElastiCache)](Endpoints.md#Endpoints.Find.API)

### Conexão a um cluster ou grupo de replicação do Valkey ou Redis OSS (Linux)
<a name="GettingStarted.ConnectToCacheNode.Redis.Linux"></a>

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 suporta SSL/TLS a conexão de clusters habilitados. 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 compatíveis, consulte a [Documentação do Valkey](https://valkey.io/). Para obter exemplos de uso do AWS SDKs com ElastiCache, consulte[Tutoriais: conceitos básicos do Python e do ElastiCache](ElastiCache-Getting-Started-Tutorials.md).

#### Conexão a um cluster não criptografado com modo cluster desabilitado
<a name="Connecting-to-a-cluster-mode-disabled-unencrypted-cluster.redis"></a>

1. Execute o comando a seguir para se conectar ao cluster *primary-endpoint* e substituí-lo *port number* com o endpoint do seu cluster e o número da sua porta. (A porta padrão para o Valkey e Redis OSS é 6379.)

   ```
   src/valkey-cli -h primary-endpoint -p port number
   ```

   O resultado em um prompt de comando é semelhante ao seguinte:

   ```
   primary-endpoint:port number
   ```

1. Agora você pode executar comandos do Valkey e Redis OSS.

   ```
   set x Hello
   OK
   
   get x
   "Hello"
   ```

#### Conectar a um cluster não criptografado com modo cluster habilitado
<a name="Connecting-to-a-cluster-mode-enabled-unencrypted-cluster.redis"></a>

1. Execute o comando a seguir para se conectar ao cluster *configuration-endpoint* e substituí-lo *port number* com o endpoint do seu cluster e o número da sua porta. (A porta padrão para o Valkey e Redis OSS é 6379.)

   ```
   src/valkey-cli -h configuration-endpoint -c -p port number
   ```
**nota**  
No comando anterior, a opção -c habilita o modo cluster em seguida aos [redirecionamentos -ASK e -MOVED](https://redis.io/topics/cluster-spec).

   O resultado em um prompt de comando é semelhante ao seguinte:

   ```
   configuration-endpoint:port number
   ```

1. Agora você pode executar comandos do Valkey e 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](https://valkey.io/topics/cluster-spec).

   ```
   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"
   ```

#### Conectando-se a um cluster Encryption/Authentication habilitado
<a name="Connecting-to-an-Encryption-Authentication-enabled-cluster.redis"></a>

Por padrão, a valkey-cli usa uma conexão TCP não criptografada ao se conectar ao Valkey e Redis OSS. A opção é `BUILD_TLS=yes` SSL/TLS ativada no momento da compilação do valkey-cli, conforme mostrado na seção anterior. [Baixar e configurar o acesso à linha de comando](set-up.md#Download-and-install-cli) 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, consulte[ElastiCache criptografia em trânsito (TLS)](in-transit-encryption.md).

**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 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 -a your-password -p port number
```

O exemplo a seguir conecta a um cluster somente habilitado para criptografia:

```
src/valkey-cli -h cluster-endpoint --tls -p port 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 -a your-password -p port number
```

O exemplo a seguir conecta a um cluster somente habilitado para criptografia:

```
src/valkey-cli -c -h cluster-endpoint --tls -p port 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.

#### Uma alternativa ao valkey-cli ou ao Redis-cli
<a name="Redis-cli-alternative"></a>

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 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 sua porta. (A porta padrão para o Redis OSS é 6379.)

O exemplo a seguir se conecta a um cluster desativado no modo de cluster habilitado para and/or autenticação por criptografia:

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

### Conexão a um cluster ou grupo de replicação do Valkey ou Redis OSS (Windows)
<a name="GettingStarted.ConnectToCacheNode.Redis.Windows"></a>

Para se conectar ao cluster a partir de uma instância do EC2 Windows usando a CLI do OSS Valkey ou Redis, você deve baixar o pacote valkey-cli e *usar* *o* valkey-cli.exe para se conectar ao cluster OSS Valkey ou Redis 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 e os comandos disponíveis, consulte [Comandos do Valkey](http://valkey.io/commands) no site do Valkey.

**Para se conectar a um cluster do Valkey ou Redis OSS não habilitado para criptografia usando o *valkey-cli***

1. 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](https://docs.aws.amazon.com/AWSEC2/latest/GettingStartedGuide/). 

1. Copie e cole o link [https://github.com/microsoftarchive/redis/releases/download/win-3.0.504/Redis-x64-3.0.504.zip](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 Redis OSS a partir da versão disponível em GitHub [https://github.com/microsoftarchive/redis/releases/tag/win-3.0.504](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 Valkey_Cluster_Endpoint -p 6379`.

   Por exemplo:

   ```
   c:\Valkey>valkey-cli -h cmd.xxxxxxx.ng.0001.usw2.cache.amazonaws.com -p 6379
   ```

1. 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
   OK
   get 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 seconds
   get b
   (nil)                  // key has expired, nothing returned
   quit                   // Exit from valkey-cli
   ```

# Excluir um cluster
<a name="Clusters.Delete-gs.redis"></a>

Enquanto um cluster estiver no estado *disponível*, você será cobrado por ele, independentemente de o estar ou não. Para interromper as cobranças, exclua o cluster.

**Atenção**  
Quando você exclui um ElastiCache cluster, seus instantâneos manuais são retidos. Também é possível criar um snapshot final antes que o cluster seja excluído. Os snapshots de cache automáticos não são retidos. Para obter mais informações, consulte [Snapshots e restauração](backups.md).
É necessário ter a permissão `CreateSnapshot` para criar um snapshot final. Sem essa permissão, a chamada de API falhará com uma exceção `Access Denied`.

## Usando o Console de gerenciamento da AWS
<a name="Clusters.Delete.CON-gs.redis"></a>

O procedimento a seguir exclui um único cluster da sua implantação. Para excluir vários clusters, repita o procedimento para cada cluster que deseja excluir. Você não precisa esperar a finalização da exclusão de um cluster antes de iniciar o procedimento para excluir outro.

**Para excluir um cluster**

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console da Amazon em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel do ElastiCache motor, escolha Valkey ou Redis OSS.

   Uma lista de todos os caches em execução naquele mecanismo é exibida.

1. Para escolher o cluster a ser excluído, escolha o nome na lista de clusters. Nesse caso, o nome do cluster do que você criou em [Etapa 2: criar um cluster](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.CreateCluster.valkey).
**Importante**  
Você só pode excluir um cluster por vez do ElastiCache console. Escolher vários clusters desabilita a operação de exclusão.

1. Em **Ações**, escolha **Excluir**.

1. Na tela de confirmação **Excluir cluster**, digite o nome do cluster e escolha **Backup final**. Em seguida, escolha **Excluir** para excluir o cluster ou escolha **Cancelar** para manter o cluster.

   Se você escolheu **Excluir**, o status do cluster muda para *excluindo*.

Assim que o cluster não estiver mais relacionado na lista de clusters, você para de ser cobrado por ele.

## Usando o AWS CLI
<a name="Clusters.Delete.CLI-gs.redis"></a>

O código a seguir exclui o cluster `my-cluster`. Neste caso, substitua `my-cluster` pelo nome do cluster do que você criou em [Etapa 2: criar um cluster](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.CreateCluster.valkey).

```
aws elasticache delete-cache-cluster --cache-cluster-id my-cluster
```

A ação `delete-cache-cluster` da CLI apenas exclui um cluster. Para excluir vários clusters, chame `delete-cache-cluster` para cada cluster de cache que você deseja excluir. Você não precisa esperar a finalização da exclusão de um cluster antes de excluir outro.

Para Linux, macOS ou Unix:

```
aws elasticache delete-cache-cluster \
    --cache-cluster-id my-cluster \
    --region us-east-2
```

Para Windows:

```
aws elasticache delete-cache-cluster ^
    --cache-cluster-id my-cluster ^
    --region us-east-2
```

Para obter mais informações, consulte o ElastiCache tópico AWS CLI for [https://docs.aws.amazon.com/cli/latest/reference/elasticache/delete-cache-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/elasticache/delete-cache-cluster.html).

# Outros tutoriais e vídeos do ElastiCache
<a name="Tutorials"></a>

Os seguintes tutoriais discutem tarefas de interesse para o usuário do Amazon ElastiCache.
+ [Vídeos do ElastiCache](#tutorial-videos)
+ [Tutorial: configurar uma função Lambda para acessar o Amazon ElastiCache em uma Amazon VPC ](https://docs.aws.amazon.com/lambda/latest/dg/vpc-ec.html)

## Vídeos do ElastiCache
<a name="tutorial-videos"></a>

Aqui estão vídeos para ajudar você a aprender os conceitos básicos e avançados do Amazon ElastiCache. Para obter mais informações sobre treinamento da AWS, consulte [Treinamento e certificação da AWS](https://aws.amazon.com/training/).

**Topics**
+ [Vídeos de introdução](#WhatIs.Videos.Beginning)
+ [Vídeos avançados](#WhatIs.Videos.Advanced)

### Vídeos de introdução
<a name="WhatIs.Videos.Beginning"></a>

Os seguintes vídeos apresentam você ao Amazon ElastiCache.

**Topics**
+ [AWS re:Invent 2020: o que há de novo no Amazon ElastiCache](#WhatIs.Videos.Beginning.2020)
+ [AWS re:Invent 2019: o que há de novo no Amazon ElastiCache](#WhatIs.Videos.Beginning.2019)
+ [AWS re:Invent 2017: o que há de novo no Amazon ElastiCache](#WhatIs.Videos.Beginning.2017)
+ [DAT204: Criação de aplicações escaláveis ​em serviços NoSQL da AWS (re:Invent 2015)](#WhatIs.Videos.Beginning.2015.DAT204)
+ [DAT207: Aceleração de performance da aplicação com o Amazon ElastiCache (AWS re:Invent 2013)](#WhatIs.Videos.Beginning.2013.DAT207)

#### AWS re:Invent 2020: o que há de novo no Amazon ElastiCache
<a name="WhatIs.Videos.Beginning.2020"></a>

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/O9mqbIYJXWE/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/O9mqbIYJXWE)


#### AWS re:Invent 2019: o que há de novo no Amazon ElastiCache
<a name="WhatIs.Videos.Beginning.2019"></a>

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/SaGW_Bln3qA/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/SaGW_Bln3qA)


#### AWS re:Invent 2017: o que há de novo no Amazon ElastiCache
<a name="WhatIs.Videos.Beginning.2017"></a>

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/wkGn1TzCgnk/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/wkGn1TzCgnk)


#### DAT204: Criação de aplicações escaláveis ​em serviços NoSQL da AWS (re:Invent 2015)
<a name="WhatIs.Videos.Beginning.2015.DAT204"></a>

Nesta sessão, discutimos os benefícios dos bancos de dados NoSQL e fazemos um tour pelos principais serviços NoSQL oferecidos pela AWS: Amazon DynamoDB e Amazon ElastiCache. Em seguida, ouvimos dois clientes líderes, a Expedia e a Mapbox, sobre seus casos de uso e desafios arquitetônicos e como eles os enfrentaram usando os serviços NoSQL da AWS, incluindo padrões de design e melhores práticas. Você sairá dessa sessão com uma melhor compreensão sobre o NoSQL e seus poderosos recursos, pronto para enfrentar seus desafios de banco de dados com confiança.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/ie4dWGT76LM/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/ie4dWGT76LM)


#### DAT207: Aceleração de performance da aplicação com o Amazon ElastiCache (AWS re:Invent 2013)
<a name="WhatIs.Videos.Beginning.2013.DAT207"></a>

Neste vídeo, saiba como você pode usar o Amazon ElastiCache para implantar facilmente um sistema de cache de memória para acelerar a performance da aplicação. Mostramos como usar o Amazon ElastiCache para melhorar a latência da aplicação e reduzir a carga nos seus servidores de banco de dados. Também mostramos como criar uma camada de cache que é fácil de gerenciar e escalar à medida que o seu aplicativo se expande. Durante esta sessão, examinamos vários cenários e casos de uso que podem se beneficiar com a habilitação do armazenamento em cache, além de discutirmos os recursos fornecidos pelo Amazon ElastiCache.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/odMmdPBV8hM/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/odMmdPBV8hM)


### Vídeos avançados
<a name="WhatIs.Videos.Advanced"></a>

Os seguintes vídeos abrangem tópicos mais avançados do Amazon ElastiCache.

**Topics**
+ [Design para o sucesso com as práticas recomendadas do Amazon ElastiCache (re:Invent 2020)](#WhatIs.Videos.Advanced.2020.DAT305)
+ [Sobrecarregue suas aplicações em tempo real com o Amazon ElastiCache (re:Invent 2019)](#WhatIs.Videos.Advanced.2019.DAT305)
+ [Práticas recomendadas: migração de clusters Redis OSS do Amazon EC2 para o ElastiCache (re:Invent 2019)](#WhatIs.Videos.Advanced.2019.DAT358)
+ [Escalabilidade de uma plataforma de esportes de fantasia com o Amazon ElastiCache e o Amazon Aurora STP11 (re:Invent 2018)](#WhatIs.Videos.Advanced.2019)
+ [Redis OSS confiável e escalável na nuvem com o Amazon ElastiCache (re:Invent 2018)](#WhatIs.Videos.AdvancedDD.2018)
+ [Aprofundamento no ElastiCache: padrões de design para armazenamentos de dados na memória (re:Invent 2018)](#WhatIs.Videos.AdvancedDD.2019)
+ [DAT305: Aprofundamento no Amazon ElastiCache (re:Invent 2017)](#WhatIs.Videos.Advanced.2017.DAT305)
+ [DAT306: Aprofundamento no Amazon ElastiCache (re:Invent 2016)](#WhatIs.Videos.Advanced.2016.DAT306)
+ [DAT317: como o IFTTT usa o ElastiCache para Redis OSS a fim de prever eventos (re:Invent 2016)](#WhatIs.Videos.Advanced.2016.DAT317)
+ [DAT407: Aprofundamento no Amazon ElastiCache (re:Invent 2015)](#WhatIs.Videos.Advanced.2015.DAT407)
+ [SDD402: Aprofundamento no Amazon ElastiCache (re:Invent 2014)](#WhatIs.Videos.Advanced.2014.SDD402)
+ [DAT307: Aprofundamento na arquitetura e nos padrões de design do Amazon ElastiCache (re:Invent 2013).](#WhatIs.Videos.Advanced.2013.DAT307)

#### Design para o sucesso com as práticas recomendadas do Amazon ElastiCache (re:Invent 2020)
<a name="WhatIs.Videos.Advanced.2020.DAT305"></a>

Com o crescimento explosivo de aplicações críticas para os negócios e em tempo real criadas com base no Redis OSS, a disponibilidade, a escalabilidade e a segurança se tornaram as principais considerações. Conheça as melhores práticas para configurar o Amazon ElastiCache para obter sucesso com escalabilidade on-line, alta disponibilidade em implantações multi-AZ e configurações de segurança.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/_4SkEy6r-C4/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/_4SkEy6r-C4)


#### Sobrecarregue suas aplicações em tempo real com o Amazon ElastiCache (re:Invent 2019)
<a name="WhatIs.Videos.Advanced.2019.DAT305"></a>

Com o rápido crescimento da adoção da nuvem e os novos cenários que ela capacita, as aplicações precisam de latência de microssegundos e alto throughput para suportar milhões de solicitações por segundo. Tradicionalmente, os desenvolvedores contam com hardware especializado e soluções alternativas, como bancos de dados baseados em disco combinados com técnicas de redução de dados, para gerenciar dados para aplicações em tempo real. Essas abordagens podem ser caras e não escaláveis. Saiba como aumentar a performance de aplicações em tempo real usando o Amazon ElastiCache totalmente gerenciado e na memória para obter performance extrema, alta escalabilidade, disponibilidade e segurança.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/v0GfpL5jfns/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/v0GfpL5jfns)


#### Práticas recomendadas: migração de clusters Redis OSS do Amazon EC2 para o ElastiCache (re:Invent 2019)
<a name="WhatIs.Videos.Advanced.2019.DAT358"></a>

Gerenciar clusters Redis OSS por conta própria pode ser difícil. Você precisa provisionar hardware, corrigir software, fazer backup de dados e monitorar cargas de trabalho constantemente. Com o recém-lançado recurso de migração online para o Amazon ElastiCache, agora você pode mover facilmente seus dados do Redis OSS auto-hospedado no Amazon EC2 para o Amazon ElastiCache totalmente gerenciado, com o modo cluster desabilitado. Nesta sessão, você aprenderá sobre a nova ferramenta de migração online, verá uma demonstração e, mais importante, aprenderá práticas recomendadas para uma migração tranquila para o Amazon ElastiCache.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/Rpni5uPe0uI/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/Rpni5uPe0uI)


#### Escalabilidade de uma plataforma de esportes de fantasia com o Amazon ElastiCache e o Amazon Aurora STP11 (re:Invent 2018)
<a name="WhatIs.Videos.Advanced.2019"></a>

Dream11 é a principal startup de tecnologia esportiva da Índia. Ela tem uma base crescente de mais de 40 milhões de usuários jogando vários esportes, incluindo críquete, futebol e basquete de fantasia, e atualmente atende a um milhão de usuários simultâneos, que produzem três milhões de solicitações por minuto sob um tempo de resposta de 50 milissegundos. Nesta palestra, o CTO da Dream11, Amit Sharma, explica como a empresa usa o Amazon Aurora e o Amazon ElastiCache para lidar com o tráfego instantâneo, que pode triplicar em uma janela de resposta de 30 segundos. Sharma também fala sobre escalar transações sem bloquear, e ele compartilha as etapas para lidar com o tráfego instantâneo, servindo assim a cinco milhões de usuários ativos diários. Título completo: AWS re:Invent 2018: Escalabilidade de uma plataforma de esportes de fantasia com o Amazon ElastiCache e o Amazon Aurora (STP11)

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/hIPOLeEjVQY/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/hIPOLeEjVQY)


#### Redis OSS confiável e escalável na nuvem com o Amazon ElastiCache (re:Invent 2018)
<a name="WhatIs.Videos.AdvancedDD.2018"></a>

Esta sessão aborda os atributos e aprimoramentos do nosso serviço compatível com Redis OSS, Amazon ElastiCache para Redis OSS. Cobrimos os principais recursos, como Redis OSS 5, melhorias de escalabilidade e performance, segurança e conformidade e muito mais. Também discutimos recursos futuros e estudos de caso de clientes.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/pgXEnAcTNPI/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/pgXEnAcTNPI)


#### Aprofundamento no ElastiCache: padrões de design para armazenamentos de dados na memória (re:Invent 2018)
<a name="WhatIs.Videos.AdvancedDD.2019"></a>

Nesta sessão, fornecemos uma visão dos bastidores para saber mais sobre o design e a arquitetura do Amazon ElastiCache. Veja os padrões de design comuns com nossas ofertas do Redis OSS e do Memcached e como os clientes os usam para processamento de dados na memória para reduzir a latência e melhorar o throughput da aplicação. Revisamos as melhores práticas, os padrões de design e os antipadrões do ElastiCache.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/QxcB53mL_oA/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/QxcB53mL_oA)


#### DAT305: Aprofundamento no Amazon ElastiCache (re:Invent 2017)
<a name="WhatIs.Videos.Advanced.2017.DAT305"></a>

Confira os bastidores para saber mais sobre o design e a arquitetura da Amazon ElastiCache. Veja os padrões de design comuns com nossas ofertas do Memcached e do Redis OSS e como os clientes os usaram para operações na memória para reduzir a latência e melhorar o throughput do aplicativo. Neste vídeo, revisamos as melhores práticas, os padrões de design e os antipadrões do ElastiCache. 

O vídeo apresenta o seguinte:
+ Refragmentação online do ElastiCache para Redis OSS
+ Segurança e criptografia do ElastiCache
+ ElastiCache para Redis OSS versão 3.2.10

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/_YYBdsuUq2M/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/_YYBdsuUq2M)


#### DAT306: Aprofundamento no Amazon ElastiCache (re:Invent 2016)
<a name="WhatIs.Videos.Advanced.2016.DAT306"></a>

Confira os bastidores para saber mais sobre o design e a arquitetura da Amazon ElastiCache. Veja os padrões de design comuns com nossas ofertas do Memcached e do Redis OSS e como os clientes os usaram para operações na memória para reduzir a latência e melhorar o throughput do aplicativo. Durante esta sessão, analisamos as melhores práticas, os padrões de design e os antipadrões relacionados ao ElastiCache.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/e9sN15a7utI/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/e9sN15a7utI)


#### DAT317: como o IFTTT usa o ElastiCache para Redis OSS a fim de prever eventos (re:Invent 2016)
<a name="WhatIs.Videos.Advanced.2016.DAT317"></a>

O IFTTT é um serviço gratuito que permite às pessoas fazer mais com seus serviços preferidos, desde automatizar tarefas simples até transformar a forma como alguém interage e controla sua casa. O IFTTT usa o ElastiCache para Redis OSS a fim de armazenar o histórico de execução de transações e as previsões de programação, bem como índices de documentos de log no Amazon S3. Assista a esta sessão para saber como o poder de scripts do Lua e os tipos de dados do Redis OSS permitiram que as pessoas realizassem algo que não poderiam ter feito em nenhum outro lugar.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/eQbsXN0kcc0/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/eQbsXN0kcc0)


#### DAT407: Aprofundamento no Amazon ElastiCache (re:Invent 2015)
<a name="WhatIs.Videos.Advanced.2015.DAT407"></a>

Olhe nos bastidores para saber mais sobre o design e a arquitetura da Amazon ElastiCache. Veja os padrões de design comuns das nossas ofertas Memcached e Redis OSS e como os clientes os usaram para operações na memória e obtiveram níveis aprimorados de latência e throughput para aplicativos. Durante esta sessão, analisamos as melhores práticas, os padrões de design e os antipadrões relacionados ao Amazon ElastiCache.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/4VfIINg9DYI/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/4VfIINg9DYI)


#### SDD402: Aprofundamento no Amazon ElastiCache (re:Invent 2014)
<a name="WhatIs.Videos.Advanced.2014.SDD402"></a>

Neste vídeo, examinamos os casos de uso comuns de armazenamento em cache, os mecanismos ElastiCache para Memcached e ElastiCache para Redis OSS, os padrões que o ajudam a determinar qual mecanismo é o melhor para suas necessidades, aplicação de hash consistente e muito mais como de compilar aplicativos rápidos e escaláveis. Frank Wiebe, o principal cientista da Adobe, detalha como a Adobe usa o Amazon ElastiCache para melhorar a experiência dos clientes e escalonar seus negócios.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/cEkHBqhQnog/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/cEkHBqhQnog)


#### DAT307: Aprofundamento na arquitetura e nos padrões de design do Amazon ElastiCache (re:Invent 2013).
<a name="WhatIs.Videos.Advanced.2013.DAT307"></a>

Neste vídeo, examinamos o armazenamento em cache, as estratégias de cache, a expansão e o monitoramento. Comparamos também os mecanismos ElastiCache para Memcached e ElastiCache para Redis OSS. Durante esta sessão, também revisamos as melhores práticas e os padrões de design relacionados ao Amazon ElastiCache.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/me0Tw13O1H4/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/me0Tw13O1H4)


# Gerenciamento de nós no ElastiCache
<a name="CacheNodes"></a>

Um nó é o menor bloco de construção de uma implantação do Amazon ElastiCache. Trata-se de um fragmento de tamanho fixo da RAM em armazenamento de rede anexado. Cada nó executa o mecanismo que foi escolhido quando o cluster foi criado ou modificado pela última vez. Cada nó possui seu próprio nome DNS (Serviço de Nomes de Domínio) e porta. Há suporte para vários tipos de nós do ElastiCache, cada um com quantidades diversificadas de memória associada e a potência computacional.

Consulte para uma discussão mais detalhada sobre o tamanho do nó que deve ser usado [Escolha do tamanho do nó](CacheNodes.SelectSize.md). 

Em termos gerais, devido ao seu suporte para fragmentação, as implantações do Valkey ou Redis OSS (modo cluster habilitado) têm vários nós menores. Por outro lado, as implantações do Valkey ou Redis OSS (modo cluster desabilitado) têm menos nós, porém maiores, em um cluster. Consulte para uma discussão mais detalhada sobre o tamanho do nó que deve ser usado [Escolha do tamanho do nó](CacheNodes.SelectSize.md). 

**Topics**
+ [Visualizando o status ElastiCache do nó](Nodes.viewing.md)
+ [Nódulos e fragmentos do Valkey ou Redis OSS](CacheNodes.NodeGroups.md)
+ [Conexão a nós](nodes-connecting.md)
+ [Tipos de nó compatíveis](CacheNodes.SupportedTypes.md)
+ [Reinicialização de nós](nodes.rebooting.md)
+ [Substituição de nós (Valkey e Redis OSS)](CacheNodes.NodeReplacement.md)
+ [Substituição de nós (Memcached)](CacheNodes.NodeReplacement-mc.md)
+ [Nós reservados](CacheNodes.Reserved.md)
+ [Migração de nós da geração anterior](CacheNodes.NodeMigration.md)

Algumas operações importantes que envolvem nós são as seguintes: 
+ [Adicionar nós a um ElastiCache cluster](Clusters.AddNode.md)
+ [Removendo nós de um ElastiCache cluster](Clusters.DeleteNode.md)
+ [Dimensionamento ElastiCache](Scaling.md)
+ [Encontrar endpoints de conexão no ElastiCache](Endpoints.md)
+ [Identificar automaticamente nós no seu cluster (Memcached)](AutoDiscovery.md)

# Visualizando o status ElastiCache do nó
<a name="Nodes.viewing"></a>

Usando o [ElastiCache console](https://console.aws.amazon.com/elasticache/), você pode acessar rapidamente o status do seu ElastiCache nó. O status de um ElastiCache nó indica a integridade do nó. Você pode usar os procedimentos a seguir para visualizar o status do ElastiCache nó no ElastiCache console da Amazon, no AWS CLI comando ou na operação da API. 

Os valores de status possíveis para ElastiCache os nós estão na tabela a seguir. Essa tabela também mostra se você será cobrado pelo ElastiCache nó.


| **Tipo** | Faturado | **Descrição** | 
| --- | --- | --- | 
|  `available`  |  Faturado  |  O ElastiCache nódulo está saudável e disponível.  | 
|  `creating`  |  Não faturado  |  O ElastiCache nó está sendo criado. O nó está inacessível enquanto é criado.  | 
|  `deleting`  |  Não faturado  |  O ElastiCache nó está sendo excluído.  | 
|  `modifying`  |  Faturado  |  O ElastiCache nó está sendo modificado devido a uma solicitação do cliente para modificar o nó.  | 
|  `updating`  |  Faturado  |  Um estado de **atualização** indica que uma ou mais das seguintes afirmações são verdadeiras para o ElastiCache nó da Amazon: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/Nodes.viewing.html)  | 
|  `rebooting cluster nodes`  |  Faturado  |  O ElastiCache nó está sendo reinicializado devido a uma solicitação do cliente ou a um ElastiCache processo da Amazon que exige a reinicialização do nó.  | 
|  `incompatible_parameters`  |  Não faturado  |  A Amazon não ElastiCache pode iniciar o nó porque os parâmetros especificados no grupo de parâmetros do nó não são compatíveis com o nó. Reverta as alterações de parâmetro ou as torne compatíveis com o nó para retomar o acesso ao nó. Para obter mais informações sobre os parâmetros incompatíveis, consulte a lista de [eventos](https://us-east-1.console.aws.amazon.com/elasticache/home?region=us-east-1#/events) do ElastiCache nó.  | 
|  `incompatible_network`  |  Não faturado  |  Um estado de rede incompatível indica que uma ou mais das seguintes afirmações são verdadeiras para o nó da Amazon: ElastiCache  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/Nodes.viewing.html)  | 
|  `restore_failed`  |  Não faturado  |  Um estado de falha na restauração indica que uma das seguintes situações se aplica ao nó da Amazon: ElastiCache  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/Nodes.viewing.html)  | 
|  `snapshotting`  |  Faturado  |  ElastiCache está criando um instantâneo do nó OSS Valkey ou Redis.  | 

## Visualizando o status do ElastiCache nó com o console
<a name="Nodes.viewing.console"></a>

Para ver o status de um ElastiCache Node com o console:

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console da Amazon em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel de navegação, escolha **Clusters do Redis OSS** ou **Clusters do Memcached**. A **página Caches** aparece com a lista de ElastiCache nós. Para cada nó, o valor do status é exibido.

1. Em seguida, você pode navegar até a guia **Atualizações de serviço** do cache para exibir a lista de atualizações de serviço aplicáveis ao cache. 

## Visualizando o status do ElastiCache nó com o AWS CLI
<a name="Nodes.viewing.cli"></a>

Para visualizar o ElastiCache nó e suas informações de status usando o AWS CLI, use o `describe-cache-cluster` comando. Por exemplo, o AWS CLI comando a seguir exibe cada ElastiCache nó. 

```
aws elasticache describe-cache-clusters
```

## Visualizando o status do ElastiCache nó por meio da API
<a name="Nodes.viewing.api"></a>

 Para visualizar o status do ElastiCache nó usando a ElastiCache API da Amazon, chame `DescribeCacheClusteroperation` with the `ShowCacheNodeInfo` flag para recuperar informações sobre os nós de cache individuais.

# Nódulos e fragmentos do Valkey ou Redis OSS
<a name="CacheNodes.NodeGroups"></a>

Um fragmento (na API e na CLI, um grupo de nós) é uma disposição hierárquica de nós, cada um envolvido em um cluster. Fragmentos oferecem suporte para replicação. Dentro de um fragmento, um nó funciona como o nó primário de leitura/gravação. Todos os outros nós em um fragmento funcionam como réplicas somente leitura do nó primário. O Valkey, ou o Redis OSS versão 3.2 e posteriores, oferecem suporte a vários fragmentos dentro de um cluster (na API e CLI, um grupo de replicação). Esse suporte permite particionar os dados em um cluster do Valkey ou Redis OSS (modo cluster habilitado). 

O diagrama a seguir ilustra as diferenças entre um cluster do Valkey ou Redis OSS (modo cluster desabilitado) e um cluster do Valkey ou Redis OSS (modo cluster habilitado).

![\[Imagem: fragmentos do Valkey ou Redis OSS (modo cluster desabilitado) e Valkey ou Redis OSS (modo cluster habilitado) (API/CLI: grupos de nós)\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-NodeGroups.png)


Os clusters do Valkey ou Redis OSS (modo cluster habilitado) oferecem suporte para a replicação por meio de fragmentos. A operação de API, [DescribeReplicationGroups](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeReplicationGroups.html) (CLI: [describe-replication-groups](https://docs.aws.amazon.com/cli/latest/reference/elasticache/describe-replication-groups.html)) lista os grupos de nós com nós membros, a função do nó dentro do grupo de nós, bem como outras informações.

Ao criar um cluster do Valkey ou Redis OSS, você especifica se deseja criar um cluster com o recurso de criação de clusters habilitado. Os clusters do Valkey ou Redis OSS (modo cluster desabilitado) nunca têm mais de um fragmento que pode ser escalado horizontalmente com a adição (até um total de cinco) ou a exclusão de nós de réplica de leitura. Para mais informações, consulte [Alta disponibilidade com o uso de grupos de replicação](Replication.md), [Adição de uma réplica de leitura do Valkey ou do Redis OSS (modo cluster desabilitado)](Replication.AddReadReplica.md) ou [Exclusão de uma réplica de leitura do Valkey ou do Redis OSS (modo cluster desabilitado)](Replication.RemoveReadReplica.md). Clusters do Valkey ou Redis OSS (modo cluster desabilitado) também podem ser escalados verticalmente por meio da mudança dos tipos de nó. Para obter mais informações, consulte [Escalar nós de réplica para Valkey ou Redis OSS (modo cluster desativado)](Scaling.RedisReplGrps.md).

O limite de nós ou fragmentos pode ser aumentado para um máximo de 500 por cluster se o mecanismo for Valkey ou Redis OSS versão 5.0.6 ou superior. Por exemplo, você pode optar por configurar um cluster de 500 nós que varia entre 83 fragmentos (uma primária e 5 réplicas por fragmento) e 500 fragmentos (primário único e sem réplicas). Verifique se existem endereços IP disponíveis suficientes para acomodar o aumento. As armadilhas comuns incluem as sub-redes no grupo de sub-redes têm um intervalo CIDR muito pequeno ou as sub-redes são compartilhadas e fortemente usadas por outros clusters. Para obter mais informações, consulte [Criação de um grupo de sub-redes](SubnetGroups.Creating.md).

 Para versões abaixo de 5.0.6, o limite é 250 por cluster.

Para solicitar um aumento de limite, consulte [Limites de serviço da AWS](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) e selecione o tipo de limite **Nodes per cluster per instance type** (Nós por cluster por tipo de instância). 

Depois que um cluster do Valkey ou Redis OSS (modo cluster habilitado) é criado, ele pode ser alterado (com aumento ou redução de escala na horizontal). Para obter mais informações, consulte [Dimensionamento ElastiCache](Scaling.md) e [Substituição de nós (Valkey e Redis OSS)](CacheNodes.NodeReplacement.md). 

Ao criar um novo cluster, você pode preenchê-lo com dados do cluster antigo para que ele não fique vazio. Essa abordagem só funcionará se o grupo de clusters tiver o mesmo número de estilhaços do cluster antigo. Isso pode ser útil se você precisa alterar o tipo de nó ou a versão do mecanismo. Para obter mais informações, consulte [Realização de backups manuais](backups-manual.md) e [Restauração de um backup para um novo cache](backups-restoring.md).

# Conexão a nós
<a name="nodes-connecting"></a>

## Conexão a nós do Valkey ou Redis OSS
<a name="nodes-connecting.val"></a>

Antes de tentar se conectar aos nós do Valkey ou Redis OSS no cluster, você deve ter os endpoints para os nós. Para localizar os endpoints, consulte o seguinte:
+ [Localização de endpoints de um cluster do Valkey ou do Redis OSS (modo cluster desabilitado) (console)](Endpoints.md#Endpoints.Find.Redis)
+ [Localização de endpoints para um cluster do Valkey ou do Redis OSS (modo cluster habilitado) (console)](Endpoints.md#Endpoints.Find.RedisCluster)
+ [Localizar endpoints (AWS CLI)](Endpoints.md#Endpoints.Find.CLI)
+ [Localização de endpoints (API do ElastiCache)](Endpoints.md#Endpoints.Find.API)

No exemplo a seguir, você usa o utilitário *valkey-cli* para se conectar a um cluster que está executando o Valkey ou Redis OSS.

**nota**  
Para obter mais informações sobre os comandos disponíveis, consulte a página da Web [Comandos](http://valkey.io/commands).

**Para se conectar a um cluster do Valkey ou Redis OSS usando o *valkey-cli***

1. Conexão à sua instância do Amazon EC2 com o utilitário de conexão de sua escolha. 
**nota**  
Para obter instruções sobre como se conectar a uma instância do Amazon EC2, consulte o [Guia de conceitos básicos do Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/GettingStartedGuide/). 

1. Para criar `valkey-cli`, baixe e instale o GNU Compiler Collection (`gcc`). No prompt de comando da sua instância do EC2, digite o seguinte comando e digite `y` no prompt de confirmação.

   ```
   sudo yum install gcc
   ```

   É exibida uma saída semelhante à seguinte.

   ```
   Loaded plugins: priorities, security, update-motd, upgrade-helper
   Setting up Install Process
   Resolving Dependencies
   --> Running transaction check
   
   ...(output omitted)...
   
   Total download size: 27 M
   Installed size: 53 M
   Is this ok [y/N]: y
   Downloading Packages:
   (1/11): binutils-2.22.52.0.1-10.36.amzn1.x86_64.rpm      | 5.2 MB     00:00     
   (2/11): cpp46-4.6.3-2.67.amzn1.x86_64.rpm                | 4.8 MB     00:00     
   (3/11): gcc-4.6.3-3.10.amzn1.noarch.rpm                  | 2.8 kB     00:00     
   
   ...(output omitted)...
   
   Complete!
   ```

1. Baixe e compile o utilitário *valkey-cli*. Esse utilitário está incluído na distribuição do software Valkey. No prompt de comando da sua instância do EC2, digite os seguintes comandos:
**nota**  
Para sistemas Ubuntu, antes de executar o `make`, execute `make distclean`.

   ```
   wget https://github.com/valkey-io/valkey/archive/refs/tags/8.0.0.tar.gz
   tar xvzf valkey-8.0.0.tar.gz
   cd valkey-8.0.0
   make distclean      # ubuntu systems only
   make
   ```

1. No prompt de comando da sua instância do EC2, digite o comando a seguir.

   ```
   src/valkey-cli -c -h mycachecluster.eaogs8.0001.usw2.cache.amazonaws.com -p 6379
   ```

   É exibido um prompt de comando do Valkey ou Redis OSS semelhante ao seguinte.

   ```
   redis mycachecluster.eaogs8.0001.usw2.cache.amazonaws.com 6379>
   ```

1. Teste a conexão executando comandos do Valkey ou Redis OSS.

    Agora, você está conectado ao cluster e pode executar comandos do Valkey ou Redis OSS. Os seguintes são alguns comandos de exemplo com suas respostas do Valkey ou Redis OSS. 

   ```
   set a "hello"          // Set key "a" with a string value and no expiration
   OK
   get 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
   get b
   "Good-bye"
                      // wait 5 seconds
   get b
   (nil)                  // key has expired, nothing returned
   quit                   // Exit from valkey-cli
   ```

Para conectar-se a nós ou clusters com criptografia Secure Sockets Layer (SSL) (em trânsito habilitado), consulte [ElastiCache criptografia em trânsito (TLS)](in-transit-encryption.md).

## Conexão a nós do Memcached
<a name="nodes-connecting.mem"></a>

Antes de tentar se conectar ao seu cluster Memcached, você deve ter os endpoints para os nós. Para localizar os endpoints, consulte o seguinte:
+ [Localização de endpoints de um cluster (console) (Memcached)](Endpoints.md#Endpoints.Find.Memcached)
+ [Localizar endpoints (AWS CLI)](Endpoints.md#Endpoints.Find.CLI)
+ [Localização de endpoints (API do ElastiCache)](Endpoints.md#Endpoints.Find.API)

No exemplo a seguir, você usa o utilitário *telnet* para se conectar a um nó que está executando o Memcached.

**nota**  
Para obter mais informações sobre o Memcached e os comandos Memcached disponíveis, consulte o site do [Memcached](http://memcached.org/).

**Para se conectar a um nó usando o *telnet***

1. Conecte-se à instância do Amazon EC2 com o utilitário de conexão de sua escolha. 
**nota**  
 Para obter instruções sobre como se conectar a uma instância do Amazon EC2, consulte o [Guia de conceitos básicos do Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/GettingStartedGuide/). 

1. Baixe e instale o utilitário *telnet* na sua instância do Amazon EC2. No prompt de comando da sua instância do Amazon EC2, digite o seguinte comando e digite *y*.

   ```
   sudo yum install telnet
   ```

   É exibida uma saída semelhante à seguinte.

   ```
   Loaded plugins: priorities, security, update-motd, upgrade-helper
   Setting up Install Process
   Resolving Dependencies
   --> Running transaction check
   
   ...(output omitted)...
   
   Total download size: 63 k
   Installed size: 109 k
   Is this ok [y/N]: y
   Downloading Packages:
   telnet-0.17-47.7.amzn1.x86_64.rpm                        |  63 kB     00:00  
   
   ...(output omitted)...
   
   Complete!
   ```

1. No prompt de comando da sua instância do Amazon EC2, digite o seguinte comando, substituindo o endpoint do seu nó por aquele mostrado neste exemplo.

   ```
   telnet mycachecluster.eaogs8.0001.usw2.cache.amazonaws.com 11211
   ```

   É exibida uma saída semelhante à seguinte.

   ```
   Trying 128.0.0.1...
   Connected to mycachecluster.eaogs8.0001.usw2.cache.amazonaws.com.
   Escape character is '^]'.
   >
   ```

1. Teste a conexão executando comandos Memcached.

    Agora você está conectado a um nó e pode executar comandos Memcached. Veja um exemplo a seguir. 

   ```
   set a 0 0 5      // Set key "a" with no expiration and 5 byte value
   hello            // Set value as "hello"
   STORED
   get a            // Get value for key "a"
   VALUE a 0 5
   hello
   END
   get b            // Get value for key "b" results in miss
   END
   >
   ```

# Tipos de nó compatíveis
<a name="CacheNodes.SupportedTypes"></a>

ElastiCache suporta os seguintes tipos de nós. Em linhas gerais, os tipos da geração atual fornecem mais memória e poder computacional a um custo mais baixo em comparação aos equivalentes das geração anteriores.

Para obter mais informações sobre detalhes de desempenho para cada tipo de nó, consulte [Tipos de EC2 instância da Amazon](https://aws.amazon.com/ec2/instance-types/).

**nota**  
A Amazon ElastiCache está fazendo a transição de instâncias T2 para o status de geração anterior. Você não poderá mais criar novos ElastiCache clusters usando instâncias T2 ou comprar novos nós reservados T2. Não há impacto nos clusters ou reservas T2 existentes. Recomendamos a atualização para tipos de instância mais novos, como instâncias T3 ou T4G, para melhorar o desempenho e a economia. 

**nota**  
Os seguintes tipos de instância são compatíveis com as AWS regiões Ásia-Pacífico (Tailândia) e México (Central):  
**m7g/r7g:** grande, xl, 2xl, 4xl, 8xl, 12xl e 16xl.
**t3/t4g:** micro, pequeno e médio.

Para obter informações sobre o tamanho do nó que deve ser usado, consulte [Escolha do tamanho do nó](CacheNodes.SelectSize.md). 

**Topics**
+ [Geração atual (Memcached)](#CacheNodes.CurrentGen-Memcached)
+ [Geração atual (Valkey ou Redis OSS)](#CacheNodes.CurrentGen)
+ [Tipos de nós compatíveis por região da AWS](#CacheNodes.SupportedTypesByRegion)
+ [Instâncias de desempenho com capacidade de intermitência](#CacheNodes.Burstable)
+ [Informações relacionadas](#CacheNodes.RelatedInfo)

## Geração atual (Memcached)
<a name="CacheNodes.CurrentGen-Memcached"></a>

As tabelas a seguir mostram a largura de banda básica e de intermitência dos tipos de instância que usam o mecanismo de I/O crédito de rede para ultrapassar sua largura de banda básica.

**nota**  
Os tipos de instância com desempenho de rede intermitente usam um mecanismo I/O de crédito de rede para ultrapassar sua largura de banda básica com base no melhor esforço.

**Geral**


| Tipo de instância | Versão mínima do Memcached compatível | Largura de banda da linha de base (Gbps) | Expansão da largura de banda (Gbps) | 
| --- | --- | --- | --- | 
| cache.m7g.large |  | 0,937 | 12,5 | 
| cache.m7g.xlarge |  | 1.876 | 12,5 | 
| cache.m7g.2xlarge |  | 3,75 | 15 | 
| cache.m7g.4xlarge |  | 7,5 | 15 | 
| cache.m7g.8xlarge |  | 15 | N/D | 
| cache.m7g.12xlarge |  | 22,5 | N/D | 
| cache.m7g.16xlarge |  | 30 | N/D | 
| cache.m6g.large | 1.5.16 | 0.75 | 10.0 | 
| cache.m6g.xlarge | 1.5.16 | 1,25 | 10.0 | 
| cache.m6g.2xlarge | 1.5.16 | 2,5 | 10.0 | 
| cache.m6g.4xlarge | 1.5.16 | 5,0 | 10.0 | 
| cache.m6g.8xlarge | 1.5.16 | 12 | N/D | 
| cache.m6g.12xlarge | 1.5.16 | 20 | N/D | 
| cache.m6g.16xlarge | 1.5.16 | 25 | N/D | 
| cache.m5.large | 1.5.16 | 0.75 | 10.0 | 
| cache.m5.xlarge | 1.5.16 | 1,25 | 10.0 | 
| cache.m5.2xlarge | 1.5.16 | 2,5 | 10.0 | 
| cache.m5.4xlarge | 1.5.16 | 5,0 | 10.0 | 
| cache.m5.12xlarge | 1.5.16 | N/D | N/D | 
| cache.m5.24xlarge | 1.5.16 | N/D | N/D | 
| cache.m4.large | 1.5.16 | 0,45 | 1.2 | 
| cache.m4.xlarge | 1.5.16 | 0.75 | 2.8 | 
| cache.m4.2xlarge | 1.5.16 | 1,0 | 10.0 | 
| cache.m4.4xlarge | 1.5.16 | 2,0 | 10.0 | 
| cache.m4.10xlarge | 1.5.16 | 5,0 | 10.0 | 
| cache.t4g.micro | 1.5.16 | 0,064 | 5,0 | 
| cache.t4g.small | 1.5.16 | 0,128 | 5,0 | 
| cache.t4g.medium | 1.5.16 | 0,256 | 5,0 | 
| cache.t3.micro | 1.5.16 | 0,064 | 5,0 | 
| cache.t3.small | 1.5.16 | 0,128 | 5,0 | 
| cache.t3.medium | 1.5.16 | 0,256 | 5,0 | 
| cache.t2.micro | 1.5.16 | 0,064 | 1.024 | 
| cache.t2.small | 1.5.16 | 0,128 | 1.024 | 
| cache.t2.medium | 1.5.16 | 0,256 | 1.024 | 

**Memória otimizada para o Memcached**


| Tipo de instância | Versão mínima compatível | Largura de banda da linha de base (Gbps) | Expansão da largura de banda (Gbps) | 
| --- | --- | --- | --- | 
| cache.r7g.large |  | 0,937 | 12,5 | 
| cache.r7g.xlarge |  | 1.876 | 12,5 | 
| cache.r7g.2xlarge |  | 3,75 | 15 | 
| cache.r7g.4xlarge |  | 7,5 | 15 | 
| cache.r7g.8xlarge |  | 15 | N/D | 
| cache.r7g.12xlarge |  | 22,5 | N/D | 
| cache.r7g.16xlarge |  | 30 | N/D | 
| cache.r6g.large | 1.5.16 | 0.75 | 10.0 | 
| cache.r6g.xlarge | 1.5.16 | 1,25 | 10.0 | 
| cache.r6g.2xlarge | 1.5.16 | 2,5 | 10.0 | 
| cache.r6g.4xlarge | 1.5.16 | 5,0 | 10.0 | 
| cache.r6g.8xlarge | 1.5.16 | 12 | N/D | 
| cache.r6g.12xlarge | 1.5.16 | 20 | N/D | 
| cache.r6g.16xlarge | 1.5.16 | 25 | N/D | 
| cache.r5.large | 1.5.16 | 0.75 | 10.0 | 
| cache.r5.xlarge | 1.5.16 | 1,25 | 10.0 | 
| cache.r5.2xlarge | 1.5.16 | 2,5 | 10.0 | 
| cache.r5.4xlarge | 1.5.16 | 5,0 | 10.0 | 
| cache.r5.12xlarge | 1.5.16 | 20 | N/D | 
| cache.r5.24xlarge | 1.5.16 | 25 | N/D | 
| cache.r4.large | 1.5.16 | 0.75 | 10.0 | 
| cache.r4.xlarge | 1.5.16 | 1,25 | 10.0 | 
| cache.r4.2xlarge | 1.5.16 | 2,5 | 10.0 | 
| cache.r4.4xlarge | 1.5.16 | 5,0 | 10.0 | 
| cache.r4.8xlarge | 1.5.16 | 12 | N/D | 
| cache.r4.16xlarge | 1.5.16 | 25 | N/D | 

**Rede otimizada para o Memcached**


| Tipo de instância | Versão mínima compatível | Largura de banda da linha de base (Gbps) | Expansão da largura de banda (Gbps) | 
| --- | --- | --- | --- | 
| cache.c7gn.large | 1.6.6 | 6,25 | 30 | 
| cache.c7gn.xlarge | 1.6.6 | 12,5 | 40 | 
| cache.c7gn.2xlarge | 1.6.6 | 25 | 50 | 
| cache.c7gn.4xlarge | 1.6.6 | 50 | N/D | 
| cache.c7gn.8xlarge | 1.6.6 | 100 | N/D | 
| cache.c7gn.12xlarge | 1.6.6 | 150 | N/D | 
| cache.c7gn.16xlarge | 1.6.6 | 200 | N/D | 

## Geração atual (Valkey ou Redis OSS)
<a name="CacheNodes.CurrentGen"></a>

Para obter mais informações sobre a geração anterior, consulte [Nós da geração anterior](https://aws.amazon.com/elasticache/previous-generation/).

**nota**  
Os tipos de instância com desempenho de rede intermitente usam um mecanismo I/O de crédito de rede para ultrapassar sua largura de banda básica com base no melhor esforço.

**Geral**


| Tipo de instância | Versão mínima compatível do Redis OSS | Aprimorado I/O com Redis OSS 5.0.6\$1 | Descarregamento de TLS com Redis OSS 6.2.5\$1 |  I/O Multiplexação aprimorada com Redis OSS 7.0.4\$1 | Largura de banda da linha de base (Gbps) | Expansão da largura de banda (Gbps) | 
| --- | --- | --- | --- | --- | --- | --- | 
| cache.m7g.large | 6.2 | N | N | N | 0,937 | 12,5 | 
| cache.m7g.xlarge | 6.2 | S | S | S | 1.876 | 12,5 | 
| cache.m7g.2xlarge | 6.2 | S | S | S | 3,75 | 15 | 
| cache.m7g.4xlarge | 6.2 | S | S | S | 7,5 | 15 | 
| cache.m7g.8xlarge | 6.2 | S | S | S | 15 | N/D | 
| cache.m7g.12xlarge | 6.2 | S | S | S | 22,5 | N/D | 
| cache.m7g.16xlarge | 6.2 | S | S | S | 30 | N/D | 
| cache.m6g.large | 5.0.6 | N | N | N | 0.75 | 10.0 | 
| cache.m6g.xlarge | 5.0.6 | S | S | S | 1,25 | 10.0 | 
| cache.m6g.2xlarge | 5.0.6 | S | S | S | 2,5 | 10.0 | 
| cache.m6g.4xlarge | 5.0.6 | S | S | S | 5,0 | 10.0 | 
| cache.m6g.8xlarge | 5.0.6 | S | S | S | 12 | N/D | 
| cache.m6g.12xlarge | 5.0.6 | S | S | S | 20 | N/D | 
| cache.m6g.16xlarge | 5.0.6 | S | S | S | 25 | N/D | 
| cache.m5.large | 3.2.4 | N | N | N | 0.75 | 10.0 | 
| cache.m5.xlarge | 3.2.4 | S | N | N | 1,25 | 10.0 | 
| cache.m5.2xlarge | 3.2.4 | S | S | S | 2,5 | 10.0 | 
| cache.m5.4xlarge | 3.2.4 | S | S | S | 5,0 | 10.0 | 
| cache.m5.12xlarge | 3.2.4 | S | S | S | 12 | N/D | 
| cache.m5.24xlarge | 3.2.4 | S | S | S | 25 | N/D | 
| cache.m4.large | 3.2.4 | N | N | N | 0,45 | 1.2 | 
| cache.m4.xlarge | 3.2.4 | S | N | N | 0.75 | 2.8 | 
| cache.m4.2xlarge | 3.2.4 | S | S | S | 1,0 | 10.0 | 
| cache.m4.4xlarge | 3.2.4 | S | S | S | 2,0 | 10.0 | 
| cache.m4.10xlarge | 3.2.4 | S | S | S | 5,0 | 10.0 | 
| cache.t4g.micro | 3.2.4 | N | N | N | 0,064 | 5,0 | 
| cache.t4g.small | 5.0.6 | N | N | N | 0,128 | 5,0 | 
| cache.t4g.medium | 5.0.6 | N | N | N | 0,256 | 5,0 | 
| cache.t3.micro | 3.2.4 | N | N | N | 0,064 | 5,0 | 
| cache.t3.small | 3.2.4 | N | N | N | 0,128 | 5,0 | 
| cache.t3.medium | 3.2.4 | N | N | N | 0,256 | 5,0 | 
| cache.t2.micro | 3.2.4 | N | N | N | 0,064 | 1.024 | 
| cache.t2.small | 3.2.4 | N | N | N | 0,128 | 1.024 | 
| cache.t2.medium | 3.2.4 | N | N | N | 0,256 | 1.024 | 

**Otimizado para memória**


| Tipo de instância | Versão mínima compatível do Redis OSS | Aprimorado I/O com Redis OSS 5.0.6\$1 | Descarregamento de TLS com Redis OSS 6.2.5\$1 |  I/O Multiplexação aprimorada com Redis OSS 7.0.4\$1 | Largura de banda da linha de base (Gbps) | Expansão da largura de banda (Gbps) | 
| --- | --- | --- | --- | --- | --- | --- | 
| cache.r7g.large | 6.2 | N | N | N | 0,937 | 12,5 | 
| cache.r7g.xlarge | 6.2 | S | S | S | 1.876 | 12,5 | 
| cache.r7g.2xlarge | 6.2 | S | S | S | 3,75 | 15 | 
| cache.r7g.4xlarge | 6.2 | S | S | S | 7,5 | 15 | 
| cache.r7g.8xlarge | 6.2 | S | S | S | 15 | N/D | 
| cache.r7g.12xlarge | 6.2 | S | S | S | 22,5 | N/D | 
| cache.r7g.16xlarge | 6.2 | S | S | S | 30 | N/D | 
| cache.r6g.large | 5.0.6 | N | N | N | 0.75 | 10.0 | 
| cache.r6g.xlarge | 5.0.6 | S | S | S | 1,25 | 10.0 | 
| cache.r6g.2xlarge | 5.0.6 | S | S | S | 2,5 | 10.0 | 
| cache.r6g.4xlarge | 5.0.6 | S | S | S | 5,0 | 10.0 | 
| cache.r6g.8xlarge | 5.0.6 | S | S | S | 12 | N/D | 
| cache.r6g.12xlarge | 5.0.6 | S | S | S | 20 | N/D | 
| cache.r6g.16xlarge | 5.0.6 | S | S | S | 25 | N/D | 
| cache.r5.large | 3.2.4 | N | N | N | 0.75 | 10.0 | 
| cache.r5.xlarge | 3.2.4 | S | N | N | 1,25 | 10.0 | 
| cache.r5.2xlarge | 3.2.4 | S | S | S | 2,5 | 10.0 | 
| cache.r5.4xlarge | 3.2.4 | S | S | S | 5,0 | 10.0 | 
| cache.r5.12xlarge | 3.2.4 | S | S | S | 12 | N/D | 
| cache.r5.24xlarge | 3.2.4 | S | S | S | 25 | N/D | 
| cache.r4.large | 3.2.4 | N | N | N | 0.75 | 10.0 | 
| cache.r4.xlarge | 3.2.4 | S | N | N | 1,25 | 10.0 | 
| cache.r4.2xlarge | 3.2.4 | S | S | S | 2,5 | 10.0 | 
| cache.r4.4xlarge | 3.2.4 | S | S | S | 5,0 | 10.0 | 
| cache.r4.8xlarge | 3.2.4 | S | S | S | 12 | N/D | 
| cache.r4.16xlarge | 3.2.4 | S | S | S | 25 | N/D | 

**Otimizada para memória com classificação de dados em níveis**


| Tipo de instância | Versão mínima compatível do Redis OSS | Aprimorado I/O com Redis OSS 5.0.6\$1 | Descarregamento de TLS com Redis OSS 6.2.5\$1 |  I/O Multiplexação aprimorada com Redis OSS 7.0.4\$1 | Largura de banda da linha de base (Gbps) | Expansão da largura de banda (Gbps) | 
| --- | --- | --- | --- | --- | --- | --- | 
| cache.r6gd.xlarge | 6.2.0 | S | N | N | 1,25 | 10 | 
| cache.r6gd.2xlarge | 6.2.0 | S | S | S | 2,5 | 10 | 
| cache.r6gd.4xlarge | 6.2.0 | S | S | S | 5,0 | 10 | 
| cache.r6gd.8xlarge | 6.2.0 | S | S | S | 12 | N/D | 
| cache.r6gd.12xlarge | 6.2.0 | S | S | S | 20 | N/D | 
| cache.r6gd.16xlarge | 6.2.0 | S | S | S | 25 | N/D | 

**Otimizadas para rede**


| Tipo de instância | Versão mínima compatível do Redis OSS | Aprimorado I/O com Redis OSS 5.0.6\$1 | Descarregamento de TLS com Redis OSS 6.2.5\$1 |  I/O Multiplexação aprimorada com Redis OSS 7.0.4\$1 | Largura de banda da linha de base (Gbps) | Expansão da largura de banda (Gbps) | 
| --- | --- | --- | --- | --- | --- | --- | 
| cache.c7gn.large | 6.2 | N | N | N | 6,25 | 30 | 
| cache.c7gn.xlarge | 6.2 | S | S | S | 12,5 | 40 | 
| cache.c7gn.2xlarge | 6.2 | S | S | S | 25 | 50 | 
| cache.c7gn.4xlarge | 6.2 | S | S | S | 50 | N/D | 
| cache.c7gn.8xlarge | 6.2 | S | S | S | 100 | N/D | 
| cache.c7gn.12xlarge | 6.2 | S | S | S | 150 | N/D | 
| cache.c7gn.16xlarge | 6.2 | S | S | S | 200 | N/D | 

## Tipos de nós compatíveis por região da AWS
<a name="CacheNodes.SupportedTypesByRegion"></a>

Os tipos de nós compatíveis podem variar entre AWS as regiões. Para obter mais detalhes, consulte os [ ElastiCachepreços da Amazon](https://aws.amazon.com/elasticache/pricing/).

## Instâncias de desempenho com capacidade de intermitência
<a name="CacheNodes.Burstable"></a>

Você pode iniciar nós de cache T4G, T3-Standard e T2-Standard de uso geral com capacidade de intermitência na Amazon. ElastiCache Esses nós fornecem um nível de linha de base de desempenho de CPU, além da capacidade de intermitência do uso de CPU a qualquer momento até o consumo dos créditos acumulados. Um *crédito de CPU* oferece o desempenho de um núcleo de CPU completo por um minuto.

 ElastiCacheOs nós T4G, T3 e T2 da Amazon são configurados como padrão e adequados para cargas de trabalho com uma utilização média de CPU consistentemente abaixo do desempenho básico da instância. Para intermitências acima da linha de base, o nó gasta os créditos acumulados no seu saldo de créditos de CPU. Se o nó estiver em execução abaixo dos créditos acumulados, o desempenho será gradualmente reduzido para o nível de desempenho de linha de base. Essa redução gradual garante que o nó não experimente uma queda acentuada de desempenho quando seu saldo de créditos acumulados de CPU for esgotado. *Para obter mais informações, consulte [Créditos de CPU e desempenho básico para instâncias de desempenho intermitentes no Guia EC2 ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-credits-baseline-concepts.html) *do usuário da Amazon*.*

A tabela a seguir lista os tipos de nó de desempenho com capacidade de intermitência, a taxa na qual os créditos de CPU são obtidos por hora. Também mostra o número máximo de créditos de CPU ganhos que um nó pode acumular e o número de v CPUs por nó. Além disso, fornece o nível de desempenho de linha de base como uma porcentagem do desempenho total de um núcleo (usando uma única vCPU).


| Tipo de nó | Créditos de CPU ganhos por hora |  Máximo de créditos obtidos que podem ser acumulados\$1 |  v CPUs  |  Desempenho de linha de base por vCPU  |  Memória (GiB)  |  desempenho de rede  | 
| --- | --- | --- | --- | --- | --- | --- | 
| t4g.micro | 12 | 288 | 2 | 10% | 0,5 | Até 5 gigabits | 
| t4g.small | 24 | 576 | 2 | 20% | 1,37 | Até 5 gigabits | 
| t4g.medium | 24 | 576 | 2 | 20% | 3,09 | Até 5 gigabits | 
| t3.micro | 12 | 288 | 2 | 10% | 0,5 | Até 5 gigabits | 
| t3.small | 24 | 576 | 2 | 20% | 1,37 | Até 5 gigabits | 
| t3.medium | 24 | 576 | 2 | 20% | 3,09 | Até 5 gigabits | 
| t2.micro | 6 | 144 | 1 | 10% | 0,5 | Baixo a moderado | 
| t2.small | 12 | 288 | 1 | 20% | 1,55 | Baixo a moderado | 
| t2.medium | 24 | 576 | 2 | 20% | 3.22 | Baixo a moderado | 

\$1 O número de créditos que podem ser acumulados é equivalente ao número de créditos que podem ser obtidos em um período de 24 horas.

\$1\$1 O desempenho de linha de base na tabela é por vCPU. Alguns tamanhos de nós que têm mais de uma vCPU. Para isso, calcule a utilização básica da CPU para o nó multiplicando a porcentagem de vCPU pelo número de v. CPUs

As seguintes métricas de crédito de CPU estão disponíveis para instâncias expansíveis T3 e T4g:

**nota**  
Essas métricas não estão disponíveis para instâncias expansíveis T2.
+ `CPUCreditUsage`
+ `CPUCreditBalance`

Para obter mais informações sobre essas métricas, consulte [Métricas de crédito de CPU](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/viewing_metrics_with_cloudwatch.html#cpu-credit-metrics).

Além disso, saiba estes detalhes:
+ Todos os tipos de nós da geração atual são criados em uma Virtual Private Cloud (VPC) com base na Amazon VPC por padrão.
+ Os arquivos somente de acréscimo (AOF) do Redis OSS não são compatíveis com instâncias T2. As variáveis de configuração do Redis OSS `appendonly` e `appendfsync` não são compatíveis com o Redis OSS versão 2.8.22 e posteriores.

## Informações relacionadas
<a name="CacheNodes.RelatedInfo"></a>
+ [Características e detalhes ElastiCache do produto Amazon](https://aws.amazon.com/elasticache/details)
+ [Parâmetros específicos do tipo de nó do Memcached para o Memcached](ParameterGroups.Engine.md#ParameterGroups.Memcached) 
+ [Parâmetros do Valkey e do Redis OSS](ParameterGroups.Engine.md#ParameterGroups.Redis)
+ [Criptografia em trânsito (TLS)](in-transit-encryption.md)

# Reinicialização de nós
<a name="nodes.rebooting"></a>

Algumas alterações exigem que um cluster do Valkey, Memcached ou Redis OSS seja reinicializado para que as alterações sejam aplicadas. Por exemplo, para alguns parâmetros, a alteração do valor do parâmetro em um parameter group é aplicada somente após uma reinicialização.

**Topics**
+ [Reinicialização de nós do Redis OSS (somente para o modo cluster desabilitado)](#nodes.rebooting.redis)
+ [Reinicialização de um cluster para Memcached](#Clusters.Rebooting)

## Reinicialização de nós do Redis OSS (somente para o modo cluster desabilitado)
<a name="nodes.rebooting.redis"></a>

Para clusters do Valkey ou Redis OSS (modo cluster desabilitado), os parâmetros nos grupos de parâmetros que são aplicados somente após a reinicialização são:
+ activerehashing
+ bancos de dados

Os nós do Redis só podem ser atualizados por meio do console do ElastiCache. Você só pode reinicializar um único nó de cada vez. Para reinicializar vários nós, você deve repetir o processo para cada nó.

**Alterações de parâmetro do Valkey ou Redis OSS (modo cluster habilitado)**  
Se você fizer alterações nos parâmetros a seguir em um cluster do Valkey ou Redis OSS (modo cluster habilitado), siga as etapas a seguir.  
activerehashing
bancos de dados
Crie um backup manual do seu cluster. Consulte [Realização de backups manuais](backups-manual.md).
Exclua o cluster do Valkey ou Redis OSS (modo cluster habilitado). Consulte [Excluindo um cluster no ElastiCache](Clusters.Delete.md).
Restaure o cluster usando o parameter group alterado e o backup para propagar o novo cluster. Consulte [Restauração de um backup para um novo cache](backups-restoring.md).
Alterações em outros parâmetros não exigem isso.

### Utilização do Console de gerenciamento da AWS
<a name="nodes.rebooting.con"></a>

Você pode reinicializar um nó usando o console do ElastiCache.

**Para reinicializar um nó (console)**

1. Faça login no Console de gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista localizada no canto superior direito, escolha a região da AWS que se aplica.

1. No painel de navegação esquerdo, escolha **Redis OSS**.

   É exibida uma lista de clusters que executam o Redis OSS.

1. Escolha o cluster em **Cluster Name** (Nome do cluster).

1. Em **Node name** (Nome do nó), escolha o botão de opção ao lado do nó que você deseja reinicializar.

1. Escolha **Actions** (Ações) e, em seguida, **Reboot node** (Reinicializar nó).

Para reinicializar vários nós, repita as etapas de 2 a 5 para cada nó que você deseja reinicializar. Você não precisa esperar que um nó termine a reinicialização para reinicializar outro.

## Reinicialização de um cluster para Memcached
<a name="Clusters.Rebooting"></a>

Quando você reinicializa um cluster do Memcached, o cluster libera todos os seus dados e reinicializa seu mecanismo. Durante esse processo, você não pode acessar o cluster. Como o cluster liberou todos os seus dados, quando o cluster estiver disponível novamente, você começará com um cluster vazio.

Você pode reinicializar um cluster usando o console do ElastiCache, a AWS CLI ou a API do ElastiCache. Se você usar o console do ElastiCache, a AWS CLI ou a API do ElastiCache, só poderá iniciar a reinicialização de um único cluster. Para reinicializar vários clusters, você deve repetir o processo ou a operação.

### Utilização do Console de gerenciamento da AWS
<a name="Clusters.Rebooting.CON"></a>

Você pode reinicializar um cluster usando o console do ElastiCache.

**Para reinicializar um cluster (console)**

1. Faça login no Console de gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista localizada no canto superior direito, escolha a região da AWS de interesse.

1. No painel de navegação, escolha o mecanismo em execução no cluster que deseja reinicializar.

   É exibida uma lista de clusters que executam o mecanismo escolhido.

1. Escolha o cluster a ser reinicializado marcando a caixa à esquerda do nome do cluster.

   O botão **Reinicializar** é ativado.

   Se você escolher mais de um cluster, o botão **Reinicializar** não estará ativo.

1. Escolha **Reboot**.

   É exibida a tela de confirmação de reinicialização do cluster.

1. Para reiniciar o cluster, escolha **Reboot**. O status do cluster mudará para *reinicializando nós de cluster*.

   Para não reinicializar o cluster, escolha **Cancel**.

Para reinicializar vários clusters, repita as etapas de 2 a 5 para cada cluster que você deseja reinicializar. Você não precisa esperar que um cluster termine a reinicialização para reinicializar outro.

Para reinicializar um nó específico, selecione o nó e escolha **Reboot** (Reinicializar).

### Como usar o AWS CLI
<a name="Clusters.Rebooting.CLI"></a>

Para reinicializar um cluster (AWS CLI), use a operação da CLI `reboot-cache-cluster`.

Para reinicializar nós específicos no cluster, use o `--cache-node-ids-to-reboot` para listar os clusters específicos para reinicializar. O comando a seguir reinicializa os nós 0001, 0002 e 0004 de *my-cluster*.

Para Linux, macOS ou Unix:

```
aws elasticache reboot-cache-cluster \
    --cache-cluster-id my-cluster \
    --cache-node-ids-to-reboot 0001 0002 0004
```

Para Windows:

```
aws elasticache reboot-cache-cluster ^
    --cache-cluster-id my-cluster ^
    --cache-node-ids-to-reboot 0001 0002 0004
```

Para reinicializar todos os nós no cluster, use o parâmetro `--cache-node-ids-to-reboot` e liste todos os ID de nós do cluster. Para obter mais informações, consulte [reboot-cache-cluster](https://docs.aws.amazon.com/cli/latest/reference/elasticache/reboot-cache-cluster.html).

### Uso da API do ElastiCache
<a name="Clusters.Rebooting.API"></a>

Para reinicializar um cluster usando a API do ElastiCache, use a ação `RebootCacheCluster`.

Para reinicializar nós específicos no cluster, use o `CacheNodeIdsToReboot` para listar os clusters específicos para reinicializar. O comando a seguir reinicializa os nós 0001, 0002 e 0004 de *my-cluster*.

```
https://elasticache.us-west-2.amazonaws.com/
   ?Action=RebootCacheCluster
   &CacheClusterId=my-cluster
   &CacheNodeIdsToReboot.member.1=0001
   &CacheNodeIdsToReboot.member.2=0002
   &CacheNodeIdsToReboot.member.3=0004
   &Version=2015-02-02
   &SignatureVersion=4
   &SignatureMethod=HmacSHA256
   &Timestamp=20150202T192317Z
   &X-Amz-Credential=<credential>
```

Para reinicializar todos os nós no cluster, use o parâmetro `CacheNodeIdsToReboot` e liste todos os ID de nós do cluster. Para obter mais informações, consulte [RebootCacheCluster](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_RebootCacheCluster.html).

# Substituição de nós (Valkey e Redis OSS)
<a name="CacheNodes.NodeReplacement"></a>

O Amazon ElastiCache atualiza frequentemente sua frota com patches e atualizações aplicados às instâncias de forma contínua. No entanto, de tempos em tempos, precisamos executar novamente seus nós do ElastiCache para aplicar atualizações obrigatórias do sistema operacional ao host subjacente. Essas substituições são necessárias para aplicar atualizações que fortalecem a segurança, a confiabilidade e o desempenho operacional.

Você tem a opção de gerenciar essas substituições a qualquer momento antes da janela agendada para a substituição do nó. Ao gerenciar uma substituição sozinho, sua instância recebe a atualização do sistema operacional quando você executa novamente o nó e a substituição de nó agendada é cancelada. Você pode continuar recebendo alertas que indicam que a substituição do nó ocorrerá. Caso já tenha atenuado manualmente a necessidade da manutenção, você pode ignorar esses alertas.

**nota**  
Os nós de cache de substituição gerados automaticamente pelo Amazon ElastiCache podem ter endereços IP diferentes. Você é responsável por revisar a configuração do aplicativo para garantir que os nós de cache estejam associados aos endereços IP apropriados.

A lista a seguir identifica as ações que você pode realizar quando o ElastiCache programa um de seus nós do Valkey ou Redis OSS para substituição. Para agilizar a busca das informações de que você precisa para sua situação, escolha no menu a seguir.
+ [Do nothing](#DoNothing): deixar que o Amazon ElastiCache substitua o nó conforme programado.
+ [Change your maintenance window](#ChangeWindow): alterar sua janela de manutenção para um melhor momento.
+ Configurações do Valkey ou Redis OSS (modo cluster habilitado)
  + [Replace the only node in any Valkey or Redis OSS cluster](#ReplaceStandalone): um procedimento para substituir um nó em um cluster do Valkey ou Redis OSS usando backup e restauração.
  + [Replace a replica node in any Valkey or Redis OSS cluster](#ReplaceReplica): um procedimento para substituir uma réplica de leitura em qualquer cluster do Valkey ou Redis OSS ao aumentar e diminuir a contagem de réplicas sem tempo de inatividade do cluster.
  + [Replace any node in a Valkey or Redis OSS (cluster mode enabled) shard](#ReplaceShardNode): um procedimento dinâmico sem tempo de inatividade do cluster para substituir um nó em um cluster do Valkey ou Redis OSS (modo cluster habilitado) com aumento ou redução de escala na horizontal.
+ Configurações do Valkey ou Redis OSS (modo cluster desabilitado)
  + [Replace the only node in any Valkey or Redis OSS cluster](#ReplaceStandalone): procedimento para substituir qualquer nó em um cluster do Valkey ou Redis OSS usando backup e restauração.
  + [Replace a replica node in any Valkey or Redis OSS cluster](#ReplaceReplica): um procedimento para substituir uma réplica de leitura em qualquer cluster do Valkey ou Redis OSS ao aumentar e diminuir a contagem de réplicas sem tempo de inatividade do cluster.
  + [Replace a node in a Valkey or Redis OSS (cluster mode disabled) cluster](#ReplaceStandaloneClassic): procedimento para substituir um nó em um cluster do Valkey ou Redis OSS (modo cluster desabilitado) usando replicação.
  + [Replace a Valkey or Redis OSS (cluster mode disabled) read-replica](#ReplaceReadReplica): um procedimento para substituir manualmente uma réplica de leitura em um grupo de replicação do Valkey ou Redis OSS (modo cluster desabilitado).
  + [Replace a Valkey or Redis OSS (cluster mode disabled) primary node](#ReplacePrimary): um procedimento para substituir manualmente o nó primário em um grupo de replicação do Valkey ou Redis OSS (modo cluster desabilitado).

**Opções de substituição de nós do Valkey e Redis OSS**
+ **Não fazer nada**: se você não fizer nada, o ElastiCache substituirá o nó conforme programado. 

   

  Para configurações sem cluster com failover automático habilitado, os clusters no Valkey 7.2 e posteriores e no Redis OSS 5.0.6 e posteriores concluem a substituição enquanto o cluster permanece on-line e atende às solicitações de gravação recebidas. Para clusters habilitados para failover automático no Redis OSS 4.0.10 ou anteriores, você poderá observar uma breve interrupção da gravação, de até alguns segundos, associada à atualização do DNS. 

  Se o nó for membro de um cluster habilitado para failover automático, o ElastiCache para Valkey ou Redis OSS fornecerá maior disponibilidade durante a aplicação de patches, as atualizações e outras substituições de nós relacionadas à manutenção.

   

  As configurações de cluster ElastiCache que estão definidas para usar clientes de cluster ElastiCache para Valkey ou Redis OSS agora são concluídas enquanto o cluster atende às solicitações de gravação recebidas. 

   

  Para configurações sem cluster com failover automático habilitado, os clusters no Valkey 7.2 e posteriores e no Redis OSS 5.0.6 e posteriores concluem a substituição enquanto o cluster permanece on-line e atende às solicitações de gravação recebidas. Para clusters habilitados para failover automático no Redis OSS 4.0.10 ou anteriores, você poderá observar uma breve interrupção da gravação, de até alguns segundos, associada à atualização do DNS. 

   

  Se o nó for autônomo, o Amazon ElastiCache primeiro ativará um nó de substituição e depois fará a sincronização a partir do nó existente. O nó existente não está disponível para solicitações de serviço durante esse período. Uma vez concluída a sincronização, o nó existente é encerrado, e o novo nó assume seu lugar. O ElastiCache faz o melhor esforço possível para reter seus dados durante esta operação. 

   
+ **Mudar sua janela de manutenção**: para eventos de manutenção programada, você recebe um email ou uma notificação do evento do ElastiCache. Nesses casos, se você mudar sua janela de manutenção antes da hora de substituição programada, o nó será substituído no novo horário. Para obter mais informações, consulte:
  + [Modificação de um cluster do ElastiCache](Clusters.Modify.md)
  + [Modificação de um grupo de replicação](Replication.Modify.md)
**nota**  
A capacidade de alterar sua janela de substituição movendo sua janela de manutenção só está disponível quando a notificação do ElastiCache inclui uma janela de manutenção. Se a notificação não inclui uma janela de manutenção, não é possível alterar a janela de substituição.

  Por exemplo, digamos que seja quinta-feira, 9 de novembro, às 15h e a próxima janela de manutenção seja sexta-feira, 10 de novembro, às 17h. Veja estes três cenários e seus resultados:
  + Você altera sua janela de manutenção para sexta-feira, 16h (após a data e hora atual e antes da próxima janela de manutenção programada). O nó é substituído na sexta-feira, 10 de novembro, às 16h.
  + Você altera sua janela de manutenção para sábado, 16h (após a data e hora atual e a próxima janela de manutenção programada). O nó é substituído no sábado, 11 de novembro, às 16h.
  + Você altera sua janela de manutenção para quarta-feira, 16h (dia da semana anterior à data e hora atual). O nó é substituído na próxima quarta-feira, 15 de novembro, às 16h.

  Para instruções, consulte [Gerenciamento de manutenção de cluster do ElastiCache](maintenance-window.md).

   
+ **Substituir o único nó em qualquer cluster do Valkey ou Redis OSS**: caso o cluster não tenha réplicas de leitura, você pode usar o procedimento a seguir para substituir o nó.

**Para substituir o único nó usando backup e restauração**

  1. Crie um snapshot do cluster do nó. Para instruções, consulte [Realização de backups manuais](backups-manual.md).

  1. Crie um novo cluster propagando-o a partir do snapshot. Para instruções, consulte [Restauração de um backup para um novo cache](backups-restoring.md).

  1. Exclua o cluster com o nó programado para substituição. Para instruções, consulte [Excluindo um cluster no ElastiCache](Clusters.Delete.md).

  1. No seu aplicativo, substitua o endpoint do nó antigo pelo endpoint do novo nó.

   
+ **Substituir um nó de réplica em qualquer cluster do Valkey ou Redis OSS**: para substituir um cluster de réplica, aumente sua contagem de réplicas. Para fazer isso, adicione uma réplica e diminua a contagem de réplicas removendo a réplica que deseja substituir. Esse processo é dinâmico e não tem tempo de inatividade do cluster.
**nota**  
Caso o fragmento ou o grupo de replicação já tenha cinco réplicas, reverta as etapas 1 e 2.

**Para substituir uma réplica em qualquer cluster do Valkey ou Redis OSS**

  1. Aumente a contagem de réplicas adicionando uma réplica ao estilhaço ou ao grupo de replicação. Para obter mais informações, consulte [Aumento do número de réplicas em um fragmento](increase-replica-count.md).

  1. Exclua a réplica que você deseja substituir. Para obter mais informações, consulte [Diminuição do número de réplicas em um fragmento](decrease-replica-count.md).

  1. Atualize os endpoints no aplicativo.

   
+ **Substituir qualquer nó em um fragmento do Valkey ou Redis OSS (modo cluster habilitado)**: para substituir o nó em um cluster sem nenhum tempo de inatividade, use a refragmentação on-line. Primeiro adicione um estilhaço por expansão e, depois, exclua o estilhaço com o nó a ser substituído por redução.

**Para substituir qualquer nó em um cluster do Valkey ou Redis OSS (modo cluster habilitado)**

  1. Aumentar: adicione mais um estilhaço com a mesma configuração que o estilhaço existente que contém o nó a ser substituído. Para obter mais informações, consulte [Adição de fragmentos com refragmentação online](scaling-redis-cluster-mode-enabled.md#redis-cluster-resharding-online-add). 

  1. Diminuir: exclua o estilhaço com o nó a ser substituído. Para obter mais informações, consulte [Remoção de fragmentos com refragmentação online](scaling-redis-cluster-mode-enabled.md#redis-cluster-resharding-online-remove).

  1. Atualize os endpoints no aplicativo.

   
+ **Substituir um nó em um cluster do Valkey ou Redis OSS (modo cluster desabilitado)**: se o cluster for um cluster do Valkey ou Redis OSS (modo cluster desabilitado) sem nenhuma réplica de leitura, use o procedimento a seguir para substituir o nó.

**Como substituir o nó usando a replicação (somente para o modo de cluster desabilitado)**

  1. Adicione a replicação ao cluster com o nó programado para substituição como primário. Não habilite o recurso Multi-AZ nesse cluster. Para instruções, consulte [Para adicionar replicação a um cluster do Valkey ou Redis OSS sem fragmentos](Clusters.AddNode.md#AddReplication.CON).

  1. Adicione uma réplica de leitura ao cluster. Para instruções, consulte [Para adicionar nós a um ElastiCache cluster (console)](Clusters.AddNode.md#AddNode.CON).

  1. Promova a réplica de leitura recém-criada para primário. Para instruções, consulte [Promoção de uma réplica de leitura a primário, para grupos de replicação do Valkey ou Redis OSS (modo cluster desabilitado)](Replication.PromoteReplica.md).

  1. Exclua o nó agendado para substituição. Para instruções, consulte [Removendo nós de um ElastiCache cluster](Clusters.DeleteNode.md).

  1. No seu aplicativo, substitua o endpoint do nó antigo pelo endpoint do novo nó.

   
+ **Substituir uma réplica de leitura do Valkey ou Redis OSS (modo cluster desabilitado)**: se o nó for uma réplica de leitura, substitua o nó.

  Se o cluster tiver apenas um nó de réplica e o recurso Multi-AZ estiver habilitado, você deverá desabilitar o Multi-AZ antes de excluir a réplica. Para instruções, consulte [Modificação de um grupo de replicação](Replication.Modify.md).

**Para substituir uma réplica de leitura do Valkey ou Redis OSS (modo cluster desabilitado)**

  1. Exclua a réplica programada para substituição. Para instruções, consulte:
     + [Diminuição do número de réplicas em um fragmento](decrease-replica-count.md)
     + [Removendo nós de um ElastiCache cluster](Clusters.DeleteNode.md)

  1. Adicione uma nova réplica para substituir a que está programada para substituição. Se você usar o mesmo nome que a réplica que acabou de excluir, ignore a etapa 3. Para instruções, consulte:
     + [Aumento do número de réplicas em um fragmento](increase-replica-count.md)
     + [Adição de uma réplica de leitura do Valkey ou do Redis OSS (modo cluster desabilitado)](Replication.AddReadReplica.md)

  1. No seu aplicativo, substitua o endpoint da réplica antiga pelo endpoint da nova réplica.

  1. Se você tiver desabilitado o recurso Multi-AZ no início, reabilite-o agora. Para instruções, consulte [Habilitar Multi-AZ](AutoFailover.md#AutoFailover.Enable).

   
+ **Substituir um nó primário do Valkey ou Redis OSS (modo cluster desabilitado)**: se o nó for o nó primário, primeiro promova uma réplica de leitura para primário. Depois, exclua a réplica usada para ser o nó principal.

  Se o cluster tiver apenas uma réplica e o recurso Multi-AZ estiver habilitado, você deverá desabilitar o Multi-AZ antes de excluir a réplica na etapa 2. Para instruções, consulte [Modificação de um grupo de replicação](Replication.Modify.md).

**Para substituir um nó primário do Valkey ou Redis OSS (modo cluster desabilitado)**

  1. Promover uma réplica de leitura para primário. Para instruções, consulte [Promoção de uma réplica de leitura a primário, para grupos de replicação do Valkey ou Redis OSS (modo cluster desabilitado)](Replication.PromoteReplica.md).

  1. Exclua o nó programado para substituição (o primário antigo). Para instruções, consulte [Removendo nós de um ElastiCache cluster](Clusters.DeleteNode.md).

  1. Adicione uma nova réplica para substituir a programada para substituição. Se você usar o mesmo nome que o nó que acabou de excluir, poderá ignorar a alteração de endpoints no seu aplicativo.

     Para instruções, consulte [Adição de uma réplica de leitura do Valkey ou do Redis OSS (modo cluster desabilitado)](Replication.AddReadReplica.md).

  1. No seu aplicativo, substitua o endpoint do nó antigo pelo endpoint do novo nó.

  1. Se você tiver desabilitado o recurso Multi-AZ no início, reabilite-o agora. Para instruções, consulte [Habilitar Multi-AZ](AutoFailover.md#AutoFailover.Enable).

   

# Substituição de nós (Memcached)
<a name="CacheNodes.NodeReplacement-mc"></a>

O Amazon ElastiCache for Memcached atualiza frequentemente sua frota com patches e atualizações aplicados às instâncias de forma contínua. No entanto, de tempos em tempos, precisamos executar novamente seus nós do ElastiCache for Memcached para aplicar atualizações obrigatórias do sistema operacional ao host subjacente. Essas substituições são necessárias para aplicar atualizações que fortalecem a segurança, a confiabilidade e o desempenho operacional.

Você tem a opção de gerenciar essas substituições a qualquer momento antes da janela agendada para a substituição do nó. Ao gerenciar uma substituição sozinho, sua instância recebe a atualização do sistema operacional quando você executa novamente o nó e a substituição de nó agendada é cancelada. Você pode continuar recebendo alertas que indicam que a substituição do nó ocorrerá. Caso já tenha atenuado manualmente a necessidade da manutenção, você pode ignorar esses alertas.

**nota**  
Os nós de cache de substituição gerados automaticamente pelo Amazon ElastiCache podem ter endereços IP diferentes. Você é responsável por revisar a configuração do aplicativo para garantir que os nós de cache estejam associados aos endereços IP apropriados.

A lista a seguir identifica as ações que você pode realizar quando o ElastiCache programa um de seus nós do Memcached para substituição.
+ **Não fazer nada**: se você não fizer nada, o ElastiCache substituirá o nó conforme programado. Quando o ElastiCache substitui automaticamente o nó por um novo nó, o novo nó fica inicialmente vazio.
+ **Mudar sua janela de manutenção** para eventos de manutenção programada, você recebe um email ou uma notificação do evento do ElastiCache. Nesse caso, se você mudar sua janela de manutenção antes da hora de substituição programada, o nó será substituído no novo horário. Para obter mais informações, consulte [Modificação de um cluster do ElastiCache](Clusters.Modify.md).
**nota**  
A capacidade de alterar sua janela de substituição movendo sua janela de manutenção só está disponível quando a notificação do ElastiCache inclui uma janela de manutenção. Se a notificação não inclui uma janela de manutenção, não é possível alterar a janela de substituição.

  Por exemplo, digamos que seja quinta-feira, 9 de novembro, às 15h e a próxima janela de manutenção seja sexta-feira, 10 de novembro, às 17h. Veja estes três cenários e seus resultados:
  + Você altera sua janela de manutenção para sexta-feira, 16h (após a data e hora atual e antes da próxima janela de manutenção programada). O nó é substituído na sexta-feira, 10 de novembro, às 16h.
  + Você altera sua janela de manutenção para sábado, 16h (após a data e hora atual e a próxima janela de manutenção programada). O nó é substituído no sábado, 11 de novembro, às 16h.
  + Você altera sua janela de manutenção para quarta-feira, 16h (dia da semana anterior à data e hora atual). O nó é substituído na próxima quarta-feira, 15 de novembro, às 16h.

  Para instruções, consulte [Gerenciamento de manutenção de cluster do ElastiCache](maintenance-window.md).
+ **Substituir manualmente o nó** se você precisar substituir o nó antes da próxima janela de manutenção, substitua o nó manualmente.

  Se você substituir o nó manualmente, as chaves serão redistribuídas. Essa redistribuição causa perdas no cache.

**Para substituir manualmente um nó Memcached**

  1. Exclua o nó agendado para substituição. Para instruções, consulte [Removendo nós de um ElastiCache cluster](Clusters.DeleteNode.md). 

  1. Adicione um novo nó ao cluster. Para instruções, consulte [Adicionar nós a um ElastiCache cluster](Clusters.AddNode.md). 

  1. Se você não estiver usando a descoberta automática neste cluster, consulte a aplicação e substitua todas as instâncias do endpoint do nó anterior pelo endpoint do novo nó.

# Nós reservados
<a name="CacheNodes.Reserved"></a>

Reservar um ou mais nós do ElastiCache pode ser uma maneira de reduzir custos. Para nós reservados, é necessário pagar uma taxa adiantada que depende do tipo de nó e da duração da reserva, um ou três anos. 

Para ver se os nós reservados são uma economia para seus casos de uso, primeiro determine o tamanho do nó e o número de nós necessários. Depois, estime o uso do nó e compare o custo total de usar nós sob demanda e nós reservados. Você pode combinar e misturar o uso de nós reservados e sob demanda nos seus clusters. Para obter informações de preços, consulte [Definição de preço do Amazon ElastiCache](https://aws.amazon.com/elasticache/pricing/).

**Topics**
+ [Gerenciamento de custos com nós reservados](#reserved-nodes)
+ [Ofertas de nós reservados padrão](#reserved-nodes-standard)
+ [Tamanho de nós reservados flexíveis](#reserved-nodes-size)
+ [Excluir um nó reservado](#reserved-nodes-deleting)
+ [Ofertas de nós reservados herdados](#reserved-nodes-utilization)
+ [Obtenção de informações sobre ofertas de nós reservados](#reserved-nodes-offerings)
+ [Compra de um nó reservado](#reserved-nodes-purchasing)
+ [Obtenção de informações sobre seus nós reservados](#reserved-nodes-describing)

## Gerenciamento de custos com nós reservados
<a name="reserved-nodes"></a>

Reservar um ou mais nós pode ser uma maneira de reduzir custos. Para nós reservados, é necessário pagar uma taxa adiantada que depende do tipo de nó e da duração da reserva, um ou três anos. Essa cobrança é muito menor do que a cobrança de uso por hora dos nós sob demanda. 

Para ver se os nós reservados são uma economia para seus casos de uso, primeiro determine o tamanho do nó e o número de nós necessários. Depois, estime o uso do nó e compare o custo total de usar nós sob demanda e nós reservados. Você pode combinar e misturar o uso de nós reservados e sob demanda nos seus clusters. Para obter informações de preços, consulte [Definição de preço do Amazon ElastiCache](https://aws.amazon.com/elasticache/pricing/).

A região da AWS, o tipo de nó e o tempo de duração devem ser escolhidos no ato da compra e não podem ser alterados posteriormente.

Você pode usar o Console de gerenciamento da AWS, a AWS CLI ou a API do ElastiCache para listar e comprar ofertas de nós reservados disponíveis.

Para obter mais informações sobre nós reservados, consulte [Nós reservados do Amazon ElastiCache](https://aws.amazon.com/elasticache/reserved-cache-nodes/).

## Ofertas de nós reservados padrão
<a name="reserved-nodes-standard"></a>

Ao comprar uma instância de nó reservado (RI) no Amazon ElastiCache, você pode adquirir um compromisso de obter uma taxa com desconto sobre um tipo de instância de nó e região da AWS específicos para a duração da instância de nó reservado. Para usar uma instância de Nós Reservados do Amazon ElastiCache, uma nova instância do nó do ElastiCache deve ser criada, como faria para uma instância sob demanda.

Se as especificações da nova instância de nó reservado corresponderem às de uma instância de nó reservado existente para a sua conta, será cobrada a taxa de desconto oferecida para a instância de nó reservado. Caso contrário, uma taxa sob demanda será cobrada para a instância do nó. Esses IRs padrão estão disponíveis a partir das famílias de instâncias R5 e M5. 

**nota**  
Todos os tipos de ofertas discutidos a seguir estão disponíveis para períodos de vigência de um e três anos.

**Tipos de oferta**  
**Sem adiantamento ** O RI fornece acesso a uma instância ElastiCache reservado sem a necessidade de pagamento adiantado. Sua instância do ElastiCache reservado *sem adiantamento* cobra uma taxa por hora com desconto a cada hora dentro do prazo, independentemente do uso. 

**Adiantamento parcial** A RI exige que uma parte da instância reservada do ElasticCache seja paga antecipadamente. As horas restantes do período de vigência serão cobradas com base em uma taxa horária com desconto, independentemente do uso. Essa opção é a substituição da opção antiga de *utilização pesada*, que é explicada na próxima seção.

A RI **adiantamento integral** exige que o pagamento integral seja feito no início do período de vigência da RI. Você não incorrem em outros custos pelo restante do período, independentemente do número de horas usadas. 

## Tamanho de nós reservados flexíveis
<a name="reserved-nodes-size"></a>

Todos os nós reservados têm tamanho flexível. Ao adquirir um nó reservado, uma das especificações feitas é o tipo de nó, por exemplo, cache.r6g.xlarge. Para obter mais informações sobre tipos de nós, consulte [Definição de preços do Amazon ElastiCache](https://aws.amazon.com/elasticache/pricing/ ).

Se você tiver um nó e precisar escalá-lo para uma capacidade maior, o nó reservado será automaticamente aplicado ao nó escalado. Ou seja, seus nós reservados são automaticamente aplicados ao uso de qualquer tamanho na mesma família de nós. Os nós reservados de tamanho flexível estão disponíveis para nós com a mesma região da AWS. Nós reservados de tamanho flexível só podem reduzir a escala horizontalmente em suas famílias de nós. Por exemplo, um nó reservado para um cache.r6g.xlarge pode ser aplicado a um cache.r6g.2xlarge, mas não a um cache.r6gd.large, porque cache.r6g e cache.r6gd são famílias de nós diferentes. 

Flexibilidade de tamanho significa que você pode se mover livremente entre configurações dentro da mesma família de nós. Por exemplo, você pode passar de um nó reservado r6g.xlarge (8 unidades normalizadas) para dois nós reservados r6g.large (8 unidades normalizadas) (2\$14 = 8 unidades normalizadas) na mesma região da AWS sem custo adicional.

### Atualização de nós do Redis OSS para o Valkey
<a name="reserved-nodes-upgrade-to-valkey"></a>

Com o lançamento do Valkey no ElastiCache, agora você pode aplicar seu desconto de nós reservados do Redis OSS ao mecanismo de cache Valkey. Você pode realizar o upgrade do Redis OSS para o Valkey e ainda se beneficiar dos contratos e reservas existentes. Além de poder aplicar seus benefícios no mecanismo e família de nós de cache, você pode até receber mais valor incremental. O Valkey tem um preço de 20% de desconto em relação ao Redis OSS e, com a flexibilidade de nós reservados, você pode usar seus nós reservados do Redis OSS para cobrir 20% mais nós em execução do Valkey. 

Para calcular a taxa de desconto, cada combinação de nó e mecanismo do ElastiCache tem um fator de normalização que é medido em unidades. As unidades de nós reservados podem ser aplicadas a qualquer nó em execução dentro da família de instâncias do nó reservado para um determinado mecanismo. Os nós reservados do Redis OSS podem ser aplicados adicionalmente em todos os mecanismos para cobrir a execução dos nós do Valkey. Como o Valkey tem um preço com desconto em relação ao Redis OSS e ao Memcached, suas unidades para um determinado tipo de instância são mais baixas, o que permite que um nó reservado do Redis OSS cubra mais nós do Valkey.

Como exemplo, digamos que você tenha comprado um nó reservado para um cache.r7g.4xlarge para o mecanismo Redis OSS (32 unidades) e esteja executando um nó cache.r7g.4xlarge do Redis OSS (32 unidades). Se você realizar o upgrade do nó para Valkey, o fator de normalização do nó em execução cai para 25,6 unidades, e seu nó reservado existente fornece 6,4 unidades adicionais para usar em qualquer outro nó do Valkey ou Redis OSS em execução na família cache.r7g na região. Você pode usar isso para cobrir 25% de outro nó cache.r7g.4xlarge do Valkey na conta (25,6 unidades) ou 100% de um nó cache.r7g.xlarge do Valkey (6,4 unidades).



### Comparação de uso com unidades normalizadas
<a name="reserved-nodes-size.normalized"></a>

Você pode comparar o uso de diferentes tamanhos de nós reservados usando unidades normalizadas. Por exemplo, uma hora de uso em dois nós cache.r6g.4xlarge é equivalente a 16 horas de uso em um cache.r6g.large. A tabela a seguir mostra o número de unidades normalizadas para cada tamanho de nó:


****  

| Tamanho do nó | Unidades normalizadas com Redis OSS ou Memcached | Unidades normalizadas com o Valkey | 
| --- | --- | --- | 
| micro | 0,5 | 0.4 | 
| pequeno | 1 | 8. | 
| médio | 2 | 1.6 | 
| grande | 4 | 3.2 | 
| xlarge | 8 | 6.4 | 
| 2xlarge | 16 | 12.8 | 
| 4xlarge | 32 | 25.6 | 
| 6xlarge | 48 | 38.4 | 
| 8xlarge | 64 | 51.2 | 
| 10xlarge | 80 | 64 | 
| 12xlarge | 96 | 76.8 | 
| 16xlarge | 128 | 102.4 | 
| 24xlarge | 192 | 153.6 | 

Por exemplo, você compra um nó reservado cache.r6gd.xlarge e tem dois nós reservados cache.r6gd.large em execução na sua conta na mesma região da AWS. Nesse caso, o benefício de faturamento é aplicado integralmente a ambos os nós.

![\[Region containing a cache.r6gd.xlarge reserved node with two cache.r6gd.large nodes inside.\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ri1.png)


Ou, se você tiver uma instância cache.r6gd.2xlarge em execução na sua conta na mesma região da AWS, o benefício de cobrança será aplicado a 50% do uso do nó reservado.

![\[Diagram showing a cache.r6gd.xlarge reserved node region containing a cache.r6gd.2xlarge instance.\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ri2.png)


## Excluir um nó reservado
<a name="reserved-nodes-deleting"></a>

Os períodos de vigência de um nó reservado envolvem um compromisso de um ou três anos. Você não pode cancelar um nó reservado. No entanto, você pode excluir um nó coberto por um desconto de nó reservado. O processo de exclusão de um nó coberto por um desconto de nó reservado é o mesmo que o de qualquer outro nó.

Se excluir um nó coberto por um desconto de nó reservado, você poderá iniciar outro nó com especificações compatíveis. Neste caso, você continua recebendo a taxa com desconto durante o período de vigência da reserva (um ou três anos).

## Ofertas de nós reservados herdados
<a name="reserved-nodes-utilization"></a>

Existem três níveis de reservas de nós herdados: utilização pesada, utilização média e utilização leve. Os nós podem ser reservados em qualquer nível de utilização para um ou três anos. O tipo de nó, o nível de utilização e o prazo de reserva impactarão seus custos totais. Verifique as economias que os nós reservados podem fornecer aos seus negócios, comparando vários modelos antes de comprar nós reservados.

Os nós comprados em um nível ou período de vigência de utilização não podem ser convertidos para um nível ou período de vigência de utilização diferente.

**Níveis de utilização**  
*Nós reservados de utilização pesada* habilitam cargas de trabalho que possuem uma linha de base consistente de cargas de trabalho de capacidade ou estacionárias. Os nós reservados de utilização pesada exigem um alto compromisso antecipado. Porém, se você planeja executar mais de 79% do período de vigência do nó reservado, poderá obter as maiores economias (até 70% de desconto no preço sob demanda). Com nós reservados de utilização pesada, você paga uma taxa única. Em seguida, isso é seguido de uma taxa horária inferior durante o período de vigência, independentemente de o seu nó estar em execução.

*Nós reservados de utilização média* são a melhor opção se você planeja usar seus nós reservados durante uma grande parcela de tempo, mas deseja uma taxa única mais baixa ou parar de pagar pelo seu nó ao desligá-lo. Os nós reservados de utilização média são uma opção mais econômica quando você planeja executar mais de 40% do período de vigência de nós reservados. Essa opção pode render até 64% de desconto no preço sob demanda. Com nós reservados de utilização média, você paga uma taxa única um pouco maior que a de nós reservados de utilização leve e recebe taxas de uso por hora mais baixas ao executar um nó.

*Nós reservados de utilização leve* são ideais para cargas de trabalho periódicas que funcionam apenas algumas horas por dia ou alguns dias por semana. Usando nós reservados de utilização leve, você paga uma taxa única seguida de uma taxa de uso por hora com desconto quando seu nó está sendo executado. Você pode começar a economizar quando seu nó estiver executando mais de 17% do período de vigência do nó reservado. Você pode economizar até 56% nas taxas sob demanda durante todo o período de vigência de seu nó reservado.


**Ofertas de nós reservados herdados**  

| Oferta | Custo inicial | Taxa de uso | Vantagem | 
| --- | --- | --- | --- | 
|  Utilização pesada |  Mais alto |  A taxa por hora mais baixa. Aplicada ao período de vigência inteiro, independentemente de você estar ou não usando o nó reservado. |  O custo geral mais baixo se você planeja executar seus nós reservados mais de 79% do período de vigência de três anos. | 
|  Utilização média |  Médio |  Taxa de uso por hora cobrada por cada hora em que o nó está sendo executado. Nenhuma cobrança por hora quando o nó não está sendo executado. |  Adequada para cargas de trabalho elásticas ou quando você espera um uso moderado, superior a 40% do período de vigência de três anos. | 
|  Utilização leve |  Menor |  Taxa de uso por hora cobrada por cada hora em que o nó está sendo executado. Nenhuma cobrança por hora quando o nó não está sendo executado. Taxas por hora são as mais altas entre todos os tipos de oferta, mas aplicam-se somente quando o nó reservado está sendo executado. |  Custo geral mais alto se você planeja executar o tempo todo. Contudo, esse é o custo geral mais baixo se você planejar usar seu nó reservado com pouca frequência, ou seja, mais de cerca de 15% de um período de vigência de três anos. | 
|  Uso sob demanda (sem nós reservados) |  Nenhum |  Taxa horária mais alta. Aplicada sempre que o nó está sendo executado. |  Maior custo por hora. | 

Para obter mais informações, consulte [Definição de preço Amazon ElastiCache](https://aws.amazon.com/elasticache/pricing/).

## Obtenção de informações sobre ofertas de nós reservados
<a name="reserved-nodes-offerings"></a>

Antes de comprar nós reservados, você pode obter informações sobre ofertas de nós reservados disponíveis. 

Os exemplos a seguir mostram como obter a definição de preço e informações sobre ofertas de nós reservados disponíveis usando o Console de gerenciamento da AWS, a AWS CLI e a API do ElastiCache. 

**Topics**
+ [Utilização do Console de gerenciamento da AWS](#reserved-nodes-offerings-console)
+ [Como usar o AWS CLI](#reserved-nodes-offerings-cli)
+ [Uso da API do ElastiCache](#reserved-nodes-offerings-api)

### Obtenção de informações sobre ofertas de nós reservados (console)
<a name="reserved-nodes-offerings-console"></a>

Para obter definição de preço e outras informações sobre ofertas de clusters reservados disponíveis usando o Console de gerenciamento da AWS, use o procedimento a seguir.

**Para obter informações sobre ofertas de nós reservados disponíveis**

1. Faça login no Console de gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel de navegação, selecione **Reserved Nodes**.

1. Escolha **Purchase Reserved Nodes** (Comprar nós reservados).

1. Em **Mecanismo**, escolha Valkey, Memcached ou Redis OSS.

1. Para determinar as ofertas disponíveis, faça seleções nas seguintes opções:
   + **Tipo de nó**
   + **Prazo**
   + **Offering Type**

   Após essas seleções, o custo por nó e o custo total de suas seleções serão exibidos em **Reservation details** (Detalhes da reserva).

1. Escolha **Cancel** para evitar a compra desses nós e gerar cobranças. 

### Obtenção de informações sobre ofertas de nós reservados (AWS CLI)
<a name="reserved-nodes-offerings-cli"></a>

Para obter preços e outras informações sobre ofertas de nós reservados disponíveis para Valkey ou Redis OSS, digite o seguinte comando em um prompt de comando:

```
1. aws elasticache describe-reserved-cache-nodes-offerings
```

Esta operação produz uma saída semelhante à seguinte (formato JSON):

```
 {
            "ReservedCacheNodesOfferingId": "0xxxxxxxx-xxeb-44ex-xx3c-xxxxxxxx072",
            "CacheNodeType": "cache.xxx.large",
            "Duration": 94608000,
            "FixedPrice": XXXX.X,
            "UsagePrice": X.X,
            "ProductDescription": "redis",
            "OfferingType": "All Upfront",
            "RecurringCharges": [
                {
                    "RecurringChargeAmount": X.X,
                    "RecurringChargeFrequency": "Hourly"
                }
            ]
  },
  {
            "ReservedCacheNodesOfferingId": "0xxxxxxxx-xxeb-44ex-xx3c-xxxxxxxx072",
            "CacheNodeType": "cache.xxx.xlarge",
            "Duration": 94608000,
            "FixedPrice": XXXX.X,
            "UsagePrice": X.X,
            "ProductDescription": "redis",
            "OfferingType": "Partial Upfront",
            "RecurringCharges": [
                {
                    "RecurringChargeAmount": X.XXX,
                    "RecurringChargeFrequency": "Hourly"
                }
            ]
  },
  {
            "ReservedCacheNodesOfferingId": "0xxxxxxxx-xxeb-44ex-xx3c-xxxxxxxx072",
            "CacheNodeType": "cache.xxx.large",
            "Duration": 31536000,
            "FixedPrice": X.X,
            "UsagePrice": X.X,
            "ProductDescription": "redis",
            "OfferingType": "No Upfront",
            "RecurringCharges": [
                {
                    "RecurringChargeAmount": X.XXX,
                    "RecurringChargeFrequency": "Hourly"
                }
            ]
}
```

Para obter preços e outras informações sobre ofertas de nós reservados disponíveis para Memcached, digite o seguinte comando em um prompt de comando:

```
 {
            "ReservedCacheNodesOfferingId": "0xxxxxxxx-xxeb-44ex-xx3c-xxxxxxxx072",
            "CacheNodeType": "cache.xxx.large",
            "Duration": 94608000,
            "FixedPrice": XXXX.X,
            "UsagePrice": X.X,
            "ProductDescription": "memcached",
            "OfferingType": "All Upfront",
            "RecurringCharges": [
                {
                    "RecurringChargeAmount": X.X,
                    "RecurringChargeFrequency": "Hourly"
                }
            ]
    },
	{
            "ReservedCacheNodesOfferingId": "0xxxxxxxx-xxeb-44ex-xx3c-xxxxxxxx072",
            "CacheNodeType": "cache.xxx.xlarge",
            "Duration": 94608000,
            "FixedPrice": XXXX.X,
            "UsagePrice": X.X,
            "ProductDescription": "memcached",
            "OfferingType": "Partial Upfront",
            "RecurringCharges": [
                {
                    "RecurringChargeAmount": X.XXXX,
                    "RecurringChargeFrequency": "Hourly"
                }
            ]
     },
     {
            "ReservedCacheNodesOfferingId": "0xxxxxxxx-xxeb-44ex-xx3c-xxxxxxxx072",
            "CacheNodeType": "cache.xx.12xlarge",
            "Duration": 31536000,
            "FixedPrice": X.X,
            "UsagePrice": X.X,
            "ProductDescription": "memcached",
            "OfferingType": "No Upfront",
            "RecurringCharges": [
                {
                    "RecurringChargeAmount": X.XXXX,
                    "RecurringChargeFrequency": "Hourly"
                }
            ]
}
```

Para obter mais informações, consulte [describe-reserved-cache-nodes-offerings](https://docs.aws.amazon.com/cli/latest/reference/elasticache/describe-reserved-cache-nodes-offerings.html) na AWS CLI Referência.

### Obtenção de informações sobre ofertas de nós reservados (API do ElastiCache)
<a name="reserved-nodes-offerings-api"></a>

Para obter informações sobre preços e informações sobre ofertas de nós reservados disponíveis, chame a ação `DescribeReservedCacheNodesOfferings`.

**Example**  

```
https://elasticache.us-west-2.amazonaws.com/
    ?Action=DescribeReservedCacheNodesOfferings
    &Version=2014-12-01
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20141201T220302Z
    &X-Amz-Algorithm
    &X-Amz-SignedHeaders=Host
    &X-Amz-Expires=20141201T220302Z
    &X-Amz-Credential=<credential>
    &X-Amz-Signature=<signature>
```

Para obter mais informações, consulte [DescribeReservedCacheNodesOfferings](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeReservedCacheNodesOfferings.html) na Referência da API do ElastiCache.

## Compra de um nó reservado
<a name="reserved-nodes-purchasing"></a>

Os exemplos a seguir mostram como comprar uma oferta de nó reservado usando o Console de gerenciamento da AWS, a AWS CLI e a API do ElastiCache. 

**Importante**  
 Seguir os exemplos desta seção gerará cobranças na sua conta da AWS que você não poderá reverter. 

**Topics**
+ [Utilização do Console de gerenciamento da AWS](#reserved-nodes-purchasing-console)
+ [Como usar o AWS CLI](#reserved-nodes-purchasing-cli)
+ [Uso da API do ElastiCache](#reserved-nodes-purchasing-api)

### Compra de um nó reservado (console)
<a name="reserved-nodes-purchasing-console"></a>

 Este exemplo mostra a compra de uma oferta de nó reservado específica, *649fd0c8-cf6d-47a0-bfa6-060f8e75e95f*, com um ID de nó reservado de *myreservationID*. 

O procedimento a seguir usa o Console de gerenciamento da AWS para comprar a oferta de nó reservado por ID de oferta.

**Para comprar nós reservados**

1. Faça login no Console de gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista de navegação, escolha o link **Reserved nodes** (Nós reservados).

1. Escolha o botão **Purchase reserved nodes** (Comprar nós reservados).

1. Em **Mecanismo**, escolha Valkey, Memcached ou Redis OSS.

1. Para determinar as ofertas disponíveis, faça seleções nas seguintes opções:
   + **Tipo de nó**
   + **Prazo**
   + **Offering Type**
   + Um **Reserved node ID** (ID de nó reservado) opcional

   Após essas seleções, o custo por nó e o custo total de suas seleções serão exibidos em **Reservation details** (Detalhes da reserva).

1. Escolha **Purchase (Comprar)**. 

### Compra de um nó reservado (AWS CLI)
<a name="reserved-nodes-purchasing-cli"></a>

 O exemplo a seguir mostra a compra de uma oferta de cluster reservado específica, *649fd0c8-cf6d-47a0-bfa6-060f8e75e95f*, com um ID de nó reservado de *myreservationID*. 

 Digite o seguinte comando em um prompt de comando: 

Para Linux, macOS ou Unix:

```
1. aws elasticache purchase-reserved-cache-nodes-offering \
2.     --reserved-cache-nodes-offering-id 649fd0c8-cf6d-47a0-bfa6-060f8e75e95f \
3.     --reserved-cache-node-id myreservationID
```

Para Windows:

```
1. aws elasticache purchase-reserved-cache-nodes-offering ^
2.     --reserved-cache-nodes-offering-id 649fd0c8-cf6d-47a0-bfa6-060f8e75e95f ^
3.     --reserved-cache-node-id myreservationID
```

 Esse comando retorna uma saída semelhante à seguinte: 

```
1. RESERVATION  ReservationId      Class           Start Time                Duration  Fixed Price  Usage Price  Count  State            Description      Offering Type
2. RESERVATION  myreservationid    cache.xx.small  2013-12-19T00:30:23.247Z  1y        XXX.XX USD   X.XXX USD    1      payment-pending  memcached        Medium Utilization
```

Para obter mais informações, consulte [purchase-reserved-cache-nodes-offering](https://docs.aws.amazon.com/cli/latest/reference/elasticache/purchase-reserved-cache-nodes-offering.html) na AWS CLI Referência.

### Compra de um nó reservado (API do ElastiCache)
<a name="reserved-nodes-purchasing-api"></a>

O exemplo a seguir mostra a compra de uma oferta de nó reservado específica, *649fd0c8-cf6d-47a0-bfa6-060f8e75e95f*, com um ID de cluster reservado de *myreservationID*. 

Chame a operação `PurchaseReservedCacheNodesOffering` com os seguintes parâmetros:
+ `ReservedCacheNodesOfferingId` = `649fd0c8-cf6d-47a0-bfa6-060f8e75e95f`
+ `ReservedCacheNodeID` = `myreservationID`
+ `CacheNodeCount` = `1`

**Example**  

```
https://elasticache.us-west-2.amazonaws.com/
    ?Action=PurchaseReservedCacheNodesOffering
    &ReservedCacheNodesOfferingId=649fd0c8-cf6d-47a0-bfa6-060f8e75e95f
    &ReservedCacheNodeID=myreservationID
    &CacheNodeCount=1
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20141201T220302Z
    &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
    &X-Amz-Date=20141201T220302Z
    &X-Amz-SignedHeaders=Host
    &X-Amz-Expires=20141201T220302Z
    &X-Amz-Credential=<credential>
    &X-Amz-Signature=<signature>
```

Para obter mais informações, consulte [PurchaseReservedCacheNodesOffering](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_PurchaseReservedCacheNodesOffering.html) na Referência da API do ElastiCache.

## Obtenção de informações sobre seus nós reservados
<a name="reserved-nodes-describing"></a>

Você pode obter informações sobre os nós reservados que você comprou usando o Console de gerenciamento da AWS, o AWS CLI e a API do ElastiCache.

**Topics**
+ [Utilização do Console de gerenciamento da AWS](#reserved-nodes-describing-console)
+ [Como usar o AWS CLI](#reserved-nodes-describing-cli)
+ [Uso da API do ElastiCache](#reserved-nodes-describing-api)

### Obtenção de informações sobre seus nós reservados (console)
<a name="reserved-nodes-describing-console"></a>

O procedimento a seguir descreve como usar o Console de gerenciamento da AWS para obter informações sobre os nós reservados que você comprou.

**Para obter informações sobre seus nós reservados comprados**

1. Faça login no Console de gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista de navegação, escolha o link **Reserved nodes** (Nós reservados).

    Os nós reservados para sua conta aparecem na lista Reserved nodes (Nós reservados). Você pode escolher qualquer um dos nós reservados na lista para ver informações detalhadas sobre o nó reservado no painel de detalhes na parte inferior do console. 

### Obtenção de informações sobre seus nós reservados (AWS CLI)
<a name="reserved-nodes-describing-cli"></a>

Para obter informações sobre nós reservados para sua a conta da AWS, digite o seguinte comando em um prompt de comando:

```
aws elasticache describe-reserved-cache-nodes
```

Esta operação produz uma saída semelhante à seguinte (formato JSON):

```
{
    "ReservedCacheNodeId": "myreservationid",
    "ReservedCacheNodesOfferingId": "649fd0c8-cf6d-47a0-bfa6-060f8e75e95f",
    "CacheNodeType": "cache.xx.small",
    "DataTiering": "disabled",
    "Duration": "31536000",
    "ProductDescription": "memcached",
    "OfferingType": "Medium Utilization",
    "MaxRecords": 0
}
```

Para obter mais informações, consulte [describe-reserved-cache-nodes](https://docs.aws.amazon.com/cli/latest/reference/elasticache/describe-reserved-cache-nodes.html) na Referência da AWS CLI.

### Obtenção de informações seus nós reservados (API do ElastiCache)
<a name="reserved-nodes-describing-api"></a>

Para obter informações sobre nós reservados para sua conta da AWS, execute a operação `DescribeReservedCacheNodes`.

**Example**  

```
https://elasticache.us-west-2.amazonaws.com/
    ?Action=DescribeReservedCacheNodes
    &Version=2014-12-01
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20141201T220302Z
    &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
    &X-Amz-Date=20141201T220302Z
    &X-Amz-SignedHeaders=Host
    &X-Amz-Expires=20141201T220302Z
    &X-Amz-Credential=<credential>
    &X-Amz-Signature=<signature>
```

Para obter mais informações, consulte [DescribeReservedCacheNodes](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeReservedCacheNodes.html) na Referência da API do ElastiCache.

# Migração de nós da geração anterior
<a name="CacheNodes.NodeMigration"></a>

Os nós de geração anterior são tipos de nó que estão sendo eliminados gradualmente. Se você não tiver clusters existentes usando um tipo de nó de geração anterior, o ElastiCache não oferece suporte à criação de novos clusters com esse tipo de nó. 

Devido à quantidade limitada de tipos de nó de geração anterior, não podemos garantir uma substituição bem-sucedida quando um nó se torna não íntegro em seu(s) cluster(s). Nesse cenário, a disponibilidade do cluster pode ser afetada negativamente.

 Recomendamos que você migre seu(s) cluster(s) para um novo tipo de nó para melhor disponibilidade e performance. Para obter um tipo de nó recomendado para migrar, consulte [Caminhos de atualização](https://aws.amazon.com/ec2/previous-generation/). Para obter uma lista completa dos tipos de nócom suporte e dos tipos de nó da geração anterior no ElastiCache, consulte [Tipos de nó compatíveis](CacheNodes.SupportedTypes.md).

## Migração de nós em um cluster do Valkey ou Redis OSS
<a name="CacheNodes.NodeMigration.Redis"></a>

O procedimento a seguir descreve como migrar seu tipo de nó de cluster do Valkey ou Redis OSS usando o Console do ElastiCache. Durante esse processo, o cluster do Valkey ou Redis OSS continuará a atender solicitações com tempo de inatividade mínimo. Dependendo da configuração do cluster, você pode ver os seguintes tempos de inatividade. As estimativas a seguir podem diferir com base em suas configurações específicas:
+ O modo cluster desabilitado (nó único) pode ver aproximadamente 60 segundos, principalmente devido à propagação do DNS.
+ O modo de cluster desabilitado (com o nó de réplica) pode ver aproximadamente um segundo para clusters que executam o Valkey 7.2 e posteriores ou o Redis OSS 5.0.6 e posteriores. Todas as versões inferiores podem experimentar aproximadamente 10 segundos.
+ O modo cluster habilitado pode ver aproximadamente 1 segundo.

**Para modificar um tipo de nó de cluster do Valkey ou Redis OSS usando o console:**

1. Faça login no console e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/home).

1. No painel de navegação, escolha **Clusters do Valkey** ou **Clusters do Redis OSS**.

1. Na lista de clusters, escolha o cluster que você deseja migrar.

1. Escolha **Actions** (Ações) e **Modify** (Modificar).

1. Escolha o novo tipo de nó na lista de tipos de nó.

1. Se quiser executar o processo de migração imediatamente, escolha **Apply immediately** (Aplicar imediatamente). Se **Apply immediately** (Aplicar imediatamente) não for escolhida, o processo de migração será realizado durante a próxima janela de manutenção do cluster.

1. Escolha **Modificar**. Se você escolheu **Apply immediately** na etapa anterior, o status do cluster mudará para **modifying**. Quando o status mudar para **available**, a modificação estará completa, e você poderá começar a usar o novo cluster.

*Para modificar um tipo de nó de cluster do Valkey ou Redis OSS usando a AWS CLI:*

Use a API [modify-replication-group](https://docs.aws.amazon.com/cli/latest/reference/elasticache/modify-replication-group.html) conforme mostrado a seguir:

Para Linux, macOS ou Unix:

```
aws elasticache modify-replication-group /
	--replication-group-id my-replication-group /
	--cache-node-type new-node-type /
	--apply-immediately
```

Para Windows:

```
aws elasticache modify-replication-group ^
	--replication-group-id my-replication-group ^
	--cache-node-type new-node-type ^
	--apply-immediately
```

Nesse cenário, o valor de *new-node-type* é o tipo de nó para o qual você está migrando. Passando o parâmetro `--apply-immediately`, a atualização será aplicada imediatamente quando o grupo de replicação fizer a transição do status **modifying** (modificando) para **available** (disponível). Se **Apply immediately** (Aplicar imediatamente) não for escolhida, o processo de migração será realizado durante a próxima janela de manutenção do cluster.

**nota**  
Se você não conseguir modificar o cluster com um erro `InvalidCacheClusterState`, você precisa remover primeiro um nó com falha de restauração.

### Correção ou remoção de nós com falha na restauração
<a name="remove-restore-failed-node"></a>

 O procedimento a seguir descreve como corrigir ou remover nós com falha na restauração pelo cluster do Valkey ou Redis OSS. Para saber mais sobre como nós do ElastiCache entram em um estado de falha na restauração, consulte [Visualizando o status ElastiCache do nó](Nodes.viewing.md). É recomendável primeiramente remover eventuais nós em um estado de falha na restauração e, em seguida, migrar os nós da geração anterior restantes no cluster do ElastiCache para um tipo de nó de uma geração mais nova e, por fim, readicionar o número de nós necessário. 

Para remover o nó com falha de restauração (console):

1. Faça login no console e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/home).

1. No painel de navegação, escolha **Clusters do Valkey** ou **Clusters do Redis OSS**.

1. Na lista de clusters, escolha o cluster do qual você deseja remover um nó.

1. Na lista de fragmentos, escolha o fragmento do qual você deseja remover um nó. Ignore esta etapa se o modo cluster estiver desabilitado para o cluster.

1. Na lista de nós, escolha o nó com um status de `restore-failed`.

1. Escolha **Actions** (Ações) e, em seguida, escolha **Delete node** (Excluir nó).

Depois de remover os nós com falha na restauração do cluster do ElastiCache, você poderá migrar para um tipo de geração mais novo. Para obter mais informações, consulte acima em [Migração de nós em um cluster do Valkey ou Redis OSS](#CacheNodes.NodeMigration.Redis).

Para readicionar nós ao cluster do ElastiCache, consulte [Adicionar nós a um ElastiCache cluster](Clusters.AddNode.md).

## Migração de nós em um cluster do Memcached
<a name="CacheNodes.NodeMigration.Memcached"></a>

Para migrar o ElastiCache for Memcached para um tipo de nó diferente, você deve criar um novo cluster, que sempre começa vazio, que sua aplicação possa preencher.

**Para migrar o tipo de nó do cluster do ElastiCache for Memcached usando o console do ElastiCache:** 
+ Crie um novo cluster com o novo tipo de nó. Para obter mais informações, consulte [Criação de um cluster do Memcached (console)](Clusters.Create-mc.md#Clusters.Create.CON.Memcached).
+ No seu aplicativo, atualize os endpoints para os endpoints do novo cluster. Para obter mais informações, consulte [Localização de endpoints de um cluster (console) (Memcached)](Endpoints.md#Endpoints.Find.Memcached)
+ Exclua o cluster antigo. Para obter mais informações, consulte [Excluindo um cluster no ElastiCache](Clusters.Delete.md)

# Gerenciamento de clusters no ElastiCache
<a name="Clusters"></a>

Um *cluster* é uma coleção de um ou mais nós de cache, todos os quais executam uma instância do software de mecanismo Valkey, Memcached e Redis OSS. Ao criar um cluster, especifique o mecanismo e a versão para que todos os nós usem.

**Clusters Valkey e Redis OSS**

O diagrama a seguir ilustra um cluster típico do Valkey ou do Redis OSS. Esses clusters podem conter um nó único ou até seis nós dentro de um fragmento (API/CLI: grupo de nós). Um cluster do Valkey ou Redis OSS (modo cluster desabilitado) de nó único não possui fragmentos e um cluster do Valkey ou Redis OSS (modo cluster desabilitado) com vários nós tem um único fragmento. Clusters do Valkey ou Redis OSS (modo cluster habilitado) podem ter até 500 fragmentos, com seus dados particionados nos fragmentos. O limite de nós ou fragmentos pode ser aumentado para um máximo de 500 por cluster se a versão do mecanismo for Valkey 7.2 e posteriores ou Redis OSS 5.0.6 e posteriores. Por exemplo, você pode optar por configurar um cluster de 500 nós que varia entre 83 fragmentos (uma primária e 5 réplicas por fragmento) e 500 fragmentos (primário único e sem réplicas). Verifique se existem endereços IP disponíveis suficientes para acomodar o aumento. As armadilhas comuns incluem as sub-redes no grupo de sub-redes têm um intervalo CIDR muito pequeno ou as sub-redes são compartilhadas e fortemente usadas por outros clusters. Para obter mais informações, consulte [Criação de um grupo de sub-redes](SubnetGroups.Creating.md). Para versões abaixo de 5.0.6, o limite é 250 por cluster.

Para solicitar um aumento de limite, consulte [Limites de serviço da AWS](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) e selecione o tipo de limite **Nodes per cluster per instance type** (Nós por cluster por tipo de instância). 

 Quando você possui múltiplos nós em um fragmento do Valkey ou Redis OSS, um dos nós é um nó primário de leitura/gravação. Todos os outros nós no estilhaço são réplicas somente leitura.

Os clusters típicos do Valkey ou Redis OSS são semelhantes ao seguinte.

![\[Imagem: clusters típicos do Valkey e Redis OSS\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-Cluster-Redis.png)


**Clusters do Memcached**

Clusters típicos do Memcached têm a seguinte aparência. Os clusters do Memcached contêm de 1 a 60 nós em que você particiona horizontalmente seus dados.

![\[Imagem: cluster Memcached típico\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-Cluster-Memcached.png)


**Operações do Elasticache para Valkey, Memcached e Redis OSS**

A maioria das operações do ElastiCache é realizada no nível do cluster. Você pode configurar um cluster com um número específico de nós e um parameter group que controla as propriedades de cada nó. Todos os nós de um cluster são do mesmo tipo e têm as mesmas configurações de parameter group e security group. 

Cada cluster deve ter um identificador de cluster. O identificador de cluster é um nome fornecido pelo cliente para o cluster. Esse identificador especifica um cluster específico ao interagir com os comandos da API do ElastiCache e da AWS CLI. O identificador de cluster deve ser exclusivo para esse cliente em uma região da AWS.

O ElastiCache oferece suporte para várias versões do mecanismo. A menos que você tenha motivos específicos, recomendamos usar a versão mais recente.

Os clusters do ElastiCache foram criados para serem acessados ao usar uma instância do Amazon EC2. Ao executar seu cluster em uma nuvem privada virtual (VPC) com base no serviço da Amazon VPC, é possível acessá-lo externamente à AWS. Para obter mais informações, consulte [Acessando ElastiCache recursos de fora AWS](accessing-elasticache.md#access-from-outside-aws).

Para obter uma lista das versões compatíveis, consulte [Mecanismos e versões compatíveis](VersionManagement.md#supported-engine-versions), [Versões compatíveis do mecanismo do Redis OSS](engine-versions.md#supported-engine-versions.redis) e [Compatível com ElastiCache versões do Memcached](engine-versions.md#supported-engine-versions-mc).

# Escolhendo um tipo de rede em ElastiCache
<a name="network-type"></a>

ElastiCache suporta as versões 4 e 6 do Protocolo de Internet (IPv4 e IPv6), permitindo que você configure seu cluster para aceitar:
+ somente IPv4 conexões,
+ somente IPv6 conexões,
+ ambos IPv4 e IPv6 conexões (pilha dupla)

IPv6 [é compatível com cargas de trabalho usando Valkey 7.2 e versões posteriores, ou Redis OSS 6.2 e versões posteriores, em todas as instâncias criadas no sistema Nitro.](https://aws.amazon.com/ec2/nitro/) Não há custos adicionais para acessar ElastiCache IPv6. 

**nota**  
A migração de clusters criados antes da disponibilidade de IPV6 /dual-stack não é suportada. A alternância entre tipos de rede em clusters recém-criados também não tem suporte.

IPv6 [é compatível com cargas de trabalho usando o Memcached 1.6.6 em diante em todas as instâncias criadas no sistema Nitro.](https://aws.amazon.com/ec2/nitro/) Não há custos adicionais para acessar ElastiCache IPv6. 

## Configurar sub-redes para o tipo de rede
<a name="network-type-subnets"></a>

Se você criar um cluster em uma Amazon VPC, deverá especificar um grupo de sub-redes. ElastiCache usa esse grupo de sub-redes para escolher uma sub-rede e endereços IP dentro dessa sub-rede para associar aos seus nós. ElastiCache os clusters exigem uma sub-rede de pilha dupla com IPv6 endereços atribuídos a eles para operar no modo de pilha dupla e uma IPv6 sub-rede somente para operar como somente. IPv4 IPv6

## Usar pilha dupla
<a name="network-type-dual-stack"></a>

Ao usar o ElastiCache Redis OSS no modo de cluster ativado, do ponto de vista de um aplicativo, conectar-se a todos os nós do cluster por meio do endpoint de configuração não é diferente de conectar-se diretamente a um nó de cache individual. Para conseguir isso, um cliente com reconhecimento de cluster deve participar de um processo de descoberta de clusters e solicitar as informações de configuração de todos os nós. O protocolo de descoberta do Redis oferece suporte a apenas um IP por nó. 

Ao criar um cluster com ElastiCache for Memcached e escolher dual-stack como o tipo de rede, você precisa designar um tipo de descoberta de IP — ou. IPv4 IPv6 ElastiCache usará como padrão o tipo de rede e a descoberta de IP IPv6, mas isso pode ser alterado. Se você usar a Descoberta automática, somente os endereços IP do tipo de IP escolhido serão retornados ao cliente Memcached. Para obter mais informações, consulte [Identificar automaticamente nós no seu cluster (Memcached)](AutoDiscovery.md).

Para manter a compatibilidade retroativa com todos os clientes existentes, é introduzida a descoberta de IP, que permite selecionar o tipo de IP (ou seja, IPv4 ou IPv6) a ser anunciado no protocolo de descoberta. Embora isso limite a descoberta automática a apenas um tipo de IP, a pilha dupla ainda é benéfica para cargas de trabalho habilitadas para o modo de cluster, pois permite migrações (ou reversões) de um IPv4 para um IPv6 tipo de IP de descoberta sem tempo de inatividade.

## Clusters de ElastiCache pilha dupla habilitados para TLS
<a name="configuring-tls-enabled-dual-stack"></a>

Quando o TLS está habilitado para ElastiCache clusters, as funções de descoberta de clusters`cluster slots`, como,`cluster shards`, e `cluster nodes` com Valkey ou Redis OSS e `config get cluster` com Memcached retornam nomes de host em vez de. IPs Os nomes de host são então usados em vez de se conectar IPs ao ElastiCache cluster e realizar um handshake TLS. Isso significa que os clientes não serão afetados pelo parâmetro de descoberta de IP. *Para clusters habilitados para TLS, o parâmetro de descoberta de IP não tem efeito no protocolo IP preferencial. * Em vez disso, o protocolo IP usado será determinado pelo protocolo IP que o cliente prefere ao resolver nomes de host DNS.

Para obter exemplos sobre como configurar uma preferência de protocolo IP ao resolver nomes de host DNS, consulte [Clusters do ElastiCache de pilha dupla habilitados para TLS](BestPractices.md#network-type-configuring-tls-enabled-dual-stack).

## Usando o Console de gerenciamento da AWS(Valkey e Redis OSS)
<a name="network-type-console"></a>

Ao criar um cluster usando o Console de gerenciamento da AWS, em **Conectividade**, escolha um tipo de rede **IPv6**ou **pilha dupla**. **IPv4** Se você estiver criando um cluster Valkey ou Redis OSS (modo de cluster ativado) e escolher pilha dupla, deverá selecionar um **tipo de IP de descoberta**, ou. IPv6 IPv4

Para acessar mais informações, consulte [Criação de um cluster do Valkey ou Redis OSS (modo cluster habilitado) (console)](Clusters.Create.md#Clusters.Create.CON.RedisCluster) ou [Criação de um cluster do Valkey ou Redis OSS (modo cluster desabilitado) (console)](Clusters.Create.md#Clusters.Create.CON.Redis).

Ao criar um grupo de replicação usando o Console de gerenciamento da AWS, escolha um tipo de rede **IPv6**ou **pilha dupla**. **IPv4** Se você escolher pilha dupla, deverá selecionar um **tipo de IP de descoberta**, IPv6 ou IPv4.

Para acessar mais informações, consulte [Criação de um grupo de replicação do Valkey ou Redis OSS (modo cluster desabilitado) do início](Replication.CreatingReplGroup.NoExistingCluster.Classic.md) ou [Criação de um grupo de replicação no Valkey ou Redis OSS (modo cluster habilitado) do início](Replication.CreatingReplGroup.NoExistingCluster.Cluster.md).

## Usando o Console de gerenciamento da AWS(Memcached)
<a name="network-type-console-mem"></a>

Ao criar um cluster usando o Console de gerenciamento da AWS, em **Conectividade**, escolha um tipo de rede **IPv6**ou **pilha dupla**. **IPv4** Se você escolher pilha dupla, deverá selecionar um **tipo de IP de descoberta**, IPv6 ou IPv4.

Para obter mais informações, consulte [Criação de um cluster do Memcached (console)](Clusters.Create-mc.md#Clusters.Create.CON.Memcached).

## Uso da CLI com Valkey, Memcached ou Redis OSS.
<a name="network-type-cli"></a>

**Redis OSS**

Ao criar um cluster com Valkey ou Redis OSS usando a CLI, você usa o [create-cache-cluster](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-cache-cluster.html)comando e especifica os parâmetros e: `NetworkType` `IPDiscovery`

Para Linux, macOS ou Unix:

```
aws elasticache create-cache-cluster \
    --cache-cluster-id "cluster-test" \
    --engine redis \
    --cache-node-type cache.m5.large \
    --num-cache-nodes 1 \
    --network-type dual_stack \
    --ip-discovery ipv4
```

Para Windows:

```
aws elasticache create-cache-cluster ^
    --cache-cluster-id "cluster-test" ^
    --engine redis ^
    --cache-node-type cache.m5.large ^
    --num-cache-nodes 1 ^
    --network-type dual_stack ^
    --ip-discovery ipv4
```

Ao criar um grupo de replicação com o modo de cluster desativado usando a CLI, você usa [create-replication-group](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-replication-group.html)o comando e especifica `NetworkType` os `IPDiscovery` parâmetros e:

Para Linux, macOS ou Unix:

```
aws elasticache create-replication-group \
   --replication-group-id sample-repl-group \
   --replication-group-description "demo cluster with replicas" \
   --num-cache-clusters 3 \
   --primary-cluster-id redis01 \
   --network-type dual_stack \
   --ip-discovery ipv4
```

Para Windows:

```
aws elasticache create-replication-group ^
   --replication-group-id sample-repl-group ^
   --replication-group-description "demo cluster with replicas" ^
   --num-cache-clusters 3 ^
   --primary-cluster-id redis01 ^
   --network-type dual_stack ^
   --ip-discovery ipv4
```

Ao criar um grupo de replicação com o modo de cluster ativado e usado IPv4 para descoberta de IP usando a CLI, você usa [create-replication-group](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-replication-group.html)o comando e especifica `NetworkType` os `IPDiscovery` parâmetros e:

Para Linux, macOS ou Unix:

```
aws elasticache create-replication-group \
  --replication-group-id demo-cluster \
  --replication-group-description "demo cluster" \
  --cache-node-type cache.m5.large \
  --num-node-groups 2 \
  --engine redis \
  --cache-subnet-group-name xyz \
  --network-type dual_stack \
  --ip-discovery ipv4 \
  --region us-east-1
```

Para Windows:

```
aws elasticache create-replication-group ^
  --replication-group-id demo-cluster ^
  --replication-group-description "demo cluster" ^
  --cache-node-type cache.m5.large ^
  --num-node-groups 2 ^
  --engine redis ^
  --cache-subnet-group-name xyz ^
  --network-type dual_stack ^
  --ip-discovery ipv4 ^
  --region us-east-1
```

Ao criar um grupo de replicação com o modo de cluster ativado e usado IPv6 para descoberta de IP usando a CLI, você usa [create-replication-group](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-replication-group.html)o comando e especifica `NetworkType` os `IPDiscovery` parâmetros e:

Para Linux, macOS ou Unix:

```
aws elasticache create-replication-group \
  --replication-group-id demo-cluster \
  --replication-group-description "demo cluster" \
  --cache-node-type cache.m5.large \
  --num-node-groups 2 \
  --engine redis \
  --cache-subnet-group-name xyz \
  --network-type dual_stack \
  --ip-discovery ipv6 \
  --region us-east-1
```

Para Windows:

```
aws elasticache create-replication-group ^
  --replication-group-id demo-cluster ^
  --replication-group-description "demo cluster" ^
  --cache-node-type cache.m5.large ^
  --num-node-groups 2 ^
  --engine redis ^
  --cache-subnet-group-name xyz ^
  --network-type dual_stack ^
  --ip-discovery ipv6 ^
  --region us-east-1
```

**Memcached**

Ao criar um cluster com o Memcached usando a CLI, você usa o [create-cache-cluster](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-cache-cluster.html)comando e especifica os parâmetros e: `NetworkType` `IPDiscovery`

Para Linux, macOS ou Unix:

```
aws elasticache create-cache-cluster \
    --cache-cluster-id "cluster-test" \
    --engine memcached \
    --cache-node-type cache.m5.large \
    --num-cache-nodes 1 \
    --network-type dual_stack \
    --ip-discovery ipv4
```

Para Windows:

```
aws elasticache create-cache-cluster ^
    --cache-cluster-id "cluster-test" ^
    --engine memcached ^
    --cache-node-type cache.m5.large ^
    --num-cache-nodes 1 ^
    --network-type dual_stack ^
    --ip-discovery ipv4
```

# Identificar automaticamente nós no seu cluster (Memcached)
<a name="AutoDiscovery"></a>

Para clusters que executam o mecanismo Memcached, ElastiCache oferece suporte à *descoberta automática* — a capacidade dos programas cliente identificarem automaticamente todos os nós em um cluster e iniciarem e manterem conexões com todos esses nós. 

**nota**  
A descoberta automática é adicionada para clusters executados no Amazon ElastiCache Memcached. A Descoberta automática não está disponível para mecanismos Valkey ou Redis OSS.

Com a Descoberta automática, seu aplicativo não precisa se conectar manualmente a nós de cache individuais. Em vez disso, seu aplicativo se conecta a um nó Memcached e recupera a lista de nós. Nessa lista, seu aplicativo está ciente do restante dos nós no cluster e pode se conectar a qualquer um deles. Você não precisa embutir em código os endpoints de nó de cache individuais no seu aplicativo.

Se você estiver usando o tipo de rede dual stack em seu cluster, o Auto Discovery retornará somente IPv6 endereços IPv4 ou, dependendo de qual deles você selecionar. Para obter mais informações, consulte [Escolhendo um tipo de rede em ElastiCache](network-type.md).

Todos os nós de cache no cluster mantêm uma lista de metadados sobre todos os outros nós. Esses metadados são atualizados sempre que os nós são adicionados ou removidos do cluster.

**Topics**
+ [Benefícios da descoberta automática com o Memcached](AutoDiscovery.Benefits.md)
+ [Como a Descoberta automática funciona](AutoDiscovery.HowAutoDiscoveryWorks.md)
+ [Como usar a Descoberta automática](AutoDiscovery.Using.md)
+ [Conexão manual aos nós de cache do Memcached](AutoDiscovery.Manual.md)
+ [Adicionar a Descoberta automática à sua biblioteca de clientes do Memcached](AutoDiscovery.AddingToYourClientLibrary.md)
+ [ElastiCache clientes com descoberta automática](Clients.md)

# Benefícios da descoberta automática com o Memcached
<a name="AutoDiscovery.Benefits"></a>

Ao usar o Memcached, a descoberta automática oferece os seguintes benefícios:
+ Quando você aumenta o número de nós em um cluster, os novos nós se registram no endpoint da configuração e em todos os outros nós. Quando você remove os nós do cluster de cache, os nós de partida cancelam o registro. Em ambos os casos, todos os outros nós no cluster são atualizados com os metadados do nó de cache mais recentes.
+ As falhas de nós de cache são detectadas automaticamente. Os nós com falha são automaticamente substituídos.
**nota**  
Até que a substituição dos nós seja concluída, o nó continuará a falhar.
+ Um programa cliente só precisa se conectar ao endpoint da configuração. Depois disso, a biblioteca da Descoberta automática se conecta a todos os outros nós do cluster.
+ Os programas cliente sondam o cluster uma vez por minuto (esse intervalo pode ser ajustado, se necessário). Se houver alguma alteração na configuração do cluster, como nós novos ou excluídos, o cliente receberá uma lista atualizada de metadados. Em seguida, o cliente se conecta ou desconecta desses nós conforme necessário.

A descoberta automática está ativada em todos os clusters do ElastiCache Memcached. Você não precisa reinicializar nenhum dos seus nós de cache para usar esse recurso.

# Como a Descoberta automática funciona
<a name="AutoDiscovery.HowAutoDiscoveryWorks"></a>

**Topics**
+ [Conexão com nós de cache](#AutoDiscovery.HowAutoDiscoveryWorks.Connecting)
+ [Operações normais de cluster](#AutoDiscovery.HowAutoDiscoveryWorks.NormalOps)
+ [Outras operações](#AutoDiscovery.HowAutoDiscoveryWorks.OtherOps)

Esta seção descreve como os aplicativos cliente usam o cliente de cluster do ElastiCache para gerenciar conexões de nós de cache e interagir com itens de dados no cache.

## Conexão com nós de cache
<a name="AutoDiscovery.HowAutoDiscoveryWorks.Connecting"></a>

Do ponto de vista do aplicativo, conectar-se ao endpoint de configuração de cluster não é diferente de conectar-se diretamente a um nó de cache individual. O diagrama de sequência a seguir mostra o processo de conexão com nós de cache. 

![\[Conexão com nós de cache\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/autodiscovery_cluster_membership_refresh-diagram.png)



**Processo de conexão com nós de cache**  

|  |  | 
| --- |--- |
|  ![\[1\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/callouts/1.png) | O aplicativo resolve o nome DNS do endpoint de configuração. Como o endpoint de configuração mantém entradas CNAME para todos os nós de cache, o nome DNS é resolvido para um dos nós. O cliente pode então se conectar a esse nó. | 
|  ![\[2\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/callouts/2.png) | O cliente solicita as informações de configuração para todos os outros nós. Como cada nó mantém informações de configuração para todos os nós do cluster, qualquer nó pode transmitir informações de configuração ao cliente mediante solicitação. | 
|  ![\[3\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/callouts/3.png) | O cliente recebe a lista atual de nomes de host e endereços IP de nós de cache. Em seguida, ele pode se conectar a todos os outros nós do cluster. | 



**nota**  
O programa cliente atualiza sua lista de nomes de host e endereços IP de nós de cache uma vez por minuto. Esse intervalo de sondagem pode ser ajustado se necessário.

## Operações normais de cluster
<a name="AutoDiscovery.HowAutoDiscoveryWorks.NormalOps"></a>

Quando a aplicação estiver conectada a todos os nós de cache, o cliente de cluster do ElastiCache determinará quais nós deverão armazenar os itens de dados individuais e quais nós deverão ser consultados para esses itens de dados mais tarde. O diagrama de sequência a seguir mostra o processo das operações normais de cluster.

![\[Operações normais de cluster\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/autodiscovery_normal_cache_usage-diagram.png)



**Processo das operações normais de cluster**  

|  |  | 
| --- |--- |
|  ![\[1\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/callouts/1.png) | O aplicativo emite uma solicitação get para um item de dados específico, identificado por sua chave. | 
|  ![\[2\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/callouts/2.png) | O cliente usa um algoritmo de hash contra a chave para determinar qual nó de cache contém o item de dados. | 
|  ![\[3\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/callouts/3.png) | O item de dados é solicitado do nó apropriado. | 
|  ![\[4\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/callouts/4.png) | O item de dados é retornado ao aplicativo. | 

## Outras operações
<a name="AutoDiscovery.HowAutoDiscoveryWorks.OtherOps"></a>

Em algumas situações, você pode alterar os nós de um cluster. Por exemplo, você pode acrescentar um nó adicional para acomodar demanda adicional ou excluir um nó para economizar dinheiro durante períodos de demanda reduzida. Ou você pode substituir um nó devido a uma falha de nó de uma ou outra classificação.

Quando há uma alteração no cluster que requer uma atualização de metadados para os endpoints do cluster, essa alteração é feita em todos os nós ao mesmo tempo. Portanto, os metadados em qualquer nó especificado são consistentes com os metadados em todos os outros nós do cluster.

Em cada um desses casos, os metadados são consistentes entre todos os nós em todos os momentos, já que os metadados são atualizados ao mesmo tempo para todos os nós do cluster. Você sempre deve usar o endpoint de configuração para obter os endpoints dos vários nós no cluster. Ao usar o endpoint de configuração, você garante que não obterá dados de endpoint de um nó que "desaparecerá".

### Adicionar um nó
<a name="AutoDiscovery.HowAutoDiscoveryWorks.OtherOps.AddNode"></a>

Durante o tempo em que o nó está sendo configurado, seu endpoint não é incluído nos metadados. Assim que o nó estiver disponível, ele será adicionado aos metadados de cada um dos nós do cluster. Nesse cenário, os metadados são consistentes entre todos os nós, e você poderá interagir com o novo nó somente depois que ele estiver disponível. Antes de o nó estar disponível, você não saberá sobre ele e interagirá com os nós no seu cluster como se o novo nó não existisse.

### Excluir um nó
<a name="AutoDiscovery.HowAutoDiscoveryWorks.OtherOps.DelNode"></a>

Quando um nó é removido, seu endpoint é primeiramente removido dos metadados e, em seguida, o nó é removido do cluster. Nesse cenário, os metadados em todos os nós são consistentes e em nenhuma ocasião ele conterá o endpoint para o nó a ser removido se esse nó não estiver disponível. Durante o tempo de remoção do nó, ele não é relatado nos metadados e, portanto, seu aplicativo só interagirá com os n-1 nós restantes, como se o nó não existisse.

### Substituir um nó
<a name="AutoDiscovery.HowAutoDiscoveryWorks.OtherOps.ReplaceNode"></a>

Se um nó falhar, o ElastiCache o retirará e configurará uma substituição. O processo de substituição demora alguns minutos. Durante esse tempo, os metadados em todos os nós ainda mostram o endpoint do nó com falha, mas qualquer tentativa de interação com esse nó falhará. Portanto, sua lógica sempre deve incluir uma lógica de nova tentativa.

# Como usar a Descoberta automática
<a name="AutoDiscovery.Using"></a>

Para começar a usar a Descoberta automática com o ElastiCache para Memcached, siga estas etapas:
+ [Obter o endpoint de configuração](#AutoDiscovery.Using.ConfigEndpoint)
+ [Baixe o cliente de cluster do ElastiCache](#AutoDiscovery.Using.ClusterClient)
+ [Modificar seu programa aplicativo](#AutoDiscovery.Using.ModifyApp)

## Obter o endpoint de configuração
<a name="AutoDiscovery.Using.ConfigEndpoint"></a>

Para se conectar a um cluster, os programas cliente devem conhecer o endpoint de configuração de cluster. Consulte o tópico [Localização de endpoints de um cluster (console) (Memcached)](Endpoints.md#Endpoints.Find.Memcached)

Você também pode usar o comando `aws elasticache describe-cache-clusters` com o parâmetro `--show-cache-node-info`:

Seja qual for o método usado para encontrar os endpoints do cluster, o endpoint de configuração sempre terá **.cfg** em seu endereço.

**Example Localização de endpoints usando a AWS CLI para o ElastiCache**  
Para Linux, macOS ou Unix:  

```
aws elasticache describe-cache-clusters \
    --cache-cluster-id mycluster \
    --show-cache-node-info
```
Para Windows:  

```
aws elasticache describe-cache-clusters ^
    --cache-cluster-id mycluster ^
    --show-cache-node-info
```
Esta operação produz uma saída semelhante à seguinte (formato JSON):  

```
{
    "CacheClusters": [
        {
            "Engine": "memcached", 
            "CacheNodes": [
                {
                    "CacheNodeId": "0001", 
                    "Endpoint": {
                        "Port": 11211, 
                        "Address": "mycluster.fnjyzo.cfg.0001.use1.cache.amazonaws.com"
                    }, 
                    "CacheNodeStatus": "available", 
                    "ParameterGroupStatus": "in-sync", 
                    "CacheNodeCreateTime": "2016-10-12T21:39:28.001Z", 
                    "CustomerAvailabilityZone": "us-east-1e"
                }, 
                {
                    "CacheNodeId": "0002", 
                    "Endpoint": {
                        "Port": 11211, 
                        "Address": "mycluster.fnjyzo.cfg.0002.use1.cache.amazonaws.com"
                    }, 
                    "CacheNodeStatus": "available", 
                    "ParameterGroupStatus": "in-sync", 
                    "CacheNodeCreateTime": "2016-10-12T21:39:28.001Z", 
                    "CustomerAvailabilityZone": "us-east-1a"
                }
            ], 
            "CacheParameterGroup": {
                "CacheNodeIdsToReboot": [], 
                "CacheParameterGroupName": "default.memcached1.4", 
                "ParameterApplyStatus": "in-sync"
            }, 
            "CacheClusterId": "mycluster", 
            "PreferredAvailabilityZone": "Multiple", 
            "ConfigurationEndpoint": {
                "Port": 11211, 
                "Address": "mycluster.fnjyzo.cfg.use1.cache.amazonaws.com"
            }, 
            "CacheSecurityGroups": [], 
            "CacheClusterCreateTime": "2016-10-12T21:39:28.001Z", 
            "AutoMinorVersionUpgrade": true, 
            "CacheClusterStatus": "available", 
            "NumCacheNodes": 2, 
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:", 
            "CacheSubnetGroupName": "default", 
            "EngineVersion": "1.4.24", 
            "PendingModifiedValues": {}, 
            "PreferredMaintenanceWindow": "sat:06:00-sat:07:00", 
            "CacheNodeType": "cache.r3.large"
        }
    ]
}
```

## Baixe o cliente de cluster do ElastiCache
<a name="AutoDiscovery.Using.ClusterClient"></a>

Para tirar proveito da Descoberta automática, os programas cliente devem usar o *cliente de cluster do ElastiCache*. O cliente de cluster do ElastiCache está disponível para Java, PHP e .NET e contém toda a lógica necessária para descobrir e conectar-se a todos os seus nós de cache.

**Para baixar o cliente de cluster do ElastiCache**

1. Faça login no Console de Gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No console do ElastiCache, escolha **Cliente de cluster do ElastiCache**, e depois escolha **Baixar**.

O código-fonte do cliente de cluster do ElastiCache para Java está disponível em [https://github.com/amazonwebservices/aws-elasticache-cluster-client-memcached-for-java](https://github.com/amazonwebservices/aws-elasticache-cluster-client-memcached-for-java). Essa biblioteca se baseia no popular cliente Spymemcached. O cliente de cluster do ElastiCache é lançado sob a Licença de software da Amazon [https://aws.amazon.com/asl](https://aws.amazon.com/asl). Você tem a liberdade de modificar o código-fonte como você bem entender. Você pode até mesmo incorporar o código em outras bibliotecas Memcached de código aberto ou no seu próprio código de cliente.

**nota**  
Para usar o cliente de cluster do ElastiCache para PHP, você precisa primeiro instalá-lo na sua instância do Amazon EC2. Para obter mais informações, consulte [Instalação do cliente de cluster do ElastiCache para PHP](Appendix.PHPAutoDiscoverySetup.md).  
Para clientes compatíveis com TLS, baixe o binário com PHP versão 7.4 ou superior.  
Para usar o cliente de cluster do ElastiCache para .NET, você precisa primeiro instalá-lo na sua instância do Amazon EC2. Para obter mais informações, consulte [Instalação do cliente de cluster do ElastiCache para .NET](Appendix.DotNETAutoDiscoverySetup.md).

## Modificar seu programa aplicativo
<a name="AutoDiscovery.Using.ModifyApp"></a>

Modifique seu programa aplicativo para que ele use a Descoberta automática. As seções a seguir mostram como usar o cliente de cluster do ElastiCache para Java, PHP e .NET. 

**Importante**  
Ao especificar o endpoint de configuração do cluster, certifique-se de que o endpoint tenha ".cfg" em seu endereço, conforme mostrado aqui. Não use um CNAME ou um endpoint sem ".cfg".   

```
"mycluster.fnjyzo.cfg.use1.cache.amazonaws.com";
```
 Se o endpoint de configuração de cluster não for especificado explicitamente, a configuração ocorrerá para um nó específico.

# Uso do cliente de cluster do ElastiCache para Java
<a name="AutoDiscovery.Using.ModifyApp.Java"></a>

O programa abaixo demonstra como usar o cliente de cluster do ElastiCache para se conectar a um endpoint de configuração de cluster e adicionar um item de dados ao cache. Usando a Descoberta automática, o programa se conecta a todos os nós do cluster sem qualquer intervenção adicional.

```
package com.amazon.elasticache;

import java.io.IOException;
import java.net.InetSocketAddress;

// Import the &AWS;-provided library with Auto Discovery support 
import net.spy.memcached.MemcachedClient;  

public class AutoDiscoveryDemo {

    public static void main(String[] args) throws IOException {
            
        String configEndpoint = "mycluster.fnjyzo.cfg.use1.cache.amazonaws.com";
        Integer clusterPort = 11211;

        MemcachedClient client = new MemcachedClient(
                                 new InetSocketAddress(configEndpoint, 
                                                       clusterPort));       
        // The client will connect to the other cache nodes automatically.

        // Store a data item for an hour.  
        // The client will decide which cache host will store this item. 
        client.set("theKey", 3600, "This is the data value");
    }
}
```

# Usando o ElastiCache Cluster Client para PHP
<a name="AutoDiscovery.Using.ModifyApp.PHP"></a>

O programa abaixo demonstra como usar o ElastiCache Cluster Client para se conectar a um endpoint de configuração de cluster e adicionar um item de dados ao cache. Usando a Descoberta automática, o programa se conectará a todos os nós do cluster sem qualquer intervenção adicional.

Para usar o ElastiCache Cluster Client para PHP, primeiro você precisará instalá-lo na sua EC2 instância da Amazon. Para obter mais informações, consulte [Instalação do cliente de cluster do ElastiCache para PHP](Appendix.PHPAutoDiscoverySetup.md).

```
<?php
	
 /**
  * Sample PHP code to show how to integrate with the Amazon ElastiCache
  * Auto Discovery feature.
  */

  /* Configuration endpoint to use to initialize memcached client. 
   * This is only an example. 	*/
  $server_endpoint = "mycluster.fnjyzo.cfg.use1.cache.amazonaws.com";
  
  /* Port for connecting to the ElastiCache cluster. 
   * This is only an example 	*/
  $server_port = 11211;

 /**
  * The following will initialize a Memcached client to utilize the Auto Discovery feature.
  * 
  * By configuring the client with the Dynamic client mode with single endpoint, the
  * client will periodically use the configuration endpoint to retrieve the current cache
  * cluster configuration. This allows scaling the cluster up or down in number of nodes
  * without requiring any changes to the PHP application. 
  *
  * By default the Memcached instances are destroyed at the end of the request. 
  * To create an instance that persists between requests, 
  *    use persistent_id to specify a unique ID for the instance. 
  * All instances created with the same persistent_id will share the same connection. 
  * See [http://php.net/manual/en/memcached.construct.php](http://php.net/manual/en/memcached.construct.php) for more information.
  */
  $dynamic_client = new Memcached('persistent-id');
  $dynamic_client->setOption(Memcached::OPT_CLIENT_MODE, Memcached::DYNAMIC_CLIENT_MODE);
  $dynamic_client->addServer($server_endpoint, $server_port);
  
  /**
  * Store the data for 60 seconds in the cluster. 
  * The client will decide which cache host will store this item.
  */  
  $dynamic_client->set('key', 'value', 60);  


 /**
  * Configuring the client with Static client mode disables the usage of Auto Discovery
  * and the client operates as it did before the introduction of Auto Discovery. 
  * The user can then add a list of server endpoints.
  */
  $static_client = new Memcached('persistent-id');
  $static_client->setOption(Memcached::OPT_CLIENT_MODE, Memcached::STATIC_CLIENT_MODE);
  $static_client->addServer($server_endpoint, $server_port);

 /**
  * Store the data without expiration. 
  * The client will decide which cache host will store this item.
  */  
  $static_client->set('key', 'value');  
  ?>
```

Para ver um exemplo de como usar o ElastiCache Cluster Client com o TLS ativado, consulte [Usando criptografia em trânsito com PHP e Memcached](in-transit-encryption.md#in-transit-encryption-connect-php-mc).

# Uso do cliente de cluster do ElastiCache para .NET
<a name="AutoDiscovery.Using.ModifyApp.DotNET"></a>

**nota**  
O cliente de cluster ElastiCache .NET foi suspenso em maio de 2022.

Ocliente .NET para o ElastiCache é um código aberto que pode se encontrado em [https://github.com/awslabs/elasticache-cluster-config-net](https://github.com/awslabs/elasticache-cluster-config-net).

 Em geral, os aplicativos .NET obtém suas configurações de seu arquivo de configuração. O seguinte é um exemplo de arquivo de configuração de aplicativo.

```
<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <configSections>
        <section 
            name="clusterclient" 
            type="Amazon.ElastiCacheCluster.ClusterConfigSettings, Amazon.ElastiCacheCluster" />
    </configSections>

    <clusterclient>
        <!-- the hostname and port values are from step 1 above -->
        <endpoint hostname="mycluster.fnjyzo.cfg.use1.cache.amazonaws.com" port="11211" />
    </clusterclient>
</configuration>
```

O programa em C\$1 abaixo demonstra como usar o cliente de cluster do ElastiCache para se conectar a um endpoint de configuração de cluster e adicionar um item de dados ao cache. Usando a Descoberta automática, o programa se conectará a todos os nós do cluster sem qualquer intervenção adicional.

```
// *****************
// Sample C# code to show how to integrate with the Amazon ElastiCcache Auto Discovery feature.

using System;

using Amazon.ElastiCacheCluster;

using Enyim.Caching;
using Enyim.Caching.Memcached;

public class DotNetAutoDiscoveryDemo  {

    public static void Main(String[] args)  {
    
        // instantiate a new client.
        ElastiCacheClusterConfig config = new ElastiCacheClusterConfig();
        MemcachedClient memClient = new MemcachedClient(config);
        
        // Store the data for 3600 seconds (1hour) in the cluster. 
        // The client will decide which cache host will store this item.
        memClient.Store(StoreMode.Set, 3600, "This is the data value.");
        
    }  // end Main
    
}  // end class DotNetAutoDiscoverDemo
```

# Conexão manual aos nós de cache do Memcached
<a name="AutoDiscovery.Manual"></a>

Se o seu programa cliente não usar a descoberta automática, ele poderá se conectar manualmente a cada um dos nós de cache do Memcached. Este é o comportamento padrão para clientes Memcached.

Você pode obter uma lista de nomes de host de nós de cache e números de portas no [Console de Gerenciamento da AWS](https://aws.amazon.com/console/). Você também pode usar o AWS CLI`aws elasticache describe-cache-clusters` comando com o `--show-cache-node-info` parâmetro.

**Example**  
O seguinte trecho de código Java mostra como se conectar a todos os nós em um cluster de quatro nós:  

```
...

ArrayList<String> cacheNodes = new ArrayList<String>(
	Arrays.asList(
	    "mycachecluster.fnjyzo.0001.use1.cache.amazonaws.com:11211",
	    "mycachecluster.fnjyzo.0002.use1.cache.amazonaws.com:11211",
	    "mycachecluster.fnjyzo.0003.use1.cache.amazonaws.com:11211",
	    "mycachecluster.fnjyzo.0004.use1.cache.amazonaws.com:11211"));
	      
MemcachedClient cache = new MemcachedClient(AddrUtil.getAddresses(cacheNodes));

...
```

**Importante**  
Se você expandir ou reduzir seu cluster adicionando ou removendo nós, precisará atualizar a lista de nós no código do cliente.

# Adicionar a Descoberta automática à sua biblioteca de clientes do Memcached
<a name="AutoDiscovery.AddingToYourClientLibrary"></a>

As informações de configuração para Descoberta automática são armazenadas de forma redundante em cada nó de cluster Memcached. Os aplicativos cliente podem consultar qualquer nó de cache e obter as informações de configuração para todos os nós no cluster.

A maneira como um aplicativo faz isso depende da versão do mecanismo de cache:
+ Se a versão do mecanismo de cache for **1.4.14 ou superior**, use o comando `config`.
+ Se a versão do mecanismo de cache for **inferior a 1.4.14**, use o comando `get AmazonElastiCache:cluster`.

As saídas desses dois comandos são idênticas e estão descritas na seção [Output Format](#AutoDiscovery.AddingToYourClientLibrary.OutputFormat) abaixo.

## Versão do mecanismo de cache 1.4.14 ou superior
<a name="AutoDiscovery.AddingToYourClientLibrary.1-4-14-plus"></a>

Para o mecanismo de cache versão 1.4.14 ou superior, use o comando `config`. Esse comando foi adicionado ao Memcached ASCII e aos protocolos binários por ElastiCache, e é implementado no Cluster Client. ElastiCache Se você quiser usar a Descoberta automática com outra biblioteca de cliente, essa biblioteca precisará ser estendida para oferecer suporte ao comando `config`.

**nota**  
A seguinte documentação pertence ao protocolo ASCII. No entanto, o comando `config` oferece suporte para ASCII e binário. Se você quiser adicionar suporte à descoberta automática usando o protocolo binário, consulte o [código-fonte do ElastiCache Cluster Client](https://github.com/amazonwebservices/aws-elasticache-cluster-client-memcached-for-java/tree/master/src/main/java/net/spy/memcached/protocol/binary).

**Sintaxe**

`config [sub-command] [key]`

### Opções
<a name="AutoDiscovery.AddingToYourClientLibrary.1-4-14-plus.Options"></a>


| Name (Nome) | Description | Obrigatório | 
| --- | --- | --- | 
| sub-command |  O subcomando usado para interagir com um nó de cache. Para a Descoberta automática, esse subcomando é `get`.  | Sim | 
| key |  A chave na qual a configuração de cluster está armazenada. Para a Descoberta automática, essa chave se chama `cluster`.  | Sim | 

Para obter as informações de configuração do cluster, use o seguinte comando: 

```
config get cluster
```

## Versão do mecanismo de cache 1.4.14 ou inferior
<a name="AutoDiscovery.AddingToYourClientLibrary.pre-1-4-14"></a>

Para obter as informações de configuração do cluster, use o seguinte comando: 

```
get AmazonElastiCache:cluster
```

**nota**  
Não altere a chave “:clusterAmazonElastiCache”, pois é aqui que residem as informações de configuração do cluster. Se você sobrescrever essa chave, o cliente poderá ser configurado incorretamente por um breve período de tempo (não mais que 15 segundos) antes de atualizar ElastiCache automaticamente e corretamente as informações de configuração.

## Output Format
<a name="AutoDiscovery.AddingToYourClientLibrary.OutputFormat"></a>

Se você usar `config get cluster` ou `get AmazonElastiCache:cluster`, a resposta consistirá em duas linhas:
+ O número de versão das informações de configuração. Cada vez que um nó é adicionado ou removido do cluster, o número da versão aumenta em um. 
+ Uma lista de nós de cache. Cada nó na lista é representado por um grupo de *nome do host\$1endereço IP\$1porta*, e cada nó é delimitado por um espaço. 

Um retorno de carro e um caractere de avanço de linha (CR \$1 LF) aparecem no final de cada linha. A linha de dados contém um caractere de avanço de linha (LF) no final, ao qual o CR\$1LF é adicionado. A linha de versão de configuração é encerrada por LF sem o CR. 

Um cluster contendo três nós seria representado da seguinte maneira:

```
configversion\n
hostname|ip-address|port hostname|ip-address|port hostname|ip-address|port\n\r\n
```

Cada nó é mostrado com o CNAME e o endereço IP privado. O CNAME sempre estará presente. Se o endereço IP privado não estiver disponível, ele não será mostrado. Entretanto, os caracteres de barra vertical "`|`" continuarão a ser impressos.

**Example**  
Veja a seguir um exemplo da carga útil retornada quando você consulta as informações de configuração:  

```
CONFIG cluster 0 136\r\n
12\n
myCluster.pc4ldq.0001.use1.cache.amazonaws.com|10.82.235.120|11211 myCluster.pc4ldq.0002.use1.cache.amazonaws.com|10.80.249.27|11211\n\r\n 
END\r\n
```

**nota**  
A segunda linha indica que as informações de configuração foram modificadas doze vezes até agora.
Na terceira linha, a lista de nós está em ordem alfabética por nome de host. Essa ordem pode estar em uma sequência diferente da que você está usando no seu aplicativo cliente.

# ElastiCache clientes com descoberta automática
<a name="Clients"></a>

Os programas cliente de cluster podem identificar e se conectar automaticamente a todos os nós de cluster que executem o mecanismo Memcached.

Esta seção discute a instalação e a configuração dos clientes ElastiCache PHP e .NET para uso com descoberta automática.

**Topics**
+ [Instalação e compilação de clientes de cluster](Appendix.InstallingClients.md)
+ [Configuração do ElastiCache](ClientConfig.md)

# Instalação e compilação de clientes de cluster
<a name="Appendix.InstallingClients"></a>

Esta seção discute a instalação, a configuração e a compilação dos clientes de cluster de descoberta automática PHP e .NET do Amazon ElastiCache. 

**Topics**
+ [Instalação do cliente de cluster do ElastiCache para .NET](Appendix.DotNETAutoDiscoverySetup.md)
+ [Instalação do cliente de cluster do ElastiCache para PHP](Appendix.PHPAutoDiscoverySetup.md)
+ [Compilação do código-fonte para o cliente de cluster do ElastiCache para PHP](Appendix.PHPAutoDiscoveryCompile.md)

# Instalação do cliente de cluster do ElastiCache para .NET
<a name="Appendix.DotNETAutoDiscoverySetup"></a>

Você pode encontrar o código do cliente de cluster .NET do ElastiCache como código aberto em [https://github.com/awslabs/elasticache-cluster-config-net](https://github.com/awslabs/elasticache-cluster-config-net).

Esta seção descreve como instalar, atualizar e remover os componentes .NET do cliente de cluster do ElastiCache em instâncias do Amazon EC2. Para obter mais informações sobre a descoberta automática, consulte [Identificar automaticamente nós no seu cluster (Memcached)](AutoDiscovery.md). Para obter o código de exemplo do .NET para usar o cliente, consulte [Uso do cliente de cluster do ElastiCache para .NET](AutoDiscovery.Using.ModifyApp.DotNET.md).

**Topics**
+ [Instalar o .NET](#Appendix.DotNETAutoDiscoverySetup.DotNET)
+ [Baixar o cliente de cluster .NET do ElastiCache para ElastiCache](#Appendix.DotNETAutoDiscoverySetup.Downloading)
+ [Instalar conjuntos da AWS com o NuGet](#Appendix.DotNETAutoDiscoverySetup.Installing)

## Instalar o .NET
<a name="Appendix.DotNETAutoDiscoverySetup.DotNET"></a>

Você deve ter o .NET 3.5 ou posterior instalado para usar o SDK .NET da AWS para ElastiCache. Caso não tenha o .NET 3.5 ou posterior, pode fazer download e instalar a versão mais recente em [http://www.microsoft.com/net](http://www.microsoft.com/net).

## Baixar o cliente de cluster .NET do ElastiCache para ElastiCache
<a name="Appendix.DotNETAutoDiscoverySetup.Downloading"></a>

**Para baixar o cliente de cluster .NET do ElastiCache**

1. Faça login no Console de gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel de navegação, clique em **ElastiCache Cluster Client**.

1. Na lista **Download ElastiCache Memcached Cluster Client**, selecione **.NET** e clique em **Download.**

## Instalar conjuntos da AWS com o NuGet
<a name="Appendix.DotNETAutoDiscoverySetup.Installing"></a>

O NuGet é um sistema de gerenciamento de pacotes para a plataforma .NET. O NuGet está ciente das dependências de assembly e instala todos os arquivos necessários automaticamente. Os assemblies instalados pelo NuGet são armazenados com a sua solução, em vez de em uma localização central, como em `Program Files`, e, por isso, você pode instalar versões específicas para um aplicativo sem criar problemas de compatibilidade.

### Instalar o NuGet
<a name="Appendix.DotNETAutoDiscoverySetup.Installing.NuGet"></a>

O NuGet pode ser instalado da galeria de instalação no MSDN; consulte [https://visualstudiogallery.msdn.microsoft.com/27077b70-9dad-4c64-adcf-c7cf6bc9970c](https://visualstudiogallery.msdn.microsoft.com/27077b70-9dad-4c64-adcf-c7cf6bc9970c). Se você estiver usando o Visual Studio 2010 ou posterior, o NuGet será instalado automaticamente.

Você pode usar o NuGet no **Gerenciador de Soluções** ou no **Console do Gerenciador de Pacotes**.

### Usar o NuGet no Gerenciador de Soluções
<a name="Appendix.DotNETAutoDiscoverySetup.NuGet.SolutionExplorer"></a>

**Para usar o NuGet no Gerenciador de Soluções do Visual Studio 2010**

1. No menu **Ferramentas**, selecione **Gerenciador de Pacotes de Biblioteca**.

1. Clique em **Console do Gerenciador de Pacotes**.

**Para usar o NuGet no Solution Explorer do Visual Studio 2012 ou Visual Studio 2013**

1. No menu **Ferramentas**, selecione **Gerenciador de Pacotes NuGet**.

1. Clique em **Console do Gerenciador de Pacotes**.

Na linha de comando, você pode instalar os assemblies usando `Install-Package`, conforme mostrado a seguir.

```
Install-Package Amazon.ElastiCacheCluster
```

Para ver uma página de cada pacote disponível via NuGet, como os conjuntos SDK da AWS e extensões da AWS, consulte o site do NuGet em [http://www.nuget.org](http://www.nuget.org). A página de cada pacote inclui uma linha de comando de amostra para instalar o pacote usando o console e uma lista das versões anteriores desse pacote que estão disponíveis no NuGet.

Para obter mais informações sobre os comandos do **Console do Gerenciador de Pacotes**, consulte [http://nuget.codeplex.com/wikipage?title=Package%20Manager%20Console%20Command%20Reference%20%28v1.3%29](http://nuget.codeplex.com/wikipage?title=Package%20Manager%20Console%20Command%20Reference%20%28v1.3%29).

# Instalação do cliente de cluster do ElastiCache para PHP
<a name="Appendix.PHPAutoDiscoverySetup"></a>

Esta seção descreve como instalar, atualizar e remover os componentes de PHP do cliente de cluster do ElastiCache em instâncias do Amazon EC2. Para obter mais informações sobre a descoberta automática, consulte [Identificar automaticamente nós no seu cluster (Memcached)](AutoDiscovery.md). Para obter o código de exemplo do PHP para usar o cliente, consulte [Usando o ElastiCache Cluster Client para PHP](AutoDiscovery.Using.ModifyApp.PHP.md).

**Topics**
+ [Para baixar o pacote de instalação](Appendix.PHPAutoDiscoverySetup.Downloading.md)
+ [Para usuários que já possuam a extensão *php-memcached* instalada](#Appendix.PHPAutoDiscoverySetup.InstallingExisting)
+ [Etapas de instalação para novos usuários](Appendix.PHPAutoDiscoverySetup.Installing.md)
+ [Remoção do cliente de cluster PHP](Appendix.PHPAutoDiscoverySetup.Removing.md)

# Para baixar o pacote de instalação
<a name="Appendix.PHPAutoDiscoverySetup.Downloading"></a>

Para garantir que está usando a versão correta do cliente de cluster do ElastiCache para PHP, você precisa saber qual versão do PHP está instalada na sua instância do Amazon EC2. Você também precisará saber se a sua instância do Amazon EC2 está executando uma versão de 64 bits ou 32 bits do Linux.

**Para determinar a versão do PHP instalada na sua instância do Amazon EC2**
+ No prompt de comando, execute o seguinte comando:

  ```
  php -v
  ```

  A versão do PHP será mostrada na saída, como neste exemplo:

  ```
  PHP 5.4.10 (cli) (built: Jan 11 2013 14:48:57) 
  Copyright (c) 1997-2012 The PHP Group
  Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
  ```
**nota**  
Se suas versões do PHP e do Memcached forem incompatíveis, você receberá uma mensagem de erro como a seguinte:  

  ```
  PHP Warning: PHP Startup: memcached: Unable to initialize module
  Module compiled with module API=20100525
  PHP compiled with module API=20131226
  These options need to match
  in Unknown on line 0
  ```
Se isso acontecer, será necessário compilar o módulo do código-fonte. Para obter mais informações, consulte [Compilação do código-fonte para o cliente de cluster do ElastiCache para PHP](Appendix.PHPAutoDiscoveryCompile.md).

**Para determinar a sua arquitetura de AMI do Amazon EC2 (64 bits ou 32 bits)**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Na lista **Instances** (Instâncias), clique na sua instância do Amazon EC2.

1. Na guia **Description**, procure o campo **AMI:**. Uma instância de 64 bits deve ter `x86_64` como parte da descrição. Para uma instância de 32 bits, procure `i386` ou `i686` neste campo.

Agora, você está pronto para baixar o cliente de cluster do ElastiCache.

**Para baixar o cliente de cluster do ElastiCache para PHP**

1. Faça login no Console de gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No console do ElastiCache, escolha **ElastiCache Cluster Client** (Cliente de cluster do ElastiCache.

1. Na lista **Download ElastiCache Memcached Cluster Client** (Baixar cliente de cluster Memcached do ElastiCache), escolha o cliente de cluster do ElastiCache que corresponda à sua versão do PHP e arquitetura da AMI e depois escolha o botão **Download** (Baixar).

## Para usuários que já possuam a extensão *php-memcached* instalada
<a name="Appendix.PHPAutoDiscoverySetup.InstallingExisting"></a>

**Para atualizar a instalação do `php-memcached`**

1. Remova a instalação anterior da extensão Memcached para PHP, conforme descrito pelo tópico [Remoção do cliente de cluster PHP](Appendix.PHPAutoDiscoverySetup.Removing.md).

1. Instale a nova extensão `php-memcached` do ElastiCache conforme descrito anteriormente em [Etapas de instalação para novos usuários](Appendix.PHPAutoDiscoverySetup.Installing.md). 

# Etapas de instalação para novos usuários
<a name="Appendix.PHPAutoDiscoverySetup.Installing"></a>

**Topics**
+ [Instalação do PHP 7.x para novos usuários](#Appendix.PHPAutoDiscoverySetup.Installing.PHP7x)
+ [Instalação do PHP 5.x para novos usuários](#Appendix.PHPAutoDiscoverySetup.Installing.PHP5x)

## Instalação do PHP 7.x para novos usuários
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP7x"></a>

**Topics**
+ [Para instalar o PHP 7 em uma AMI Ubuntu Server 14.04 LTS (64 bits e 32 bits)](#Appendix.PHPAutoDiscoverySetup.Installing.PHP7x.Ubuntu)
+ [Para instalar o PHP 7 em uma AMI Amazon Linux 201609](#Appendix.PHPAutoDiscoverySetup.Installing.PHP7x.AmznLinux)
+ [Para instalar o PHP 7 em uma AMI SUSE Linux](#Appendix.PHPAutoDiscoverySetup.Installing.PHP7x.SuseLinux)

### Para instalar o PHP 7 em uma AMI Ubuntu Server 14.04 LTS (64 bits e 32 bits)
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP7x.Ubuntu"></a>

1. Execute uma nova instância a partir da AMI.

1. Execute os seguintes comandos:

   ```
   sudo apt-get update
   sudo apt-get install gcc g++
   ```

1. Instale o PHP 7.

   ```
   sudo yum install php70
   ```

1. Baixe o cliente de cluster do Amazon ElastiCache.

   ```
   wget https://elasticache-downloads.s3.amazonaws.com/ClusterClient/PHP-7.0/latest-64bit
   ```

1. Extraia `latest-64bit`.

   ```
   tar -zxvf latest-64bit
   ```

1. Com permissões de root, copie o arquivo de artefato extraído `amazon-elasticache-cluster-client.so` para `/usr/lib/php/20151012`.

   ```
   sudo mv artifact/amazon-elasticache-cluster-client.so /usr/lib/php/20151012
   ```

1. Insira a linha `extension=amazon-elasticache-cluster-client.so` no arquivo `/etc/php/7.0/cli/php.ini`.

   ```
   echo "extension=amazon-elasticache-cluster-client.so" | sudo tee --append /etc/php/7.0/cli/php.ini
   ```

1. Inicie ou reinicie seu servidor Apache.

   ```
   sudo /etc/init.d/httpd start
   ```

 

### Para instalar o PHP 7 em uma AMI Amazon Linux 201609
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP7x.AmznLinux"></a>

1. Execute uma nova instância a partir da AMI.

1. Execute o seguinte comando:

   ```
   sudo yum install gcc-c++
   ```

1. Instale o PHP 7.

   ```
   sudo yum install php70
   ```

1. Baixe o cliente de cluster do Amazon ElastiCache.

   ```
   wget https://elasticache-downloads.s3.amazonaws.com/ClusterClient/PHP-7.0/latest-64bit
   ```

1. Extraia `latest-64bit`.

   ```
   tar -zxvf latest-64bit
   ```

1. Com permissão de root, copie o arquivo de artefato extraído `amazon-elasticache-cluster-client.so` para `/usr/lib64/php/7.0/modules/`.

   ```
   sudo mv artifact/amazon-elasticache-cluster-client.so /usr/lib64/php/7.0/modules/
   ```

1. Crie o arquivo `50-memcached.ini`.

   ```
   echo "extension=amazon-elasticache-cluster-client.so" | sudo tee --append /etc/php-7.0.d/50-memcached.ini
   ```

1. Inicie ou reinicie seu servidor Apache.

   ```
   sudo /etc/init.d/httpd start
   ```

 

### Para instalar o PHP 7 em uma AMI SUSE Linux
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP7x.SuseLinux"></a>

1. Execute uma nova instância a partir da AMI.

1. Execute o seguinte comando:

   ```
   sudo zypper install gcc
   ```

1. Instale o PHP 7.

   ```
   sudo yum install php70
   ```

1. Baixe o cliente de cluster do Amazon ElastiCache.

   ```
   wget https://elasticache-downloads.s3.amazonaws.com/ClusterClient/PHP-7.0/latest-64bit
   ```

1. Extraia `latest-64bit`.

   ```
   tar -zxvf latest-64bit
   ```

1. Com permissão de root, copie o arquivo de artefato extraído `amazon-elasticache-cluster-client.so` para `/usr/lib64/php7/extensions/`.

   ```
   sudo mv artifact/amazon-elasticache-cluster-client.so /usr/lib64/php7/extensions/
   ```

1. Insira a linha `extension=amazon-elasticache-cluster-client.so` no arquivo `/etc/php7/cli/php.ini`.

   ```
   echo "extension=amazon-elasticache-cluster-client.so" | sudo tee --append /etc/php7/cli/php.ini
   ```

1. Inicie ou reinicie seu servidor Apache.

   ```
   sudo /etc/init.d/httpd start
   ```

 

## Instalação do PHP 5.x para novos usuários
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP5x"></a>

**Topics**
+ [Para instalar o PHP 5 em uma AMI Amazon Linux 2014.03 (64 bits e 32 bits)](#Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.AmznLinux)
+ [Para instalar o PHP 5 em uma AMI Red Hat Enterprise Linux 7.0 (64 bits e 32 bits)](#Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.RHEL)
+ [Para instalar o PHP 5 em uma AMI Ubuntu Server 14.04 LTS (64 bits e 32 bits)](#Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.Ubuntu)
+ [Para instalar o PHP 5 para a AMI SUSE Linux Enterprise Server 11 (64 bits ou 32 bits)](#Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.SuseLinux)
+ [Outras distribuições do Linux](#Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.Other)

### Para instalar o PHP 5 em uma AMI Amazon Linux 2014.03 (64 bits e 32 bits)
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.AmznLinux"></a>

1. Inicie uma instância do Amazon Linux (64 bits ou 32 bits) e faça login nela.

1. Instalar dependências PHP:

   ```
   sudo yum install gcc-c++ php php-pear
   ```

1. Baixe o pacote `php-memcached` correto para sua instância do Amazon EC2 e versão do PHP. Para obter mais informações, consulte [Para baixar o pacote de instalação](Appendix.PHPAutoDiscoverySetup.Downloading.md).

1. Instalar o `php-memcached`. O URI deve ser o caminho de download para o pacote de instalação:

   ```
   sudo pecl install <package download path>
   ```

   Veja a seguir um exemplo de comando de instalação para o PHP 5.4, Linux de 64 bits. Nessa amostra, substitua *X.Y.Z* pelo número de versão atual:

   ```
   sudo pecl install /home/AmazonElastiCacheClusterClient-X.Y.Z-PHP54-64bit.tgz
   ```
**nota**  
Use a versão recente do artefato de instalação.

1. Com a permissão root/sudo, adicione um novo arquivo denominado `memcached.ini` no diretório `/etc/php.d` e insira "extension=amazon-elasticache-cluster-client.so" no arquivo: 

   ```
   echo "extension=amazon-elasticache-cluster-client.so" | sudo tee --append /etc/php.d/memcached.ini
   ```

1. Inicie ou reinicie seu servidor Apache.

   ```
   sudo /etc/init.d/httpd start
   ```

 

### Para instalar o PHP 5 em uma AMI Red Hat Enterprise Linux 7.0 (64 bits e 32 bits)
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.RHEL"></a>

1. Execute uma instância do Red Hat Enterprise Linux (64 bits ou 32 bits) e faça login nela.

1. Instalar dependências PHP:

   ```
   sudo yum install gcc-c++ php php-pear
   ```

1. Baixe o pacote `php-memcached` correto para sua instância do Amazon EC2 e versão do PHP. Para obter mais informações, consulte [Para baixar o pacote de instalação](Appendix.PHPAutoDiscoverySetup.Downloading.md).

1. Instalar o `php-memcached`. O URI deve ser o caminho de download para o pacote de instalação:

   ```
   sudo pecl install <package download path>
   ```

1. Com a permissão root/sudo, adicione um novo arquivo denominado `memcached.ini` no diretório `/etc/php.d` e insira `extension=amazon-elasticache-cluster-client.so` no arquivo.

   ```
   echo "extension=amazon-elasticache-cluster-client.so" | sudo tee --append /etc/php.d/memcached.ini
   ```

1. Inicie ou reinicie seu servidor Apache.

   ```
   sudo /etc/init.d/httpd start
   ```

 

### Para instalar o PHP 5 em uma AMI Ubuntu Server 14.04 LTS (64 bits e 32 bits)
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.Ubuntu"></a>

1. Inicie uma instância do Ubuntu Linux (64 bits ou 32 bits) e faça login nela.

1. Instalar dependências PHP:

   ```
   sudo apt-get update 
   sudo apt-get install gcc g++ php5 php-pear
   ```

1. Baixe o pacote `php-memcached` correto para sua instância do Amazon EC2 e versão do PHP. Para obter mais informações, consulte [Para baixar o pacote de instalação](Appendix.PHPAutoDiscoverySetup.Downloading.md). 

1. Instalar o `php-memcached`. O URI deve ser o caminho de download para o pacote de instalação. 

   ```
   sudo pecl install <package download path>
   ```
**nota**  
Essa etapa de instalação instala o artefato de build `amazon-elasticache-cluster-client.so` no diretório `/usr/lib/php5/20121212*`. Verifique o caminho absoluto do artefato de build, porque você precisa dele na próxima etapa. 

   Se o comando anterior não funcionar, você precisará extrair manualmente o artefato de cliente PHP `amazon-elasticache-cluster-client.so` do arquivo `*.tgz` obtido por download e copiá-lo para o diretório `/usr/lib/php5/20121212*`.

   ```
   tar -xvf <package download path>
   cp amazon-elasticache-cluster-client.so /usr/lib/php5/20121212/
   ```

1. Com a permissão root/sudo, adicione um novo arquivo denominado `memcached.ini` no diretório `/etc/php5/cli/conf.d` e insira "extension=<absolute path to amazon-elasticache-cluster-client.so>" no arquivo.

   ```
   echo "extension=<absolute path to amazon-elasticache-cluster-client.so>" | sudo tee --append /etc/php5/cli/conf.d/memcached.ini
   ```

1. Inicie ou reinicie seu servidor Apache.

   ```
   sudo /etc/init.d/httpd start
   ```

 

### Para instalar o PHP 5 para a AMI SUSE Linux Enterprise Server 11 (64 bits ou 32 bits)
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.SuseLinux"></a>

1. Inicie uma instância do SUSE Linux (64 bits ou 32 bits) e faça login nela. 

1. Instalar dependências PHP:

   ```
   sudo zypper install gcc php53-devel
   ```

1. Baixe o pacote `php-memcached` correto para sua instância do Amazon EC2 e versão do PHP. Para obter mais informações, consulte [Para baixar o pacote de instalação](Appendix.PHPAutoDiscoverySetup.Downloading.md). 

1. Instalar o `php-memcached`. O URI deve ser o caminho de download para o pacote de instalação. 

   ```
   sudo pecl install <package download path>
   ```

1. Com a permissão root/sudo, adicione um novo arquivo denominado `memcached.ini` no diretório `/etc/php5/conf.d` e insira **extension=`amazon-elasticache-cluster-client.so`** no arquivo.

   ```
   echo "extension=amazon-elasticache-cluster-client.so" | sudo tee --append /etc/php5/conf.d/memcached.ini
   ```

1. Inicie ou reinicie seu servidor Apache.

   ```
   sudo /etc/init.d/httpd start
   ```

**nota**  
Se a Etapa 5 não funcionar para nenhuma das plataformas anteriores, verifique o caminho de instalação para `amazon-elasticache-cluster-client.so`. Além disso, especifique o caminho completo do binário da extensão. Além disso, verifique se o PHP em uso é uma versão com suporte. Oferecemos suporte às versões 5.3 a 5.5. 

 

### Outras distribuições do Linux
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.Other"></a>

Em alguns sistemas, especialmente o CentOS7 e o Red Hat Enterprise Linux (RHEL) 7.1, `libsasl2.so.3` substituiu `libsasl2.so.2`. Nesses sistemas, quando você carrega o cliente de cluster ElastiCache, ele tenta e não consegue localizar e carregar `libsasl2.so.2`. Para resolver esse problema, crie um link simbólico para `libsasl2.so.3`, de forma que, quando o cliente tentar carregar libsasl2.so.2, ele seja redirecionado para `libsasl2.so.3`. O código a seguir cria esse link simbólico.

```
cd /usr/lib64
sudo ln libsasl2.so.3 libsasl2.so.2
```

# Remoção do cliente de cluster PHP
<a name="Appendix.PHPAutoDiscoverySetup.Removing"></a>

**Topics**
+ [Remover uma versão anterior do PHP 7](#Appendix.PHPAutoDiscoverySetup.Removing.PHP7x)
+ [Remover uma versão anterior do PHP 5](#Appendix.PHPAutoDiscoverySetup.Removing.PHP5x)

## Remover uma versão anterior do PHP 7
<a name="Appendix.PHPAutoDiscoverySetup.Removing.PHP7x"></a>

**Para remover uma versão anterior do PHP 7**

1. Remova o arquivo `amazon-elasticache-cluster-client.so` do diretório lib PHP apropriado, conforme indicado anteriormente nas instruções de instalação. Consulte a seção para a sua instalação em [Para usuários que já possuam a extensão *php-memcached* instalada](Appendix.PHPAutoDiscoverySetup.md#Appendix.PHPAutoDiscoverySetup.InstallingExisting).

1. Remova a linha `extension=amazon-elasticache-cluster-client.so` do arquivo `php.ini`.

1. Inicie ou reinicie seu servidor Apache.

   ```
   sudo /etc/init.d/httpd start
   ```

## Remover uma versão anterior do PHP 5
<a name="Appendix.PHPAutoDiscoverySetup.Removing.PHP5x"></a>

**Para remover uma versão anterior do PHP 5**

1. Remova a extensão `php-memcached`:

   ```
   sudo pecl uninstall __uri/AmazonElastiCacheClusterClient
   ```

1.  Remova o arquivo `memcached.ini` adicionado no diretório apropriado, conforme indicado nas etapas de instalação anteriores. 

# Compilação do código-fonte para o cliente de cluster do ElastiCache para PHP
<a name="Appendix.PHPAutoDiscoveryCompile"></a>

Esta seção discute como obter e compilar o código-fonte do cliente de cluster do ElastiCache para PHP.

Existem dois pacotes que você precisa extrair do GitHub e compilar; [aws-elasticache-cluster-client-libmemcached](https://github.com/awslabs/aws-elasticache-cluster-client-libmemcached) e [aws-elasticache-cluster-client-memcached-for-php](https://github.com/awslabs/aws-elasticache-cluster-client-memcached-for-php).

**Topics**
+ [Compilação da biblioteca libmemcached](#Appendix.PHPAutoDiscoveryCompile.Libmemcached)
+ [Compilação do cliente de descoberta automática do Memcached do ElastiCache para PHP](#Appendix.PHPAutoDiscoveryCompile.Client)

## Compilação da biblioteca libmemcached
<a name="Appendix.PHPAutoDiscoveryCompile.Libmemcached"></a>

**Para compilar a biblioteca aws-elasticache-cluster-client-libmemcached**

1. Iniciar uma instância do Amazon EC2.

1. Instale as dependências da biblioteca.
   + Na AMI Amazon Linux 201509

     ```
     sudo yum install gcc gcc-c++ autoconf libevent-devel
     ```
   + Na AMI Ubuntu 14.04

     ```
     sudo apt-get update
     sudo apt-get install libevent-dev gcc g++ make autoconf libsasl2-dev
     ```

1. Extraia o repositório e compile o código.

   ```
   Download and install [ https://github.com/awslabs/aws-elasticache-cluster-client-libmemcached/archive/v1.0.18.tar.gz]( https://github.com/awslabs/aws-elasticache-cluster-client-libmemcached/archive/v1.0.18.tar.gz)
   ```

## Compilação do cliente de descoberta automática do Memcached do ElastiCache para PHP
<a name="Appendix.PHPAutoDiscoveryCompile.Client"></a>

As seções a seguir descrevem como compilar o cliente de descoberta automática do Memcached do ElastiCache

**Topics**
+ [Compilação do cliente do Memcached do ElastiCache para PHP 7](#Appendix.PHPAudiscoveryCompile.Client.PHP7)
+ [Compilação do cliente do Memcached do ElastiCache para PHP 5](#Appendix.PHPAudiscoveryCompile.PHP5)

### Compilação do cliente do Memcached do ElastiCache para PHP 7
<a name="Appendix.PHPAudiscoveryCompile.Client.PHP7"></a>

Execute o seguinte conjunto de comandos no diretório de código.

```
git clone https://github.com/awslabs/aws-elasticache-cluster-client-memcached-for-php.git
cd aws-elasticache-cluster-client-memcached-for-php 
git checkout php7
sudo yum install php70-devel
phpize
./configure --with-libmemcached-dir=<libmemcached-install-directory> --disable-memcached-sasl
make
make install
```

**nota**  
Você pode vincular estaticamente a biblioteca libmemcached ao binário PHP para que ele possa ser compatibilizado em várias plataformas Linux. Para fazer isso, execute o seguinte comando antes de `make`:  

```
sed -i "s#-lmemcached#<libmemcached-install-directory>/lib/libmemcached.a -lcrypt -lpthread -lm -lstdc++ -lsasl2#" Makefile 
```

### Compilação do cliente do Memcached do ElastiCache para PHP 5
<a name="Appendix.PHPAudiscoveryCompile.PHP5"></a>

Compile o `aws-elasticache-cluster-client-memcached-for-php` executando os seguintes comandos na pasta `aws-elasticache-cluster-client-memcached-for-php/`.

```
git clone https://github.com/awslabs/aws-elasticache-cluster-client-memcached-for-php.git
cd aws-elasticache-cluster-client-memcached-for-php 
sudo yum install zlib-devel
phpize
./configure --with-libmemcached-dir=<libmemcached-install-directory>
make
make install
```

# Configuração do ElastiCache
<a name="ClientConfig"></a>

Um cluster do ElastiCache tem conformidade de protocolo com o Valkey, Memcached e Redis OSS. O código, aplicações e as ferramentas mais populares que você usa hoje com seu ambiente existente funcionarão perfeitamente com o serviço.

Esta seção discute considerações específicas para se conectar a nós de cache no ElastiCache.

**Topics**
+ [Comandos restritos](ClientConfig.RestrictedCommands.md)
+ [Localização de endpoints de nó e números de porta](ClientConfig.FindingEndpointsAndPorts.md)
+ [Conexão para uso da descoberta automática](ClientConfig.AutoDiscovery.md)
+ [Conexão a nós em um cluster Valkey ou Redis OSS](ClientConfig.ReplicationGroup.md)
+ [Nomes de DNS e IP subjacente](ClientConfig.DNS.md)

# Comandos restritos
<a name="ClientConfig.RestrictedCommands"></a>

Para oferecer uma experiência de serviço gerenciado, ElastiCache restringe o acesso a determinados comandos específicos do mecanismo de cache que exigem privilégios avançados. Para clusters executando o Redis OSS, os seguintes comandos não estão disponíveis:
+ `bgrewriteaof`
+ `bgsave`
+ `config`
+ `debug`
+ `migrate`
+ `replicaof`
+ `save`
+ `slaveof`
+ `shutdown`
+ `sync`

# Localização de endpoints de nó e números de porta
<a name="ClientConfig.FindingEndpointsAndPorts"></a>

Para se conectar a um nó de cache, seu aplicativo precisa conhecer o endpoint e o número da porta desse nó.

## Localização de endpoints de nó e números de porta (console)
<a name="ClientConfig.FindingEndpointsAndPorts.CON"></a>

 **Para determinar os endpoints do nó e os números de porta** 

1. Faça login no [ Console de Gerenciamento do Amazon ElastiCache](https://aws.amazon.com/elasticache) e escolha o mecanismo em execução no seu cluster.

   É exibida uma lista de todos os clusters que executam o mecanismo escolhido.

1. Continue abaixo para o mecanismo e a configuração que você está executando.

1. Escolha o nome do cluster de interesse.

1. Localize as colunas **Port** e **Endpoint** para o nó em que você está interessado.

## Localização de endpoints de nó de cache e números de porta (AWS CLI)
<a name="ClientConfig.FindingEndpointsAndPorts.CLI"></a>

Para determinar endpoints de nó de cache e números de porta, use o comando `describe-cache-clusters` com o parâmetro `--show-cache-node-info`.

```
aws elasticache describe-cache-clusters --show-cache-node-info 
```

Os nomes DNS e números de porta totalmente qualificados estão na seção Endpoint da saída.

## Localização de endpoints de nó de cache e números de porta (API do ElastiCache)
<a name="ClientConfig.FindingEndpointsAndPorts.API"></a>

Para determinar endpoints de nó de cache e números de porta, use a ação `DescribeCacheClusters` com o parâmetro `ShowCacheNodeInfo=true`.

**Example**  

```
 1. https://elasticache.us-west-2.amazonaws.com /
 2.     ?Action=DescribeCacheClusters
 3.     &ShowCacheNodeInfo=true
 4.     &SignatureVersion=4
 5.     &SignatureMethod=HmacSHA256
 6.     &Timestamp=20140421T220302Z
 7.     &Version=2014-09-30   
 8.     &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
 9.     &X-Amz-Credential=<credential>
10.     &X-Amz-Date=20140421T220302Z
11.     &X-Amz-Expires=20140421T220302Z
12.     &X-Amz-Signature=<signature>
13.     &X-Amz-SignedHeaders=Host
```

# Conexão para uso da descoberta automática
<a name="ClientConfig.AutoDiscovery"></a>

Se os seus aplicativos usam a Descoberta automática, você só precisa conhecer o endpoint de configuração do cluster, e não os endpoints individuais de cada nó de cache. Para obter mais informações, consulte [Identificar automaticamente nós no seu cluster (Memcached)](AutoDiscovery.md).

**nota**  
Neste momento, a Descoberta automática só está disponível para clusters executando o Memcached.

# Conexão a nós em um cluster Valkey ou Redis OSS
<a name="ClientConfig.ReplicationGroup"></a>

**nota**  
Neste momento, os clusters (API/CLI: grupos de replicação) que oferecem suporte para replicação e réplicas de leitura têm suporte apenas para clusters que executam o Valkey ou o Redis OSS.

Para clusters, o ElastiCache fornece interfaces de console, CLI e API para informações de conexão de nós individuais.

Para atividades somente leitura, os aplicativos podem se conectar a qualquer nó no cluster. No entanto, para a atividade de gravação, recomendamos que suas aplicações se conectem ao endpoint primário (Valkey ou Redis OSS (modo cluster desabilitado)) ou ao endpoint de configuração (Valkey ou Redis OSS (modo cluster habilitado)) do cluster em vez de se conectarem diretamente a um nó. Isso garantirá que seus aplicativos sempre possam localizar o nó correto, mesmo que você decida reconfigurar seu cluster promovendo uma réplica de leitura para a função primária.

## Conexão a clusters em um grupo de replicação (console)
<a name="ClientConfig.ReplicationGroup.CON"></a>

**Para determinar endpoints e números de porta**
+ Consulte o tópico, [Localização de endpoints de um cluster do Valkey ou do Redis OSS (modo cluster desabilitado) (console)](Endpoints.md#Endpoints.Find.Redis).

## Conexão a clusters em um grupo de replicação (AWS CLI)
<a name="ClientConfig.ReplicationGroup.CLI"></a>

 **Para determinar endpoints de nó de cache e números de porta**

Use o comando `describe-replication-groups` com o nome do seu grupo de replicação:

```
aws elasticache describe-replication-groups redis2x2
```

Esse comando deve produzir um resultado semelhante ao seguinte:

```
{
    "ReplicationGroups": [
        {
            "Status": "available", 
            "Description": "2 shards, 2 nodes (1 + 1 replica)", 
            "NodeGroups": [
                {
                    "Status": "available", 
                    "Slots": "0-8191", 
                    "NodeGroupId": "0001", 
                    "NodeGroupMembers": [
                        {
                            "PreferredAvailabilityZone": "us-west-2c", 
                            "CacheNodeId": "0001", 
                            "CacheClusterId": "redis2x2-0001-001"
                        }, 
                        {
                            "PreferredAvailabilityZone": "us-west-2a", 
                            "CacheNodeId": "0001", 
                            "CacheClusterId": "redis2x2-0001-002"
                        }
                    ]
                }, 
                {
                    "Status": "available", 
                    "Slots": "8192-16383", 
                    "NodeGroupId": "0002", 
                    "NodeGroupMembers": [
                        {
                            "PreferredAvailabilityZone": "us-west-2b", 
                            "CacheNodeId": "0001", 
                            "CacheClusterId": "redis2x2-0002-001"
                        }, 
                        {
                            "PreferredAvailabilityZone": "us-west-2a", 
                            "CacheNodeId": "0001", 
                            "CacheClusterId": "redis2x2-0002-002"
                        }
                    ]
                }
            ], 
            "ConfigurationEndpoint": {
                "Port": 6379, 
                "Address": "redis2x2.9dcv5r.clustercfg.usw2.cache.amazonaws.com"
            }, 
            "ClusterEnabled": true, 
            "ReplicationGroupId": "redis2x2", 
            "SnapshotRetentionLimit": 1, 
            "AutomaticFailover": "enabled", 
            "SnapshotWindow": "13:00-14:00", 
            "MemberClusters": [
                "redis2x2-0001-001", 
                "redis2x2-0001-002", 
                "redis2x2-0002-001", 
                "redis2x2-0002-002"
            ], 
            "CacheNodeType": "cache.m3.medium", 
            "PendingModifiedValues": {}
        }
    ]
}
```

## Conexão a clusters em um grupo de replicação (API do ElastiCache)
<a name="ClientConfig.ReplicationGroup.API"></a>

 **Para determinar endpoints de nó de cache e números de porta** 

Chame `DescribeReplicationGroups` com o seguinte parâmetro:

`ReplicationGroupId` = o nome do seu grupo de replicação.

**Example**  

```
 1. https://elasticache.us-west-2.amazonaws.com /
 2.     ?Action=DescribeCacheClusters
 3.     &ReplicationGroupId=repgroup01
 4.     &Version=2014-09-30   
 5.     &SignatureVersion=4
 6.     &SignatureMethod=HmacSHA256
 7.     &Timestamp=20140421T220302Z
 8.     &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
 9.     &X-Amz-Date=20140421T220302Z
10.     &X-Amz-SignedHeaders=Host
11.     &X-Amz-Expires=20140421T220302Z
12.     &X-Amz-Credential=<credential>
13.     &X-Amz-Signature=<signature>
```

# Nomes de DNS e IP subjacente
<a name="ClientConfig.DNS"></a>

Os clientes mantêm uma lista de servidores contendo os endereços e as portas dos servidores que possuem os dados do cache. Ao usar o ElastiCache, a API DescribeCacheClusters (ou o utilitário de linha de comando describe-cache-clusters) retorna uma entrada DNS totalmente qualificada e um número de porta que podem ser usados para a lista de servidores.

**Importante**  
É importante que os aplicativos do cliente estejam configurados para resolver frequentemente os nomes DNS dos nós de cache quando eles tentam se conectar a um endpoint do nó de cache.

O ElastiCache garante que o nome DNS dos nós de cache permaneçam os mesmos quando os nós de cache forem recuperados em caso de falha.

A maioria das bibliotecas de cliente oferece suporte para conexões persistentes de nó de cache por padrão. Recomendamos o uso de conexões de nó de cache persistentes ao usar o ElastiCache. O armazenamento em cache de DNS no lado do cliente pode ocorrer em vários locais, incluindo bibliotecas de clientes, runtime da linguagem ou sistema operacional do cliente. Você deve revisar a configuração do seu aplicativo em cada camada para garantir que esteja resolvendo os endereços IP frequentemente para seus nós de cache.

# Classificação de dados em níveis no ElastiCache
<a name="data-tiering"></a>

Os clusters do ElastiCache para Valkey ou Redis OSS que compõem um grupo de replicação e usam um tipo de nó da família r6gd têm seus dados classificados em níveis entre a memória e o armazenamento SSD (unidades de estado sólido) local. A classificação de dados em níveis fornece uma nova opção de performance de preço para workloads do Valkey ou Redis OSS ao utilizar unidades de estado sólido (SSDs) de menor custo em cada nó de cluster, além de armazenar dados na memória. Essa modalidade é ideal para workloads que acessam regularmente até 20% do conjunto de dados geral e para aplicações que podem tolerar latência adicional ao acessar dados em SSD.

Em clusters do ElastiCache com classificação de dados em níveis, o ElastiCache monitora o último horário de acesso de cada item armazenado. Quando a memória disponível (DRAM) é totalmente consumida, o ElastiCache usa um algoritmo Least-Recently Used (LRU – Usado menos recentemente) para mover automaticamente da memória para o SSD os itens acessados com pouca frequência. Quando os dados em SSD são acessados posteriormente, o ElastiCache os move de modo automático e assíncrono de volta para a memória antes de processar a solicitação. Se você tiver uma workload que acessa regularmente apenas um subconjunto de dados, a classificação de dados em níveis é uma maneira ideal de dimensionar sua capacidade de modo econômico.

Observe que, ao usar a classificação por níveis, as próprias chaves sempre permanecem na memória, enquanto a LRU controla a colocação de valores na memória versus disco. Em geral, recomendamos que seus tamanhos de chave sejam menores do que seus tamanhos de valor ao usar a classificação por níveis de dados.

A classificação de dados em níveis foi projetada para causar impacto mínimo na performance das workload da aplicação. Por exemplo, presumindo valores de string de 500 bytes, você pode esperar uma média de mais 300 microssegundos de latência para solicitações de dados armazenados em SSD em comparação com solicitações de dados em memória.

Com o maior tamanho de nó de classificação de dados em níveis (cache.r6gd.16xlarge), você pode armazenar até 1 petabyte em um só cluster de 500 nós (500 TB ao usar 1 réplica de leitura). A classificação de dados em níveis é compatível com todos os comandos e estruturas de dados do Valkey ou Redis OSS compatíveis com o ElastiCache. Para usar esse recurso, não é necessário promover alterações no lado do cliente. 

**Topics**
+ [Práticas recomendadas](#data-tiering-best-practices)
+ [Limitações](#data-tiering-prerequisites)
+ [Preços](#data-tiering-pricing)
+ [Monitoramento](#data-tiering-monitoring)
+ [Como usar a classificação de dados em níveis](#data-tiering-enabling)
+ [Como restaurar dados do backup para clusters com a classificação de dados em níveis ativada](#data-tiering-enabling-snapshots)

## Práticas recomendadas
<a name="data-tiering-best-practices"></a>

Recomendamos seguir estas práticas recomendadas:
+ A classificação de dados em níveis é ideal para workloads que acessam regularmente até 20% do conjunto de dados geral e para aplicações que podem tolerar latência adicional ao acessar dados em SSD.
+ Ao usar a capacidade SSD disponível em nós em níveis de dados, recomendamos que o tamanho do valor seja maior do que o tamanho da chave. Quando os itens são movidos entre DRAM e SSD, as chaves sempre permanecerão na memória e somente os valores serão movidos para a camada SSD. 

## Limitações
<a name="data-tiering-prerequisites"></a>

A classificação de dados em níveis tem as seguintes limitações:
+ Você só pode usar a classificação de dados em níveis em clusters que fazem parte de um grupo de replicação.
+ O tipo de nó usado deve ser da família r6gd, que está disponível nas seguintes regiões: `us-east-2`, `us-east-1`, `us-west-2`, `us-west-1`, `eu-west-1`, `eu-central-1`, `eu-north-1`, `eu-west-3`, `ap-northeast-1`, `ap-southeast-1`, `ap-southeast-2`, `ap-south-1`, `ca-central-1` e `sa-east-1`.
+ Você deve usar um mecanismo que seja Valkey 7.2 ou posterior, ou um Redis OSS 6.2 ou posterior.
+ Você não pode restaurar um backup de um cluster r6gd para outro cluster, a menos que ele também use r6gd.
+ Você não pode exportar um backup para o Amazon S3 para clusters de classificação de dados em níveis.
+ Não há compatibilidade para migração online com clusters em execução no tipo de nó r6gd.
+ Não há compatibilidade com escalabilidade de um cluster de classificação de dados em níveis (p. ex., um cluster que use um tipo de nó r6gd) para um cluster sem classificação de dados em níveis (p. ex., um cluster que use um tipo de nó r6g). Para obter mais informações, consulte [Dimensionamento ElastiCache](Scaling.md).
+ O ajuste de escala automático é aceito em clusters que usam classificação de dados em níveis para Valkey versão 7.2 e posteriores e Redis OSS versão 7.0.7 e posteriores. Para obter mais informações, consulte . [Auto Scaling de clusters Valkey e Redis OSS](AutoScaling.md)
+ A divisão de dados em camadas só são compatíveis com as políticas `volatile-lru`, `allkeys-lru`, `volatile-lfu`, `allkeys-lfu` e `noeviction`. 
+ A gravação sem bifurcação é compatível com o Valkey versão 7.2 e posteriores, e com o Redis OSS versão 7.0.7 e posteriores. Para obter mais informações, consulte [Como a sincronização e o backup são implementados](Replication.Redis.Versions.md).
+ Itens maiores que 128 MiB não são movidos para o SSD.
+ A partir do Valkey 8.1 e versões posteriores, um item cujo tamanho de chave\$1valor seja menor que 40 bytes não será movido para o SSD.

## Preços
<a name="data-tiering-pricing"></a>

Os nós R6gd têm 4,8x mais capacidade total (memória \$1 SSD) e podem ajudar você a obter mais de 60% de economia para execução com utilização máxima em comparação aos nós R6g (somente memória). Para mais informações, consulte [Preços do Amazon ElastiCache](https://aws.amazon.com/elasticache/pricing/).

## Monitoramento
<a name="data-tiering-monitoring"></a>

O ElastiCache oferece métricas especificamente projetadas para monitorar os clusters de performance que usam a classificação de dados em níveis. Para monitorar a proporção de itens na DRAM em comparação com o SSD, é possível usar a métrica `CurrItems` em [Métricas para Valkey e Redis OSS](CacheMetrics.Redis.md). É possível calcular a porcentagem como: *(CurrItems com dimensão: Nível = Memória \$1 100) / (CurrItems sem filtro de dimensão)*. 

 Se a política de remoção configurada permitir, o ElastiCache começará a remover itens quando a porcentagem de itens na memória cair abaixo de 5%. Nos nós configurados com a política de não remoção, as operações de gravação receberão um erro de falta de memória. 

 Ainda é recomendável que você considere aumentar a escala horizontalmente para clusters de modo cluster habilitado ou aumentar a escala verticalmente para clusters de modo cluster desabilitado quando a porcentagem de itens na memória cair abaixo de 5%. Para obter mais informações sobre a escalabilidade, consulte [Escalabilidade de clusters no Valkey ou Redis OSS (modo cluster habilitado)](scaling-redis-cluster-mode-enabled.md). Para obter mais informações sobre métricas para clusters do Valkey ou Redis OSS que usam a classificação de dados em níveis, consulte [Métricas para o Valkey e Redis OSS](CacheMetrics.Redis.md).

## Como usar a classificação de dados em níveis
<a name="data-tiering-enabling"></a>

### Como usar a classificação de dados em níveis usando o Console de gerenciamento da AWS
<a name="data-tiering-enabling-console"></a>

Ao criar um cluster como parte de um grupo de replicação, você usa a classificação de dados em níveis selecionando um tipo de nó da família r6gd, p. ex., *cache.r6gd.xlarge*. A seleção desse tipo de nó ativa automaticamente a classificação de dados em níveis. 

Para mais informações sobre como criar um cluster, consulte [Criação de um cluster do Valkey ou Redis OSS](Clusters.Create.md).

### Como habilitar a classificação de dados em níveis usando a AWS CLI
<a name="data-tiering-enabling-cli"></a>

Ao criar um grupo de replicação usando a AWS CLI, você usa a classificação de dados em níveis selecionando um tipo de nó da família r6gd, p. ex., *cache.r6gd.xlarge* e configurando o parâmetro `--data-tiering-enabled`. 

Você não pode optar por não usar a classificação de dados em níveis ao selecionar um tipo de nó da família r6gd. Se você configurar o parâmetro `--no-data-tiering-enabled`, a operação falhará.

Para Linux, macOS ou Unix:

```
aws elasticache create-replication-group \
   --replication-group-id redis-dt-cluster \
   --replication-group-description "Redis OSS cluster with data tiering" \
   --num-node-groups 1 \
   --replicas-per-node-group 1 \
   --cache-node-type cache.r6gd.xlarge \
   --engine redis \   
   --cache-subnet-group-name default \
   --automatic-failover-enabled \
   --data-tiering-enabled
```

Para Windows:

```
aws elasticache create-replication-group ^
   --replication-group-id redis-dt-cluster ^
   --replication-group-description "Redis OSS cluster with data tiering" ^
   --num-node-groups 1 ^
   --replicas-per-node-group 1 ^
   --cache-node-type cache.r6gd.xlarge ^
   --engine redis ^   
   --cache-subnet-group-name default ^
   --automatic-failover-enabled ^
   --data-tiering-enabled
```

Após executar essa operação, você verá uma resposta semelhante ao seguinte:

```
{
    "ReplicationGroup": {
        "ReplicationGroupId": "redis-dt-cluster",
        "Description": "Redis OSS cluster with data tiering",
        "Status": "creating",           
        "PendingModifiedValues": {},
        "MemberClusters": [
            "redis-dt-cluster"
        ],
        "AutomaticFailover": "enabled",
        "DataTiering": "enabled",
        "SnapshotRetentionLimit": 0,
        "SnapshotWindow": "06:00-07:00",
        "ClusterEnabled": false,
        "CacheNodeType": "cache.r6gd.xlarge",       
        "TransitEncryptionEnabled": false,
        "AtRestEncryptionEnabled": false
    }
}
```

## Como restaurar dados do backup para clusters com a classificação de dados em níveis ativada
<a name="data-tiering-enabling-snapshots"></a>

Você pode usar o (Console), a (AWS CLI) ou a (API do ElastiCache) para restaurar um backup para um novo cluster com a classificação de dados em níveis ativada. Ao criar um cluster usando tipos de nós na família r6gd, a classificação de dados em níveis é ativada. 

### Como restaurar dados do backup para clusters com a classificação de dados em níveis ativada (console)
<a name="data-tiering-enabling-snapshots-console"></a>

**Para restaurar um backup para um novo cluster com a classificação de dados em níveis ativada (console)**

1. Faça login no Console de gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel de navegação, escolha **Backups**.

1. Na lista de backups, escolha a caixa à esquerda do nome do backup do qual você deseja restaurar.

1. Escolha **Restore**.

1. Preencha a caixa de diálogo **Restore Cluster**. Certifique-se de preencher todos os campos **Obrigatórios** e qualquer outro que você deseja alterar em relação aos padrões.

   1. **Cluster ID** (ID do cluster): obrigatório. O nome do novo cluster.

   1. **Modo cluster habilitado (aumento de escala horizontalmente)**: escolha esta opção para um cluster do Valkey ou Redis OSS (modo cluster habilitado). 

   1. **Node Type** (Tipo de nó) – Especifique **cache.r6gd.xlarge** ou qualquer outro tipo de nó da família r6gd.

   1. **Number of Shards** – Escolha o número de estilhaços desejados no novo cluster (API/CLI: grupos de nós).

   1. **Replicas per Shard** – Escolha o número de nós de réplica de leitura desejados em cada estilhaço.

   1. **Slots and keyspaces** (Slots e espaços de chaves): escolha como deseja que as chaves sejam distribuídas entre os fragmentos. Se você optar por especificar as distribuições de chaves, complete a tabela especificando os intervalos de chaves para cada estilhaço.

   1. **Availability zone(s)** – especifique como você deseja que as zonas de disponibilidade do cluster sejam selecionadas.

   1. **Port** – Somente altere esse valor se quiser que o novo cluster use uma porta diferente.

   1. **Choose a VPC** – Escolha a VPC na qual criar esse cluster.

   1. **Parameter Group**: escolha um grupo de parâmetros que reserve memória suficiente para a sobrecarga do Valkey ou Redis OSS para o tipo de nó selecionado.

1. Quando estiver satisfeito com as configurações, escolha **Create** (Criar).

Para mais informações sobre como criar um cluster, consulte [Criação de um cluster do Valkey ou Redis OSS](Clusters.Create.md).

### Como restaurar dados do backup para clusters com a classificação de dados em níveis ativada (AWS CLI)
<a name="data-tiering-enabling-snapshots-cli"></a>

Ao criar um grupo de replicação usando a AWS CLI, a classificação de dados em níveis é utilizada por padrão mediante a seleção de um tipo de nó da família r6gd, p. ex., *cache.r6gd.xlarge* e a configuração do parâmetro `--data-tiering-enabled`. 

Você não pode optar por não usar a classificação de dados em níveis ao selecionar um tipo de nó da família r6gd. Se você configurar o parâmetro `--no-data-tiering-enabled`, a operação falhará.

Para Linux, macOS ou Unix:

```
aws elasticache create-replication-group \
   --replication-group-id redis-dt-cluster \
   --replication-group-description "Redis OSS cluster with data tiering" \
   --num-node-groups 1 \
   --replicas-per-node-group 1 \
   --cache-node-type cache.r6gd.xlarge \
   --engine redis \   
   --cache-subnet-group-name default \
   --automatic-failover-enabled \
   --data-tiering-enabled \
   --snapshot-name my-snapshot
```

Para Linux, macOS ou Unix:

```
aws elasticache create-replication-group ^
   --replication-group-id redis-dt-cluster ^
   --replication-group-description "Redis OSS cluster with data tiering" ^
   --num-node-groups 1 ^
   --replicas-per-node-group 1 ^
   --cache-node-type cache.r6gd.xlarge ^
   --engine redis ^   
   --cache-subnet-group-name default ^
   --automatic-failover-enabled ^
   --data-tiering-enabled ^
   --snapshot-name my-snapshot
```

Após executar essa operação, você verá uma resposta semelhante ao seguinte:

```
{
    "ReplicationGroup": {
        "ReplicationGroupId": "redis-dt-cluster",
        "Description": "Redis OSS cluster with data tiering",
        "Status": "creating",           
        "PendingModifiedValues": {},
        "MemberClusters": [
            "redis-dt-cluster"
        ],
        "AutomaticFailover": "enabled",
        "DataTiering": "enabled",
        "SnapshotRetentionLimit": 0,
        "SnapshotWindow": "06:00-07:00",
        "ClusterEnabled": false,
        "CacheNodeType": "cache.r6gd.xlarge",        
        "TransitEncryptionEnabled": false,
        "AtRestEncryptionEnabled": false
    }
}
```

# Preparação de um cluster no ElastiCache
<a name="Clusters.Prepare"></a>

Veja a seguir instruções sobre como criar um cluster usando o console do ElastiCache, a AWS CLI ou a API do ElastiCache.

Você também pode criar um cluster do ElastiCache usando [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html). Para obter mais informações, consulte [ ::AWS::ElastiCache::CacheCluster](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html) no *AWSGuia do usuário do Cloud Formation*, que inclui orientações sobre como implementar essa abordagem.

Sempre que você criar um cluster ou grupo de replicação, é uma boa ideia fazer algum trabalho preparatório para que você não precise atualizar nem fazer alterações imediatamente.

**Topics**
+ [Determinar os requisitos do seu cluster do ElastiCache](cluster-create-determine-requirements.md)
+ [Escolha do tamanho do nó](CacheNodes.SelectSize.md)

# Determinar os requisitos do seu cluster do ElastiCache
<a name="cluster-create-determine-requirements"></a>

**Preparação**  
Conhecer as respostas às seguintes perguntas ajuda a simplificar a criação de um cluster do ElastiCache:
+ De qual tipo de instância de nó você precisa?

  Para obter orientação sobre como escolher um tipo de nó de instância, consulte [Escolha do tamanho do nó](CacheNodes.SelectSize.md).
+ Você executará seu cluster em uma nuvem privada virtual (VPC) baseada na Amazon VPC? 
**Importante**  
Se você estiver executando seu cluster em uma VPC, crie um grupo de sub-redes na mesma VPC antes de começar a criar um cluster. Para obter mais informações, consulte [Sub-redes e grupos de sub-redes](SubnetGroups.md).  
O ElastiCache foi projetado para ser acessado de dentro da AWS usando o Amazon EC2. No entanto, ao iniciá-lo em uma VPC com base na Amazon VPC e o seu cluster em uma VPC, você pode fornecer acesso de fora da AWS. Para obter mais informações, consulte [Acessando ElastiCache recursos de fora AWS](accessing-elasticache.md#access-from-outside-aws).
+ Você precisa personalizar qualquer valor de parâmetro?

  Se você fizer isso, crie um grupo de parâmetro personalizado. Para obter mais informações, consulte [Criação de um grupo de parâmetros do ElastiCache](ParameterGroups.Creating.md).

   Se você estiver executando o Valkey ou o Redis OSS, considere definir `reserved-memory` ou `reserved-memory-percent`. Para obter mais informações, consulte [Gerenciamento de memória reservada para Valkey e Redis OSS](redis-memory-management.md).
+ Você precisa criar o próprio *grupo de segurança da VPC*? 

  Para obter mais informações, consulte [Segurança na sua VPC](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Security.html).
+ Como você pretende implementar a tolerância a falhas?

  Para obter mais informações, consulte [Atenuar falhas](disaster-recovery-resiliency.md#FaultTolerance).

**Topics**
+ [Requisitos de memória e processador do ElastiCache](#cluster-create-determine-requirements-memory)
+ [Configuração do cluster do Memcached](#memcached-cluster-configuration)
+ [Configuração do cluster do Valkey e Redis OSS](#redis-cluster-configuration)
+ [Requisitos de escalabilidade do ElastiCache](#cluster-create-determine-requirements-scaling)
+ [Requisitos de acesso do ElastiCache](#cluster-create-determine-requirements-access)
+ [Requisitos de região, zona de disponibilidade e zona local do ElastiCache](#cluster-create-determine-requirements-region)

## Requisitos de memória e processador do ElastiCache
<a name="cluster-create-determine-requirements-memory"></a>

O bloco de construção básico do Amazon ElastiCache é o nó. Nós são configurados de forma singular ou em agrupamentos para formar clusters. Ao determinar o tipo de nó a ser usado para o seu cluster, considere a configuração do nó do cluster e a quantidade de dados que você deve armazenar.

O mecanismo Memcached é multi-threaded e, portanto, o número de núcleos de um nó afeta o poder computacional disponível para o cluster.

## Configuração do cluster do Memcached
<a name="memcached-cluster-configuration"></a>

Os clusters do ElastiCache for Memcached são compostos de 1 a 60 nós. Os dados em um cluster Memcached são particionados nos nós do cluster. Seu aplicativo conecta-se a um cluster Memcached usando um endereço de rede chamado de Endpoint. Cada nó em um cluster Memcached tem seu próprio endpoint, que seu aplicativo usa para ler ou gravar de/em um nó específico. Além dos pontos de extremidade do nó, o cluster do Memcached em si tem um endpoint chamado *endpoint de configuração*. Sua aplicação pode usar esse endpoint para ler ou gravar no cluster, deixando a determinação de qual nó deve ser lido ou gravado para até . 

![\[Imagem mostrando como um cluster do Memcached é particionado entre os nós do cluster.\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-Cluster-Memcached.png)


Para obter mais informações, consulte [Gerenciamento de clusters no ElastiCache](Clusters.md).

## Configuração do cluster do Valkey e Redis OSS
<a name="redis-cluster-configuration"></a>

Os clusters do ElastiCache para Valkey e Redis OSS são compostos de 0 a 500 fragmentos (também chamados de grupos de nós). Os dados em um cluster do Valkey ou Redis OSS são particionados nos fragmentos do cluster. Sua aplicação se conecta a um cluster do Valkey ou Redis OSS usando um endereço de rede chamado de Endpoint. Os nós em um fragmento do Valkey ou Redis OSS cumprem uma das duas funções: uma primária de leitura/gravação e todos os outros nós secundários somente leitura (também chamados de réplicas de leitura). Além dos endpoints do nó, o cluster do Valkey ou Redis OSS em si tem um endpoint chamado *endpoint de configuração*. Sua aplicação pode usar esse endpoint para ler ou gravar no cluster, deixando a determinação de qual nó deve ser lido ou gravado para até ElastiCache para Redis OSS. 

![\[Imagem comparando um cluster do Valkey ou Redis OSS no modo desabilitado versus no modo habilitado.\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCacheClusters-Redis-ClustersRGs.png)


Para obter mais informações, consulte [Gerenciamento de clusters no ElastiCache](Clusters.md).

## Requisitos de escalabilidade do ElastiCache
<a name="cluster-create-determine-requirements-scaling"></a>

Todos os clusters podem ser expandidos criando um novo cluster com o novo tipo de nó maior. Quando você aumenta a escala na vertical de um cluster do Memcached, o novo cluster começa vazio. Ao aumentar a escala na vertical de um cluster do Valkey ou Redis OSS, você pode propagá-lo de um backup e evitar que o novo cluster seja iniciado vazio.

Os clusters do Amazon ElastiCache for Memcached podem ter aumento ou redução de escala na horizontal. Para expandir ou reduzir um cluster Memcached, basta adicionar ou remover nós do cluster. Se você tiver habilitado a Descoberta automática e seu aplicativo estiver se conectando ao endpoint de configuração do cluster, não será necessário fazer alterações no aplicativo quando você adicionar ou remover nós.

Para obter mais informações, consulte [Dimensionamento ElastiCache](Scaling.md) neste guia.

## Requisitos de acesso do ElastiCache
<a name="cluster-create-determine-requirements-access"></a>

Por design, os clusters do Amazon ElastiCache são acessados a partir de instâncias do Amazon EC2. O acesso via rede a um cluster do ElastiCache é limitado à conta que criou esse cluster. Portanto, antes de poder acessar um cluster de uma instância do Amazon EC2, você deve autorizar a instância do Amazon EC2 a acessar o cluster. As etapas para essa autorização variam, dependendo de você ter executado na EC2-VPC ou no EC2-Classic.

Se você tiver executado seu cluster na EC2-VPC, deverá conceder entrada de rede ao cluster. Se você executou seu cluster no EC2-Classic, será necessário conceder acesso ao grupo de segurança do Amazon Elastic Compute Cloud para o grupo de segurança do ElastiCache associado à instância. Para obter instruções detalhadas, consulte [Etapa 3. Autorizar o acesso ao cluster](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.AuthorizeAccess.valkey) neste guia.

## Requisitos de região, zona de disponibilidade e zona local do ElastiCache
<a name="cluster-create-determine-requirements-region"></a>

O Amazon ElastiCache oferece suporte a todas as regiões da AWS. Ao colocar seus clusters do ElastiCache em uma região da AWS próxima à sua aplicação, é possível reduzir a latência. Se o seu cluster tiver vários nós, a localização deles em diferentes zonas de disponibilidade ou em zonas locais poderá reduzir o impacto das falhas no cluster.

Para obter mais informações, consulte:
+ [Seleção de regiões e zonas de disponibilidade para o ElastiCache](RegionsAndAZs.md)
+ [Uso de zonas locais com o ElastiCache](Local_zones.md)
+ [Atenuar falhas](disaster-recovery-resiliency.md#FaultTolerance)

# Escolha do tamanho do nó
<a name="CacheNodes.SelectSize"></a>

O tamanho do nó selecionado para seu cluster do ElastiCache afeta os custos, o desempenho e a tolerância a falhas. 

## Tamanho do nó (Valkey e Redis OSS)
<a name="CacheNodes.SelectSize.redis"></a>

Para receber informações sobre os benefícios dos processadores Graviton, consulte [Processador Graviton da AWS](https://aws.amazon.com/pm/ec2-graviton/).

Responder às seguintes perguntas poderá ajudá-lo a determinar o tipo mínimo de nó de que você precisa para sua implementação do Valkey ou Redis OSS:
+ Você espera workloads limitadas ao throughput com várias conexões de clientes?

  Se for esse o caso e você estiver executando o Redis OSS versão 5.0.6 ou posterior, você poderá obter melhor throughput e latência usando nosso atributo de E/S aprimorada, em que as CPUs disponíveis são usadas para descarregar as conexões do cliente, em nome do mecanismo Redis OSS. Se você estiver executando o Redis OSS versão 7.0.4 ou posterior, além da E/S aprimorada, você obterá aceleração adicional com multiplexação de E/S aprimorada, em que cada thread de E/S de rede dedicado canaliza comandos de vários clientes para o mecanismo Redis OSS, aproveitando a capacidade do Redis OSS de processar comandos em lotes com eficiência. No ElastiCache para Redis OSS v7.1 e versões posteriores, estendemos a funcionalidade de threads de E/S melhorada para também lidar com a lógica da camada de apresentação. Por camada de apresentação, o que queremos dizer é que os threads de E/S aprimorada agora não estão apenas lendo a entrada do cliente, mas também analisando a entrada no formato de comando binário do Redis OSS, que acaba sendo encaminhado para o thread principal para execução, proporcionando ganho de desempenho. Consulte a [publicação do blog](https://aws.amazon.com/blogs/database/achieve-over-500-million-requests-per-second-per-cluster-with-amazon-elasticache-for-redis-7-1/) e a página de [versões compatíveis](VersionManagement.md#supported-engine-versions) para obter detalhes adicionais. 
+ Você tem workloads que acessam regularmente um pequeno percentual de seus dados?

  Caso a resposta seja afirmativa e seu sistema esteja em execução no mecanismo Redis OSS versão 6.2 ou posterior, você pode aproveitar a classificação de dados em níveis escolhendo o tipo de nó r6gd. Com a classificação de dados em níveis, os dados usados menos recentemente são armazenados em SSD. Quando eles são recuperados, há um pequeno custo de latência, que é equilibrado pela economia de custos. Para obter mais informações, consulte [Classificação de dados em níveis no ElastiCache](data-tiering.md).

  Para obter mais informações, consulte [Tipos de nó compatíveis](CacheNodes.SupportedTypes.md).
+ Quanto de memória total você precisa para seus dados?

  Para obter uma estimativa geral, tome o tamanho dos itens que você deseja armazenar em cache. Multiplique esse tamanho pelo número de itens que deseja manter no cache ao mesmo tempo. Para obter uma estimativa razoável do tamanho dos itens, primeiro serialize seus itens de cache, e depois conte os caracteres. Em seguida, divida isso pelo número de fragmentos no cluster.

  Para obter mais informações, consulte [Tipos de nó compatíveis](CacheNodes.SupportedTypes.md).
+ Qual versão do Redis OSS você está executando?

  Versões do Redis OSS anteriores à 2.8.22 exigem que você reserve mais memória para failover, snapshot, sincronização e promoção de uma réplica para operações primárias. Esse requisito é importante porque você deve ter memória suficiente disponível para todas as gravações que ocorrem durante o processo. 

  O Redis OSS versão 2.8.22 e posteriores usam um processo de salvamento sem bifurcação que requer menos memória disponível que o processo anterior.

  Para obter mais informações, consulte:
  + [Como a sincronização e o backup são implementados](Replication.Redis.Versions.md)
  + [Garantir que você tem memória suficiente para criar um snapshot do Valkey ou Redis OSS](BestPractices.BGSAVE.md)
+ Qual é a intensidade de gravação do seu aplicativo?

  Gravar aplicativos pesados pode exigir significativamente mais memória disponível, memória não utilizada por dados, ao tirar snapshots ou fazer failover. Sempre que o processo `BGSAVE` for executado, você deve ter memória suficiente que não é usada pelos dados para acomodar todas as gravações que transpirem durante o processo `BGSAVE`. Exemplos são ao tirar um snapshot, ao sincronizar um cluster primário com uma réplica em um cluster e ao ativar o recurso de arquivo somente anexado (AOF). Outro exemplo acontece ao promover uma réplica para primária (se você tiver o Multi-AZ habilitado). O pior caso é quando todos os seus dados são reescritos durante o processo. Nesse caso, você precisa de um tamanho de instância de nó com o dobro da memória que é necessária para os dados isoladamente.

  Para obter mais informações detalhadas, consulte [Garantir que você tem memória suficiente para criar um snapshot do Valkey ou Redis OSS](BestPractices.BGSAVE.md).
+ Sua implementação será um cluster autônomo do Valkey ou Redis OSS (modo cluster desabilitado) ou um cluster do Valkey ou Redis OSS (modo cluster habilitado) com vários fragmentos?

**Cluster do Valkey ou Redis OSS (modo cluster desabilitado)**  
Se você estiver implementando um cluster do Valkey ou Redis OSS (modo cluster desabilitado), seu tipo de nó deve ser capaz de acomodar todos os seus dados mais a sobrecarga necessária, conforme descrito anteriormente.

  Por exemplo, suponha que você estime que o tamanho total de todos os seus itens é de 12 GB. Nesse caso, você pode usar um nó `cache.m3.xlarge` com 13,3 GB de memória ou um nó `cache.r3.large` com 13,5 GB de memória. No entanto, talvez você precise de mais memória para operações `BGSAVE`. Se a sua aplicação for de escrita pesada, duplique os requisitos de memória para pelo menos 24 GB. Assim, use ou `cache.m3.2xlarge` com 27,9 GB de memória ou um `cache.r3.xlarge` com 30,5 GB de memória.

**Valkey ou Redis OSS (modo cluster habilitado) com vários fragmentos**  
Se você estiver implementando um cluster do Valkey ou Redis OSS (modo cluster habilitado) com vários fragmentos, o tipo de nó deve ser capaz de acomodar `bytes-for-data-and-overhead / number-of-shards` bytes de dados.

  Por exemplo, suponha que você estime que o tamanho total de todos os seus itens é de 12 GB e você tem dois fragmentos. Nesse caso, você pode usar um nó `cache.m3.large` com 6,05 GB de memória (12 GB/2). No entanto, talvez você precise de mais memória para operações `BGSAVE`. Se a sua aplicação for de escrita pesada, duplique os requisitos de memória para pelo menos 12 GB por fragmento. Assim, use ou `cache.m3.xlarge` com 13,3 GB de memória ou um `cache.r3.large` com 13,5 GB de memória.
+ Você está usando Local Zones?

[Local Zones](Local_zones.md) (Zonas locais) permitem que você coloque recursos como um cluster do ElastiCache em vários locais próximos aos usuários. Mas, ao escolher o tamanho do nó, esteja ciente de que os tamanhos de nó disponíveis estão limitados ao seguinte no momento, independentemente dos requisitos de capacidade:
  + Geração atual: 

    **Tipos de nó M:** `cache.m5.large`, `cache.m5.xlarge`, `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`, `cache.m5.24xlarge` 

    **Tipos de nó R:** `cache.r5.large`, `cache.r5.xlarge`, `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`, `cache.r5.24xlarge`

    **Tipos de nó T:** `cache.t3.micro`, `cache.t3.small`, `cache.t3.medium`

Enquanto seu cluster está em execução, você pode monitorar o uso da memória, a utilização do processador, o cache e as métricas de perdas no cache que são publicadas no CloudWatch. Você pode notar que seu cluster não tem a taxa de acertos desejada ou que as chaves estão sendo removidas com muita frequência. Nesses casos, você pode escolher um tamanho de nó diferente com especificações de CPU e memória maiores.

Ao monitorar o uso da CPU, lembre-se que o Valkey e o Redis OSS são de thread único. Assim, multiplique o uso da CPU relatado pelo número de núcleos da CPU para obter esse uso real. Por exemplo, uma CPU de quatro núcleos que informa uma taxa de uso de 20% é, na verdade, o único núcleo que o Redis OSS está executando com 80% de utilização.

## Tamanho do nó (Memcached)
<a name="CacheNodes.SelectSize.Mem"></a>

Os clusters Memcached contêm um ou mais nós com os dados do cluster particionados entre os nós. Por isso, as necessidades de memória do cluster e de memória de um nó estão relacionadas, mas não são idênticas. Você pode obter a capacidade de memória de cluster necessária tendo alguns nós grandes ou vários nós menores. Além disso, conforme suas necessidades mudarem, você poderá adicionar ou remover nós do cluster e, assim, pagar apenas pelo que precisa.

A capacidade de memória total do cluster é calculada multiplicando o número de nós no cluster pela capacidade de RAM de cada nó, depois de deduzir as despesas gerais do sistema. A capacidade de cada nó é baseada no tipo de nó.

```
cluster_capacity = number_of_nodes * (node_capacity - system_overhead)
```

O número de nós no cluster é um fator chave na disponibilidade do seu cluster executando o Memcached. A falha de um único nó pode ter um impacto na disponibilidade da sua aplicação e na carga do seu banco de dados de backend. Nesse caso, o ElastiCache provisiona uma substituição para um nó com falha e ele é preenchido novamente. Para reduzir esse impacto na disponibilidade, espalhe sua memória e capacidade de computação ao redor de um número maior de nós com menor capacidade, em vez de usar um número menor de nós de alta capacidade.

Em um cenário em que você deseja ter 35 GB de memória cache, você pode definir qualquer uma das seguintes configurações:
+ 11`cache.t2.medium` nós com 3,22 GB de memória e 2 threads cada = 35,42 GB e 22 threads.
+ 6`cache.m4.large` nós com 6,42 GB de memória e 2 threads cada = 38,52 GB e 12 threads.
+ 3`cache.r4.large` nós com 12,3 GB de memória e 2 threads cada = 36,90 GB e 6 threads.
+ 3`cache.m4.xlarge` nós com 14,28 GB de memória e 4 threads cada = 42,84 GB e 12 threads.


**Comparar opções de nós**  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/CacheNodes.SelectSize.html)

Essas opções oferecem uma capacidade de memória semelhante, mas uma capacidade e custo computacional diferentes. Para comparar os custos das suas opções específicas, consulte [Definição de preço do Amazon ElastiCache](https://aws.amazon.com/elasticache/pricing/).

Para clusters executados no Memcached, algumas das memórias disponíveis em cada nó são usadas para sobrecarga de conexão. Para obter mais informações, consulte [Sobrecarga de conexões do Memcached](ParameterGroups.Engine.md#ParameterGroups.Memcached.Overhead)

O uso de vários nós exigirá a distribuição das chaves entre eles. Cada nó possui seu próprio endpoint. Para o fácil gerenciamento de endpoints, você pode usar o recurso de descoberta automática do ElastiCache, que permite que os programas clientes identifiquem automaticamente todos os nós em um cluster. Para obter mais informações, consulte [Identificar automaticamente nós no seu cluster (Memcached)](AutoDiscovery.md).

Em alguns casos, você pode não ter certeza de quanta capacidade precisa. Em caso afirmativo, para testes recomendamos começar com um nó `cache.m5.large`. Em seguida, monitore o uso da memória, a utilização da CPU e a taxa de acerto do cache com as métricas do ElastiCache publicadas no Amazon CloudWatch. Para obter mais informações sobre métricas do CloudWatch para o ElastiCache, consulte [Monitorando o uso com CloudWatch métricas](CacheMetrics.md). Para produção e maiores workloads, os nós R5 fornecem o melhor desempenho e valor de custo de RAM.

Se o seu cluster não tiver a taxa de acerto desejada, você poderá adicionar facilmente mais nós, aumentando assim a memória total disponível no seu cluster.

Se o seu cluster for limitado por CPU, mas tiver taxa de acerto suficiente, tente configurar um novo cluster com um tipo de nó que forneça mais poder computacional.

# Criação de um cluster do Valkey ou Redis OSS
<a name="Clusters.Create"></a>

Os exemplos a seguir mostram como criar um cluster OSS Valkey ou Redis usando a Console de gerenciamento da AWS API e.AWS CLI ElastiCache 

## Criação de um cluster do Valkey ou Redis OSS (modo cluster desabilitado) (console)
<a name="Clusters.Create.CON.Redis"></a>

ElastiCache oferece suporte à replicação quando você usa o mecanismo Valkey ou Redis OSS. Para monitorar a latência entre o momento em que os dados são gravados em um cluster read/write primário Valkey ou Redis OSS e o momento em que são propagados para um cluster secundário somente para leitura, ElastiCache adiciona ao cluster uma chave especial,. `ElastiCacheMasterReplicationTimestamp` Essa chave é a hora em Tempo Universal Coordenado (UTC) atual. Como um cluster do Valkey ou Redis OSS pode ser adicionado a um grupo de replicação mais tarde, essa chave está incluída em todos os clusters do Valkey ou Redis OSS, mesmo que inicialmente eles não sejam membros de um grupo de replicação. Para obter mais informações sobre grupos de replicação, consulte [Alta disponibilidade com o uso de grupos de replicação](Replication.md).

Para criar um cluster do Valkey ou Redis OSS (modo de cluster desabilitado), siga as etapas em [Criação de um cluster do Valkey (modo cluster desabilitado) (console)](SubnetGroups.designing-cluster-pre.valkey.md#Clusters.Create.CON.valkey-gs).

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](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.AuthorizeAccess.valkey) e [Etapa 4: Conectar-se ao nó de um cluster](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.ConnectToCacheNode.valkey).

**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](Clusters.Delete.md). 

## Criação de um cluster do Valkey ou Redis OSS (modo cluster habilitado) (console)
<a name="Clusters.Create.CON.RedisCluster"></a>

Se você estiver executando o Redis OSS 3.2.4 ou posterior, será possível criar um cluster do Valkey ou Redis OSS (modo cluster habilitado). Clusters do Valkey ou Redis OSS (modo cluster habilitado) oferecem suporte para o particionamento dos seus dados entre 1 e 500 fragmentos (API/CLI: grupos de nós), mas com algumas limitações. Para obter uma comparação entre o Valkey ou Redis OSS (modo cluster desabilitado) e o Valkey ou Redis OSS (modo cluster habilitado), consulte [Mecanismos e versões compatíveis](VersionManagement.md#supported-engine-versions).

**Para criar um cluster Valkey ou Redis OSS (modo de cluster ativado) usando o console ElastiCache**

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console da Amazon em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista no canto superior direito, escolha a AWS região na qual você deseja iniciar esse cluster.

1. No painel de navegação, escolha **Get started** (Conceitos básicos).

1. Escolha **Create VPC** (Criar VPC) e siga as etapas em [Creating a Virtual Private Cloud (VPC)](VPCs.CreatingVPC.md) (Criação de uma nuvem privada virtual (VPC)).

1. Na página do ElastiCache painel, escolha **Criar cluster** e, em seguida, escolha **Criar cluster Valkey ou Criar cluster** **Redis OSS**.

1. Em **Cluster settings** (Configurações do cluster), faça o seguinte:

   1. Selecione **Configure and create a new cluster** (Configurar e criar um novo cluster).

   1. Para o **Cluster mode** Modo cluster, escolha**Enabled** (Habilitado).

   1. Para o **Cluster info** (Informações sobre o cluster), insira um valor para **Name** (Nome). 

   1. (Opcional) Insira um valor para **Description** (Descrição).

1. Em **Location** (Local):

------
#### [ AWS Cloud  ]

   1. Para **AWS Cloud** (Nuvem), recomendamos que você aceite as configurações padrão de **Multi-AZ** e **Failover automático**. Para obter mais informações, consulte [Minimizando o tempo de inatividade no ElastiCache Redis OSS](AutoFailover.md) com Multi-AZ.

   1. Em **Cluster settings** (Configurações do cluster)

      1. Em **Engine version** (Versão do mecanismo), escolha a versão do mecanismo.

      1. Em **Port** (Porta), use a porta padrão, 6379. Se você tiver um motivo para usar uma porta diferente, insira o número da porta.

      1. Em **Grupo de parâmetro** (Parameter group), escolha um grupo de parâmetro ou crie um novo. Os grupo de parâmetros controlam os parâmetros de tempo de execução do seu cluster. Para obter mais informações sobre grupo de parâmetros, consulte [Parâmetros do Valkey e do Redis OSS](ParameterGroups.Engine.md#ParameterGroups.Redis) e [Criação de um grupo de parâmetros do ElastiCache](ParameterGroups.Creating.md).
**nota**  
Quando você seleciona um grupo de parâmetros para definir os valores de configuração do mecanismo, esse grupo de parâmetros é aplicado a todos os clusters no datastore global. Na página **Parameter Groups** (Grupos de parâmetros), o atributo **Global** indica se um grupo de parâmetros faz parte de um datastore global.

      1. Para **Node type** (Tipo de nó), escolha a seta para baixo (![\[Downward-pointing triangle icon, typically used to indicate a dropdown menu.\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-DnArrow.png)). Na caixa de diálogo **Change node type** (Alterar tipo de nó), escolha um valor para a **Instance family** (Família de instâncias) para o tipo de nó desejado. Depois disso, escolha o tipo de nó que deseja usar para este cluster e escolha **Save** (Salvar).

         Para obter mais informações, consulte [Escolha do tamanho do nó](CacheNodes.SelectSize.md).

         Se você escolher um tipo de nó r6gd, a classificação de dados em níveis será ativada automaticamente. Para obter mais informações, consulte [Classificação de dados em níveis no ElastiCache](data-tiering.md).

      1. Em **Número de fragmentos**, escolha o número de fragmentos (partições/grupos de nós) desejado para este cluster do Valkey ou Redis OSS (modo cluster habilitado).

         Para algumas versões do Valkey ou Redis OSS (modo cluster habilitado), é possível alterar dinamicamente o número de fragmentos no cluster:
         + **Redis OSS 3.2.10 e posteriores**: se o cluster estiver executando o Redis OSS 3.2.10 ou versões posteriores, será possível alterar dinamicamente o número de fragmentos no cluster. Para obter mais informações, consulte [Escalabilidade de clusters no Valkey ou Redis OSS (modo cluster habilitado)](scaling-redis-cluster-mode-enabled.md).
         + **Outras versões do Redis OSS**: se o cluster estiver executando uma versão do Redis OSS anterior à versão 3.2.10, há outra abordagem. Para alterar o número de fragmentos no cluster nesse caso, crie um novo cluster com o novo número de fragmentos. Para obter mais informações, consulte [Restauração de um backup para um novo cache](backups-restoring.md).

      1. Em **Réplicas por fragmento**, escolha o número de nós de réplica de leitura desejados em cada fragmento.

         As restrições a seguir existem para o Valkey ou Redis OSS (modo cluster habilitado).
         + Se você tiver o Multi-AZ habilitado, verifique se tem pelo menos uma réplica por fragmento.
         + O número de réplicas é o mesmo para cada fragmento ao criar o cluster usando o console.
         + O número de réplicas de leitura por fragmento é fixo e não pode ser alterado. Se você achar que precisa de mais ou menos réplicas por fragmento (API/CLI: grupo de nós), deverá criar um novo cluster com o novo número de réplicas. Para obter mais informações, consulte [Tutorial: propagação de um novo cluster baseado em nós com um backup criado externamente](backups-seeding-redis.md).

   1. Em **Connectivity** (Conectividade)

      1. Em **Network type** (Tipo de rede), escolha as versões de IP compatíveis com esse cluster. 

      1. Em **Grupos de sub-redes**, escolha a sub-rede que você deseja aplicar a esse cluster. ElastiCache usa esse grupo de sub-redes para escolher uma sub-rede e endereços IP dentro dessa sub-rede para associar aos seus nós. ElastiCache os clusters exigem uma sub-rede de pilha dupla com ambos IPv4 e IPv6 endereços atribuídos a eles para operar no modo de pilha dupla e uma IPv6 sub-rede somente para operar somente como -only. IPv6

         Ao criar um novo grupo de sub-rede, insira o **VPC ID** (ID da VPC) ao qual ele pertence.

         Selecione um **Discovery IP type** (Tipo de IP de descoberta). Somente os endereços IP do protocolo escolhido são retornados. 

         Para obter mais informações, consulte:
         + [Escolhendo um tipo de rede em ElastiCache](network-type.md).
         + [Criar uma sub-rede na VPC](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#AddaSubnet).

         Se você for [Uso de zonas locais com o ElastiCache](Local_zones.md), deverá criar ou escolher uma sub-rede que esteja na região local. 

         Para obter mais informações, consulte [Sub-redes e grupos de sub-redes](SubnetGroups.md).

   1. Em **Availability zone placements** (Posicionamentos de zona de disponibilidade), você tem duas opções:
      + **Sem preferência** — ElastiCache escolhe a Zona de Disponibilidade.
      + **Specify availability zones** (Especificar zonas de disponibilidade): você especifica a zona de disponibilidade para cada cluster.

        Se optar por especificar as zonas de disponibilidade, para cada cluster em cada fragmento, escolha a zona de disponibilidade na lista.

      Para obter mais informações, consulte [Seleção de regiões e zonas de disponibilidade para o ElastiCache](RegionsAndAZs.md).

   1. Escolha **Next** (Próximo)

   1. Em **Configurações avançadas do Valkey** ou **Configurações avançadas do Redis OSS** ou 

      1. Para **Security** (Segurança): 

        1. Para criptografar seus dados, você tem as seguintes opções:
           + **Criptografia em repouso**: permite a criptografia de dados armazenados em disco. Para obter mais informações, consulte [Criptografia em repouso](at-rest-encryption.md).
**nota**  
Você tem a opção de fornecer uma chave de criptografia diferente escolhendo a chave **AWS KMS gerenciada pelo cliente** e escolhendo a chave. Para obter mais informações, consulte [Usar chaves gerenciadas pelo cliente do AWS KMS](at-rest-encryption.md#using-customer-managed-keys-for-elasticache-security).
           + **Encryption in-transit** (Criptografia em trânsito): permite a criptografia de dados na conexão. Para obter mais informações, consulte [criptografia em trânsito](in-transit-encryption.md). Para o Valkey 7.2 e posteriores ou Redis OSS 6.0 e posteriores, se você habilitar a Criptografia em trânsito, você será solicitado a especificar uma das seguintes opções de **Controle de acesso**:
             + **No Access Control** (Sem controle de acesso): essa é a configuração padrão. Isso indica que não há restrições no acesso do usuário ao cluster.
             + **User Group Access Control List** (Lista de controle de acesso de grupo de usuários): selecione um grupo de usuários com um conjunto definido de usuários que possam acessar o cluster. Para obter mais informações, consulte [Gerenciamento de grupos de usuários com o console e a CLI](Clusters.RBAC.md#User-Groups).
             + **Usuário padrão AUTH**: um mecanismo de autenticação para um servidor Valkey ou Redis OSS. Para obter mais informações, consulte [AUTH](auth.md).
           + **AUTH**: um mecanismo de autenticação para servidores Valkey ou Redis OSS. Para obter mais informações, consulte [AUTH](auth.md).
**nota**  
Para versões do Redis OSS 3.2.6 e posteriores, excluindo a versão 3.2.10, o AUTH é a única opção.

        1. Em **Grupos de segurança**, escolha os grupos de segurança desejados para esse cluster. Um *grupo de segurança* atua como um firewall para controlar o acesso à rede ao cluster. É possível usar o grupo de segurança padrão para sua VPC ou criar um novo.

           Para obter mais informações sobre grupos de segurança, consulte [Grupos de segurança para sua VPC](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) no *Guia do usuário da Amazon VPC*.

   1. Para backups automáticos agendados regularmente, selecione **Enable automatic backups** (Habilitar backups automáticos) e insira o número de dias que deseja que cada backup automático seja mantido antes de ser excluído automaticamente. Se não quiser backups automáticos agendados regularmente, desmarque a caixa de seleção **Enable automatic backups** (Habilitar backups automáticos). Em ambos os casos, você sempre tem a opção de criar backups manuais.

      Para obter mais informações sobre backup e restauração, consulte [Snapshots e restauração](backups.md).

   1. (Opcional) Especifique uma janela de manutenção. A opção *janela de manutenção* é o tempo, geralmente uma hora de duração, a cada semana quando o ElastiCache agenda a manutenção do sistema para seu cluster. Você pode permitir que o ElastiCache escolha o dia e a hora da sua janela de manutenção (*No preference*) ou pode escolher o dia, a hora e a duração por conta própria (*Specify maintenance window*). Se você escolher *Especificar janela de manutenção*, nas listas, escolha *Dia de início*, *Hora de início* e *Duração* (em horas) para sua janela de manutenção. Todos os horários são em UCT.

      Para obter mais informações, consulte [Gerenciamento de manutenção de cluster do ElastiCache](maintenance-window.md).

   1. (Opcional) Para **Logs**:
      + Em **Log format** (Formato do log), escolha **Text** (Texto) ou **JSON**.
      + Em **Tipo de destino**, escolha **CloudWatch Logs** ou **Kinesis Firehose**.
      + Em **Destino do registro**, escolha **Criar novo** e insira o nome do grupo de CloudWatch registros do Logs ou o nome do stream do Firehose, ou escolha **Selecionar existente** e escolha o nome do grupo de CloudWatch registros do Logs ou o nome do stream do Firehose,

   1. Para **Tags**, para ajudá-lo a gerenciar seus clusters e outros ElastiCache recursos, você pode atribuir seus próprios metadados a cada recurso na forma de tags. Para obter mais informações, consulte [Marcando seus recursos ElastiCache](Tagging-Resources.md).

   1. Escolha **Next** (Próximo).

   1. Revise todas as suas entradas e opções e faça as correções necessárias. Quando estiver pronto, escolha **Create** (Criar).

------
#### [ On premises ]

   1. Para **On-premises**, recomendamos que você deixe **Auto-failover** (Failover automático) habilitado. Para obter mais informações, consulte [Minimizando o tempo de inatividade no ElastiCache Redis](AutoFailover.md) OSS com Multi-AZ

   1. Siga as etapas em [Uso do Outposts](ElastiCache-Outposts.md).

------

Para criar o equivalente usando a ElastiCache API ou AWS CLI em vez do ElastiCache console, veja o seguinte: 
+ API: [CreateReplicationGroup](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateReplicationGroup.html)
+ CLI: [create-replication-group](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-replication-group.html)

Assim que o status do seu cluster estiver *disponível*, você poderá conceder EC2 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](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.AuthorizeAccess.valkey) e [Etapa 4: Conectar-se ao nó de um cluster](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.ConnectToCacheNode.valkey).

**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](Clusters.Delete.md). 

## Criar um cluster (AWS CLI)
<a name="Clusters.Create.CLI"></a>

Para criar um cluster usando o AWS CLI, use o `create-cache-cluster` comando.

**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](Clusters.Delete.md). 

### Criação de um cluster do Valkey ou Redis OSS (modo cluster desabilitado) (CLI)
<a name="Clusters.Create.CLI.Redis"></a>

**Example – Um cluster do Valkey ou Redis OSS (modo cluster desabilitado) sem réplicas de leitura**  
O código da CLI a seguir cria um cluster do Valkey ou Redis OSS (modo cluster desabilitado) sem réplicas.  
Ao criar cluster usando um tipo de nó da família r6gd, é necessário repassar o parâmetro `data-tiering-enabled`.
Para Linux, macOS ou Unix:  

```
aws elasticache create-cache-cluster \
--cache-cluster-id my-cluster \
--cache-node-type cache.r4.large \
--engine redis \
--num-cache-nodes 1 \
--cache-parameter-group default.redis6.x \
--snapshot-arns arn:aws:s3:::amzn-s3-demo-bucket/snapshot.rdb
```
Para Windows:  

```
aws elasticache create-cache-cluster ^
--cache-cluster-id my-cluster ^
--cache-node-type cache.r4.large ^
--engine redis ^
--num-cache-nodes 1 ^
--cache-parameter-group default.redis6.x ^
--snapshot-arns arn:aws:s3:::amzn-s3-demo-bucket/snapshot.rdb
```

### Criação de um cluster do Valkey ou Redis OSS (modo cluster habilitado) (AWS CLI)
<a name="Clusters.Create.CLI.RedisCluster"></a>

Clusters do Valkey ou Redis OSS (modo cluster habilitado) (API/CLI: grupos de replicação) não podem ser criados usando a operação `create-cache-cluster`. Para criar um cluster do Valkey ou Redis OSS (modo cluster habilitado) (API/CLI: grupo de replicação), consulte [Criação de um grupo de replicação do Valkey ou Redis OSS (modo cluster habilitado) do início (AWS CLI)](Replication.CreatingReplGroup.NoExistingCluster.Cluster.md#Replication.CreatingReplGroup.NoExistingCluster.Cluster.CLI).

Para obter mais informações, consulte o tópico AWS CLI de ElastiCache referência [https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-replication-group.html](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-replication-group.html).

## Criação de um cluster para Valkey ou Redis OSS (API) ElastiCache
<a name="Clusters.Create.API.red-heading"></a>

Para criar um cluster usando a ElastiCache API, use a `CreateCacheCluster` ação. 

**Importante**  
Assim que seu cluster se tornar disponível, você será cobrado por cada hora ou hora parcial em que ele estiver, mesmo que você não o esteja usando. Para interromper as cobranças aplicáveis para esse cluster, você deve excluí-lo. Consulte [Excluindo um cluster no ElastiCache](Clusters.Delete.md). 

**Topics**
+ [Criação de um cluster (API) Valkey ou Redis OSS (modo de cluster desativado) ElastiCache](#Clusters.Create.API.Redis)
+ [Criação de um cluster no Valkey ou no Redis OSS (modo de cluster ativado) (API) ElastiCache](#Clusters.Create.API.RedisCluster)

### Criação de um cluster (API) Valkey ou Redis OSS (modo de cluster desativado) ElastiCache
<a name="Clusters.Create.API.Redis"></a>

O código a seguir cria um cluster (API) Valkey ou Redis OSS (modo de cluster desativado). ElastiCache 

As quebras de linha foram adicionadas para legibilidade.

```
https://elasticache.us-west-2.amazonaws.com/
    ?Action=CreateCacheCluster
    &CacheClusterId=my-cluster
    &CacheNodeType=cache.r4.large
    &CacheParameterGroup=default.redis3.2
    &Engine=redis
    &EngineVersion=3.2.4
    &NumCacheNodes=1
    &SignatureVersion=4       
    &SignatureMethod=HmacSHA256
    &SnapshotArns.member.1=arn%3Aaws%3As3%3A%3A%3AmyS3Bucket%2Fdump.rdb
    &Timestamp=20150508T220302Z
    &Version=2015-02-02
    &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
    &X-Amz-Credential=<credential>
    &X-Amz-Date=20150508T220302Z
    &X-Amz-Expires=20150508T220302Z
    &X-Amz-SignedHeaders=Host
    &X-Amz-Signature=<signature>
```

### Criação de um cluster no Valkey ou no Redis OSS (modo de cluster ativado) (API) ElastiCache
<a name="Clusters.Create.API.RedisCluster"></a>

Clusters do Valkey ou Redis OSS (modo cluster habilitado) (API/CLI: grupos de replicação) não podem ser criados usando a operação `CreateCacheCluster`. Para criar um cluster do Valkey ou Redis OSS (modo cluster habilitado) (API/CLI: grupo de replicação), consulte [Criação de um grupo de replicação no Valkey ou Redis OSS (modo cluster habilitado) do início (API do ElastiCache)](Replication.CreatingReplGroup.NoExistingCluster.Cluster.md#Replication.CreatingReplGroup.NoExistingCluster.Cluster.API).

Para obter mais informações, consulte o tópico de referência ElastiCache da API [https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateReplicationGroup.html](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateReplicationGroup.html).

# Criação de um cluster do Memcached
<a name="Clusters.Create-mc"></a>

Os exemplos a seguir mostram como criar um cluster usando Console de gerenciamento da AWS a ElastiCache API AWS CLI e.

## Criação de um cluster do Memcached (console)
<a name="Clusters.Create.CON.Memcached"></a>

Quando você usa o mecanismo Memcached, a Amazon ElastiCache suporta o particionamento horizontal de seus dados em vários nós. O Memcached permite a descoberta automática e, portanto, você não precisa rastrear os endpoints de cada nó. O Memcached rastreia o endpoint de cada nó, atualizando a lista de endpoints à medida que os nós são adicionados e removidos. Seu aplicativo precisa apenas do endpoint de configuração para interagir com o cluster. 

Para criar um cluster do Memcached por meio do console, siga as etapas em [Criação de um cluster do Valkey (modo de cluster desabilitado) (console)](Clusters.Create.md#Clusters.Create.CON.RedisCluster). Ao chegar à etapa cinco, selecione **Criar cache do Memcached**.

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 as etapas semelhantes [Etapa 3. Autorizar o acesso ao cluster](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.AuthorizeAccess.valkey) e [Etapa 4: Conectar-se ao nó de um cluster](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.ConnectToCacheNode.valkey).

**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](Clusters.Delete.md). 

## Criar um cluster (AWS CLI)
<a name="Clusters.Create.CLI.memcached-intro"></a>

Para criar um cluster usando o AWS CLI, use o `create-cache-cluster` comando.

**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](Clusters.Delete.md). 

### Criar um cluster de cache Memcached (AWS CLI)
<a name="Clusters.Create.CLI.Memcached"></a>

O código da CLI a seguir cria um cluster de Memcached com 3 nós.

Para Linux, macOS ou Unix:

```
aws elasticache create-cache-cluster \
--cache-cluster-id my-cluster \
--cache-node-type cache.r4.large \
--engine memcached \
--engine-version 1.4.24 \
--cache-parameter-group default.memcached1.4 \
--num-cache-nodes 3
```

Para Windows:

```
aws elasticache create-cache-cluster ^
--cache-cluster-id my-cluster ^
--cache-node-type cache.r4.large ^
--engine memcached ^
--engine-version 1.4.24 ^
--cache-parameter-group default.memcached1.4 ^
--num-cache-nodes 3
```

## Criação de um cluster para Memcached (API) ElastiCache
<a name="Clusters.Create.API.mem-heading"></a>

Para criar um cluster usando a ElastiCache API, use a `CreateCacheCluster` ação. 

**Importante**  
Assim que seu cluster se tornar disponível, você será cobrado por cada hora ou hora parcial em que ele estiver, mesmo que você não o esteja usando. Para interromper as cobranças aplicáveis para esse cluster, você deve excluí-lo. Consulte [Excluindo um cluster no ElastiCache](Clusters.Delete.md). 

**Topics**
+ [Criação de um cluster Memcached (API) ElastiCache](#Clusters.Create.API.Memcached)

### Criação de um cluster Memcached (API) ElastiCache
<a name="Clusters.Create.API.Memcached"></a>

O código a seguir cria um cluster Memcached com 3 nós (ElastiCache API).

As quebras de linha foram adicionadas para legibilidade.

```
https://elasticache.us-west-2.amazonaws.com/
    ?Action=CreateCacheCluster
    &CacheClusterId=my-cluster
    &CacheNodeType=cache.r4.large
    &Engine=memcached
    &NumCacheNodes=3
    &SignatureVersion=4       
    &SignatureMethod=HmacSHA256
    &Timestamp=20150508T220302Z
    &Version=2015-02-02
    &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
    &X-Amz-Credential=<credential>
    &X-Amz-Date=20150508T220302Z
    &X-Amz-Expires=20150508T220302Z
    &X-Amz-SignedHeaders=Host
    &X-Amz-Signature=<signature>
```

# Visualização dos detalhes de um cluster do ElastiCache
<a name="Clusters.ViewDetails"></a>

Você pode visualizar informações detalhadas sobre um ou mais clusters usando o console do ElastiCache, a AWS CLI ou a API do ElastiCache.

## Visualização dos detalhes de um cluster do Memcached (console)
<a name="Clusters.ViewDetails.CON.Memcached"></a>

Você pode visualizar os detalhes de um cluster do Memcached usando o console do ElastiCache, a AWS CLI para o ElastiCache ou a API do ElastiCache.

O procedimento a seguir detalha como visualizar os detalhes de um cluster do Memcached usando o console do ElastiCache.

**Para visualizar os detalhes de um cluster Memcached**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista localizada no canto superior direito, escolha a região da AWS de interesse.

1. No painel do mecanismo ElastiCache, escolha **Memcached**. Isso exibe uma lista de todos os seus clusters que estão em execução no mecanismo Memcached.

1. Para ver os detalhes de um cluster, escolha a caixa de seleção à esquerda do nome do cluster.

1. Para visualizar as informações do nó, escolha a guia **Nodes** (Nós), que exibe informações sobre o status e o endpoint dos nós.

1. Para visualizar as métricas, escolha a guia **Metrics** (Métricas), que exibe as métricas relevantes para todos os nós do cluster. Para obter mais informações, consulte . [Monitorando o uso com CloudWatch métricas](CacheMetrics.md)

1. Escolha a guia **Network and security** (Rede e segurança) para ver detalhes sobre a conectividade de rede e a configuração do grupo de sub-rede do cluster e o grupo de segurança da VPC. Para obter mais informações, consulte [Sub-redes e grupos de sub-redes](SubnetGroups.md).

1. Escolha a guia **Maintenance** (Manutenção) para ver detalhes sobre as configurações de manutenção do cluster. Para obter mais informações, consulte [Gerenciamento de manutenção de cluster do ElastiCache](maintenance-window.md).

1. Escolha a guia **Tags** para ver detalhes sobre as tags aplicadas aos recursos do cluster. Para obter mais informações, consulte [Marcando seus recursos ElastiCache](Tagging-Resources.md).

## Visualização dos detalhes do Valkey ou Redis OSS (modo cluster desabilitado) (console)
<a name="Clusters.ViewDetails.CON.Redis"></a>

Você pode visualizar os detalhes de um cluster do Valkey ou Redis OSS (modo cluster desabilitado) usando o console do ElastiCache, a AWS CLI para o ElastiCache ou a API do ElastiCache.

O procedimento a seguir detalha como visualizar os detalhes de um cluster do Valkey ou Redis OSS (modo cluster desabilitado) usando o console do ElastiCache.

**Para exibir os detalhes de um cluster do Valkey ou Redis OSS (modo cluster desabilitado)**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel do mecanismo ElastiCache, escolha **Valkey** ou **Redis OSS** para exibir uma lista de todos os seus clusters que estão sendo executados no mecanismo.

1. Para ver os detalhes de um cluster, marque a caixa de seleção à esquerda do nome do cluster. Certifique-se de selecionar um cluster que execute o mecanismo Valkey ou Redis OSS, não o Clustered Valkey ou o Clustered Redis OSS. Ao fazer isso, os detalhes sobre o cluster serão exibidos, incluindo o endpoint principal do cluster.

1. Como visualizar informações do nó:

   1. Escolha o nome do cluster.

   1. Selecione a guia **Shards and nodes** (Fragmentos e nós) Ao fazer isso, os detalhes sobre cada nó serão exibidos, incluindo o endpoint do nó, que você precisa usar para ler do cluster.

1. Para visualizar as métricas, escolha a guia **Metrics** (Métricas), que exibe as métricas relevantes para todos os nós do cluster. Para obter mais informações, consulte . [Monitorando o uso com CloudWatch métricas](CacheMetrics.md)

1. Para visualizar os logs, escolha a guia **Logs**, que indica se o cluster está usando logs lentos ou logs do mecanismo e fornece detalhes relevantes. Para obter mais informações, consulte [Entrega de logs](Log_Delivery.md).

1. Escolha a guia **Network and security** (Rede e segurança) para ver detalhes sobre a conectividade de rede e a configuração do grupo de sub-redes do cluster. Para obter mais informações, consulte [Sub-redes e grupos de sub-redes](SubnetGroups.md).

1. Escolha a guia **Maintenance** (Manutenção) para ver detalhes sobre as configurações de manutenção do cluster. Para obter mais informações, consulte [Gerenciamento de manutenção de cluster do ElastiCache](maintenance-window.md).

1. Escolha a guia **Service updates** (Atualizações do serviço) para ver detalhes sobre todas as atualizações de serviço disponíveis, juntamente com a data de validade recomendada. Para obter mais informações, consulte [Atualizações de serviço em ElastiCache](Self-Service-Updates.md).

1. Escolha a guia **Tags** para ver detalhes sobre as tags aplicadas aos recursos do cluster. Para obter mais informações, consulte [Marcando seus recursos ElastiCache](Tagging-Resources.md).

## Visualização de detalhes de um cluster do Valkey ou Redis OSS (modo cluster habilitado) (console)
<a name="Clusters.ViewDetails.CON.RedisCluster"></a>

Você pode visualizar os detalhes de um cluster do Valkey ou Redis OSS (modo cluster habilitado) usando o console do ElastiCache, a AWS CLI para o ElastiCache ou a API do ElastiCache.

O procedimento a seguir detalha como visualizar os detalhes de um cluster do Valkey ou Redis OSS (modo cluster habilitado) usando o console do ElastiCache.

**Para exibir os detalhes de um cluster do Valkey ou Redis OSS (modo cluster habilitado)**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista localizada no canto superior direito, escolha a região da AWS de interesse.

1. No painel do mecanismo ElastiCache, escolha **Valkey** ou **Redis OSS** para exibir uma lista de todos os seus clusters que estão sendo executados no mecanismo.

1. Para ver os detalhes de um cluster do Valkey ou Redis OSS (modo cluster habilitado), selecione a caixa à esquerda do nome do cluster. Certifique-se de escolher um cluster que esteja executando o mecanismo Valkey ou Clustered Redis OSS.

   A tela se expande abaixo do cluster e exibe detalhes sobre o cluster, incluindo o endpoint de configuração de cluster.

1. Para ver uma lista dos fragmentos do cluster e o número de nós em cada fragmento, escolha a guia **Shards and nodes** (Fragmentos e nós).

1. Como visualizar informações específicas sobre um nó:

   1. Escolha o ID do fragmento.

     Isso exibirá informações sobre cada nó, incluindo o endpoint de cada nó que é necessário usar para ler dados do cluster.

1. Para visualizar as métricas, escolha a guia **Metrics** (Métricas), que exibe as métricas relevantes para todos os nós do cluster. Para obter mais informações, consulte . [Monitorando o uso com CloudWatch métricas](CacheMetrics.md)

1. Para visualizar os logs, escolha a guia **Logs**, que indica se o cluster está usando logs lentos ou logs do mecanismo e fornece detalhes relevantes. Para obter mais informações, consulte [Entrega de logs](Log_Delivery.md).

1. Escolha a guia **Network and security** (Rede e segurança) para ver detalhes sobre a conectividade de rede e a configuração do grupo de sub-rede do cluster, o grupo de segurança da VPC e qual método de criptografia, se houver, está habilitado no cluster. Para obter mais informações, consulte [Sub-redes e grupos de sub-redes](SubnetGroups.md) e [Segurança de dados no Amazon ElastiCache](encryption.md).

1. Escolha a guia **Maintenance** (Manutenção) para ver detalhes sobre as configurações de manutenção do cluster. Para obter mais informações, consulte [Gerenciamento de manutenção de cluster do ElastiCache](maintenance-window.md).

1. Escolha a guia **Service updates** (Atualizações do serviço) para ver detalhes sobre todas as atualizações de serviço disponíveis, juntamente com a data de validade recomendada. Para obter mais informações, consulte [Atualizações de serviço em ElastiCache](Self-Service-Updates.md).

1. Escolha a guia **Tags** para ver detalhes sobre as tags aplicadas aos recursos do cluster. Para obter mais informações, consulte [Marcando seus recursos ElastiCache](Tagging-Resources.md).

## Visualização dos detalhes de um cluster do ElastiCache (AWS CLI)
<a name="Clusters.ViewDetails.CLI"></a>

O seguinte código lista os detalhes de *my-cluster*:

```
aws elasticache describe-cache-clusters --cache-cluster-id my-cluster
```

Substitua *my-cluster* pelo nome de seu cluster em um caso em que o cluster seja criado com um nó de cache e nenhum fragmento usando o comando `create-cache-cluster`.

```
{
    "CacheClusters": [
        {
            "CacheClusterStatus": "available",
            "SecurityGroups": [
                {
                    "Status": "active",
                    "SecurityGroupId": "sg-dbe93fa2"
                }
            ],
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
            "Engine": "redis",
            "PreferredMaintenanceWindow": "wed:12:00-wed:13:00",
            "CacheSubnetGroupName": "default",
            "SnapshotWindow": "08:30-09:30",
            "TransitEncryptionEnabled": false,
            "AtRestEncryptionEnabled": false,
            "CacheClusterId": "my-cluster1",
            "CacheClusterCreateTime": "2018-02-26T21:06:43.420Z",
            "PreferredAvailabilityZone": "us-west-2c",
            "AuthTokenEnabled": false,
            "PendingModifiedValues": {},
            "CacheNodeType": "cache.r4.large",
           "DataTiering": "disabled",
            "CacheParameterGroup": {
                "CacheNodeIdsToReboot": [],
                "ParameterApplyStatus": "in-sync",
                "CacheParameterGroupName": "default.redis3.2"
            },
            "SnapshotRetentionLimit": 0,
            "AutoMinorVersionUpgrade": true,
            "EngineVersion": "3.2.10",
            "CacheSecurityGroups": [],
            "NumCacheNodes": 1
        }
```

```
{
    "CacheClusters": [
        {
            "SecurityGroups": [
                {
                    "Status": "active",
                    "SecurityGroupId": "sg-dbe93fa2"
                }
            ],
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
            "AuthTokenEnabled": false,
            "CacheSubnetGroupName": "default",
            "SnapshotWindow": "12:30-13:30",
            "AutoMinorVersionUpgrade": true,
            "CacheClusterCreateTime": "2018-02-26T21:13:24.250Z",
            "CacheClusterStatus": "available",
            "AtRestEncryptionEnabled": false,
            "PreferredAvailabilityZone": "us-west-2a",
            "TransitEncryptionEnabled": false,
            "ReplicationGroupId": "my-cluster2",
            "Engine": "redis",
            "PreferredMaintenanceWindow": "sun:08:30-sun:09:30",
            "CacheClusterId": "my-cluster2-001",
            "PendingModifiedValues": {},
            "CacheNodeType": "cache.r4.large",
            "DataTiering": "disabled",
            "CacheParameterGroup": {
                "CacheNodeIdsToReboot": [],
                "ParameterApplyStatus": "in-sync",
                "CacheParameterGroupName": "default.redis6.x"
            },
            "SnapshotRetentionLimit": 0,
            "EngineVersion": "6.0",
            "CacheSecurityGroups": [],
            "NumCacheNodes": 1
        },
        {
            "SecurityGroups": [
                {
                    "Status": "active",
                    "SecurityGroupId": "sg-dbe93fa2"
                }
            ],
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
            "AuthTokenEnabled": false,
            "CacheSubnetGroupName": "default",
            "SnapshotWindow": "12:30-13:30",
            "AutoMinorVersionUpgrade": true,
            "CacheClusterCreateTime": "2018-02-26T21:13:24.250Z",
            "CacheClusterStatus": "available",
            "AtRestEncryptionEnabled": false,
            "PreferredAvailabilityZone": "us-west-2b",
            "TransitEncryptionEnabled": false,
            "ReplicationGroupId": "my-cluster2",
            "Engine": "redis",
            "PreferredMaintenanceWindow": "sun:08:30-sun:09:30",
            "CacheClusterId": "my-cluster2-002",
            "PendingModifiedValues": {},
            "CacheNodeType": "cache.r4.large",
            "DataTiering": "disabled",
            "CacheParameterGroup": {
                "CacheNodeIdsToReboot": [],
                "ParameterApplyStatus": "in-sync",
                "CacheParameterGroupName": "default.redis6.x"
            },
            "SnapshotRetentionLimit": 0,
            "EngineVersion": "6.0",
            "CacheSecurityGroups": [],
            "NumCacheNodes": 1
        },
        {
            "SecurityGroups": [
                {
                    "Status": "active",
                    "SecurityGroupId": "sg-dbe93fa2"
                }
            ],
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
            "AuthTokenEnabled": false,
            "CacheSubnetGroupName": "default",
            "SnapshotWindow": "12:30-13:30",
            "AutoMinorVersionUpgrade": true,
            "CacheClusterCreateTime": "2018-02-26T21:13:24.250Z",
            "CacheClusterStatus": "available",
            "AtRestEncryptionEnabled": false,
            "PreferredAvailabilityZone": "us-west-2c",
            "TransitEncryptionEnabled": false,
            "ReplicationGroupId": "my-cluster2",
            "Engine": "redis",
            "PreferredMaintenanceWindow": "sun:08:30-sun:09:30",
            "CacheClusterId": "my-cluster2-003",
            "PendingModifiedValues": {},
            "CacheNodeType": "cache.r4.large",
            "DataTiering": "disabled",
            "CacheParameterGroup": {
                "CacheNodeIdsToReboot": [],
                "ParameterApplyStatus": "in-sync",
                "CacheParameterGroupName": "default.redis3.2"
            },
            "SnapshotRetentionLimit": 0,
            "EngineVersion": "3.2.10",
            "CacheSecurityGroups": [],
            "NumCacheNodes": 1
        }
```

```
{
    "CacheClusters": [
        {
            "SecurityGroups": [
                {
                    "Status": "active",
                    "SecurityGroupId": "sg-dbe93fa2"
                }
            ],
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
            "AuthTokenEnabled": true,
            "CacheSubnetGroupName": "default",
            "SnapshotWindow": "12:30-13:30",
            "AutoMinorVersionUpgrade": true,
            "CacheClusterCreateTime": "2018-02-26T21:17:01.439Z",
            "CacheClusterStatus": "available",
            "AtRestEncryptionEnabled": true,
            "PreferredAvailabilityZone": "us-west-2a",
            "TransitEncryptionEnabled": true,
            "ReplicationGroupId": "my-cluster3",
            "Engine": "redis",
            "PreferredMaintenanceWindow": "thu:11:00-thu:12:00",
            "CacheClusterId": "my-cluster3-0001-001",
            "PendingModifiedValues": {},
            "CacheNodeType": "cache.r4.large",
            "DataTiering": "disabled",
            "CacheParameterGroup": {
                "CacheNodeIdsToReboot": [],
                "ParameterApplyStatus": "in-sync",
                "CacheParameterGroupName": "default.redis6.x.cluster.on"
            },
            "SnapshotRetentionLimit": 0,
            "EngineVersion": "6.0",
            "CacheSecurityGroups": [],
            "NumCacheNodes": 1
        },
        {
            "SecurityGroups": [
                {
                    "Status": "active",
                    "SecurityGroupId": "sg-dbe93fa2"
                }
            ],
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
            "AuthTokenEnabled": true,
            "CacheSubnetGroupName": "default",
            "SnapshotWindow": "12:30-13:30",
            "AutoMinorVersionUpgrade": true,
            "CacheClusterCreateTime": "2018-02-26T21:17:01.439Z",
            "CacheClusterStatus": "available",
            "AtRestEncryptionEnabled": true,
            "PreferredAvailabilityZone": "us-west-2b",
            "TransitEncryptionEnabled": true,
            "ReplicationGroupId": "my-cluster3",
            "Engine": "redis",
            "PreferredMaintenanceWindow": "thu:11:00-thu:12:00",
            "CacheClusterId": "my-cluster3-0001-002",
            "PendingModifiedValues": {},
            "CacheNodeType": "cache.r4.large",
             "DataTiering": "disabled",
            "CacheParameterGroup": {
                "CacheNodeIdsToReboot": [],
                "ParameterApplyStatus": "in-sync",
                "CacheParameterGroupName": "default.redis3.2.cluster.on"
            },
            "SnapshotRetentionLimit": 0,
            "EngineVersion": "3.2.6",
            "CacheSecurityGroups": [],
            "NumCacheNodes": 1
        },
        {
            "SecurityGroups": [
                {
                    "Status": "active",
                    "SecurityGroupId": "sg-dbe93fa2"
                }
            ],
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
            "AuthTokenEnabled": true,
            "CacheSubnetGroupName": "default",
            "SnapshotWindow": "12:30-13:30",
            "AutoMinorVersionUpgrade": true,
            "CacheClusterCreateTime": "2018-02-26T21:17:01.439Z",
            "CacheClusterStatus": "available",
            "AtRestEncryptionEnabled": true,
            "PreferredAvailabilityZone": "us-west-2c",
            "TransitEncryptionEnabled": true,
            "ReplicationGroupId": "my-cluster3",
            "Engine": "redis",
            "PreferredMaintenanceWindow": "thu:11:00-thu:12:00",
            "CacheClusterId": "my-cluster3-0001-003",
            "PendingModifiedValues": {},
            "CacheNodeType": "cache.r4.large",
             "DataTiering": "disabled",
            "CacheParameterGroup": {
                "CacheNodeIdsToReboot": [],
                "ParameterApplyStatus": "in-sync",
                "CacheParameterGroupName": "default.redis6.x.cluster.on"
            },
            "SnapshotRetentionLimit": 0,
            "EngineVersion": "6.0",
            "CacheSecurityGroups": [],
            "NumCacheNodes": 1
        },
        {
            "SecurityGroups": [
                {
                    "Status": "active",
                    "SecurityGroupId": "sg-dbe93fa2"
                }
            ],
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
            "AuthTokenEnabled": true,
            "CacheSubnetGroupName": "default",
            "SnapshotWindow": "12:30-13:30",
            "AutoMinorVersionUpgrade": true,
            "CacheClusterCreateTime": "2018-02-26T21:17:01.439Z",
            "CacheClusterStatus": "available",
            "AtRestEncryptionEnabled": true,
            "PreferredAvailabilityZone": "us-west-2b",
            "TransitEncryptionEnabled": true,
            "ReplicationGroupId": "my-cluster3",
            "Engine": "redis",
            "PreferredMaintenanceWindow": "thu:11:00-thu:12:00",
            "CacheClusterId": "my-cluster3-0002-001",
            "PendingModifiedValues": {},
            "CacheNodeType": "cache.r4.large",
             "DataTiering": "disabled",
            "CacheParameterGroup": {
                "CacheNodeIdsToReboot": [],
                "ParameterApplyStatus": "in-sync",
                "CacheParameterGroupName": "default.redis6.x.cluster.on"
            },
            "SnapshotRetentionLimit": 0,
            "EngineVersion": "6.0",
            "CacheSecurityGroups": [],
            "NumCacheNodes": 1
        },
        {
            "SecurityGroups": [
                {
                    "Status": "active",
                    "SecurityGroupId": "sg-dbe93fa2"
                }
            ],
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
            "AuthTokenEnabled": true,
            "CacheSubnetGroupName": "default",
            "SnapshotWindow": "12:30-13:30",
            "AutoMinorVersionUpgrade": true,
            "CacheClusterCreateTime": "2018-02-26T21:17:01.439Z",
            "CacheClusterStatus": "available",
            "AtRestEncryptionEnabled": true,
            "PreferredAvailabilityZone": "us-west-2c",
            "TransitEncryptionEnabled": true,
            "ReplicationGroupId": "my-cluster3",
            "Engine": "redis",
            "PreferredMaintenanceWindow": "thu:11:00-thu:12:00",
            "CacheClusterId": "my-cluster3-0002-002",
            "PendingModifiedValues": {},
            "CacheNodeType": "cache.r4.large",
             "DataTiering": "disabled",
            "CacheParameterGroup": {
                "CacheNodeIdsToReboot": [],
                "ParameterApplyStatus": "in-sync",
                "CacheParameterGroupName": "default.redis3.2.cluster.on"
            },
            "SnapshotRetentionLimit": 0,
            "EngineVersion": "3.2.6",
            "CacheSecurityGroups": [],
            "NumCacheNodes": 1
        },
        {
            "SecurityGroups": [
                {
                    "Status": "active",
                    "SecurityGroupId": "sg-dbe93fa2"
                }
            ],
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
            "AuthTokenEnabled": true,
            "CacheSubnetGroupName": "default",
            "SnapshotWindow": "12:30-13:30",
            "AutoMinorVersionUpgrade": true,
            "CacheClusterCreateTime": "2018-02-26T21:17:01.439Z",
            "CacheClusterStatus": "available",
            "AtRestEncryptionEnabled": true,
            "PreferredAvailabilityZone": "us-west-2a",
            "TransitEncryptionEnabled": true,
            "ReplicationGroupId": "my-cluster3",
            "Engine": "redis",
            "PreferredMaintenanceWindow": "thu:11:00-thu:12:00",
            "CacheClusterId": "my-cluster3-0002-003",
            "PendingModifiedValues": {},
            "CacheNodeType": "cache.r4.large",
             "DataTiering": "disabled",
            "CacheParameterGroup": {
                "CacheNodeIdsToReboot": [],
                "ParameterApplyStatus": "in-sync",
                "CacheParameterGroupName": "default.redis6.x.cluster.on"
            },
            "SnapshotRetentionLimit": 0,
            "EngineVersion": "6.0",
            "CacheSecurityGroups": [],
            "NumCacheNodes": 1
        }
    ]
}
```

Em um caso em que o cluster seja criado com o Console de gerenciamento da AWS (nó de cluster habilitado ou desabilitado com um ou mais fragmentos), use o comando a seguir para descrever os detalhes do cluster [substitua *my-cluster* pelo nome do grupo de replicação (nome de seu cluster)]:

```
aws elasticache describe-replication-groups --replication-group-id my-cluster 
```

Para obter mais informações, consulte a AWS CLI para o tópico do ElastiCache [https://docs.aws.amazon.com/cli/latest/reference/elasticache/describe-cache-clusters.html](https://docs.aws.amazon.com/cli/latest/reference/elasticache/describe-cache-clusters.html).

## Visualização dos detalhes de um cluster do ElastiCache (API do ElastiCache)
<a name="Clusters.ViewDetails.API"></a>

Você pode visualizar os detalhes de um cluster usando a ação `DescribeCacheClusters` da API do ElastiCache. Se o parâmetro `CacheClusterId` estiver incluído, os detalhes do cluster especificado serão retornados. Se o parâmetro `CacheClusterId` for omitido, os detalhes para até `MaxRecords` (padrão 100) clusters serão retornados. O valor para `MaxRecords` não pode ser inferior a 20 ou superior a 100.

O código a seguir lista os detalhes para `my-cluster`.

```
https://elasticache.us-west-2.amazonaws.com/
   ?Action=DescribeCacheClusters
   &CacheClusterId=my-cluster
   &Version=2015-02-02
   &SignatureVersion=4
   &SignatureMethod=HmacSHA256
   &Timestamp=20150202T192317Z
   &X-Amz-Credential=<credential>
```

O código a seguir lista os detalhes para até 25 clusters.

```
https://elasticache.us-west-2.amazonaws.com/
   ?Action=DescribeCacheClusters
   &MaxRecords=25
   &Version=2015-02-02
   &SignatureVersion=4
   &SignatureMethod=HmacSHA256
   &Timestamp=20150202T192317Z
   &X-Amz-Credential=<credential>
```

Para obter mais informações, consulte o tópico de referência da API do ElastiCache [https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheClusters.html](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheClusters.html).

# Modificação de um cluster do ElastiCache
<a name="Clusters.Modify"></a>

Além de adicionar ou remover nós de um cluster do ElastiCache, pode haver momentos em que você precisará fazer outras alterações, como adicionar um grupo de segurança, alterar a janela de manutenção ou um grupo de parâmetros.

Recomendamos que você tenha sua janela de manutenção cair no momento da menor utilização. Assim, talvez seja necessário modificá-la de tempos em tempos.

Quando você altera parâmetros de um cluster, a alteração é aplicada no cluster imediatamente ou após ele ser reiniciado. Isso é verdadeiro se você alterar o próprio grupo de parâmetro do cluster ou um valor do parâmetro dentro do grupo do parâmetro do cluster. Para determinar quando uma mudança de parâmetro particular é aplicada, consulte a seção **As alterações terão efeito** da coluna **Detalhes** nas tabelas de [Parâmetros específicos do Memcached](ParameterGroups.Engine.md#ParameterGroups.Memcached) e [Parâmetros do Valkey e do Redis OSS](ParameterGroups.Engine.md#ParameterGroups.Redis). Para obter informações sobre como reinicializar um cluster, consulte [Reinicialização de nós](nodes.rebooting.md).

## Uso do Console de gerenciamento da AWS do ElastiCache
<a name="Clusters.Modify.CON"></a>

**Como modificar um cluster**

1. Faça login no Console de gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista localizada no canto superior direito, escolha a região da AWS em que o cluster que você deseja modificar está localizado.

1. No painel de navegação, escolha o mecanismo em execução no cluster que deseja modificar.

   É exibida uma lista dos clusters do mecanismo escolhido.

1. Na lista de clusters, no cluster que você deseja modificar, escolha seu nome. 

1. Escolha **Actions** (Ações) e **Modify** (Modificar). 

   A janela **Modify Cluster** (Modificar cluster) é exibida.

1. Na janela **Modify Cluster** (Modificar cluster), faça as modificações desejadas. Entre as opções estão:
   + Descrição
   + Modo de cluster: para modificar o modo de cluster de **Desativado** para **Ativado**, você deve primeiro definir o modo de cluster como **Compatível**.

     O modo compatível permite que seus clientes Valkey ou Redis OSS se conectem usando o modo de cluster habilitado e o modo de cluster desabilitado. Depois de migrar todos os clientes Valkey ou Redis OSS para usar o modo cluster habilitado, você poderá concluir a configuração do modo cluster e definir o modo cluster como **Habilitado**.
   + Compatibilidade de versão de mecanismo
**Importante**  
Você pode atualizar para versões mais recentes do mecanismo. Se você atualizar as principais versões do mecanismo, por exemplo, de 5.0.6 para 6.0, será necessário selecionar uma família de grupo de parâmetros que seja compatível com a nova versão do mecanismo. Para obter mais informações para fazer isso, consulte [Gerenciamento de versões para ElastiCache](VersionManagement.md). No entanto, você não pode fazer downgrade para versões anteriores do mecanismo, exceto excluindo o cluster existente e criando-o novamente.
   + Grupos de segurança da VPC
   + Grupo do parâmetro
   + Tipo de nó
**nota**  
Se o cluster estiver usando um tipo de nó da família r6gd, você só poderá escolher um tamanho de nó diferente nessa família. Se você escolher um tipo de nó da família r6gd, a classificação de dados em níveis será ativada automaticamente. Para mais informações, consulte [Classificação de dados em níveis](data-tiering.md).
   + Multi-AZ
   + Failover automático (somente no modo cluster desabilitado)
   + Habilitar backups automáticos
   + ID do nó de backup
   + Backup Retention Period
   + Janela de backup
   + Tópico para notificação do SNS
   + Compatibilidade de versão do mecanismo Memcached
   + Tipo de rede
**nota**  
Se você estiver mudando de IPv4 para IPv6, deverá selecionar ou criar grupos de sub-rede compatíveis com IPv6. Para obter mais informações, consulte [Escolhendo um tipo de rede em ElastiCache](network-type.md).
   + Grupos de segurança da VPC
   + Grupo do parâmetro
   + Janela de manutenção
   + Tópico para notificação do SNS

   A caixa **Apply Immediately (Aplicar imediatamente)** aplica-se apenas a modificações feitas no tipo de nó e na versão do mecanismo. Para aplicar alterações imediatamente, marque a caixa de seleção **Apply Immediately** (Aplicar imediatamente). Se essa caixa não for escolhida, as modificações feitas na versão do mecanismo serão aplicadas durante a próxima janela de manutenção. Outras modificações, como a alteração da janela de manutenção, são aplicadas imediatamente.

**Para habilitar/desabilitar a entrega de logs para o Redis**

1. Na lista de clusters, escolha o cluster que você deseja modificar. Selecione o **Cluster name** (Nome do cluster), e não a caixa de seleção ao lado dele.

1. Na página **Detalhes do cluster**, escolha a guia **Logs**.

1. Para habilitar/desabilitar logs lentos, escolha **Habilitar** ou **Desabilitar**.

   Se você escolher habilitar:

   1. Em **Log format** (Formato do log), escolha **JSON** ou **Text** (Texto).

   1. Em **Log destination type** (Tipo de destino de log), escolha **CloudWatch Logs** (Logs do CloudWatch) ou **Kinesis Firehose**.

   1. Em **Destino do log**, escolha **Criar novo** e insira o nome do grupo de logs do CloudWatchLogs ou o nome do stream do Kinesis Data Firehose. Você também pode escolher **Selecionar existente** e escolher o nome do grupo de logs do CloudWatchLogs ou o nome do stream do Kinesis Data Firehose.

   1. Escolha **Habilitar**.

**Para alterar sua configuração para o Redis:**

1. Escolha **Modificar**.

1. Em **Log format** (Formato do log), escolha **JSON** ou **Text** (Texto).

1. Em **Destination Type** (Tipo de destino), escolha **CloudWatch Logs** (Logs do CloudWatch) ou **Kinesis Firehose**.

1. Em **Log destination** (Destino do log), escolha **Create new** (Criar) e insira o nome do grupo de logs do CloudWatchLogs ou o nome do stream do Kinesis Data Firehose. Ou escolha **Select existing** (Selecionar existente) e escolha o nome do grupo de logs do CloudWatchLogs ou o nome do stream do Kinesis Data Firehose.

## Uso da AWS CLI com o ElastiCache
<a name="Clusters.Modify.CLI"></a>

Você pode modificar um cluster existente usando a operação AWS CLI `modify-cache-cluster`. Para modificar o valor de configuração de um cluster, especifique o ID do cluster, o parâmetro a ser alterado e o novo valor do parâmetro. O exemplo a seguir altera a janela de manutenção para um cluster chamado `my-cluster` e aplica a alteração imediatamente.

**Importante**  
Você pode atualizar para versões mais recentes do mecanismo Memcached. Para obter mais informações para fazer isso, consulte [Gerenciamento de versões para ElastiCache](VersionManagement.md). No entanto, você não pode fazer downgrade para versões anteriores do mecanismo, exceto excluindo o cluster existente e criando-o novamente.

**Importante**  
Você pode atualizar para versões mais recentes do mecanismo Valkey ou Redis OSS. Se você atualizar as principais versões do mecanismo, por exemplo, do Redis OSS 5.0.6 para o Redis OSS 6.0, será preciso selecionar uma família de grupos de parâmetros que seja compatível com a nova versão do mecanismo. Para obter mais informações para fazer isso, consulte [Gerenciamento de versões para ElastiCache](VersionManagement.md). No entanto, você não pode fazer downgrade para versões anteriores do mecanismo, exceto excluindo o cluster existente e criando-o novamente.

Para Linux, macOS ou Unix:

```
aws elasticache modify-cache-cluster \
    --cache-cluster-id my-cluster \
    --preferred-maintenance-window sun:23:00-mon:02:00
```

Para Windows:

```
aws elasticache modify-cache-cluster ^
    --cache-cluster-id my-cluster ^
    --preferred-maintenance-window sun:23:00-mon:02:00
```

O parâmetro `--apply-immediately` aplica-se apenas a modificações no tipo de nó, na versão do mecanismo e a alteração do número de nós em um cluster. Se quiser aplicar qualquer uma dessas alterações imediatamente, use o parâmetro `--apply-immediately`. Se preferir adiar essas alterações para sua próxima janela de manutenção, use o parâmetro `--no-apply-immediately`. Outras modificações, como a alteração da janela de manutenção, são aplicadas imediatamente.

Para obter mais informações, consulte a AWS CLI para o tópico do ElastiCache [https://docs.aws.amazon.com/cli/latest/reference/elasticache/modify-cache-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/elasticache/modify-cache-cluster.html).

## Uso da API do ElastiCache
<a name="Clusters.Modify.API"></a>

Você pode modificar um cluster existente usando a operação `ModifyCacheCluster` da API do ElastiCache. Para modificar o valor de configuração de um cluster, especifique o ID do cluster, o parâmetro a ser alterado e o novo valor do parâmetro. O exemplo a seguir altera a janela de manutenção para um cluster chamado `my-cluster` e aplica a alteração imediatamente.

**Importante**  
Você pode atualizar para versões mais recentes do mecanismo Memcached. Para obter mais informações para fazer isso, consulte [Gerenciamento de versões para ElastiCache](VersionManagement.md). No entanto, você não pode fazer downgrade para versões anteriores do mecanismo, exceto excluindo o cluster existente e criando-o novamente.

**Importante**  
Você pode atualizar para versões mais recentes do mecanismo Valkey ou Redis OSS. Se você atualizar as principais versões do mecanismo, por exemplo, do Redis OSS 5.0.6 para o Redis OSS 6.0, será preciso selecionar uma família de grupos de parâmetros que seja compatível com a nova versão do mecanismo. Para obter mais informações para fazer isso, consulte [Gerenciamento de versões para ElastiCache](VersionManagement.md). No entanto, você não pode fazer downgrade para versões anteriores do mecanismo, exceto excluindo o cluster existente e criando-o novamente.

As quebras de linha foram adicionadas para legibilidade.

```
https://elasticache.us-west-2.amazonaws.com/
    ?Action=ModifyCacheCluster
    &CacheClusterId=my-cluster
    &PreferredMaintenanceWindow=sun:23:00-mon:02:00
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20150901T220302Z
    &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
    &X-Amz-Date=20150202T220302Z
    &X-Amz-SignedHeaders=Host
    &X-Amz-Expires=20150901T220302Z
    &X-Amz-Credential=<credential>
    &X-Amz-Signature=<signature>
```

O parâmetro `ApplyImmediately` aplica-se apenas a modificações no tipo de nó, na versão do mecanismo e a alteração do número de nós em um cluster. Se quiser aplicar qualquer uma dessas alterações imediatamente, defina o parâmetro `ApplyImmediately` como `true`. Se preferir adiar essas alterações para sua próxima janela de manutenção, defina o parâmetro `ApplyImmediately` como `false`. Outras modificações, como a alteração da janela de manutenção, são aplicadas imediatamente.

Para obter mais informações, consulte o tópico de referência da API do ElastiCache [https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheCluster.html](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheCluster.html).

# Adicionar nós a um ElastiCache cluster
<a name="Clusters.AddNode"></a>

Adicionar nós a um cluster Memcached aumenta o número de partições do seu cluster. Quando você altera o número de partições em um cluster, alguns dos principais espaços precisam ser remapeados para que sejam mapeados para o nó direito. Remapear espaços de chave aumenta temporariamente o número de falhas de cache no cluster. Para obter mais informações, consulte [Configurando seu ElastiCache cliente para balanceamento de carga eficiente (Memcached)](BestPractices.LoadBalancing.md).

Para reconfigurar o cluster do Valkey ou Redis OSS (modo cluster habilitado), consulte [Escalabilidade de clusters no Valkey ou Redis OSS (modo cluster habilitado)](scaling-redis-cluster-mode-enabled.md)

Você pode usar o ElastiCache Management Console AWS CLI ou a ElastiCache API para adicionar nós ao seu cluster.

## Usando o ElastiCache Console de gerenciamento da AWS
<a name="Clusters.AddNode.CON"></a>

Se você quiser adicionar um nó a um cluster do Valkey ou Redis OSS (modo cluster desabilitado) de nó único (sem replicação habilitada), o processo será de duas etapas: primeiro adicione a replicação e, depois, adicione um nó de réplica.

**Tópicos**
+ [Para adicionar replicação a um cluster do Valkey ou Redis OSS sem fragmentos](#AddReplication.CON)
+ [Para adicionar nós a um ElastiCache cluster (console)](#AddNode.CON)

O procedimento a seguir adiciona replicação a um Valkey ou Redis OSS de nó único que não possui replicação habilitada. Quando você adiciona replicação, o nó existente torna-se o nó primário no cluster habilitado para replicação. Depois que a replicação é adicionada, você pode adicionar até 5 nós de réplica ao cluster.<a name="AddReplication.CON"></a>

**Para adicionar replicação a um cluster do Valkey ou Redis OSS sem fragmentos**

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console em [ https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel de navegação, escolha **Clusters do Valkey** ou **Clusters do Redis OSS**.

   Uma lista de clusters que executam o mecanismo Valkey ou Redis OSS é exibida.

1. Escolha o nome de um cluster (não a caixa à esquerda do nome do cluster) ao qual você quer adicionar nós.

   O seguinte é verdade para um cluster do Redis OSS que não possui replicação habilitada:
   + Ele está executando o Redis OSS, e não o Clustered Redis OSS.
   + Tem zero estilhaços.

     Se o cluster tiver estilhaços, a replicação já estará ativada e você poderá continuar em [Para adicionar nós a um ElastiCache cluster (console)](#AddNode.CON).

1. Escolha **Add replication**.

1. Em **Adicionar replicação**, insira uma descrição para esse cluster habilitado para replicação.

1. Escolha **Adicionar**.

   Assim que o status do cluster retornar *available*, você poderá continuar no próximo procedimento e adicionar réplicas ao cluster.<a name="AddNode.CON"></a>

**Para adicionar nós a um ElastiCache cluster (console)**

O procedimento a seguir pode ser usado para adicionar nós a um cluster.

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console em [ https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel de navegação, escolha o mecanismo em execução no cluster ao qual você deseja adicionar nós.

   É exibida uma lista de clusters que executam o mecanismo escolhido.

1. Na lista de clusters, no cluster ao qual você deseja adicionar um nó, escolha seu nome.

   Se o cluster for um cluster do Valkey ou Redis OSS (modo cluster habilitado), consulte [Escalabilidade de clusters no Valkey ou Redis OSS (modo cluster habilitado)](scaling-redis-cluster-mode-enabled.md).

   Se o cluster é um cluster do Valkey ou Redis OSS (modo cluster desabilitado) com zero fragmentos, primeiro conclua as etapas em [Para adicionar replicação a um cluster do Valkey ou Redis OSS sem fragmentos](#AddReplication.CON).

1. Escolha **Adicionar nó**.

1. Preencha as informações solicitadas na caixa de diálogo **Add Node (Adicionar nó)**.

1. Escolha o botão **Apply Immediately - Yes (Aplicar imediatamente - sim)** para aplicar essa alteração imediatamente ou escolha **No (Não)** para adicionar este nó durante a próxima janela de manutenção do cluster.  
**Impacto de novas solicitações de adição e remoção em solicitações pendentes**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/Clusters.AddNode.html)

   Para determinar quais operações estão pendentes, escolha a opção **Description** (Descrição) e verifique para ver quantas criações ou exclusões pendentes são mostradas. Você não pode ter criações pendentes e exclusões pendentes. 

1. Escolha o botão **Add**.

    Depois de alguns momentos, os novos nós deverão aparecer na lista de nós com um status de **creating**. Se não aparecem, atualize a página do navegador. Quando o status mudar para *available do nó* do novo nó pode ser usado.

## Usando o AWS CLI com ElastiCache
<a name="Clusters.AddNode.CLI"></a>

Para adicionar nós a um cluster usando o AWS CLI, use a AWS CLI operação `modify-cache-cluster` com os seguintes parâmetros:
+ `--cache-cluster-id`: o ID do cluster ao qual você deseja adicionar os nós.
+ `--num-cache-nodes`: o parâmetro `--num-cache-nodes` especifica o número de nós que você deseja neste cluster após a modificação ser aplicada. Para adicionar nós a esse cluster, `--num-cache-nodes` deve ser maior que o número atual de nós neste cluster. Se esse valor for menor que o número atual de nós, ElastiCache espera que o parâmetro `cache-node-ids-to-remove` e uma lista de nós sejam removidos do cluster. Para obter mais informações, consulte [Usando o AWS CLI com ElastiCache](Clusters.DeleteNode.md#Clusters.DeleteNode.CLI).
+ `--apply-immediately` ou `--no-apply-immediately`, que especifica se você deve adicionar esses nós imediatamente ou na próxima janela de manutenção.

Para Linux, macOS ou Unix:

```
aws elasticache modify-cache-cluster \
    --cache-cluster-id my-cluster \
    --num-cache-nodes 5 \
    --apply-immediately
```

Para Windows:

```
aws elasticache modify-cache-cluster ^
    --cache-cluster-id my-cluster ^
    --num-cache-nodes 5 ^
    --apply-immediately
```

Esta operação produz uma saída semelhante à seguinte (formato JSON):

```
{
    "CacheCluster": {
        "Engine": "memcached", 
        "CacheParameterGroup": {
            "CacheNodeIdsToReboot": [], 
            "CacheParameterGroupName": "default.memcached1.4", 
            "ParameterApplyStatus": "in-sync"
        }, 
        "CacheClusterId": "my-cluster", 
        "PreferredAvailabilityZone": "us-west-2b", 
        "ConfigurationEndpoint": {
            "Port": 11211, 
            "Address": "rlh-mem000.7alc7bf-example.cfg.usw2.cache.amazonaws.com"
        }, 
        "CacheSecurityGroups": [], 
        "CacheClusterCreateTime": "2016-09-21T16:28:28.973Z", 
        "AutoMinorVersionUpgrade": true, 
        "CacheClusterStatus": "modifying", 
        "NumCacheNodes": 2, 
        "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:", 
        "SecurityGroups": [
            {
                "Status": "active", 
                "SecurityGroupId": "sg-dbe93fa2"
            }
        ], 
        "CacheSubnetGroupName": "default", 
        "EngineVersion": "1.4.24", 
        "PendingModifiedValues": {
            "NumCacheNodes": 5
        }, 
        "PreferredMaintenanceWindow": "sat:09:00-sat:10:00", 
        "CacheNodeType": "cache.m3.medium",
         "DataTiering": "disabled",
    }
}
```

Para obter mais informações, consulte o AWS CLI tópico [https://docs.aws.amazon.com/cli/latest/reference/elasticache/modify-cache-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/elasticache/modify-cache-cluster.html).

## Usando o AWS CLI com ElastiCache
<a name="Clusters.AddNode.CLI"></a>

Se quiser adicionar nós a um cluster existente do Valkey ou Redis OSS (modo cluster desabilitado) que não tenha a replicação habilitada, você deverá primeiro criar o grupo de replicação especificando o cluster existente como primário. Para obter mais informações, consulte [Criação de um grupo de replicação usando um cluster do Valkey ou Redis OSS disponível (AWS CLI)](Replication.CreatingReplGroup.ExistingCluster.md#Replication.CreatingReplGroup.ExistingCluster.CLI). Depois que o grupo de replicação estiver *disponível*, você poderá continuar com o processo a seguir.

Para adicionar nós a um cluster usando o AWS CLI, use a AWS CLI operação `increase-replica-count` com os seguintes parâmetros:
+ `--replication-group-id`: o ID do grupo de replicação ao qual você deseja adicionar nós.
+ `--new-replica-count`: especifica o número de nós que você deseja neste grupo de replicação após a modificação ser aplicada. Para adicionar nós a esse cluster, `--new-replica-count` deve ser maior que o número atual de nós neste cluster.
+ `--apply-immediately` ou `--no-apply-immediately`, que especifica se você deve adicionar esses nós imediatamente ou na próxima janela de manutenção.

Para Linux, macOS ou Unix:

```
aws elasticache increase-replica-count \
    --replication-group-id my-replication-group \
    --new-replica-count 4 \
    --apply-immediately
```

Para Windows:

```
aws elasticache increase-replica-count ^
    --replication-group-id my-replication-group ^
    --new-replica-count 4 ^
    --apply-immediately
```

Esta operação produz uma saída semelhante à seguinte (formato JSON):

```
{
    "ReplicationGroup": {
        "ReplicationGroupId": "node-test",
        "Description": "node-test",       
        "Status": "modifying",
        "PendingModifiedValues": {},
        "MemberClusters": [
            "node-test-001",
            "node-test-002",
            "node-test-003",
            "node-test-004",
            "node-test-005"
        ],
        "NodeGroups": [
            {
                "NodeGroupId": "0001",
                "Status": "modifying",
                "PrimaryEndpoint": {
                    "Address": "node-test.zzzzzz.ng.0001.usw2.cache.amazonaws.com",
                    "Port": 6379
                },
                "ReaderEndpoint": {
                    "Address": "node-test.zzzzzz.ng.0001.usw2.cache.amazonaws.com",
                    "Port": 6379
                },
                "NodeGroupMembers": [
                    {
                        "CacheClusterId": "node-test-001",
                        "CacheNodeId": "0001",
                        "ReadEndpoint": {
                            "Address": "node-test-001.zzzzzz.0001.usw2.cache.amazonaws.com",
                            "Port": 6379
                        },
                        "PreferredAvailabilityZone": "us-west-2a",
                        "CurrentRole": "primary"
                    },
                    {
                        "CacheClusterId": "node-test-002",
                        "CacheNodeId": "0001",
                        "ReadEndpoint": {
                            "Address": "node-test-002.zzzzzz.0001.usw2.cache.amazonaws.com",
                            "Port": 6379
                        },
                        "PreferredAvailabilityZone": "us-west-2c",
                        "CurrentRole": "replica"
                    },
                    {
                        "CacheClusterId": "node-test-003",
                        "CacheNodeId": "0001",
                        "ReadEndpoint": {
                            "Address": "node-test-003.zzzzzz.0001.usw2.cache.amazonaws.com",
                            "Port": 6379
                        },
                        "PreferredAvailabilityZone": "us-west-2b",
                        "CurrentRole": "replica"
                    }
                ]
            }
        ],
        "SnapshottingClusterId": "node-test-002",
        "AutomaticFailover": "enabled",
        "MultiAZ": "enabled",
        "SnapshotRetentionLimit": 1,
        "SnapshotWindow": "07:30-08:30",
        "ClusterEnabled": false,
        "CacheNodeType": "cache.r5.large",
         "DataTiering": "disabled",
        "TransitEncryptionEnabled": false,
        "AtRestEncryptionEnabled": false,
        "ARN": "arn:aws:elasticache:us-west-2:123456789012:replicationgroup:node-test"
    }
}
```

Para obter mais informações, consulte o AWS CLI tópico [https://docs.aws.amazon.com/cli/latest/reference/elasticache/increase-replica-count.html](https://docs.aws.amazon.com/cli/latest/reference/elasticache/increase-replica-count.html).

## Usando a ElastiCache API
<a name="Clusters.AddNode.API"></a>

Se quiser adicionar nós a um cluster existente do Valkey ou Redis OSS (modo cluster desabilitado) que não tenha a replicação habilitada, você deverá primeiro criar o grupo de replicação especificando o cluster existente como primário. Para obter mais informações, consulte [Adicionar réplicas a um cluster (API) autônomo Valkey ou Redis OSS (modo de cluster desativado) ElastiCache](Replication.CreatingReplGroup.ExistingCluster.md#Replication.CreatingReplGroup.ExistingCluster.API). Depois que o grupo de replicação estiver *disponível*, você poderá continuar com o processo a seguir.

**Para adicionar nós a um cluster (ElastiCache API)**
+ Chame a operação de API `IncreaseReplicaCount` com os seguintes parâmetros:
  + `ReplicationGroupId`: o ID do cluster ao qual você deseja adicionar os nós.
  + `NewReplicaCount`: o parâmetro `NewReplicaCount` especifica o número de nós que você deseja neste cluster após a modificação ser aplicada. Para adicionar nós a esse cluster, `NewReplicaCount` deve ser maior que o número atual de nós neste cluster. Se esse valor for inferior ao número atual de nós, use a API `DecreaseReplicaCount` com o número de nós a serem removidos do cluster.
  + `ApplyImmediately` Especifica se você deve adicionar esses nós imediatamente ou na próxima janela de manutenção.
  + `Region`Especifica a AWS região do cluster à qual você deseja adicionar nós.

  O exemplo a seguir mostra uma chamada para adicionar nós a um cluster.  
**Example**  

  ```
  https://elasticache.us-west-2.amazonaws.com/
      ?Action=IncreaseReplicaCount
      &ApplyImmediately=true
      &NumCacheNodes=4
      &ReplicationGroupId=my-replication-group
      &Region=us-east-2
      &Version=2014-12-01
      &SignatureVersion=4
      &SignatureMethod=HmacSHA256
      &Timestamp=20141201T220302Z
      &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
      &X-Amz-Date=20141201T220302Z
      &X-Amz-SignedHeaders=Host
      &X-Amz-Expires=20141201T220302Z
      &X-Amz-Credential=<credential>
      &X-Amz-Signature=<signature>
  ```

Para obter mais informações, consulte o tópico ElastiCache da API [https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_IncreaseReplicaCount.html](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_IncreaseReplicaCount.html).

## Usando a ElastiCache API
<a name="Clusters.AddNode.API"></a>

**Para adicionar nós a um cluster (ElastiCache API)**
+ Chame a operação de API `ModifyCacheCluster` com os seguintes parâmetros:
  + `CacheClusterId`: o ID do cluster ao qual você deseja adicionar os nós.
  + `NumCacheNodes`: o parâmetro `NumCachNodes` especifica o número de nós que você deseja neste cluster após a modificação ser aplicada. Para adicionar nós a esse cluster, `NumCacheNodes` deve ser maior que o número atual de nós neste cluster. Se esse valor for menor que o número atual de nós, ElastiCache espera que o parâmetro `CacheNodeIdsToRemove` com uma lista de nós seja removido do cluster (consulte[Usando a ElastiCache API com o Memcached](Clusters.DeleteNode.md#Clusters.DeleteNode.API)).
  + `ApplyImmediately` Especifica se você deve adicionar esses nós imediatamente ou na próxima janela de manutenção.
  + `Region`Especifica a AWS região do cluster à qual você deseja adicionar nós.

  O exemplo a seguir mostra uma chamada para adicionar nós a um cluster.  
**Example**  

  ```
  https://elasticache.us-west-2.amazonaws.com/
      ?Action=ModifyCacheCluster
      &ApplyImmediately=true
      &NumCacheNodes=5
  	&CacheClusterId=my-cluster
  	&Region=us-east-2
      &Version=2014-12-01
      &SignatureVersion=4
      &SignatureMethod=HmacSHA256
      &Timestamp=20141201T220302Z
      &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
      &X-Amz-Date=20141201T220302Z
      &X-Amz-SignedHeaders=Host
      &X-Amz-Expires=20141201T220302Z
      &X-Amz-Credential=<credential>
      &X-Amz-Signature=<signature>
  ```

Para obter mais informações, consulte o tópico ElastiCache da API [https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheCluster.html](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheCluster.html).

# Removendo nós de um ElastiCache cluster
<a name="Clusters.DeleteNode"></a>

Você pode excluir um nó de um cluster OSS Valkey, Memcached ou Redis usando a Console de gerenciamento da AWS, a ou a AWS CLI API. ElastiCache 

**nota**  
Cada vez que você altera o número de nós em um cluster Memcached, você deve remapear pelo menos alguns dos seus espaços de chaves para que ele seja mapeado para o nó correto. Para obter informações mais detalhadas sobre o balanceamento de carga de um cluster Memcached, consulte [Configurando seu ElastiCache cliente para balanceamento de carga eficiente (Memcached)](BestPractices.LoadBalancing.md).

## Usando o ElastiCache Console de gerenciamento da AWS
<a name="Clusters.DeleteNode.CON"></a>

**Para remover nós de um cluster (console)**

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console em [ https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Na lista no canto superior direito, escolha a AWS região do cluster da qual você deseja remover os nós.

1. No painel de navegação, escolha o mecanismo em execução no cluster do qual você deseja remover um nó.

   É exibida uma lista de clusters que executam o mecanismo escolhido.

1. Na lista de clusters, escolha o nome do cluster do qual você deseja remover um nó.

   É exibida uma lista dos nós do cluster.

1. Escolha a caixa à esquerda do ID do nó para o nó que você deseja remover. Usando o console do ElastiCache , é possível excluir somente um nó de cada vez. Portanto, escolher vários nós significa que não é possível usar o botão **Excluir nó**.

   A página *Excluir nó* é exibida.

1. Para excluir o nó, preencha a página **Excluir nó** e escolha **Excluir nó**. Para manter o nó, escolha **Cancelar**.
**Importante**  
Com o Valkey ou Redis OSS, se você estiver excluindo os resultados do nó no cluster que não são mais compatíveis com Multi-AZ, certifique-se primeiro de desmarcar a caixa de seleção **Multi-AZ** e depois excluir o nó. Se você desmarcar a caixa de seleção **Multi-AZ**, será possível optar por habilitar o **Failover automático**.


**Impacto de novas solicitações de adição e remoção em solicitações pendentes**  

| Cenários | Operação pendente | Nova solicitação | Resultados | 
| --- | --- | --- | --- | 
|  Cenário 1 |  Delete | Delete |  A nova solicitação de exclusão, pendente ou imediata, substitui a solicitação de exclusão pendente. Por exemplo, se os nós 0001, 0003 e 0007 estiverem pendentes de exclusão e uma nova solicitação para excluir os nós 0002 e 0004 for emitida, somente os nós 0002 e 0004 serão excluídos. Os nós 0001, 0003 e 0007 não serão excluídos. | 
|  Cenário 2 |  Delete |  Criar |  A nova solicitação de criação, pendente ou imediata, substitui a solicitação de exclusão pendente. Por exemplo, se os nós 0001, 0003 e 0007 estiverem pendentes de exclusão e uma nova solicitação para criar um nó for emitida, um novo nó será criado e os nós 0001, 0003 e 0007 não serão excluídos. | 
|  Cenário 3 |  Criar |  Delete |  A nova solicitação de exclusão, pendente ou imediata, substitui a solicitação de criação pendente. Por exemplo, se houver uma solicitação pendente para criar dois nós e uma nova solicitação for emitida para excluir o nó 0003, nenhum novo nó será criado e o nó 0003 será excluído. | 
|  Cenário 4 |  Criar |  Criar |  A nova solicitação de criação é adicionada à solicitação de criação pendente. Por exemplo, se houver uma solicitação pendente para criar dois nós e uma nova solicitação for emitida para criar três nós, as novas solicitações serão adicionadas à solicitação pendente e cinco nós serão criados. Se a nova solicitação de criação estiver definida como **Apply immediately - Yes** (Aplicar imediatamente - Sim), todas as solicitações de criação são executadas imediatamente. Se a nova solicitação de criação estiver definida como **Apply immediately - No** (Aplicar imediatamente - No), todas as solicitações de criação ficam pendentes. | 

Para determinar quais operações estão pendentes, escolha a opção **Description** (Descrição) e verifique para ver quantas criações ou exclusões pendentes são mostradas. Você não pode ter criações pendentes e exclusões pendentes. 

## Usando o AWS CLI com ElastiCache
<a name="Clusters.DeleteNode.CLI"></a>

1. Identifique IDs os nós que você deseja remover. Para obter mais informações, consulte [Visualização dos detalhes de um cluster do ElastiCache](Clusters.ViewDetails.md).

1. Use a operação `decrease-replica-count` da CLI com uma lista dos nós a serem removidos, como no exemplo a seguir.

   Para remover nós de um cluster usando a interface da linha de comando, use o comando `decrease-replica-count` com os seguintes parâmetros:
   + `--replication-group-id`: o ID do grupo de replicação do qual você deseja remover nós.
   + `--new-replica-count`: o parâmetro `--new-replica-count` especifica o número de nós que você deseja neste cluster após a modificação ser aplicada.
   + `--replicas-to-remove`Uma lista de nós IDs que você deseja remover desse cluster.
   + `--apply-immediately` ou `--no-apply-immediately` especifica se você deve remover esses nós imediatamente ou na próxima janela de manutenção.
   + `--region`Especifica a AWS região do cluster da qual você deseja remover os nós.
**nota**  
Você pode passar apenas um dos parâmetros `--replicas-to-remove` ou `--new-replica-count` ao chamar esta operação.

   Para Linux, macOS ou Unix:

   ```
   aws elasticache decrease-replica-count \
       --replication-group-id my-replication-group \
       --new-replica-count 2 \   
       --region us-east-2 \
       --apply-immediately
   ```

   Para Windows:

   ```
   aws elasticache decrease-replica-count ^
       --replication-group-id my-replication-group ^
       --new-replica-count 3 ^   
       --region us-east-2 ^
       --apply-immediately
   ```

   Esta operação produz uma saída semelhante à seguinte (formato JSON):

   ```
   {
       "ReplicationGroup": {
           "ReplicationGroupId": "node-test",
           "Description": "node-test"
          },
           "Status": "modifying",
           "PendingModifiedValues": {},
           "MemberClusters": [
               "node-test-001",
               "node-test-002",
               "node-test-003",
               "node-test-004",
               "node-test-005",
               "node-test-006"
           ],
           "NodeGroups": [
               {
                   "NodeGroupId": "0001",
                   "Status": "modifying",
                   "PrimaryEndpoint": {
                       "Address": "node-test.zzzzzz.ng.0001.usw2.cache.amazonaws.com",
                       "Port": 6379
                   },
                   "ReaderEndpoint": {
                       "Address": "node-test-ro.zzzzzz.ng.0001.usw2.cache.amazonaws.com",
                       "Port": 6379
                   },
                   "NodeGroupMembers": [
                       {
                           "CacheClusterId": "node-test-001",
                           "CacheNodeId": "0001",
                           "ReadEndpoint": {
                               "Address": "node-test-001.zzzzzz.0001.usw2.cache.amazonaws.com",
                               "Port": 6379
                           },
                           "PreferredAvailabilityZone": "us-west-2a",
                           "CurrentRole": "primary"
                       },
                       {
                           "CacheClusterId": "node-test-002",
                           "CacheNodeId": "0001",
                           "ReadEndpoint": {
                               "Address": "node-test-002.zzzzzz.0001.usw2.cache.amazonaws.com",
                               "Port": 6379
                           },
                           "PreferredAvailabilityZone": "us-west-2c",
                           "CurrentRole": "replica"
                       },
                       {
                           "CacheClusterId": "node-test-003",
                           "CacheNodeId": "0001",
                           "ReadEndpoint": {
                               "Address": "node-test-003.zzzzzz.0001.usw2.cache.amazonaws.com",
                               "Port": 6379
                           },
                           "PreferredAvailabilityZone": "us-west-2b",
                           "CurrentRole": "replica"
                       },
                       {
                           "CacheClusterId": "node-test-004",
                           "CacheNodeId": "0001",
                           "ReadEndpoint": {
                               "Address": "node-test-004.zzzzzz.0001.usw2.cache.amazonaws.com",
                               "Port": 6379
                           },
                           "PreferredAvailabilityZone": "us-west-2c",
                           "CurrentRole": "replica"
                       },
                       {
                           "CacheClusterId": "node-test-005",
                           "CacheNodeId": "0001",
                           "ReadEndpoint": {
                               "Address": "node-test-005.zzzzzz.0001.usw2.cache.amazonaws.com",
                               "Port": 6379
                           },
                           "PreferredAvailabilityZone": "us-west-2b",
                           "CurrentRole": "replica"
                       },
                       {
                           "CacheClusterId": "node-test-006",
                           "CacheNodeId": "0001",
                           "ReadEndpoint": {
                               "Address": "node-test-006.zzzzzz.0001.usw2.cache.amazonaws.com",
                               "Port": 6379
                           },
                           "PreferredAvailabilityZone": "us-west-2b",
                           "CurrentRole": "replica"
                       }
                   ]
               }
           ],
           "SnapshottingClusterId": "node-test-002",
           "AutomaticFailover": "enabled",
           "MultiAZ": "enabled",
           "SnapshotRetentionLimit": 1,
           "SnapshotWindow": "07:30-08:30",
           "ClusterEnabled": false,
           "CacheNodeType": "cache.r5.large",
            "DataTiering": "disabled",
           "TransitEncryptionEnabled": false,
           "AtRestEncryptionEnabled": false,
           "ARN": "arn:aws:elasticache:us-west-2:123456789012:replicationgroup:node-test"
       }
   }
   ```

Alternativamente, você também poderia chamar o `decrease-replica-count` e, em vez de passar o parâmetro `--new-replica-count`, você pode passar o parâmetro `--replicas-to-remove`, como mostrado a seguir:

Para Linux, macOS ou Unix:

```
aws elasticache decrease-replica-count \
    --replication-group-id my-replication-group \
    --replicas-to-remove node-test-003 \   
    --region us-east-2 \
    --apply-immediately
```

Para Windows:

```
aws elasticache decrease-replica-count ^
    --replication-group-id my-replication-group ^
    --replicas-to-remove node-test-003 ^   
    --region us-east-2 ^
    --apply-immediately
```

Para obter mais informações, consulte os AWS CLI tópicos [https://docs.aws.amazon.com/cli/latest/reference/elasticache/decrease-replica-count.html](https://docs.aws.amazon.com/cli/latest/reference/elasticache/decrease-replica-count.html).

## Usando a ElastiCache API com Valkey ou Redis OSS
<a name="Clusters.DeleteNode.API2"></a>

Para remover nós usando a ElastiCache API, chame a operação da `DecreaseReplicaCount` API com o ID do grupo de replicação e uma lista de nós a serem removidos, conforme mostrado:
+ `ReplicationGroupId`: o ID do grupo de replicação do qual você deseja remover nós.
+ `ReplicasToRemove`: o parâmetro `ReplicasToRemove` especifica o número de nós que você deseja neste cluster após a modificação ser aplicada.
+ `ApplyImmediately` Especifica se você deve remover esses nós imediatamente ou na próxima janela de manutenção.
+ `Region`Especifica a AWS região do cluster da qual você deseja remover um nó.

O exemplo a seguir remove imediatamente os nós 0004 e 0005 do cluster my-cluster.

```
https://elasticache.us-west-2.amazonaws.com/
    ?Action=DecreaseReplicaCount
    &ReplicationGroupId=my-replication-group
    &ApplyImmediately=true
    &ReplicasToRemove=node-test-003    
    &Region us-east-2
    &Version=2014-12-01
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20141201T220302Z
    &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
    &X-Amz-Date=20141201T220302Z
    &X-Amz-SignedHeaders=Host
    &X-Amz-Expires=20141201T220302Z
    &X-Amz-Credential=<credential>
    &X-Amz-Signature=<signature>
```

Para obter mais informações, consulte o tópico ElastiCache da API [https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DecreaseReplicaCount.html](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DecreaseReplicaCount.html).

## Usando a ElastiCache API com o Memcached
<a name="Clusters.DeleteNode.API"></a>

Para remover nós usando a ElastiCache API, chame a operação da `ModifyCacheCluster` API com o ID do cluster de cache e uma lista de nós a serem removidos, conforme mostrado:
+ `CacheClusterId` o ID do cluster de cache do qual você deseja remover nós.
+ `NumCacheNodes`: o parâmetro `NumCacheNodes` especifica o número de nós que você deseja neste cluster após a modificação ser aplicada.
+ `CacheNodeIdsToRemove.member.n`A lista de nós IDs a serem removidos do cluster.
  + `CacheNodeIdsToRemove.member.1=0004`
  + `CacheNodeIdsToRemove.member.1=0005`
+ `ApplyImmediately` Especifica se você deve remover esses nós imediatamente ou na próxima janela de manutenção.
+ `Region`Especifica a AWS região do cluster da qual você deseja remover um nó.

O exemplo a seguir remove imediatamente os nós 0004 e 0005 do cluster my-cluster.

```
https://elasticache.us-west-2.amazonaws.com/
    ?Action=ModifyCacheCluster
    &CacheClusterId=my-cluster
    &ApplyImmediately=true
    &CacheNodeIdsToRemove.member.1=0004
    &CacheNodeIdsToRemove.member.2=0005
    &NumCacheNodes=3   
    &Region us-east-2
    &Version=2014-12-01
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20141201T220302Z
    &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
    &X-Amz-Date=20141201T220302Z
    &X-Amz-SignedHeaders=Host
    &X-Amz-Expires=20141201T220302Z
    &X-Amz-Credential=<credential>
    &X-Amz-Signature=<signature>
```

Para obter mais informações, consulte o tópico ElastiCache da API [https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheCluster.html](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheCluster.html).

# Cancelamento de operações de adição ou exclusão de nós pendentes no ElastiCache
<a name="Clusters.CancelPending"></a>

Se você tiver optado por não aplicar uma alteração de cluster do ElastiCache imediatamente, a operação terá o status **pendente** até que seja realizada na sua próxima janela de manutenção. Você pode cancelar qualquer operação pendente de adição ou exclusão.

Para cancelar uma operação pendente de adição ou exclusão de nó com o AWS CLI, use o comando `modify-cache-cluster`. Defina `num-cache-nodes` igual ao número atual de nós de cache no cluster e, em seguida, adicione o sinalizador `--apply-immediately`. Isso substituirá a alteração pendente.

Para cancelar a adição ou exclusão de um nó pendente:

```
aws elasticache modify-cache-cluster 
	--cache-cluster-id <your-cluster-id> 
	--num-cache-nodes <current-number-of-nodes> 
	--apply-immediately
```

Se não estiver claro se alguma adição ou exclusão de nó está pendente, você pode confirmar seu status com o comando `describe-cache-clusters`:

```
aws elasticache describe-cache-clusters 
	--cache-cluster-id <your-cluster-id>
```

Todos os nós pendentes devem aparecer na saída `PendingModifiedValues`. Por exemplo:

```
"PendingModifiedValues": {
	"NumCacheNodes": 3
	},
```

# Excluindo um cluster no ElastiCache
<a name="Clusters.Delete"></a>

Enquanto um ElastiCache cluster estiver no estado *disponível*, você será cobrado por ele, esteja ou não o usando ativamente. Para interromper as cobranças, exclua o cluster.

**Atenção**  
Quando você exclui um ElastiCache cluster, seus instantâneos manuais são retidos. Também é possível criar um snapshot final antes que o cluster seja excluído. Os snapshots de cache automáticos não são retidos.

## Usando o Console de gerenciamento da AWS
<a name="Clusters.Delete.CON"></a>

O procedimento a seguir exclui um único cluster da sua implantação. Para excluir vários clusters, repita o procedimento para cada cluster que deseja excluir. Você não precisa esperar a finalização da exclusão de um cluster antes de iniciar o procedimento para excluir outro.

**Para excluir um cluster**

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console da Amazon em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel do ElastiCache mecanismo, escolha o mecanismo que está sendo executado no cluster que você deseja excluir.

   É exibida uma lista de todos os clusters que executam esse mecanismo.

1. Para escolher o cluster a ser excluído, escolha o nome na lista de clusters.
**Importante**  
Você só pode excluir um cluster por vez do ElastiCache console. Escolher vários clusters desabilita a operação de exclusão.

1. Em **Ações**, escolha **Excluir**.

1. Na tela de confirmação **Excluir cluster**, escolha **Excluir** para excluir o cluster ou **Cancelar** para mantê-lo.

   Se você escolheu **Excluir**, o status do cluster muda para *excluindo*.

Assim que o cluster não estiver mais relacionado na lista de clusters, você para de ser cobrado por ele.

## Usando o AWS CLI para excluir um ElastiCache cluster
<a name="Clusters.Delete.CLI"></a>

O código a seguir exclui o ElastiCache cluster`my-cluster`.

```
aws elasticache delete-cache-cluster --cache-cluster-id my-cluster
```

A ação `delete-cache-cluster` da CLI apenas exclui um cluster. Para excluir vários clusters, chame `delete-cache-cluster` para cada cluster de cache que você deseja excluir. Você não precisa esperar a finalização da exclusão de um cluster antes de excluir outro.

Para Linux, macOS ou Unix:

```
aws elasticache delete-cache-cluster \
    --cache-cluster-id my-cluster \
    --region us-east-2
```

Para Windows:

```
aws elasticache delete-cache-cluster ^
    --cache-cluster-id my-cluster ^
    --region us-east-2
```

Para obter mais informações, consulte o ElastiCache tópico AWS CLI for [https://docs.aws.amazon.com/cli/latest/reference/elasticache/delete-cache-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/elasticache/delete-cache-cluster.html).

## Usando a ElastiCache API
<a name="Clusters.Delete.API"></a>

O código a seguir exclui o cluster `my-cluster`.

```
https://elasticache.us-west-2.amazonaws.com/    
    ?Action=DeleteCacheCluster
    &CacheClusterId=my-cluster
    &Region us-east-2
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20150202T220302Z
    &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
    &X-Amz-Date=20150202T220302Z
    &X-Amz-SignedHeaders=Host
    &X-Amz-Expires=20150202T220302Z
    &X-Amz-Credential=<credential>
    &X-Amz-Signature=<signature>
```

A operação `DeleteCacheCluster` da API exclui apenas um cluster. Para excluir vários clusters, chame `DeleteCacheCluster` para cada cluster que você deseja excluir. Você não precisa esperar a finalização da exclusão de um cluster antes de excluir outro.

Para obter mais informações, consulte o tópico de referência ElastiCache da API [https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteCacheCluster.html](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteCacheCluster.html).

# Acessando seu ElastiCache cluster ou grupo de replicação
<a name="accessing-elasticache"></a>

Suas ElastiCache instâncias da Amazon foram projetadas para serem acessadas por meio de uma EC2 instância da Amazon.

Se você lançou sua ElastiCache instância em uma Amazon Virtual Private Cloud (Amazon VPC), você pode acessar sua ElastiCache instância de uma instância da Amazon na EC2 mesma Amazon VPC. Ou, usando o emparelhamento de VPC, você pode acessar sua ElastiCache instância de uma Amazon EC2 em uma Amazon VPC diferente.

Se você lançou sua ElastiCache instância no EC2 Classic, você permite que a EC2 instância acesse seu cluster concedendo ao grupo de EC2 segurança da Amazon associado à instância acesso ao seu grupo de segurança de cache. Por padrão, o acesso a um cluster é restrito à conta que o executou.

**Topics**
+ [Concessão de acesso ao clusterou grupo de replicação](#grant-access)

## Concessão de acesso ao clusterou grupo de replicação
<a name="grant-access"></a>

### Você lançou seu cluster em EC2 -VPC
<a name="authorize-access-vpc"></a>

Se você lançou seu cluster em uma Amazon Virtual Private Cloud (Amazon VPC), você pode se conectar ao seu ElastiCache cluster somente a partir de uma EC2 instância da Amazon que esteja sendo executada na mesma Amazon VPC. Nesse caso, você precisará conceder entrada de rede ao cluster.

**nota**  
Se você estiver usando *Local Zones* (Zonas locais), verifique se você as habilitou. Para obter mais informações, consulte [Habilitar zonas locais](https://docs.aws.amazon.com//AWSEC2/latest/UserGuide/using-regions-availability-zones.html#opt-in-local-zone). Ao fazer isso, sua VPC é estendida para essa zona local e sua VPC tratará a sub-rede como qualquer sub-rede em qualquer outra zona de disponibilidade, e gateways relevantes, tabelas de rota e outras considerações de grupos de segurança serão ajustados automaticamente.

**Para conceder entrada na rede de um grupo de segurança da Amazon VPC para um cluster**

1. Faça login no Console de gerenciamento da AWS e abra o EC2 console da Amazon em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Network & Security**, escolha **Security Groups**.

1. Na lista de grupos de segurança, escolha o de segurança para a sua Amazon VPC. A menos que você tenha criado um grupo de segurança para ElastiCache uso, esse grupo de segurança será denominado *padrão*.

1. Escolha a guia **Inbound** e faça o seguinte:

   1. Escolha **Editar**.

   1. Escolha **Adicionar regra**.

   1. Na coluna **Tipo**, escolha **Regra TCP personalizada**.

   1. Na caixa **Port range**, digite o número da porta para o nó do cluster. Esse número deve ser o mesmo que você especificou quando você executou o cluster. A porta padrão do Memcached é **11211** A porta padrão do Valkey e Redis OSS é **6379**.

   1. Na caixa **Fonte**, escolha **Qualquer lugar** que tenha o intervalo de portas (0.0.0.0/0) para que qualquer EC2 instância da Amazon que você iniciar na sua Amazon VPC possa se conectar aos seus nós. ElastiCache 
**Importante**  
Abrir o ElastiCache cluster para 0.0.0.0/0 não o expõe à Internet porque ele não tem endereço IP público e, portanto, não pode ser acessado de fora da VPC. No entanto, o grupo de segurança padrão pode ser aplicado a outras EC2 instâncias da Amazon na conta do cliente, e essas instâncias podem ter um endereço IP público. Se eles estiverem executando algo na porta padrão, esse serviço poderá ser exposto involuntariamente. Portanto, recomendamos criar um grupo de segurança de VPC que será usado exclusivamente pelo ElastiCache. Para obter mais informações, consulte [Grupos de segurança personalizados](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html#creating-your-own-security-groups).

   1. Escolha **Salvar**.

Quando você executa uma EC2 instância da Amazon em sua Amazon VPC, essa instância poderá se conectar ao seu ElastiCache cluster.

### Acessando ElastiCache recursos de fora AWS
<a name="access-from-outside-aws"></a>

A Amazon ElastiCache é um AWS serviço que fornece armazenamento de valores-chave na memória baseado em nuvem. O serviço foi projetado para ser acessado exclusivamente de dentro AWS. No entanto, se o ElastiCache cluster estiver hospedado em uma VPC, você poderá usar uma instância de Network Address Translation (NAT) para fornecer acesso externo.

#### Requisitos
<a name="access-from-outside-aws-requirements"></a>

Os seguintes requisitos devem ser atendidos para que você possa acessar seus ElastiCache recursos de fora AWS:
+ O cluster deve residir em uma VPC e ser acessado por meio de uma instância NAT (Conversão de endereços de rede). Não existem exceções para esse requerimento.
+ A instância NAT deve ser executada na mesma VPC que o cluster.
+ A instância NAT deve ser iniciada em uma sub-rede pública separada do cluster.
+ Um endereço IP elástico (EIP) deve ser associado à instância NAT. O recurso de encaminhamento de porta de iptables é usado para encaminhar uma porta na instância NAT à porta do nó de cache na VPC.

#### Considerações
<a name="access-from-outside-aws-considerations"></a>

As seguintes considerações devem ser mantidas em mente ao acessar seus recursos do ElastiCache de fora do ElastiCache.
+ Os clientes se conectam ao EIP e à porta de cache da instância NAT. O encaminhamento de porta na instância NAT direciona o tráfego ao nó do cluster apropriado.
+ Se um nó de cluster for adicionado ou substituído, as regras de iptables precisarão ser atualizadas para refletir essa alteração.

#### Limitações
<a name="access-from-outside-aws-limitations"></a>

Essa abordagem deve ser usada somente para fins de teste e desenvolvimento. Ela não é recomendada para uso em produção devido às seguintes limitações:
+ A instância NAT está atuando como um proxy entre clientes e vários clusters. A adição de um proxy afeta o desempenho do cluster. O impacto aumenta com o número de clusters que você está acessando por meio da instância NAT.
+ O tráfego dos clientes para a instância NAT não é criptografado. Portanto, você deve evitar o envio de dados confidenciais através da instância NAT.
+ A instância NAT acrescenta a sobrecarga de manter outra instância.
+ A instância NAT serve como um único ponto de falha. Para obter informações sobre como configurar o NAT de alta disponibilidade na VPC, consulte [Alta disponibilidade para instâncias NAT da Amazon VPC: um exemplo](https://aws.amazon.com/articles/2781451301784570).

#### Como acessar ElastiCache recursos de fora AWS
<a name="access-from-outside-aws-how-to"></a>

O procedimento a seguir demonstra como se conectar aos seus ElastiCache recursos usando uma instância NAT.

Estas etapas assumem o seguinte:
+ `iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 6380 -j DNAT --to 10.0.1.231:6379`
+ `iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 6381 -j DNAT --to 10.0.1.232:6379`

Em seguida, você precisa da NAT na direção oposta:

`iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 10.0.0.55`

Você também precisa habilitar o encaminhamento de IP, que permanece desabilitado por padrão:

`sudo sed -i 's/net.ipv4.ip_forward=0/net.ipv4.ip_forward=1/g' /etc/sysctl.conf sudo sysctl --system`
+ Você está acessando um cluster Memcached com:
  + Endereço IP: *10.0.1.230*
  + Porta Memcached padrão: *11211*
  + Grupo de segurança: *\$110\$1.0\$1.0\$1.55\$1*
+ Você está acessando um cluster do Valkey ou Redis OSS com:
  + Endereço IP: *10.0.1.230*
  + Porta padrão: *6379*
  + Grupo de segurança: *sg-bd56b7da*
  + AWS endereço IP da instância — *198.99.100.27*
+ Seu cliente confiável possui o endereço IP *198.51.100.27*.
+ Sua instância NAT possui o endereço IP elástico *203.0.113.73*.
+ Sua instância NAT tem o security group *sg-ce56b7a9*.



**Para se conectar aos seus ElastiCache recursos usando uma instância NAT**

1. Crie uma instância NAT na mesma VPC que o seu cluster, mas em uma sub-rede pública.

   Por padrão, o assistente da VPC iniciará um tipo de nó *cache.m1.small*. Você deve selecionar um tamanho de nó conforme as suas necessidades. Você deve usar o EC2 NAT AMI para poder acessar ElastiCache de fora AWS.

   Para obter informações sobre como criar uma instância NAT, consulte [Instâncias NAT no Guia](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html) do usuário da AWS VPC.

1. Crie regras de grupo de segurança para o cluster e a instância NAT.

   O grupo de segurança da instância NAT e a instância do cluster devem ter as seguintes regras:
   + Duas regras de entrada
     + Com o Memcached, a primeira regra é permitir conexões TCP de clientes confiáveis com cada porta de cache reencaminhada da instância NAT (11211 a 11213).
     + Com Valkey e Redis OSS, a primeira regra é permitir conexões TCP de clientes confiáveis com cada porta de cache reencaminhada da instância NAT (6379 a 6381).
     + Uma segunda regra para permitir acesso SSH a clientes confiáveis.  
**Grupo de segurança da instância NAT: regras de entrada com o Memcached**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/accessing-elasticache.html)  
**Grupo de segurança da instância NAT: regras de entrada com Valkey ou Redis OSS**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/accessing-elasticache.html)
   + Com o Memcached, uma regra de saída para permitir conexões TCP para a porta de cache (11211).  
**Grupo de segurança da instância NAT: regra de saída**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/accessing-elasticache.html)
   + Com o Valkey ou Redis OSS, uma regra de saída para permitir conexões TCP para a porta de cache (6379).  
**Grupo de segurança da instância NAT: regra de saída**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/accessing-elasticache.html)
   + Com o Memcached, uma regra de entrada para o grupo de segurança do cluster que permite conexões TCP da instância NAT com a porta de cache (11211).  
**Grupo de segurança da instância do cluster: regra de entrada**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/accessing-elasticache.html)
   + Com o Valkey ou Redis OSS, uma regra de entrada para o grupo de segurança do cluster que permite conexões TCP da instância NAT com a porta de cache (6379).  
**Grupo de segurança da instância do cluster: regra de entrada**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/accessing-elasticache.html)

1. Valide as regras.
   + Confirme se o cliente confiável é capaz de fazer SSH para a instância NAT.
   + Confirme se o cliente confiável pode se conectar ao cluster a partir da instância NAT.

1. **Memcached**

   Adicione uma regra iptables à instância NAT.

   Uma regra iptables deve ser adicionada à tabela NAT para cada nó no cluster para encaminhar a porta de cache da instância NAT ao nó do cluster. Um exemplo pode ser o seguinte:

   ```
   iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 11211 -j DNAT --to 10.0.1.230:11211
   ```

   O número da porta deve ser exclusivo para cada nó no cluster. Por exemplo, se estiver trabalhando com um cluster Memcached de três nós usando as portas 11211 - 11213, as regras seriam as seguintes:

   ```
   iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 11211 -j DNAT --to 10.0.1.230:11211
   iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 11212 -j DNAT --to 10.0.1.231:11211
   iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 11213 -j DNAT --to 10.0.1.232:11211
   ```

   Confirme se o cliente confiável pode se conectar ao cluster.

   O cliente confiável deve se conectar ao EIP associado à instância NAT e à porta de cluster correspondente ao nó de cluster apropriado. Por exemplo, a string de conexão para o PHP pode ser o seguinte:

   ```
   $memcached->connect( '203.0.113.73', 11211 );
   $memcached->connect( '203.0.113.73', 11212 );
   $memcached->connect( '203.0.113.73', 11213 );
   ```

   Um cliente telnet também pode ser usado para verificar a conexão. Por exemplo:

   ```
   telnet 203.0.113.73 11211
   telnet 203.0.113.73 11212
   telnet 203.0.113.73 11213
   ```

   **Valkey ou Redis OSS**

   Adicione uma regra iptables à instância NAT.

   Uma regra iptables deve ser adicionada à tabela NAT para cada nó no cluster para encaminhar a porta de cache da instância NAT ao nó do cluster. Um exemplo pode ser o seguinte:

   ```
   iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 6379 -j DNAT --to 10.0.1.230:6379
   ```

   O número da porta deve ser exclusivo para cada nó no cluster. Por exemplo, se estiver trabalhando com um cluster do Redis OSS de três nós usando as portas 6379 a 6381, as regras seriam as seguintes:

   ```
   iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 6379 -j DNAT --to 10.0.1.230:6379
   iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 6380 -j DNAT --to 10.0.1.231:6379
   iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 6381 -j DNAT --to 10.0.1.232:6379
   ```

   Confirme se o cliente confiável pode se conectar ao cluster.

   O cliente confiável deve se conectar ao EIP associado à instância NAT e à porta de cluster correspondente ao nó de cluster apropriado. Por exemplo, a string de conexão para o PHP pode ser o seguinte:

   ```
   redis->connect( '203.0.113.73', 6379 );
   redis->connect( '203.0.113.73', 6380 );
   redis->connect( '203.0.113.73', 6381 );
   ```

   Um cliente telnet também pode ser usado para verificar a conexão. Por exemplo:

   ```
   telnet 203.0.113.73 6379
   telnet 203.0.113.73 6380
   telnet 203.0.113.73 6381
   ```

1. Salve a configuração iptables.

   Salve as regras depois de testá-las e verificá-las. Se você estiver usando uma distribuição Linux baseada no Redhat (como o Amazon Linux), execute o seguinte comando:

   ```
   service iptables save
   ```

#### Tópicos relacionados
<a name="access-from-outside-aws-see-also"></a>

Os tópicos a seguir podem ser de seu interesse.
+ [Padrões de acesso para acessar um cache do ElastiCache em um Amazon VPC](elasticache-vpc-accessing.md)
+ [Acesso a um cache do ElastiCache a partir de uma aplicação executada no datacenter de um cliente](elasticache-vpc-accessing.md#elasticache-vpc-accessing-data-center)
+ [Instâncias NAT](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html)
+ [Configurando clientes ElastiCache ](ClientConfig.md)
+ [Alta disponibilidade para instâncias NAT da Amazon VPC: um exemplo](https://aws.amazon.com/articles/2781451301784570)

# Encontrar endpoints de conexão no ElastiCache
<a name="Endpoints"></a>

Sua aplicação conecta-se ao seu cluster do ElastiCache usando endpoints. Um endpoint é o endereço exclusivo de um nó ou cluster.

Também é possível estabelecer uma conexão privada entre a VPC e os endpoints da API do ElastiCache criando um endpoint da VPC da interface por meio do AWS PrivateLink. Para obter mais informações, consulte [ElastiCache API e interface VPC endpoints ()AWS PrivateLink](elasticache-privatelink.md).

**Quais endpoints usar com o Valkey ou Redis OSS.**
+ Para o **nó autônomo**, use o endpoint do nó para operações de leitura e gravação.

   
+ Para **clusters do Valkey ou Redis OSS (modo cluster desabilitado)**, use o *Endpoint primário* para todas as operações de gravação. Use o *Endpoint de leitor* para dividir uniformemente as conexões de entrada no endpoint entre todas as réplicas de leitura. Use os *Endpoints de nó* individuais para operações de leitura (na API/CLI, eles são chamados de Endpoints de leitura).

   
+ Para **clusters do Valkey ou do Redis OSS (modo cluster habilitado)**, use o *Endpoint de configuração* do cluster para todas as operações com suporte a comandos do modo cluster habilitado. Você deve usar um cliente que ofereça suporte ao cluster do Valkey ou ao cluster do Redis OSS no Redis OSS 3.2 e superior. Você ainda pode ler de endpoints de nó individuais (na API/CLI, eles se chamam Endpoints de leitura).

   

As seções a seguir orientam pelo processo de localização dos endpoints necessários para o mecanismo que você está executando.

**Quais endpoints usar com o Memcached.**

Para o **cache com tecnologia sem servidor do ElastiCache para o Memcached**, basta adquirir o DNS do endpoint do cluster e a porta do console.

Na AWS CLI, use o comando `describe-serverless-caches` para adquirir as informações do endpoint.

Linux

```
aws elasticache describe-serverless-caches --serverless-cache-name CacheName
```

Windows

```
aws elasticache describe-serverless-caches --serverless-cache-name CacheName
```

O resultado da operação acima deve ser semelhante a este (formato JSON).

```
{
    "ServerlessCaches": [
        {
            "ServerlessCacheName": "serverless-memcached",
            "Description": "test",
            "CreateTime": 1697659642.136,
            "Status": "available",
            "Engine": "memcached",
            "MajorEngineVersion": "1.6",
            "FullEngineVersion": "21",
            "SecurityGroupIds": [
                "sg-083eda453e1e51310"
            ],
            "Endpoint": {
                "Address": "serverless-memcached-01.amazonaws.com",
                "Port":11211
            },
            "ARN": "<the ARN>",
            "SubnetIds": [
                "subnet-0cf759df15bd4dc65",
                "subnet-09e1307e8f1560d17"
            ],
            "SnapshotRetentionLimit": 0,
            "DailySnapshotTime": "03:00"
        }
    ]
}
```

**Para um cluster do Memcached com base na instância**, se usar a descoberta automática, você poderá usar o *endpoint de configuração* do cluster para configurar o cliente do Memcached. Isso significa que você deve usar um cliente que ofereça suporte para Descoberta automática.

Se você não usar a Descoberta automática, deverá configurar seu cliente para usar os endpoints de nó individuais para leituras e gravações. Você também deve acompanhá-los à medida que adiciona e remove nós.

## Localização de endpoints de um cluster do Valkey ou do Redis OSS (modo cluster desabilitado) (console)
<a name="Endpoints.Find.Redis"></a>

Se um cluster do Valkey ou Redis OSS (modo cluster desabilitado) tiver apenas um nó, o endpoint desse nó será usado para tanto para leituras quanto para gravações. Se um cluster do Valkey ou Redis OSS (modo cluster desabilitado) tiver vários nós, há 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 leitor divide uniformemente as conexões de entrada no endpoint entre todas as réplicas de leitura em um cluster do ElastiCache para 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 várias réplicas de leitura do seu cluster do ElastiCache para Redis OSS em diferentes zonas de disponibilidade da AWS (AZ) para garantir a alta disponibilidade dos endpoints leitores. 

**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 descobrir endpoints de um cluster do Valkey ou Redis OSS (modo cluster desabilitado) (console)**

1. Faça login no Console de gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel de navegação, escolha **Clusters do Valkey** ou **Clusters do Redis OSS**.

   A tela de clusters aparecerá com uma lista de clusters do Valkey ou Redis OSS (modo cluster desabilitado) e Valkey ou Redis OSS (modo cluster habilitado).

1. Para encontrar os endpoints Primário e/ou Leitor do cluster, escolha o nome do cluster (e não o botão à esquerda).  
![\[Imagem: endpoint primário para um cluster do Valkey ou Redis OSS (modo cluster desabilitado)\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/Reader-Endpoint.png)

   *Endpoints primários e leitores para um cluster do Valkey ou Redis OSS (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.

1. Se o cluster do Valkey ou Redis OSS (modo cluster desabilitado) tiver nós de réplica, você poderá encontrar os endpoints dos nós de réplica do cluster escolhendo o nome do cluster e escolhendo a guia **Nós**.

   A tela de nós aparece com cada nó do cluster, primário e réplicas, listados com seu respectivo endpoint.  
![\[Imagem: endpoints de nó para um cluster do Valkey ou Redis OSS (modo cluster desabilitado)\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-Endpoints-Redis-Node.png)

   *Endpoints de nó para um cluster do Valkey ou Redis OSS (modo cluster desabilitado)*

1. Como copiar um endpoint para a área de transferência:

   1. Um endpoint por vez, localize o endpoint que você deseja copiar.

   1. 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 do Memcached](nodes-connecting.md#nodes-connecting.mem).

Um endpoint primário do Valkey ou Redis OSS (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
```

## Localização de endpoints para um cluster do Valkey ou do Redis OSS (modo cluster habilitado) (console)
<a name="Endpoints.Find.RedisCluster"></a>

O cluster do Valkey ou Redis OSS (modo cluster habilitado) possui um único endpoint de configuração. Ao se conectar ao endpoint de configuração, a aplicação pode descobrir os endpoints primários e os endpoints de leitura para cada fragmento no cluster.

**Para encontrar o endpoint de um cluster do Valkey ou Redis OSS (modo cluster habilitado)**

1. Faça login no Console de gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel de navegação, escolha **Clusters do Valkey** ou **Clusters do Redis OSS**.

   A tela de clusters será exibida com uma lista de clusters. Escolha o cluster ao qual você deseja se conectar.

1. Para encontrar o endpoint de configuração do cluster, escolha o nome do cluster (não o botão de opção).

1. O **endpoint de configuração** é exibido em **detalhes do cluster**. Para copiá-lo, selecione o ícone *copiar* à esquerda do endpoint. 

## Localização de endpoints de um cluster (console) (Memcached)
<a name="Endpoints.Find.Memcached"></a>

Todos os endpoints Memcached são endpoints de leitura/gravação. Para se conectar a nós em um cluster Memcached, seu aplicativo pode usar os endpoints para cada nó ou o endpoint de configuração do cluster, juntamente com a Descoberta automática. Para usar a Descoberta automática, você deve usar um cliente que ofereça suporte para Descoberta automática.

Ao usar a Descoberta automática, seu aplicativo cliente se conecta ao seu cluster Memcached usando o endpoint de configuração. À medida que você escalar seu cluster adicionando ou removendo nós, seu aplicativo "conhecerá" automaticamente todos os nós do cluster e poderá se conectar a qualquer um deles. Sem a Descoberta automática, seu aplicativo teria que fazer isso, ou você precisaria atualizar manualmente os endpoints no seu aplicativo sempre que adicionasse ou removesse um nó. 

Para copiar um endpoint, escolha o ícone de cópia diretamente na frente do endereço do endpoint. Para obter informações sobre como usar o endpoint para se conectar a um nó, consulte [Conexão a nós do Memcached](nodes-connecting.md#nodes-connecting.mem).

Endpoints de configuração e de nó são muitos semelhantes. As diferenças estão realçadas com **negrito** a seguir.

```
myclustername.xxxxxx.cfg.usw2.cache.amazonaws.com:port   # configuration endpoint contains "cfg"
myclustername.xxxxxx.0001.usw2.cache.amazonaws.com:port  # node endpoint for node 0001
```

**Importante**  
Se você optar por criar um CNAME para o seu endpoint de configuração Memcached, para que o seu cliente de descoberta automática reconheça o CNAME como um endpoint de configuração, você deverá incluir `.cfg.` nesse CNAME. 

## Localizar endpoints (AWS CLI)
<a name="Endpoints.Find.CLI"></a>

Para o Memcached, você pode usar a AWS CLI do Amazon ElastiCache para descobrir os endpoints para nós e clusters.

Para o Redis OSS, você pode usar a AWS CLI do Amazon ElastiCache para descobrir os endpoints para nós, clusters e também grupos de replicação.

**Topics**
+ [Encontrar endpoints para nós e clusters (AWS CLI)](#Endpoints.Find.CLI.Nodes)
+ [Localização de endpoints para grupos de replicação do Valkey ou Redis OSS (AWS CLI)](#Endpoints.Find.CLI.ReplGroups)

### Encontrar endpoints para nós e clusters (AWS CLI)
<a name="Endpoints.Find.CLI.Nodes"></a>

Você pode usar a AWS CLI para descobrir os endpoints para um cluster e seus nós com o comando `describe-cache-clusters`. Para clusters do Valkey ou Redis OSS, o comando retorna o endpoint do cluster.  Para clusters Memcached, o comando retorna o endpoint de configuração. Se você incluir o parâmetro opcional `--show-cache-node-info`, o comando também retornará os endpoints dos nós individuais no cluster.

**Example**  
O comando a seguir recupera os endpoints de configuração (`ConfigurationEndpoint`) e os endpoints de nó individuais (`Endpoint`) para o cluster Memcached *mycluster*.  
Para Linux, macOS ou Unix:  

```
aws elasticache describe-cache-clusters \
    --cache-cluster-id mycluster \
    --show-cache-node-info
```
Para Windows:  

```
aws elasticache describe-cache-clusters ^
    --cache-cluster-id mycluster ^
    --show-cache-node-info
```
O resultado da operação acima deve ser semelhante a este (formato JSON).  

```
{
   "CacheClusters": [
   {
       "Engine": "memcached", 
       "CacheNodes": [
          {
             "CacheNodeId": "0001", 
             "Endpoint": {
                "Port": 11211, 
                "Address": "mycluster.amazonaws.com"
             }, 
                "CacheNodeStatus": "available", 
                "ParameterGroupStatus": "in-sync", 
                "CacheNodeCreateTime": "2016-09-22T21:30:29.967Z", 
                "CustomerAvailabilityZone": "us-west-2b"
          }, 
          {
             "CacheNodeId": "0002", 
             "Endpoint": {
                "Port": 11211, 
                "Address": "mycluster.amazonaws.com"
             }, 
                "CacheNodeStatus": "available", 
                "ParameterGroupStatus": "in-sync", 
                "CacheNodeCreateTime": "2016-09-22T21:30:29.967Z", 
                "CustomerAvailabilityZone": "us-west-2b"
          }, 
          {
                "CacheNodeId": "0003", 
                "Endpoint": {
                   "Port": 11211, 
                   "Address": "mycluster.amazonaws.com"
                }, 
                   "CacheNodeStatus": "available", 
                   "ParameterGroupStatus": "in-sync", 
                   "CacheNodeCreateTime": "2016-09-22T21:30:29.967Z", 
                   "CustomerAvailabilityZone": "us-west-2b"
          }
       ], 
       "CacheParameterGroup": {
       "CacheNodeIdsToReboot": [], 
       "CacheParameterGroupName": "default.memcached1.4", 
       "ParameterApplyStatus": "in-sync"
            }, 
            "CacheClusterId": "mycluster", 
            "PreferredAvailabilityZone": "us-west-2b", 
            "ConfigurationEndpoint": {
                "Port": 11211, 
                "Address": "mycluster.amazonaws.com"
            }, 
            "CacheSecurityGroups": [], 
            "CacheClusterCreateTime": "2016-09-22T21:30:29.967Z", 
            "AutoMinorVersionUpgrade": true, 
            "CacheClusterStatus": "available", 
            "NumCacheNodes": 3, 
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:", 
            "CacheSubnetGroupName": "default", 
            "EngineVersion": "1.4.24", 
            "PendingModifiedValues": {}, 
            "PreferredMaintenanceWindow": "mon:09:00-mon:10:00", 
            "CacheNodeType": "cache.m4.large",
             "DataTiering": "disabled"
        }
    ]   
}
```
Se você optar por criar um CNAME para o seu endpoint de configuração Memcached, para que o seu cliente de descoberta automática reconheça o CNAME como um endpoint de configuração, você deverá incluir `.cfg.` nesse CNAME. Por exemplo, `mycluster.cfg.local` no seu arquivo php.ini para o parâmetro `session.save_path`.

**Example**  
Para Valkey e Redis OSS, o comando a seguir recupera as informações do cluster para o cluster de nó único *mycluster*.  
O parâmetro `--cache-cluster-id` pode ser usado com um ID de cluster do Valkey ou Redis OSS (modo cluster desabilitado) de nó único ou IDs de nó específicos em grupos de replicação. O `--cache-cluster-id` de um grupo de replicação é um valor de 4 dígitos, como `0001`. Se `--cache-cluster-id` for o ID de um cluster (nó) em um grupo de replicação, o `replication-group-id` será incluído na saída.
Para Linux, macOS ou Unix:  

```
aws elasticache describe-cache-clusters \
    --cache-cluster-id redis-cluster \
    --show-cache-node-info
```
Para Windows:  

```
aws elasticache describe-cache-clusters ^
    --cache-cluster-id redis-cluster ^
    --show-cache-node-info
```
O resultado da operação acima deve ser semelhante a este (formato JSON).  

```
{
    "CacheClusters": [
        {
            "CacheClusterStatus": "available",
            "SecurityGroups": [
                {
                    "SecurityGroupId": "sg-77186e0d",
                    "Status": "active"
                }
            ],
            "CacheNodes": [
                {
                    "CustomerAvailabilityZone": "us-east-1b",
                    "CacheNodeCreateTime": "2018-04-25T18:19:28.241Z",
                    "CacheNodeStatus": "available",
                    "CacheNodeId": "0001",
                    "Endpoint": {
                        "Address": "redis-cluster.amazonaws.com",
                        "Port": 6379
                    },
                    "ParameterGroupStatus": "in-sync"
                }
            ],
            "AtRestEncryptionEnabled": false,
            "CacheClusterId": "redis-cluster",
            "TransitEncryptionEnabled": false,
            "CacheParameterGroup": {
                "ParameterApplyStatus": "in-sync",
                "CacheNodeIdsToReboot": [],
                "CacheParameterGroupName": "default.redis3.2"
            },
            "NumCacheNodes": 1,
            "PreferredAvailabilityZone": "us-east-1b",
            "AutoMinorVersionUpgrade": true,
            "Engine": "redis",
            "AuthTokenEnabled": false,
            "PendingModifiedValues": {},
            "PreferredMaintenanceWindow": "tue:08:30-tue:09:30",
            "CacheSecurityGroups": [],
            "CacheSubnetGroupName": "default",
            "CacheNodeType": "cache.t2.small",
             "DataTiering": "disabled"
            "EngineVersion": "3.2.10",
            "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:",
            "CacheClusterCreateTime": "2018-04-25T18:19:28.241Z"
        }
    ]
}
```

Para obter mais informações, consulte o tópico [describe-cache-clusters](https://docs.aws.amazon.com/cli/latest/reference/elasticache/describe-cache-clusters.html).

### Localização de endpoints para grupos de replicação do Valkey ou Redis OSS (AWS CLI)
<a name="Endpoints.Find.CLI.ReplGroups"></a>

Você pode usar a AWS CLI para descobrir os endpoints para um grupo de replicação e seus clusters com o comando `describe-replication-groups`. O comando retorna o endpoint primário do grupo de replicação e uma lista de todos os clusters (nós) no grupo de replicação com seus endpoints, junto com o endpoint de leitor. 

A seguinte operação recupera o endpoint primário e o endpoint de leitor para o grupo de replicação `myreplgroup`. Use o endpoint primário para todas as operações de gravação. 

```
aws elasticache describe-replication-groups \
    --replication-group-id myreplgroup
```

Para Windows:

```
aws elasticache describe-replication-groups ^
    --replication-group-id myreplgroup
```

O resultado dessa operação deve ser semelhante a este (formato JSON).

```
{
   "ReplicationGroups": [
     {
       "Status": "available", 
       "Description": "test", 
       "NodeGroups": [
         {
            "Status": "available", 
               "NodeGroupMembers": [
                  {
                     "CurrentRole": "primary", 
                     "PreferredAvailabilityZone": "us-west-2a", 
                     "CacheNodeId": "0001", 
                     "ReadEndpoint": {
                        "Port": 6379, 
                        "Address": "myreplgroup-001.amazonaws.com"
                     }, 
                     "CacheClusterId": "myreplgroup-001"
                  }, 
                  {
                     "CurrentRole": "replica", 
                     "PreferredAvailabilityZone": "us-west-2b", 
                     "CacheNodeId": "0001", 
                     "ReadEndpoint": {
                        "Port": 6379, 
                        "Address": "myreplgroup-002.amazonaws.com"
                     }, 
                     "CacheClusterId": "myreplgroup-002"
                  }, 
                  {
                     "CurrentRole": "replica", 
                     "PreferredAvailabilityZone": "us-west-2c", 
                     "CacheNodeId": "0001", 
                     "ReadEndpoint": {
                        "Port": 6379, 
                        "Address": "myreplgroup-003.amazonaws.com"
                     }, 
                     "CacheClusterId": "myreplgroup-003"
                  }
               ], 
               "NodeGroupId": "0001", 
               "PrimaryEndpoint": {
                  "Port": 6379, 
                  "Address": "myreplgroup.amazonaws.com"
               },
               "ReaderEndpoint": {
                  "Port": 6379, 
                  "Address": "myreplgroup-ro.amazonaws.com"
               }
            }
         ], 
         "ReplicationGroupId": "myreplgroup", 
         "AutomaticFailover": "enabled", 
         "SnapshottingClusterId": "myreplgroup-002", 
         "MemberClusters": [
            "myreplgroup-001", 
            "myreplgroup-002", 
            "myreplgroup-003"
         ], 
         "PendingModifiedValues": {}
      }
   ]
}
```

Para obter mais informações, consulte [describe-replication-groups](https://docs.aws.amazon.com/cli/latest/reference/elasticache/describe-replication-groups.html) na *Referência de comandos da AWS CLI*.

## Localização de endpoints (API do ElastiCache)
<a name="Endpoints.Find.API"></a>

Para o Memcached, você pode usar a API do Amazon ElastiCache para descobrir os endpoints para nós e clusters.

Para o Redis OSS, você pode usar a API do Amazon ElastiCache para descobrir os endpoints para nós, clusters e também grupos de replicação.

**Topics**
+ [Localização de endpoints para nós e clusters (API do ElastiCache)](#Endpoints.Find.API.Nodes)
+ [Localização de endpoints para grupos de replicação do Valkey ou Redis OSS (API do ElastiCache)](#Endpoints.Find.API.ReplGroups)

### Localização de endpoints para nós e clusters (API do ElastiCache)
<a name="Endpoints.Find.API.Nodes"></a>

Você pode usar a API do ElastiCache para descobrir os endpoints para um cluster e seus nós com a ação `DescribeCacheClusters`. Para clusters do Valkey ou Redis OSS, o comando retorna o endpoint do cluster.  Para clusters Memcached, o comando retorna o endpoint de configuração. Se você incluir o parâmetro opcional `ShowCacheNodeInfo`, a ação também retornará os endpoints dos nós individuais no cluster.

**Example**  
Para o Memcached, o comando a seguir recupera os endpoints de configuração (`ConfigurationEndpoint`) e os endpoints de nó individuais (`Endpoint`) para o cluster do Memcached *mycluster*.  

```
https://elasticache.us-west-2.amazonaws.com/
    ?Action=DescribeCacheClusters
    &CacheClusterId=mycluster
    &ShowCacheNodeInfo=true
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20150202T192317Z
    &Version=2015-02-02
    &X-Amz-Credential=<credential>
```
Se você optar por criar um CNAME para o seu endpoint de configuração Memcached, para que o seu cliente de descoberta automática reconheça o CNAME como um endpoint de configuração, você deverá incluir `.cfg.` nesse CNAME. Por exemplo, `mycluster.cfg.local` no seu arquivo php.ini para o parâmetro `session.save_path`.

### Localização de endpoints para grupos de replicação do Valkey ou Redis OSS (API do ElastiCache)
<a name="Endpoints.Find.API.ReplGroups"></a>

Você pode usar a API do ElastiCache para descobrir os endpoints para um grupo de replicação e seus cluster com a ação `DescribeReplicationGroups`. A ação retorna o endpoint primário do grupo de replicação e uma lista de todos os clusters no grupo de replicação com seus endpoints, junto com o endpoint de leitor. 

A operação a seguir recupera o endpoint primário (PrimaryEndpoint), o endpoints de leitor (ReaderEndpoint) e os endpoints de nós individuais (ReadEndpoint) para o grupo de replicação `myreplgroup`. Use o endpoint primário para todas as operações de gravação.

```
https://elasticache.us-west-2.amazonaws.com/
    ?Action=DescribeReplicationGroups
    &ReplicationGroupId=myreplgroup
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20150202T192317Z
    &Version=2015-02-02
    &X-Amz-Credential=<credential>
```

Para obter mais informações, consulte [DescribeReplicationGroups](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeReplicationGroups.html). 

# Operação com fragmentos no ElastiCache
<a name="Shards"></a>

Um fragmento (API/CLI: grupo de nós) é uma coleção de um a seis nós do ElastiCache para Valkey ou Redis OSS. Um cluster do Valkey ou Redis OSS (modo cluster desabilitado) nunca terá mais de um fragmento. Com os fragmentos, você pode dividir grandes bancos de dados em partes menores, mais rápidas e mais fáceis de gerenciar, chamadas de fragmentos de dados. Isso pode aumentar a eficiência do banco de dados distribuindo as operações em várias seções separadas. O uso de fragmentos pode oferecer muitos benefícios, incluindo melhor desempenho, escalabilidade e eficiência de custos.

É possível criar um cluster com alto número de fragmentos e baixo número de réplicas totalizando até 90 nós por cluster. Essa configuração do cluster pode variar de 90 fragmentos e 0 réplicas para 15 fragmentos e 5 réplicas, que é o número máximo de réplicas permitidas. Os dados do cluster são particionados entre todos os fragmentos do cluster. Se houver mais de um nó em um fragmento, este implementará a replicação com um nó sendo o nó primário de leitura/gravação e os outros nós como nós de réplica somente leitura.

O limite de nós ou fragmentos pode ser aumentado para um máximo de 500 por cluster se a versão do mecanismo for Valkey 7.2 e posteriores ou Redis OSS 5.0.6 a 7.1. Por exemplo, você pode optar por configurar um cluster de 500 nós que varia entre 83 fragmentos (uma primária e 5 réplicas por fragmento) e 500 fragmentos (primário único e sem réplicas). Verifique se existem endereços IP disponíveis suficientes para acomodar o aumento. As armadilhas comuns incluem as sub-redes no grupo de sub-redes têm um intervalo CIDR muito pequeno ou as sub-redes são compartilhadas e fortemente usadas por outros clusters. Para obter mais informações, consulte [Criação de um grupo de sub-redes](SubnetGroups.Creating.md).

 Para versões abaixo de 5.0.6, o limite é 250 por cluster.

Para solicitar um aumento de limite, consulte [Limites do serviço da AWS](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) e escolha o tipo de limite **Nodes per cluster per instance type** (Nós por cluster por tipo de instância). 

Ao criar um cluster do Valkey ou Redis OSS (modo cluster habilitado) usando o console do ElastiCache, você especifica o número de fragmentos no cluster e o número de nós nos fragmentos. Para obter mais informações, consulte [Criação de um cluster do Valkey ou Redis OSS (modo cluster habilitado) (console)](Clusters.Create.md#Clusters.Create.CON.RedisCluster). Se você usar a API do ElastiCache ou a AWS CLI para criar um cluster (chamado de *grupo de replicação* na API/CLI), poderá configurar o número de nós em um fragmento (API/CLI: grupo de nós) de forma independente. Para obter mais informações, consulte: 
+ API: [CreateReplicationGroup](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateReplicationGroup.html)
+ CLI: [create-replication-group](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-replication-group.html)

Cada nó em um fragmento tem as mesmas especificações de computação, armazenamento e memória. A API do ElastiCache permite que você controle atributos no âmbito do fragmento, como o número de nós, as configurações de segurança e as janelas de manutenção do sistema.

![\[Imagem: configurações de fragmento Valkey ou Redis OSS.\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCacheClusters-CSN-RedisShards.png)


*Configurações de fragmento do Valkey ou Redis OSS*

Para obter mais informações, consulte [Refragmentação offline para o Valkey ou o Redis OSS (modo cluster habilitado)](scaling-redis-cluster-mode-enabled.md#redis-cluster-resharding-offline) e [Refragmentação online para o Valkey ou o Redis OSS (modo cluster habilitado)](scaling-redis-cluster-mode-enabled.md#redis-cluster-resharding-online).

## Localização de um ID de fragmento
<a name="shard-find-id"></a>

Você pode encontrar o ID de um fragmento usando o Console de gerenciamento da AWS, a AWS CLI ou a API do ElastiCache.

### Utilização do Console de gerenciamento da AWS
<a name="shard-find-id-con"></a>



**Topics**
+ [Para Valkey ou Redis OSS (modo cluster desabilitado)](#shard-find-id-con-classic)
+ [Para Valkey ou Redis OSS (modo cluster habilitado)](#shard-find-id-con-cluster)

#### Para Valkey ou Redis OSS (modo cluster desabilitado)
<a name="shard-find-id-con-classic"></a>

Os IDs de fragmento do grupo de replicação do Valkey ou Redis OSS (modo cluster desabilitado) são sempre `0001`.

#### Para Valkey ou Redis OSS (modo cluster habilitado)
<a name="shard-find-id-con-cluster"></a>

O procedimento a seguir usa o Console de gerenciamento da AWS para localizar o ID de um fragmento do Valkey ou Redis OSS (modo cluster habilitado).

**Para localizar o ID do fragmento em um grupo de replicação do Valkey ou Redis OSS (modo cluster habilitado)**

1. Faça login no Console de gerenciamento da AWS e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel de navegação, escolha **Valkey** ou **Redis OSS** e o nome do grupo de replicação do Valkey ou Redis OSS (modo cluster habilitado) para o qual deseja encontrar os IDs do fragmento.

1. Na coluna **Shard Name** (Nome do fragmento), o ID do fragmento tem os últimos quatro dígitos do nome do fragmento.

### Como usar o AWS CLI
<a name="shard-find-id-cli"></a>

Para encontrar os IDs de fragmento (grupo de nós) para grupos de replicação do Valkey ou Redis OSS (modo cluster desabilitado) ou do Valkey ou Redis OSS (modo cluster habilitado), use a operação da AWS CLI `describe-replication-groups` com o parâmetro opcional a seguir.
+ **`--replication-group-id`**—um parâmetro opcional que, quando usado, limita a saída aos detalhes do grupo de replicação especificado. Caso esse parâmetro seja omitido, os detalhes de até 100 grupos de replicação são retornados.

**Example**  
Esse comando retorna os detalhes do `sample-repl-group`.  
Para Linux, macOS ou Unix:  

```
aws elasticache describe-replication-groups \
    --replication-group-id sample-repl-group
```
Para Windows:  

```
aws elasticache describe-replication-groups ^
    --replication-group-id sample-repl-group
```
A saída desse comando é semelhante a esta. Os IDs do estilhaço (grupo de nós) estão *realçados* aqui para facilitar a localização deles.  

```
{
    "ReplicationGroups": [
        {
            "Status": "available", 
            "Description": "2 shards, 2 nodes (1 + 1 replica)", 
            "NodeGroups": [
                {
                    "Status": "available", 
                    "Slots": "0-8191", 
                    "NodeGroupId": "0001", 
                    "NodeGroupMembers": [
                        {
                            "PreferredAvailabilityZone": "us-west-2c", 
                            "CacheNodeId": "0001", 
                            "CacheClusterId": "sample-repl-group-0001-001"
                        }, 
                        {
                            "PreferredAvailabilityZone": "us-west-2a", 
                            "CacheNodeId": "0001", 
                            "CacheClusterId": "sample-repl-group-0001-002"
                        }
                    ]
                }, 
                {
                    "Status": "available", 
                    "Slots": "8192-16383", 
                    "NodeGroupId": "0002", 
                    "NodeGroupMembers": [
                        {
                            "PreferredAvailabilityZone": "us-west-2b", 
                            "CacheNodeId": "0001", 
                            "CacheClusterId": "sample-repl-group-0002-001"
                        }, 
                        {
                            "PreferredAvailabilityZone": "us-west-2a", 
                            "CacheNodeId": "0001", 
                            "CacheClusterId": "sample-repl-group-0002-002"
                        }
                    ]
                }
            ], 
            "ConfigurationEndpoint": {
                "Port": 6379, 
                "Address": "sample-repl-group.9dcv5r.clustercfg.usw2.cache.amazonaws.com"
            }, 
            "ClusterEnabled": true, 
            "ReplicationGroupId": "sample-repl-group", 
            "SnapshotRetentionLimit": 1, 
            "AutomaticFailover": "enabled", 
            "SnapshotWindow": "13:00-14:00", 
            "MemberClusters": [
                "sample-repl-group-0001-001", 
                "sample-repl-group-0001-002", 
                "sample-repl-group-0002-001", 
                "sample-repl-group-0002-002"
            ], 
            "CacheNodeType": "cache.m3.medium", 
            "DataTiering": "disabled",
            "PendingModifiedValues": {}
        }
    ]
}
```

### Uso da API do ElastiCache
<a name="shard-find-id-api"></a>

Para encontrar os IDs de fragmento (grupo de nós) para grupos de replicação do Valkey ou Redis OSS (modo cluster desabilitado) ou do Valkey ou Redis OSS (modo cluster habilitado), use a operação da AWS CLI `describe-replication-groups` com o parâmetro opcional a seguir.
+ **`ReplicationGroupId`**—um parâmetro opcional que, quando usado, limita a saída aos detalhes do grupo de replicação especificado. Caso esse parâmetro seja omitido, os detalhes de até *xxx* grupos de replicação são retornados.

**Example**  
Esse comando retorna os detalhes do `sample-repl-group`.  
Para Linux, macOS ou Unix:  

```
https://elasticache.us-west-2.amazonaws.com/
   ?Action=DescribeReplicationGroup
   &ReplicationGroupId=sample-repl-group
   &Version=2015-02-02
   &SignatureVersion=4
   &SignatureMethod=HmacSHA256
   &Timestamp=20150202T192317Z
   &X-Amz-Credential=<credential>
```

# Comparação de clusters Valkey, Memcached e Redis OSS baseados em nós
<a name="SelectEngine"></a>

A Amazon ElastiCache oferece suporte aos mecanismos de cache Valkey, Memcached e Redis OSS. Cada mecanismo oferece algumas vantagens. Use as informações contidas neste tópico para ajudá-lo a escolher o mecanismo e a versão que melhor atendam aos seus requisitos.

**Importante**  
Depois de criar um cluster de cache baseado em nós ou grupo de replicação, você pode atualizar para uma versão de mecanismo mais recente, mas não pode fazer downgrade para uma versão de mecanismo mais antiga. Se quiser usar uma versão de mecanismo mais antiga, deverá excluir o cluster de cache baseado em nós ou grupo de replicação existente e criá-lo novamente com a versão anterior do mecanismo.

Na superfície, os mecanismos parecem semelhantes. Cada um deles é um armazenamento de chaves/valores na memória. No entanto, na prática, existem diferenças significativas. 

**Escolha o Memcached se o seguinte se aplicar a você:**
+ Você precisa do modelo mais simples possível.
+ Você precisa executar nós grandes com vários cores ou threads.
+ Você precisa da capacidade de expandir e reduzir, adicionar e remover nós à medida que a demanda no seu sistema aumenta e diminui.
+ Você precisa armazenar objetos em cache.

**Escolha Valkey ou Redis OSS com ElastiCache se o seguinte se aplicar a você:**
+ **ElastiCache versão 7.2 para Valkey ou versão 7.0 (aprimorada) para Redis OSS**

  Você quer usar [Funções](https://valkey.io/topics/functions-intro/), [Pub/Sub fragmentado](https://valkey.io/topics/pubsub/) ou [Melhorias de ACL](https://valkey.io/topics/acl/). Para obter mais informações, consulte [Redis OSS versão 7.0 (aprimorada)](engine-versions.md#redis-version-7.0). 
+ **ElastiCache versão 6.2 (aprimorada) para Redis OSS**

  Você deseja ter a capacidade de classificar dados em níveis entre memória e SSD usando o tipo de nó r6gd. Para mais informações, consulte [Classificação de dados em níveis](data-tiering.md).
+ **ElastiCache versão 6.0 (aprimorada) para Redis OSS**

  Você deseja autenticar usuários com o controle de acesso baseado em função.

  Para obter mais informações, consulte [Redis OSS versão 6.0 (aprimorada)](engine-versions.md#redis-version-6.0).
+ **ElastiCache versão 5.0.0 (aprimorada) para Redis OSS**

  Você quer usar [Fluxos Redis OSS](https://redis.io/topics/streams-intro), uma estrutura de dados de log que permite aos produtores anexarem novos itens em tempo real e também permite que os consumidores consumam mensagens de forma bloqueante ou não bloqueante.

  Para obter mais informações, consulte [Redis OSS versão 5.0.0 (aprimorada)](engine-versions.md#redis-version-5-0).
+ **ElastiCache versão 4.0.10 (aprimorada) para Redis OSS**

  Oferece suporte à criptografia e à adição ou remoção de fragmentos do cluster do Valkey ou do Redis OSS (modo cluster habilitado) de modo dinâmico.

  Para obter mais informações, consulte [Redis OSS versão 4.0.10 (aprimorada)](engine-versions.md#redis-version-4-0-10).

As versões a seguir estão obsoletas ou chegaram ou estão prestes a chegar ao fim da vida útil.
+ **ElastiCache versão 3.2.10 (aprimorada) para Redis OSS**

  Oferece suporte à adição ou remoção de fragmentos do cluster do Valkey ou do Redis OSS (modo cluster habilitado) de modo dinâmico.
**Importante**  
Atualmente, o ElastiCache 3.2.10 para Redis OSS não oferece suporte à criptografia.

  Para saber mais, consulte:
  + [Redis OSS versão 3.2.10 (aprimorado)](engine-versions.md#redis-version-3-2-10)
  + Refragmentação online de melhores práticas para o Redis OSS. Para obter mais informações, consulte o seguinte:
    + [Práticas recomendadas: reestilhaçamento online](best-practices-online-resharding.md)
    + [Refragmentação e rebalanceamento de fragmentos online para o Valkey ou o Redis OSS (modo cluster habilitado)](scaling-redis-cluster-mode-enabled.md#redis-cluster-resharding-online)
  + Para obter mais informações sobre como escalonar clusters Redis OSS, consulte [Escalabilidade](Scaling.md).

    
+ **ElastiCache versão 3.2.6 (aprimorada) para Redis OSS**

  Se você precisar da funcionalidade de versões anteriores do Redis OSS, bem como dos atributos a seguir, escolha o 3.2.6:
  + Criptografia em trânsito. Para obter mais informações, consulte [Amazon ElastiCache for Redis OSS In-Transit](in-transit-encryption.md) Encryption.
  + Criptografia em repouso. Para obter mais informações, consulte [Amazon ElastiCache for Redis OSS At-Rest](at-rest-encryption.md) Encryption.
+ **ElastiCache (Modo de cluster ativado) versão 3.2.4 para Redis OSS**

  Se precisar da funcionalidade do 2.8.x, bem como dos atributos a seguir, escolha o 3.2.4 (modo de cluster):
  + Você precisa dividir seus dados entre dois a 500 grupos de nós (somente no modo de cluster).
  + Você precisa de indexação geoespacial (modo de cluster ou modo sem cluster).
  + Você não precisa comportar vários bancos de dados.
+ **ElastiCache (modo sem cluster) 2.8.x e 3.2.4 (aprimorado) para Redis OSS**

  Se o seguinte se aplicar a você, escolha o 2.8.x ou 3.2.4 (modo sem cluster):
  + Você precisa de tipos de dados complexos, como strings, hashes, listas, conjuntos, conjuntos classificados e bitmaps.
  + Você precisa classificar ou organizar conjuntos de dados na memória.
  + Você precisa de persistência do seu armazenamento de chaves.
  + Você precisa replicar seus dados do primário para uma ou mais réplicas de leitura para aplicativos de leitura intensa.
  + Você precisa de failover automático se o primário falhar.
  + Você precisa publicar e assinar (pub/sub) recursos, para informar os clientes sobre eventos no servidor.
  + Você precisa de recursos de backup e restauração para clusters baseado em nós, bem como para caches com tecnologia sem servidor.
  + Você precisa oferecer suporte para vários bancos de dados.


**Resumo da comparação do Memcached, Valkey ou Redis OSS (modo cluster desabilitado) e Valkey ou Redis OSS (modo cluster habilitado)**  

|  |  Memcached  |  Valkey ou Redis OSS (modo cluster desabilitado)  |  Valkey ou Redis OSS (modo cluster habilitado)  | 
| --- |--- |--- |--- |
| Versões do motor\$1 | 1.4.5 e versões posteriores | 4.0.10 e posterior | 4.0.10 e posterior | 
| Tipos de dados | Simples  | 2.8.x – Complexo\$1 | 3.2.x e posterior - Complexo  | 
| Complexo  | 
| Particionamento de dados | Sim | Não | Sim | 
| O cluster é modificável | Sim | Sim | 3.2.10 e posterior - Limitado | 
| Reestilhaçamento online | Não | Não | 3.2.10 e posterior | 
| Criptografia | em trânsito 1.6.12 e versões posteriores | 4.0.10 e posterior | 4.0.10 e posterior | 
| Hierarquização de dados | Não | 6.2 e posteriores | 6.2 e posteriores | 
| Certificações de conformidade | 
| --- |
| Certificação de compatibilidade     FedRAMP     HIPAA     PCI DSS |   Sim, 1.6.12 e posterior Sim, 1.6.12 e posterior Sim |   4.0.10 e posterior 4.0.10 e posterior 4.0.10 e posterior |   4.0.10 e posterior 4.0.10 e posterior 4.0.10 e posterior | 
| Multi-threaded | Sim | Não | Não | 
| Atualização do tipo de nó | Não | Sim | Sim | 
| Atualização do mecanismo | Sim | Sim | Sim | 
| Alta disponibilidade (replicação) | Não | Sim | Sim | 
| Failover automático | Não | Opcional | Obrigatório | 
| Recursos de publicação/assinatura (pub/sub) | Não | Sim | Sim | 
| Conjuntos classificados | Não | Sim | Sim | 
| Backup e restauração | Somente para caches sem servidor, não aplicável a clusters baseados em nós | Sim | Sim | 
| Indexação geoespacial | Não | 4.0.10 e posterior | Sim | 
| Observações: | 
|  string, objetos (como bancos de dados) | 
| \$1 strings, conjuntos, conjuntos classificados, listas, hashes, bitmaps, hiperloglog | 
| strings, conjuntos, conjuntos classificados, listas, hashes, bitmaps, hyperloglog, índices geoespaciais | 
| \$1 Exclui versões que estão obsoletas, que atingiram ou estão prestes a atingir o fim da vida útil. | 

Depois de escolher o mecanismo do seu cluster, recomendamos que você use a versão mais recente desse mecanismo. Para obter mais informações, consulte [Tipos de nó compatíveis](CacheNodes.SupportedTypes.md).

# Migração on-line para o Valkey ou Redis OSS
<a name="OnlineMigration"></a>

 Ao usar a migração on-line, você pode migrar seus dados do Valkey ou Redis OSS do seu código-fonte aberto e hospedagem própria no Amazon EC2 para o Amazon ElastiCache.

Isso se refere à migração de uma instância auto-hospedada para o serviço do ElastiCache. Para obter informações sobre a atualização do Redis OSS para o Valkey no ElastiCache, consulte [Atualização das versões do mecanismo, incluindo atualizações de mecanismos cruzadosAtualização de versões de mecanismos](VersionManagement.HowTo.md).

**nota**  
A migração on-line não é compatível com caches ou clusters sem servidor do ElastiCache em execução no tipo de nó r6gd.

## Visão geral
<a name="Migration-Overview"></a>

Migrar seus dados do Valkey ou Redis OSS de código-fonte aberto em execução no Amazon EC2 para o Amazon ElastiCache exige uma implantação do Amazon ElastiCache existente ou recém-criada. A implantação deve ter uma configuração pronta para migração. Ela também deve estar alinhada à configuração desejada, incluindo atributos, como tipo de instância, número de fragmentos e número de réplicas. 

A migração on-line foi projetada para migrar dados do Valkey ou Redis OSS de código-fonte aberto e hospedagem própria no Amazon EC2 para o ElastiCache, e não para mover dados entre clusters do ElastiCache.

**Importante**  
É altamente recomendável ler integralmente as seções a seguir antes de iniciar o processo de migração online.

A migração começa quando você chama o comando da `StartMigration` ou a operação de API AWS CLI. Ao migrar clusters do Valkey ou Redis OSS de modo cluster desabilitado, o processo de migração torna o nó primário do cluster do ElastiCache Valkey ou Redis OSS uma réplica do Valkey ou Redis OSS primário de origem. Ao migrar clusters do Valkey ou Redis OSS de modo cluster habilitado, o processo de migração torna o nó primário de cada fragmento do ElastiCache uma réplica do fragmento correspondente do cluster de origem que tem os mesmos slots.

Depois que as alterações no lado do cliente estiverem prontas, chame a operação da API `CompleteMigration`. Essa operação de API promove a implantação do ElastiCache para sua implantação primária do Valkey ou Redis OSS com os nós principal e de réplica (conforme aplicável). Agora é possível redirecionar sua aplicação cliente para começar a gravar dados no ElastiCache. Durante a migração, é possível conferir o status da replicação executando o comando [valkey-cli INFO](https://valkey.io/commands/info) nos nós do Valkey e nos nós primários do ElastiCache. 

## Etapas da migração
<a name="Migration-Steps"></a>

Os seguintes tópicos descrevem o processo de migração dos seus dados:
+ [Preparação da origem e destino para migração](Migration-Prepare.md)
+ [Testar a migração de dados](Migration-Test.md)
+ [Início da migração](Migration-Initiate.md)
+ [Verificação do andamento do processo de migração de dados](Migration-Verify.md)
+ [Conclusão da migração de dados](Migration-Complete.md)

# Preparação da origem e destino para migração
<a name="Migration-Prepare"></a>

Com essas etapas, você pode se preparar para migrar dados de uma origem de hospedagem própria do Valkey ou Redis no EC2 para o ElastiCache, ou de um cluster do Redis OSS para um cluster do ElastiCache Valkey.

Isso se refere à migração de uma instância auto-hospedada para o serviço do ElastiCache. Para obter informações sobre a atualização do Redis OSS para o Valkey no ElastiCache, consulte [Atualização das versões do mecanismo, incluindo atualizações de mecanismos cruzadosAtualização de versões de mecanismos](VersionManagement.HowTo.md).

É necessário garantir que todos os quatro pré-requisitos mencionados a seguir sejam cumpridos antes de iniciar a migração do console do ElastiCache, da API ou da CLI da AWS.

**Como preparar os nós de origem e destino do Valkey ou Redis OSS para migração**

1. Identifique a implantação do ElastiCache de destino e verifique se é possível migrar dados para ela. 

   Uma implantação do ElastiCache existente ou recém-criada deve atender aos seguintes requisitos para migração: 
   + Ele está usando o Valkey ou Redis OSS 5.0.6 ou posterior.
   + A criptografia em trânsito não está habilitada.
   + Ele tem o multi-AZ habilitado.
   + Ele tem memória suficiente disponível para comportar os dados do cluster do Valkey ou Redis OSS. Para configurar as definições de memória reservada corretas, consulte [Gerenciamento de memória reservada para Valkey e Redis OSS](redis-memory-management.md).
   + Para o modo cluster desabilitado, você pode migrar diretamente do Valkey ou Redis OSS versões 2.8.21 em diante para o Valkey ou Redis OSS versões 5.0.6 em diante se estiver usando a CLI ou o Valkey ou Redis OSS versões 5.0.6 em diante usando a CLI ou o console. Para o modo cluster habilitado, você pode migrar diretamente de qualquer versão do Valkey ou Redis OSS de modo cluster habilitado para o Redis OSS versão 5.0.6 em diante se estiver usando a CLI ou o Redis OSS versão 5.0.6 em diante usando a CLI ou o console.
   + O número de fragmentos na origem e no destino coincide.
   + Ele não faz parte de um datastore global.
   + Ele tem a hierarquização de dados desabilitada.

1. Certifique-se de que as configurações do Valkey ou Redis OSS de código aberto e a implantação do ElastiCache sejam compatíveis. 

   No mínimo, todos os itens a seguir na implantação de destino do ElastiCache devem ser compatíveis com sua configuração do Valkey ou Redis OSS para replicação: 
   + O cluster não deve ter o AUTH habilitado.
   + O config `protected-mode` deve estar definido como `no`.
   + Se você tiver a configuração `bind` no config do Valkey ou Redis OSS, ela deve ser atualizada para permitir solicitações de nós do ElastiCache.
   + O número de bancos de dados lógicos deve ser o mesmo no nó do ElastiCache e no cluster do Valkey ou Redis OSS. Esse valor é definido usando `databases` no config do Valkey ou Redis OSS.
   + Os comandos do Valkey ou Redis OSS que executam a modificação de dados não devem ser renomeados para permitir que a replicação dos dados seja bem-sucedida. Por exemplo, `sync`, `psync`, `info`, `config`, `command` e `cluster`.
   + Para replicar os dados do cluster do Valkey ou Redis OSS para o ElastiCache, verifique se há CPU e memória suficientes para lidar com essa carga adicional. Essa carga vem do arquivo RDB criado pelo cluster do Valkey ou Redis OSS e transferido pela rede para o nó do ElastiCache.
   + Todas as instâncias do Valkey ou Redis OSS no cluster de origem devem estar em execução na mesma porta.

1. Verifique se as instâncias do EC2 podem se conectar ao ElastiCache fazendo o seguinte:
   + Garanta que cada endereço IP da instância seja privado.
   + Atribua ou crie a implantação do ElastiCache na mesma nuvem privada virtual (VPC) do Valkey ou Redis OSS na instância (recomendado).
   + Se as VPCs forem diferentes, configure o emparelhamento de VPCs para permitir o acesso entre os nós. Para obter mais informações sobre o emparelhamento de VPCs, consulte [Padrões de acesso para acessar um cache do ElastiCache em um Amazon VPC](elasticache-vpc-accessing.md).
   + O grupo de segurança anexado às instâncias do Valkey ou Redis OSS deve permitir o tráfego de entrada de nós do ElastiCache.

1. Verifique se a aplicação pode direcionar o tráfego para nós do ElastiCache após a conclusão da migração de dados. Para obter mais informações, consulte [Padrões de acesso para acessar um cache do ElastiCache em um Amazon VPC](elasticache-vpc-accessing.md). 

# Testar a migração de dados
<a name="Migration-Test"></a>

Depois que todos os pré-requisitos forem atendidos, será possível iniciar a migração de dados usando o Console de gerenciamento da AWS, a API do ElastiCache ou a AWS CLI. O exemplo a seguir mostra como usar a CLI.

Teste a migração chamando o comando `test-migration` com os seguintes parâmetros:
+ `--replication-group-id`: o ID do grupo de replicação para o qual os dados devem ser migrados.
+ `--customer-node-endpoint-list`: lista de endpoints dos quais os dados devem ser migrados. A lista deve ter somente um elemento.

Veja a seguir um exemplo de como usar a CLI.

```
aws elasticache test-migration --replication-group-id test-cluster --customer-node-endpoint-list "Address='10.0.0.241',Port=6379"
```

O ElastiCache validará a configuração da migração sem nenhuma migração real de dados.

# Início da migração
<a name="Migration-Initiate"></a>

Depois que todos os pré-requisitos forem preenchidos, será possível iniciar a migração de dados usando o Console de gerenciamento da AWS, a API do ElastiCache ou a AWS CLI. No modo de cluster habilitado, se a migração de slots for diferente, uma refragmentação será realizada antes da migração ao vivo. O exemplo a seguir mostra como usar a CLI.

**nota**  
Recomendamos usar a API `TestMigration` para validar a configuração da migração. Mas isso é estritamente opcional.

Inicie a migração chamando o comando `start-migration` com os seguintes parâmetros:
+ `--replication-group-id`: identificador do grupo de replicação de destino do ElastiCache.
+ `--customer-node-endpoint-list`: uma lista de endpoints com endereços IP ou DNS e a porta em que o cluster de origem do Valkey ou Redis OSS está sendo executado. A lista só pode ter um elemento para o modo de cluster desabilitado e o modo de cluster habilitado. Se você habilitou a replicação encadeada, o endpoint pode apontar para uma réplica em vez de um nó primário no cluster do Valkey ou Redis OSS. 

Veja a seguir um exemplo de como usar a CLI.

```
aws elasticache start-migration --replication-group-id test-cluster --customer-node-endpoint-list "Address='10.0.0.241',Port=6379"
```

Ao executar esse comando, o nó primário do ElastiCache (em cada fragmento) se configura para se tornar uma réplica da instância do Valkey ou Redis OSS (no fragmento correspondente que tem os mesmos slots no redis habilitado para cluster). O status do cluster do ElastiCache é alterado para **migrando** e os dados começam a ser migrados da instância do Valkey ou Redis OSS para o nó primário do ElastiCache. Dependendo do tamanho dos dados e da carga na instância do Valkey ou Redis OSS, a migração pode levar um tempo até ser concluída. É possível conferir o andamento da migração executando o comando [valkey-cli INFO](https://valkey.io/commands/info) na instância do Valkey e no nó primário do ElastiCache.

Após a replicação bem-sucedida, todas as gravações nas instâncias do Valkey ou Redis OSS são propagadas para o cluster do ElastiCache. É possível usar os nós do ElastiCache para leituras. No entanto, não é possível gravar no cluster do ElastiCache. Se um nó primário do ElastiCache tiver outros nós de replica conectados a ele, esse nó de réplica continuará a replicar do nó primário do ElastiCache. Dessa maneira, todos os dados do cluster do Valkey ou Redis OSS serão replicados para todos os nós no cluster do ElastiCache.

Se um nó primário do ElastiCache não puder se tornar uma réplica da instância do Valkey ou Redis OSS, ele fará várias novas tentativas antes de finalmente se promover novamente a primário. O status do cluster do ElastiCache é, então, alterado para **available** (disponível) e é enviado um evento do grupo de replicação sobre a falha ao iniciar a migração. Para solucionar problemas como uma falha, verifique o seguinte:
+ Observe o evento do grupo de replicação. Use qualquer informação específica do evento para corrigir a falha na migração.
+ Se o evento não fornecer informações específicas, verifique se as diretrizes em foram seguidas [Preparação da origem e destino para migração](Migration-Prepare.md).
+ Assegure que a configuração de roteamento para a VPC e as sub-redes permitam tráfego entre os nós do ElastiCache e as instâncias do Valkey ou Redis OSS.
+ Garanta que o grupo de segurança anexado às instâncias do Valkey ou Redis OSS permita tráfego de entrada de nós do ElastiCache.
+ Verifique os logs do Valkey ou do Redis OSS para suas instâncias para obter mais informações sobre falhas específicas de replicação.

# Verificação do andamento do processo de migração de dados
<a name="Migration-Verify"></a>

Após o início da migração de dados, é possível fazer o seguinte para monitorar o andamento:
+ Verifique se o `master_link_status` do Valkey ou Redis OSS está `up` no comando `INFO` nos nós primários do ElastiCache. Também é possível encontrar essa informação no console do ElastiCache. Selecione o cluster e, em **CloudWatch metrics** (Métricas do CloudWatch), observe o **Primary Link Health Status** (Status de integridade do link principal). Depois que o valor atinge 1, os dados estão sincronizados. 
+ É possível conferir se a réplica do ElastiCache está no estado **on-line** executando o comando `INFO` nas instâncias do Valkey ou Redis OSS. Isso também fornece informações sobre o atraso da replicação.
+ Verifique o buffer baixo de saída do cliente usando o comando [CLIENT LIST](https://valkey.io/commands/client-list) nas instâncias do Valkey ou Redis OSS.

Após a conclusão da migração de dados, os dados estarão sincronizados com quaisquer novas gravações recebidas nos nós primários do cluster Valkey ou Redis OSS.

# Conclusão da migração de dados
<a name="Migration-Complete"></a>

Quando estiver pronto para transferir ao cluster do ElastiCache, use o comando `complete-migration` da CLI com os seguintes parâmetros:
+ `--replication-group-id`: o identificador do grupo de replicação.
+ `--force`: um valor que força a interrupção da migração sem garantir que os dados estejam em sincronia.

Veja um exemplo a seguir.

```
aws elasticache complete-migration --replication-group-id test-cluster
```

À medida que você executa esse comando, o nó primário do ElastiCache (em cada fragmento) interrompe a replicação da instância do Valkey ou Redis OSS e o promove a primário. Normalmente, essa promoção é concluída em alguns minutos. Para confirmar a promoção para primário, verifique o evento `Complete Migration successful for test-cluster`. Neste ponto, você pode direcionar sua aplicação para gravações e leituras do ElastiCache. O status do cluster do ElastiCache deve mudar de **migrating** (em migração) para **available** (disponível).

Se a promoção para primário falhar, o nó primário do ElastiCache continuará a replicar da instância do Valkey ou Redis OSS. O cluster do ElastiCache continuará no status **migrating** (em migração) e será enviada uma mensagem de evento do grupo de replicação sobre a falha. Para resolver essa falha, observe o seguinte:
+ Verifique o evento do grupo de replicação. Use informações específicas do evento para corrigir a falha.
+ Você pode receber uma mensagem de evento sobre os dados não estarem em sincronia. Se isso ocorrer, verifique se o primário do ElastiCache pode replicar da instância do Valkey ou Redis OSS e se os dois estão em sincronia. Se você ainda quiser interromper a migração, poderá executar o comando anterior com a opção `—force`.
+ Você pode receber uma mensagem de evento se um dos nós do ElastiCache estiver passando por uma substituição. Você poderá tentar executar novamente a etapa de migração completa depois que a substituição for concluída.

# Execução de migração de dados online usando o console
<a name="Migration-Console"></a>

É possível usar o Console de gerenciamento da AWS para migrar os dados do cluster para o cluster do Valkey ou Redis OSS. 

**Como executar a migração de dados online usando o console**

1. Faça login no console e abra o console do ElastiCache em [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/home/home).

1. Crie um novo cluster do Valkey ou Redis OSS ou escolha um cluster existente. Verifique se o cluster atende aos seguintes requisitos:
   + A versão do seu mecanismo deve ser o Valkey 7.2 ou posterior ou o Redis OSS 5.0.6 ou posterior. 
   + O cluster não deve ter o AUTH habilitado.
   + O config `protected-mode` deve estar definido como `no`.
   + Se você tiver a configuração `bind` no config do Valkey ou Redis OSS, ela deve ser atualizada para permitir solicitações de nós do ElastiCache.
   + O número de bancos de dados deve ser o mesmo entre o nó do ElastiCache e o cluster do Valkey ou Redis OSS. Esse valor é definido usando `databases` no config do mecanismo.
   + Os comandos do Valkey ou Redis OSS que executam a modificação de dados não devem ser renomeados para permitir que a replicação dos dados seja bem-sucedida.
   + Para replicar os dados do cluster do Valkey ou Redis OSS para o ElastiCache, verifique se há CPU e memória suficientes para lidar com essa carga adicional. Essa carga vem do arquivo RDB criado pelo cluster do Valkey ou Redis OSS e transferido pela rede para o nó do ElastiCache.
   + O cluster está no status **available (disponível)**.

1. Com o cluster selecionado, escolha **Migrate Data from Endpoint (Migrar dados do endpoint)** para **Actions (Ações)**. 

1. Na caixa de diálogo **Migrar dados do endpoint**, insira o endereço IP e a porta onde o cluster do Valkey ou Redis OSS está disponível.
**Importante**  
O endereço IP deve ser exato. Se você inserir o endereço de maneira incorreta, a migração falhará.

1. Selecione **Start Migration (Iniciar migração)**.

   À medida que o cluster inicia a migração, ele muda para o status **Modifying (Modificando)** e, depois, para **Migrating (Migrando)**.

1. Monitore o andamento da migração selecionando **Events (Eventos)** no painel de navegação.

A qualquer momento durante o processo de migração, é possível interromper a migração. Para fazer isso, escolha o cluster e selecione **Stop Data Migration (Interromper a migração de dados)** para **Actions (Ações)**. Então, o cluster entrará no status **Available (Disponível)**.

Se a migração for bem-sucedida, o cluster entrará no status **Available (Disponível)** e o log de eventos mostrará o seguinte:

`Migration operation succeeded for replication group ElastiCacheClusterName.`

Se a migração falhar, o cluster entrará no status **Available (Disponível)** e o log de eventos mostrará o seguinte:

`Migration operation failed for replication group ElastiCacheClusterName.`

# Seleção de regiões e zonas de disponibilidade para o ElastiCache
<a name="RegionsAndAZs"></a>

Você pode oferecer escalabilidade e confiabilidade adicionais a clusters do ElastiCache designando regiões e zonas de disponibilidade usando o endpoint correspondente.

Os recursos de computação em nuvem da AWS são abrigados em instalações de data centers de alta disponibilidade. Para fornecer escalabilidade e confiabilidade adicionais, estas instalações do datacenter estão localizadas em diferentes locais físicos. Esses locais são categorizados por *regiões* e *zonas de disponibilidade*.

AWSAs regiões da são grandes e amplamente dispersas em locais geográficos separados. As zonas de disponibilidade são diferentes localizações dentro de uma região da AWS que são projetadas para serem isoladas de falhas em outras zonas de disponibilidade. Elas fornecem conectividade de rede de baixa latência e custo reduzido para outras zonas de disponibilidade na mesma região da AWS.

**Importante**  
Cada região é totalmente independente. Qualquer atividade do ElastiCache iniciada (por exemplo, criação de clusters) é executada somente na região padrão atual.

Para criar ou trabalhar com um cluster em uma região específica, use o endpoint do serviço regional correspondente. Para os endpoints de serviço, consulte [Regiões e endpoints com suporte](#SupportedRegions).

![\[Imagem: Regiões e zonas de disponibilidade\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/images/ElastiCache-RegionsAndAZs.png)


*Regiões e zonas de disponibilidade da*

**Topics**
+ [Considerações sobre zonas de disponibilidade com o Memcached](#CacheNode.Memcached.AvailabilityZones)
+ [Localização dos seus nós](#RegionsAndAZs.AZMode)
+ [Regiões e endpoints com suporte](#SupportedRegions)
+ [Uso de zonas locais com o ElastiCache](Local_zones.md)
+ [Usando Outposts com ElastiCache](ElastiCache-Outposts.md)

## Considerações sobre zonas de disponibilidade com o Memcached
<a name="CacheNode.Memcached.AvailabilityZones"></a>

A distribuição de nós do Memcached em várias zonas de disponibilidade em uma região ajuda a protegê-los contra o impacto de uma falha catastrófica, como perda de energia em uma zona de disponibilidade.

**Armazenamento em cache sem servidor**

O armazenamento em cache sem servidor do ElastiCache cria um cache altamente disponível que abrange várias zonas de disponibilidade. Você pode especificar sub-redes de zonas de disponibilidade diferentes e da mesma VPC ao criar o cluster de tecnologia sem servidor, ou o ElastiCache vai escolher automaticamente sub-redes da VPC padrão. 

**Projeto do próprio ElastiCache para cluster do Memcached**

Um cluster do Memcached pode ter até 300 nós. Ao criar ou adicionar nós ao cluster do Memcached, você pode especificar uma única zona de disponibilidade para todos os seus nós, permitir que o ElastiCache escolha uma única zona de disponibilidade para todos os seus nós, especificar as zonas de disponibilidade para cada nó ou permitir que o ElastiCache escolha uma zona de disponibilidade para cada nó. Novos nós podem ser criados em diferentes zonas de disponibilidade à medida que você os adiciona a um cluster do Memcached existente. Depois que um nó de cache é criado, sua zona de disponibilidade não pode ser modificada. 

Se você quiser que um cluster em um único cluster da zona de disponibilidade tenha seus nós distribuídos em várias zonas de disponibilidade, o ElastiCache pode criar novos nós nas várias zonas de disponibilidade. Em seguida, você pode excluir alguns ou todos os nós de cache originais. Recomendamos essa abordagem.

**Para migrar nós do Memcached de uma única zona de disponibilidade para várias zonas de disponibilidade**

1. Modifique seu cluster criando novos nós de cache nas zonas de disponibilidade onde você deseja. Na sua solicitação, faça o seguinte:
   + Defina `AZMode` (CLI: `- -az-mode`) como `cross-az`.
   + Defina `NumCacheNodes` (CLI: `- -num-cache-nodes`) como o número de nós de cache ativos no momento mais o número de novos nós de cache que você deseja criar.
   + Defina `NewAvailabilityZones` (CLI: `- -new-availability-zones`) como uma lista das zonas nas quais você deseja que os novos nós de cache sejam criados. Para permitir que o ElastiCache determine a zona de disponibilidade para cada novo nó, não especifique uma lista.
   +  Defina `ApplyImmediately` (CLI: `- -apply-immediately`) como verdadeiro. 
**nota**  
Se você não estiver usando a descoberta automática, atualize sua aplicação cliente com os novos endpoints do nó de cache.

   Antes de passar para a próxima etapa, certifique-se de que os nós do Memcached estão totalmente criados e disponíveis.

1. Modifique seu cluster removendo os nós que você não deseja mais na zona de disponibilidade original. Na sua solicitação, faça o seguinte:
   + Defina `NumCacheNodes` (CLI: `- -num-cache-nodes`) como o número de nós de cache ativos que você deseja após esta modificação ser aplicada.
   + Defina `CacheNodeIdsToRemove` (CLI: `- -nodes-to-remove`) como uma lista dos nós de cache que você deseja remover do cluster.

     O número de IDs de nó de cache listados deve ser igual ao número de nós ativos no momento menos o valor em `NumCacheNodes`.
   + (Opcional) Defina `ApplyImmediately` (CLI: `- -apply-immediately`) como verdadeiro.

     Se você não definir `ApplyImmediately` (CLI: `- -apply-immediately`) como verdadeiro, as exclusões de nó ocorrerão na sua próxima janela de manutenção.

## Localização dos seus nós
<a name="RegionsAndAZs.AZMode"></a>

O Amazon ElastiCache oferece suporte para localizar todos os nós de um cluster em uma ou várias zonas de disponibilidade (AZs). Além disso, se você optar por localizar os nós em várias AZs (recomendado), o ElastiCache permitirá escolher a AZ para cada nó ou permitir que o ElastiCache a escolha para você.

Ao localizar os nós em diferentes AZs, você elimina a chance de que uma falha, como uma queda de energia, em uma AZ faça com que todo o seu sistema falhe. O teste demonstrou que não há diferença de latência significativa entre localizar todos os nós em uma AZ ou espalhá-los em várias AZs. 

Você pode especificar uma AZ para cada nó ao criar um cluster ou adicionar nós ao modificar um cluster existente. Ao especificar uma AZ para cada nó ao criar um cluster, a AZ deve estar disponível nesse grupo de sub-redes. Para obter mais informações, consulte:
+ [Criação de um cluster do Memcached](Clusters.Create-mc.md)
+ [Criação de um cluster do Valkey ou Redis OSS](Clusters.Create.md)
+ [Modificação de um cluster do ElastiCache](Clusters.Modify.md)
+ [Adicionar nós a um ElastiCache cluster](Clusters.AddNode.md)

## Regiões e endpoints com suporte
<a name="SupportedRegions"></a>

O Amazon ElastiCache está disponível em várias regiões da AWS. Isso significa que você pode iniciar clusters do ElastiCache nos locais que atendam aos seus requisitos. Por exemplo, você pode ativá-los na região da AWS mais próxima de seus clientes ou ativá-los em determinada região da AWS para atender a determinados requisitos legais.

Cada região é projetada para ser completamente isolada das outras. Em cada região há várias zonas de disponibilidade (AZ). Os caches de tecnologia sem servidor do ElastiCache replicam dados automaticamente em várias zonas de disponibilidade (exceto `us-west-1`, em que os dados são replicados em duas zonas de disponibilidade) para alta disponibilidade. Ao projetar o próprio cluster do ElastiCache, você pode optar por iniciar os nós em AZs diferentes para obter tolerância a falhas. Para obter mais informações sobre regiões e zonas de disponibilidade, consulte [Seleção de regiões e zonas de disponibilidade para o ElastiCache](#RegionsAndAZs) no início deste tópico.


**Regiões em que o ElastiCache tem suporte**  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/AmazonElastiCache/latest/dg/RegionsAndAZs.html)

Algumas regiões oferecem suporte a um subconjunto de tipos de nós. Para obter uma tabela dos tipos de nós compatíveis por região da AWS, consulte [Tipos de nós compatíveis por região da AWS](CacheNodes.SupportedTypes.md#CacheNodes.SupportedTypesByRegion).

A maioria das regiões é compatível com o estabelecimento de uma conexão privada entre a VPC e os endpoints da API do ElastiCache criando um endpoint da VPC da interface por meio do AWS PrivateLink. Para obter mais informações, consulte [ElastiCache API e interface VPC endpoints ()AWS PrivateLink](elasticache-privatelink.md).

Para obter uma tabela de produtos e serviços da AWS por região, consulte [Produtos e serviços por região](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/).

# Uso de zonas locais com o ElastiCache
<a name="Local_zones"></a>

Uma *zona local* é uma extensão de uma região AWS que está geograficamente próxima de seus usuários. É possível estender qualquer nuvem privada virtual (VPC) de uma região principal da AWS para as zonas locais criando uma nova sub-rede e atribuindo-a a uma Local Zone. Quando você criar uma sub-rede em uma zona local, sua VPC também será estendida para essa zona local. A sub-rede na zona local funciona da mesma forma que outras sub-redes na VPC.

Local Zones (Zonas locais) permitem que você coloque recursos como um cluster do ElastiCache em vários locais próximos aos seus usuários. 

Quando criar um cluster do ElastiCache, você poderá escolher uma sub-rede em uma zona local. As zonas locais têm suas próprias conexões com a Internet e suporte no Direct Connect. Assim, os recursos criados em uma zona local podem atender usuários locais com comunicações de latência muito baixa. Para obter mais informações, consulte [Zonas locais da AWS](https://aws.amazon.com/about-aws/global-infrastructure/localzones/). 

Uma zona local é representada por um código de região da AWS seguido por um identificador que indica o local, por exemplo, `us-west-2-lax-1a`.

Neste momento, zonas locais disponíveis são `us-west-2-lax-1a` e `us-west-2-lax-1b`.

As seguintes limitações se aplicam ao ElastiCache para zonas locais:
+ Não há suporte para os armazenamentos de dados globais.
+ Não há suporte para migração online.
+ Há suporte de zonas locais para os tipos de nó a seguir no momento: 
  + Geração atual: 

    **Tipos de nó M:** `cache.m5.large`, `cache.m5.xlarge`, `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`, `cache.m5.24xlarge` 

    **Tipos de nó R:** `cache.r5.large`, `cache.r5.xlarge`, `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`, `cache.r5.24xlarge`

    **Tipos de nó T:** `cache.t3.micro`, `cache.t3.small`, `cache.t3.medium`

## Ativação de uma zona local
<a name="Local_zones-using"></a>

1. Habilite a zona local no console do Amazon EC2.

   Para obter mais informações, consulte [Habilitação de zonas locais](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#enable-zone-group) no *Guia do usuário do Amazon EC2*.

1. Crie uma sub-rede na zona local.

   Para obter mais informações, consulte [Criar uma sub-rede na VPC](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#AddaSubnet) no *Guia do usuário da Amazon VPC*.

1. Criar um grupo de sub-redes do ElastiCache na zona local.

   Ao criar um grupo de sub-redes do ElastiCache, escolha o grupo de zonas de disponibilidade para a zona local.

   Para obter mais informações, consulte [Criação de um grupo de sub-redes](SubnetGroups.Creating.md).

1. Criar um cluster do ElastiCache for Memcached que use a sub-rede do ElastiCache na zona local.

    Para obter mais informações, consulte [Criação de um cluster do Memcached (console)](Clusters.Create-mc.md#Clusters.Create.CON.Memcached).

1. Criar um cluster do ElastiCache for Redis OSS que use a sub-rede do ElastiCache na zona local. Para obter mais informações, consulte um dos tópicos a seguir:
   +  [Criação de um cluster do Valkey (modo cluster desabilitado) (console)](SubnetGroups.designing-cluster-pre.valkey.md#Clusters.Create.CON.valkey-gs)
   +  [Criação de um cluster do Valkey ou Redis OSS (modo cluster habilitado) (console)](Clusters.Create.md#Clusters.Create.CON.RedisCluster)

# Usando Outposts com ElastiCache
<a name="ElastiCache-Outposts"></a>

Você pode usar AWS Outposts com. ElastiCache Outposts é um serviço totalmente gerenciado que estende a AWS infraestrutura APIs, os serviços e as ferramentas até as instalações do cliente. Ao fornecer acesso local à infraestrutura AWS gerenciada, o AWS Outposts permite que os clientes criem e executem aplicativos no local usando as mesmas interfaces de programação das AWS regiões, enquanto usam recursos locais de computação e armazenamento para reduzir a latência e as necessidades locais de processamento de dados. Um posto avançado é um pool de capacidade de AWS computação e armazenamento implantado no local do cliente.AWS opera, monitora e gerencia essa capacidade como parte de uma AWS região. Você pode criar sub-redes em seu Outpost e especificá-las ao criar AWS recursos, como clusters. ElastiCache 

**nota**  
Nesta versão, as seguintes limitações se aplicam:   
ElastiCache for Outposts oferece suporte apenas às famílias de nós M5 e R5.
Multi-AZ (não há suporte para replicação cruzada do Outpost).
Não há suporte para migração ao vivo.
Não há suporte para snapshots locais.
Os logs do mecanismo e os logs lentos não podem ser habilitados.
ElastiCache on Outposts não suporta CoIP.
ElastiCache for Outposts não é suportado nas seguintes regiões: cn-north-1, cn-northwest-1 e ap-northeast-3.

## Usando Outposts com o console ElastiCache
<a name="Outposts.Details"></a>

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console em [ https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. No painel de navegação, selecione **Caches do Valkey**, **Caches do Redis OSS** ou **Caches do Memcached**. 

1.  Se você escolher **Caches do Valkey**, selecione **Criar cache do Valkey**. Se você escolher **Caches do Redis OSS**, selecione **Criar cache do Redis OSS**. Se você escolher **Caches do Memcached**, selecione **Criar cache do Memcached**. 

1. Em **Configurações de cluster**, selecione **Projetar seu próprio cache** e **Cache de cluster**. Deixe o **Modo Cluster** definido como **Desabilitado**. Em seguida, crie um nome e uma descrição opcional para o cache.

1. Para localização, escolha **On-premises**.

1. Na seção On-premises, você verá o campo **ID do Outpost**. Insira o ID de onde o cluster será executado.

   Todas as configurações adicionais em **Configurações de cluster** podem permanecer como padrão.

1. Em **Conectividade**, selecione **Criar um novo grupo de sub-redes** e insira o **ID da VPC**. Deixe o resto como padrão e escolha **Próximo**.

### Configurar opções on-premises
<a name="Outposts.Creating.Console.RedisMultiAZ.Details"></a>

 Você pode selecionar um Outpost disponível para adicionar seu cluster ou, se não houver Outposts disponíveis, criar um novo usando as seguintes etapas:

**Em **On-Premises options** (Opções on-premises):**

1. Em **Configurações do Valkey**, **Configurações do Redis OSS** ou **Configurações do Memcached**, dependendo do seu mecanismo preferido:

   1. **Nome**: insira um nome para o cluster

   1. **Descrição**: insira uma descrição para o cluster.

   1. **Compatibilidade da versão do motor: a** versão do motor é baseada na região Outpost AWS

   1. **Porta**: para Valkey ou Redis OSS, aceite a porta padrão 6379. Para Memcached, aceite a porta padrão 11211. Se preferir usar uma porta diferente, digite o número da porta. 

   1. **Parameter group** (Grupo de parâmetros): use a lista suspensa para selecionar um grupo de parâmetros padrão ou personalizado. 

   1. **Node Type** (Tipo de nó): as instâncias disponíveis são baseadas na disponibilidade dos Outposts. Se estiver usando o Valkey ou o Redis OSS, o Assistente de Portabilidade para .NET para Outposts aceita apenas famílias de nós M5 e R5. Na lista suspensa, selecione **Outposts** e selecione um tipo de nó disponível que você deseje usar para esse cluster. Em seguida, selecione **Save** (Salvar). 

   1. **Number of Replicas** (Número de réplicas): insira o número de réplicas de leitura desejadas para este grupo de replicação. Você deve ter pelo menos uma e não mais de cinco réplicas de leitura. O valor padrão é 2.

      Os nomes gerados automaticamente das réplicas de leitura seguem o mesmo padrão que o nome do cluster primário, com um traço e um número sequencial de três dígitos adicionados ao final, começando com `-002`. Por exemplo, se o grupo de replicação for denominado `MyGroup`, então os nomes dos secundários seriam `MyGroup-002`, `MyGroup-003`, `MyGroup-004`, `MyGroup-005`, `MyGroup-006`.

1. Em **Connectivity** (Conectividade):

   1. **Subnet Group** (Grupo de sub-redes): na lista, selecione **Create new** (Criar novo).
      + **Name** (Nome): insira um nome para o grupo de sub-redes.
      + **Description** (Descrição): insira uma descrição para o grupo de sub-redes.
      + **VPC ID** (ID da VPC): o ID da VPC deve corresponder à VPC do Outpost. Se você selecionar uma VPC que não tenha sub-rede nos Outposts, IDs a lista retornará vazia.
      + **Availability Zone or Outpost** (Zona de disponibilidade ou Outpost): selecione o Outpost que você está usando.
      + **Subnet ID** (ID da sub-rede): selecione um ID de sub-rede disponível para o Outpost. Se não houver nenhuma sub-rede IDs disponível, você precisará criá-la. Para obter mais informações, consulte [Criar uma sub-rede](https://docs.aws.amazon.com/outposts/latest/userguide/launch-instance.html#create-subnet).

   1. Escolha **Criar**.

### Visualização de detalhes do cluster do Outpost
<a name="Outposts.Creating.Console.Outpost-Details-Redis"></a>

Na página da lista, selecione um cluster que pertença a um AWS Posto Avançado e observe o seguinte ao visualizar os **detalhes do Cluster**:
+ **Zona de disponibilidade**: representará o Posto Avançado, usando um ARN (Amazon Resource Name) e AWS o número do recurso.
+ Nome **do Posto Avançado**: O nome do Posto AWS Avançado. 

## Usando Outposts com a CLI AWS
<a name="Outposts.Using.CLI"></a>

Você pode usar o AWS Command Line Interface(AWS CLI) para controlar vários AWS serviços na linha de comando e automatizá-los por meio de scripts. Você pode usar a AWS CLI para operações ad hoc (únicas). 

### Baixando e configurando o AWS CLI
<a name="Redis-Global-Clusters-Downloading-CLI"></a>

AWS CLIÉ executado em Windows, macOS ou Linux. Use o procedimento a seguir para fazer download e configurá-la.

**Como fazer download, instalar e configurar a CLI**

1. Faça o download da AWS CLI na página da Web da [interface de linha de AWS comando](https://aws.amazon.com/cli).

1. *Siga as instruções para [instalar a AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) e [configurar a AWS CLI no Guia do](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html) usuário.AWS Command Line Interface*

### Usando a AWS CLI com Outposts
<a name="Outposts-Using-CLI"></a>

Use a seguinte operação da CLI para criar um cluster que use Outposts: 
+  [create-cache-cluster](https://docs.aws.amazon.com/AmazonElastiCache/latest/CommandLineReference/CLIReference-cmd-CreateCacheCluster.html)— Usando essa operação, o `outpost-mode` parâmetro aceita um valor que especifica se os nós no cluster são criados em um único Outpost ou em vários Outposts. 
**nota**  
No momento, somente há suporte para o modo `single-outpost`.

  ```
  aws elasticache create-cache-cluster \
     --cache-cluster-id cluster id \
     --outpost-mode single-outpost \
  ```