Por que não consigo reduzir verticalmente a escala do meu cluster do ElastiCache?

Data da última atualização: 28/06/2022

Por que não consigo reduzir verticalmente a escala do meu cluster do Amazon ElastiCache?

Resolução

Se você não conseguir reduzir a escala do seu cluster verticalmente, verifique o seguinte:

Tamanho dos dados do cache

O novo tipo de nó pode não ter memória suficiente para armazenar dados em cache. Cada nó do ElastiCache tem uma quantidade dedicada de memória reservada para o mecanismo Redis. Por exemplo, o tipo de nó cache.m5.xlarge tem 12,93 GiB de armazenamento. Por padrão, o ElastiCache reserva 25% da memória total para tarefas administrativas, como fullsync e criação de snapshots. Você pode alterar esse valor usando o parâmetro reserved-memory-percent.

Para obter uma lista de tipos de nós e quantidades de armazenamento, consulte Preços do Amazon ElastiCache.

Usando o nó cache.m5.xlarge como exemplo, o mecanismo Redis pode usar 9,69 GiB (maxmemory) para manter o keyspace. A memória restante é mantida como memória de reserva. Seu tipo de nó atual usa toda a memória disponível para os dados. O novo tipo de nó fornece menos de 9,69 GiB de memória. Portanto, a redução vertical da escala falha.

Use o comando info memory para verificar o uso de memória mostrado nos parâmetros used_memory e maxmemory para o nó. Observe que o comando info memory mostra a memória em “GB”. A página preços do Amazon ElastiCache mostra a memória em “GiB”.

test.xm4oz6.ng.0001.use1.cache.amazonaws.com:6379> info memory
# Memory
used_memory:5579416
used_memory_human:5.32M
used_memory_rss:11218944
used_memory_rss_human:10.70M
used_memory_peak:5856480
used_memory_peak_human:5.59M
maxmemory:10418941287
maxmemory_human:9.70G

Se não houver memória disponível suficiente no nó, reduza os dados do cache. Ou escolha um tipo de nó que tenha mais capacidade.

Tipos de nó disponíveis

Determine quais tipos de nó você pode selecionar com base no seu tipo de nó atual ao aumentar e diminuir a escala verticalmente. Você pode usar a chamada de API ListAllowedNodeTypeModifications para fazer isso. Essa chamada de API lista todos os tipos de nós disponíveis para os quais você pode escalar seu tipo de nó atual do cluster Redis ou do grupo de replicação.

Para visualizar os tipos de nó disponíveis para o cluster do Redis, execute a chamada de API ListAllowedNodeTypeModifications na AWS Command Line Interface (AWS CLI). A lista resultante exibe os tipos de nós para os quais você pode escalar.

Observação: se você receber erros ao executar comandos da AWS CLI, certifique-se de estar utilizando a versão mais recente da AWS CLI.

$aws elasticache list-allowed-node-type-modifications --replication-group-id checkout-cache-test

{
  "ScaleUpModifications": [
    "cache.r4.16xlarge",
    "cache.r5.12xlarge",
    "cache.r5.24xlarge",
    "cache.r5.4xlarge"
  ],
  "ScaleDownModifications": [
    "cache.m3.2xlarge",
    "cache.m3.large",
    "cache.m3.medium",
    "cache.m3.xlarge",
    "cache.m4.2xlarge",
    "cache.m4.4xlarge",
    "cache.m4.large",
    "cache.m4.xlarge",
    "cache.r3.2xlarge",
    "cache.r3.large",
    "cache.r3.xlarge",
    "cache.r4.2xlarge",
    "cache.r4.large",
    "cache.r4.xlarge",
    "cache.t2.medium",
    "cache.t2.micro",
    "cache.t2.small",
    "cache.t3.medium",
    "cache.t3.micro",
    "cache.t3.small"
  ]
}

Observação: o tempo necessário para escalar para um tipo de nó menor depende do tipo de nó e da quantidade de dados no cluster de cache atual.


Este artigo ajudou?


Precisa de ajuda com faturamento ou suporte técnico?