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á.
Reduzindo os clusters Redis OSS com réplicas
As seções a seguir explicam como escalar um cluster de cache Redis OSS (modo de cluster desativado) com nós de réplica até um tipo de nó menor. Garantir que o novo tipo de nó menor seja suficientemente grande para acomodar todos os dados e a sobrecarga é muito importante para o sucesso. Para ter mais informações, consulte Garantindo que você tenha memória suficiente para criar um instantâneo do Redis OSS.
nota
Para clusters que executam o tipo de nó r6gd, você só pode escalar para tamanhos de nó dentro da família de nós r6gd.
Importante
Se seu grupo de parâmetros costuma reservar memória para reserved-memory
a sobrecarga do Redis OSS, antes de começar a escalar, certifique-se de ter um grupo de parâmetros personalizado que reserve a quantidade correta de memória para seu novo tipo de nó. Como alternativa, você pode modificar um parameter group personalizado para que ele use reserved-memory-percent
e usar esse parameter group para seu novo cluster.
Se você estiver usando reserved-memory-percent
, não será necessário fazer isso.
Para ter mais informações, consulte Gerenciamento da memória reservada.
Tópicos
O processo a seguir dimensiona seu cluster Redis OSS com nós de réplica para um tipo de nó menor usando o console. ElastiCache
Para reduzir um cluster Redis OSS com nós de réplica (console)
-
Certifique-se de que o tipo de nó menor seja adequado para suas necessidades de dados e sobrecarga.
-
Se seu grupo de parâmetros costuma
reserved-memory
reservar memória para sobrecarga do Redis OSS, certifique-se de ter um grupo de parâmetros personalizado para reservar a quantidade correta de memória para seu novo tipo de nó.Alternativamente, você pode modificar seu parameter group personalizado para usar
reserved-memory-percent
. Para ter mais informações, consulte Gerenciamento da memória reservada. -
Faça login no AWS Management Console e abra o ElastiCache console em https://console.aws.amazon.com/elasticache/
. -
Na lista de clusters, escolha o cluster que você deseja reduzir. Esse cluster deve estar executando o mecanismo Redis OSS e não o mecanismo Clustered Redis OSS.
-
Escolha Modificar.
-
No assistente Modify Cluster:
-
Na lista Node type (Tipo de nó), escolha o tipo de nó para o qual deseja reduzir.
-
Se você estiver usando
reserved-memory
para gerenciar sua memória, na lista Parameter Group, escolha o parameter group personalizado que reserva a quantidade correta de memória para o seu novo tipo de nó.
-
-
Se desejar executar o processo de redução imediatamente, escolha a caixa de seleção Apply immediately (Aplicar imediatamente). Se a caixa de seleção Apply immediately (Aplicar imediatamente) não for escolhida, o processo de redução será realizado durante a próxima janela de manutenção desse cluster.
-
Escolha Modificar.
-
Quando o status do cluster muda de modifying para available, significa que o seu cluster foi dimensionado para o novo tipo de nó. Não é necessário atualizar os endpoints no seu aplicativo.
O processo a seguir dimensiona grupo de replicação do tipo de nó atual para um novo tipo de nó menor usando a AWS CLI. Durante esse processo, o ElastiCache (Redis OSS) atualiza as entradas de DNS para que elas apontem para os novos nós. Por isso, você não precisa atualizar os endpoints no seu aplicativo. Para o Redis OSS 5.0.5 e versões posteriores, você pode escalar clusters habilitados para failover automático enquanto o cluster continua on-line e atende às solicitações recebidas. Nas versões 4.0.10 e anteriores, você perceberá uma breve interrupção de leituras e gravações em versões anteriores do nó primário enquanto a entrada de DNS é atualizada.
No entanto, as leituras dos clusters de cache de réplica de leitura continuam ininterruptas.
O tempo necessário para reduzir até um tipo de nó menor varia, dependendo do tipo de nó e da quantidade de dados no seu cluster de cache atual.
Para reduzir um grupo de replicação do Redis OSS ()AWS CLI
-
Determine para quais tipos de nós você pode reduzir executando o AWS CLI
list-allowed-node-type-modifications
comando com o parâmetro a seguir.--replication-group-id
- o nome do grupo de replicação. Use esse parâmetro para descrever um grupo de replicação específico em vez de todos os grupos de replicação.
Para Linux, macOS ou Unix:
aws elasticache list-allowed-node-type-modifications \ --replication-group-id
my-repl-group
Para Windows:
aws elasticache list-allowed-node-type-modifications ^ --replication-group-id
my-repl-group
O resultado dessa operação é semelhante a este (formato JSON).
{ "ScaleDownModifications": [ "cache.m3.2xlarge", "cache.m3.large", "cache.m3.xlarge", "cache.m4.10xlarge", "cache.m4.2xlarge", "cache.m4.4xlarge", "cache.m4.large", "cache.m4.xlarge", "cache.r3.2xlarge", "cache.r3.4xlarge", "cache.r3.8xlarge", "cache.r3.large", "cache.r3.xlarge" ] }
Para obter mais informações, consulte list-allowed-node-type-modifications na AWS CLI Referência.
-
Dimensione seu grupo de replicação atual até o novo tipo de nó usando o AWS CLI
modify-replication-group
comando com os parâmetros a seguir.--replication-group-id
- o nome do grupo de replicação.--cache-node-type
: o novo tipo de nó menor dos clusters de cache nesse grupo de replicação. Esse valor deve ser um dos tipos de instância retornados pelo comandolist-allowed-node-type-modifications
na etapa 1.--cache-parameter-group-name
– [Opcional] Use esse parâmetro se estiver usandoreserved-memory
para gerenciar a memória reservada do cluster. Especifique um parameter group de cache personalizado que reserve a quantidade correta de memória para o seu novo tipo de nó. Se estiver usandoreserved-memory-percent
, você poderá omitir esse parâmetro.--apply-immediately
: faz com que o processo de aumento de escala vertical seja aplicado imediatamente. Para adiar a operação de expansão para a próxima janela de manutenção, use--no-apply-immediately
.
Para Linux, macOS ou Unix:
aws elasticache modify-replication-group \ --replication-group-id
my-repl-group
\ --cache-node-typecache.t2.small
\ --cache-parameter-group-nameredis32-m3-2xl
\ --apply-immediatelyPara Windows:
aws elasticache modify-replication-group ^ --replication-group-id
my-repl-group
^ --cache-node-typecache.t2.small
^ --cache-parameter-group-nameredis32-m3-2xl
\ --apply-immediatelyO resultado desse comando é semelhante a este (formato JSON).
{"ReplicationGroup": { "Status": "available", "Description": "Some description", "NodeGroups": [ { "Status": "available", "NodeGroupMembers": [ { "CurrentRole": "primary", "PreferredAvailabilityZone": "us-west-2b", "CacheNodeId": "0001", "ReadEndpoint": { "Port": 6379, "Address": "my-repl-group-001.8fdx4s.0001.usw2.cache.amazonaws.com" }, "CacheClusterId": "my-repl-group-001" }, { "CurrentRole": "replica", "PreferredAvailabilityZone": "us-west-2c", "CacheNodeId": "0001", "ReadEndpoint": { "Port": 6379, "Address": "my-repl-group-002.8fdx4s.0001.usw2.cache.amazonaws.com" }, "CacheClusterId": "my-repl-group-002" } ], "NodeGroupId": "0001", "PrimaryEndpoint": { "Port": 6379, "Address": "my-repl-group.8fdx4s.ng.0001.usw2.cache.amazonaws.com" } } ], "ReplicationGroupId": "my-repl-group", "SnapshotRetentionLimit": 1, "AutomaticFailover": "disabled", "SnapshotWindow": "12:00-13:00", "SnapshottingClusterId": "my-repl-group-002", "MemberClusters": [ "my-repl-group-001", "my-repl-group-002", ], "PendingModifiedValues": {} } }
Para obter mais informações, consulte modify-replication-group na AWS CLI Referência.
-
Se você usou o
--apply-immediately
parâmetro, monitore o status do grupo de replicação usando o AWS CLIdescribe-replication-group
comando com o parâmetro a seguir. Quando o status mudar de modifying (modificando) para available (disponível), você poderá começar a gravar no seu novo grupo de replicação reduzido.--replication-group-id
- o nome do grupo de replicação. Use esse parâmetro para descrever um grupo de replicação específico em vez de todos os grupos de replicação.
Para Linux, macOS ou Unix:
aws elasticache describe-replication-group \ --replication-group-id
my-replication-group
Para Windows:
aws elasticache describe-replication-groups ^ --replication-group-id
my-replication-group
Para obter mais informações, consulte describe-replication-groupsna AWS CLI Referência.
O processo a seguir escala seu grupo de replicação do tipo de nó atual para um novo tipo de nó menor usando a ElastiCache API. Durante esse processo, o ElastiCache (Redis OSS) atualiza as entradas de DNS para que elas apontem para os novos nós. Por isso, você não precisa atualizar os endpoints no seu aplicativo. Para o Redis OSS 5.0.5 e versões posteriores, você pode escalar clusters habilitados para failover automático enquanto o cluster continua on-line e atende às solicitações recebidas. Nas versões 4.0.10 e anteriores, você perceberá uma breve interrupção de leituras e gravações em versões anteriores do nó primário enquanto a entrada de DNS é atualizada. No entanto, as leituras dos clusters de cache de réplica de leitura continuam ininterruptas.
O tempo necessário para reduzir até um tipo de nó menor varia, dependendo do tipo de nó e da quantidade de dados no seu cluster de cache atual.
Para reduzir um grupo de replicação (API) do Redis OSS ElastiCache
-
Determine quais tipos de nós você pode reduzir usando a
ListAllowedNodeTypeModifications
ação da ElastiCache API com o parâmetro a seguir.ReplicationGroupId
- o nome do grupo de replicação. Use esse parâmetro para descrever um determinado grupo de replicação em vez de todos os grupos de replicação.
https://elasticache.us-west-2.amazonaws.com/ ?Action=ListAllowedNodeTypeModifications &ReplicationGroupId=MyReplGroup &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>
Para obter mais informações, consulte ListAllowedNodeTypeModifications a Amazon ElastiCache API Reference.
-
Dimensione seu grupo de replicação atual até o novo tipo de nó usando a ação da
ModifyRedplicationGroup
ElastiCache API e com os parâmetros a seguir.ReplicationGroupId
- o nome do grupo de replicação.CacheNodeType
: o novo tipo de nó menor dos clusters de cache nesse grupo de replicação. Esse valor deve ser um dos tipos de instância retornados pela açãoListAllowedNodeTypeModifications
na etapa 1.CacheParameterGroupName
– [Opcional] Use esse parâmetro se estiver usandoreserved-memory
para gerenciar a memória reservada do cluster. Especifique um parameter group de cache personalizado que reserve a quantidade correta de memória para o seu novo tipo de nó. Se estiver usandoreserved-memory-percent
, você poderá omitir esse parâmetro.ApplyImmediately
: defina comotrue
para fazer com que o processo de aumento de escala vertical seja aplicado imediatamente. Para adiar o processo de redução até a próxima janela de manutenção, useApplyImmediately
=false
.
https://elasticache.us-west-2.amazonaws.com/ ?Action=ModifyReplicationGroup &ApplyImmediately=true &CacheNodeType=cache.m3.2xlarge &CacheParameterGroupName=redis32-m3-2xl &ReplicationGroupId=myReplGroup &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20141201T220302Z &Version=2014-12-01 &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 ModifyReplicationGroup a Amazon ElastiCache API Reference.
-
Se você usou
ApplyImmediately
=true
, monitore o status do grupo de replicação usando aDescribeReplicationGroups
ação da ElastiCache API com os parâmetros a seguir. Quando o status mudar de modifying (modificando) para available (disponível), você poderá começar a gravar no seu novo grupo de replicação reduzido.ReplicationGroupId
- o nome do grupo de replicação. Use esse parâmetro para descrever um grupo de replicação específico em vez de todos os grupos de replicação.
https://elasticache.us-west-2.amazonaws.com/ ?Action=DescribeReplicationGroups &ReplicationGroupId=MyReplGroup &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>
Para obter mais informações, consulte DescribeReplicationGroups a Amazon ElastiCache API Reference.