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á.
Ampliando clusters Redis OSS com réplicas
ElastiCache A Amazon fornece suporte de console, CLI e API para escalar seu grupo de replicação do Redis OSS (modo de cluster desativado).
Quando o processo de aumento de escala é iniciado, ElastiCache faça o seguinte:
Executa um grupo de replicação usando o novo tipo de nó.
Copia todos os dados do nó primário atual para o novo nó primário.
Sincroniza as novas réplicas de leitura com o novo nó primário.
Atualiza as entradas do 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.
Exclui os nós antigos (CLI/API: grupo de replicação). Você perceberá uma breve interrupção (alguns segundos) nas leituras e gravações dos nós antigos porque as conexões aos nós antigos serão desconectadas.
O tempo necessário para esse processo depende do tipo de nó e da quantidade de dados no seu cluster.
Conforme mostrado na tabela a seguir, sua operação de expansão do Redis OSS será bloqueada se você tiver um upgrade de mecanismo agendado para a próxima janela de manutenção do cluster.
Operações bloqueadas do Redis OSS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Operações pendentes | Operações bloqueadas | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Amplie a sua capacidade | Atualização imediata do mecanismo | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Atualização do mecanismo | Expansão imediata | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Expansão e atualização do mecanismo | Expansão imediata | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Atualização imediata do mecanismo |
Se você tiver uma operação pendente que está bloqueando você, será possível tomar uma destas providências.
-
Agende sua operação de expansão do Redis OSS para a próxima janela de manutenção desmarcando a caixa de seleção Aplicar imediatamente (uso da CLI:, Uso da API:).
--no-apply-immediately
ApplyImmediately=false
-
Espere até a próxima janela de manutenção (ou depois) para realizar sua operação de expansão do Redis OSS.
-
Adicione a atualização do mecanismo Redis OSS a essa modificação do cluster de cache com a caixa de seleção Aplicar imediatamente selecionada (uso da CLI:
--apply-immediately
, Uso da API:).ApplyImmediately=true
Isso desbloqueia sua operação de expansão, fazendo com que a atualização do mecanismo seja realizada imediatamente.
As seções a seguir descrevem como escalar seu cluster Redis OSS com réplicas usando o ElastiCache console AWS CLI, o e a API. ElastiCache
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.
O tempo necessário para expandir para um tipo de nó maior varia dependendo do tipo de nó e da quantidade de dados no seu cluster atual.
O processo a seguir escala seu cluster com réplicas do tipo de nó atual para um novo tipo de nó maior usando o ElastiCache console. Durante esse processo, poderá haver uma breve interrupção de leituras e gravações de outras versões do nó primário enquanto a entrada de DNS é atualizada. Talvez você observe menos de 1 segundo de tempo de inatividade para os nós executados nas versões 5.0.5 e posteriores e alguns segundos para as versões mais antigas.
Para escalar o cluster Redis OSS com réplicas (console)
-
Faça login no AWS Management Console e abra o ElastiCache console em https://console.aws.amazon.com/elasticache/
. -
No painel de navegação, escolha clusters Redis OSS
-
Na lista de clusters, escolha o cluster que você deseja expandir. 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, escolha o tipo de nó a partir do qual você deseja escalar. Observe que nem todos os tipos de nó estão disponíveis para redução.
-
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 quiser executar o processo de expansão imediatamente, escolha a caixa de seleção Apply immediately. Se a caixa de seleção Apply immediately não for escolhida, o processo de expansã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 o grupo de replicação do tipo de nó atual para um novo tipo de nó maior 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.
O tempo necessário para expandir até um tipo de nó maior varia, dependendo do tipo de nó e da quantidade de dados no seu cluster de cache atual.
Para escalar um grupo de replicação do Redis OSS ()AWS CLI
-
Determine para quais tipos de nós você pode escalar 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).
{ "ScaleUpModifications": [ "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ó maior 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.m3.xlarge
\ --cache-parameter-group-nameredis32-m3-2xl
\ --apply-immediatelyPara Windows:
aws elasticache modify-replication-group ^ --replication-group-id
my-repl-group
^ --cache-node-typecache.m3.xlarge
^ --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. Enquanto o status ainda for modifying (em modificação), você poderá observar menos de 1 segundo de tempo de inatividade para os nós executados nas versões 5.0.6 e posteriores, e uma breve interrupção de leituras e gravações para as versões mais antigas do nó primário enquanto a entrada do DNS é atualizada.--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-groups \ --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ó maior usando a ElastiCache API. 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.
O tempo necessário para expandir até um tipo de nó maior varia, dependendo do tipo de nó e da quantidade de dados no seu cluster de cache atual.
Para ampliar um grupo de replicação (API) do Redis OSS ElastiCache
-
Determine para quais tipos de nós você pode escalar 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ó maior 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 expansão para 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 para available, você poderá começar a gravar no seu novo grupo de replicação expandido.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.