減少碎片中的複本數量 - Amazon ElastiCache

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

減少碎片中的複本數量

對於 Valkey 或 Redis OSS(啟用叢集模式),您可以減少碎片中的複本數量,或在 Valkey 或 Redis 的複寫群組中減少複本數量 OSS(停用叢集模式):

  • 對於 Valkey 或 Redis OSS(停用叢集模式),如果啟用多可用區,您可以將複本數量減少為 1,如果未啟用,則可以減少為零。

  • 對於 Valkey 或 Redis OSS(啟用叢集模式),您可以將複本數量減少到零。但是,若主要節點失敗,您將無法容錯移轉至複本。

您可以使用 AWS Management Console、 AWS CLI 或 ElastiCache API來減少節點群組 (碎片) 或複寫群組中的複本數量。

使用 AWS Management Console

下列程序使用主控台來減少 Valkey 或 Redis OSS(啟用叢集模式) 複寫群組中的複本數量。

若要減少 Valkey 或 Redis OSS 碎片中的複本數量
  1. 登入 AWS Management Console 並在 https://console.aws.amazon.com/elasticache/開啟 ElastiCache 主控台。

  2. 在導覽窗格中,選擇 ValkeyRedis OSS,然後選擇您要刪除複本的複寫群組名稱。

  3. ​選擇每個您欲從其中移除複本節點的碎片方塊。

  4. 選擇 Delete replicas (刪除複本)

  5. 完成 Delete Replicas from Shards (從碎片刪除複本) 頁面:

    1. 針對 New number of replicas/shard (新的複本/碎片數),輸入您希望所選取碎片擁有的複本數。該數字必須等於或大於 1。我們建議您為每個碎片設定至少兩個複本,做為運作的最低需求。

    2. 選擇 Delete (刪除) 以刪除複本,或選擇 Cancel (取消) 以取消操作。

重要
  • 如果您未指定要刪除的複本節點, ElastiCache (Redis OSS) 會自動選取要刪除的複本節點。執行此操作時, ElastiCache (Redis OSS) 會嘗試保留複寫群組的多可用區架構,接著保留具有主要 最低複寫延遲的複本。

  • 您無法刪除複寫群組中的主節點。若您指定刪除主要節點,操作會失敗並出現錯誤,指出已選取主要節點進行刪除。

使用 AWS CLI

若要減少 Valkey 或 Redis OSS 碎片中的複本數量,請使用 decrease-replica-count命令搭配下列參數:

  • --replication-group-id - 必要項目。識別您希望減少複本數的複寫群組。

  • --apply-immediately--no-apply-immediately - 必要項目。指定是否要立即減少複本計數 (--apply-immediately),或是在下一次維護時間時進行 (--no-apply-immediately)。目前不支援 --no-apply-immediately

  • --new-replica-count - 選用。指定您希望的複本節點數量。--new-replica-count 的值必須為有效值,小於節點群組中目前的數量。如需了解最低允許值,請參閱減少碎片中的複本數量。若 --new-replica-count 的值不符合此需求,呼叫便會失敗。

  • --replicas-to-remove - 選用。包含IDs指定要移除之複本節點的節點清單。

  • --replica-configuration - 選用。允許您為每個節點群組分別設定複本數及可用區域。針對您要獨立設定每個節點群組的 Valkey 或 Redis OSS(啟用叢集模式) 群組,使用此參數。

    --replica-configuration 有三個選用成員:

    • NodeGroupId - 待設定節點群組的四位數 ID。對於 Valkey 或 Redis OSS(停用叢集模式) 複寫群組,碎片 ID 一律為 0001。若要尋找 Valkey 或 Redis OSS(啟用叢集模式) 節點群組 (碎片) ID,請參閱 尋找碎片的 ID

    • NewReplicaCount - 選用參數,指定您希望的複本節點數。NewReplicaCount 的值必須為有效值,小於節點群組中目前的數量。如需了解最低允許值,請參閱減少碎片中的複本數量。若 NewReplicaCount 的值不符合此需求,呼叫便會失敗。

    • PreferredAvailabilityZones - PreferredAvailabilityZone 字串的清單,指定複寫群組節點所在的可用區域。PreferredAvailabilityZone 值的數量必須等於 NewReplicaCount + 1 的值,以包含主要節點。如果--replica-configuration省略此成員, ElastiCache (Redis OSS) 會為每個新複本選擇可用區域。

重要

您必須包含一個 (並且只能一個) --new-replica-count--replicas-to-remove--replica-configuration 參數。

以下範例會使用 --new-replica-count 將複寫群組 sample-repl-group 中的複本數減少至一。範例完成時,每個節點群組中都會有一個複本。無論是具有單一節點群組的 Valkey 或 Redis OSS(停用叢集模式) 群組,還是具有多個節點群組的 Valkey 或 Redis OSS(啟用叢集模式) 群組,此數字都適用。

若為 Linux、macOS 或 Unix:

aws elasticache decrease-replica-count --replication-group-id sample-repl-group \ --new-replica-count 1 \ --apply-immediately

針對 Windows:

aws elasticache decrease-replica-count ^ --replication-group-id sample-repl-group ^ --new-replica-count 1 ^ --apply-immediately

以下範例透過從節點群組移除兩個指定複本 (00010003),來減少複寫群組 sample-repl-group 中的複本數。

若為 Linux、macOS 或 Unix:

aws elasticache decrease-replica-count \ --replication-group-id sample-repl-group \ --replicas-to-remove 0001,0003 \ --apply-immediately

針對 Windows:

aws elasticache decrease-replica-count ^ --replication-group-id sample-repl-group ^ --replicas-to-remove 0001,0003 \ --apply-immediately

以下範例會使用 --replica-configuration 將複寫群組 sample-repl-group 中的複本數減少到為兩個指定節點群組指定的值。由於有多個節點群組,因此這是 Valkey 或 Redis OSS(啟用叢集模式) 複寫群組。當指定選用的 PreferredAvailabilityZones 時,所列出的可用區域數量必須等於 NewReplicaCount + 1 的值。此方法可涵蓋由 NodeGroupId 識別群組的主要節點。

若為 Linux、macOS 或 Unix:

aws elasticache decrease-replica-count \ --replication-group-id sample-repl-group \ --replica-configuration \ NodeGroupId=0001,NewReplicaCount=1,PreferredAvailabilityZones=us-east-1a,us-east-1c \ NodeGroupId=0003,NewReplicaCount=2,PreferredAvailabilityZones=us-east-1a,us-east-1b,us-east-1c \ --apply-immediately

針對 Windows:

aws elasticache decrease-replica-count ^ --replication-group-id sample-repl-group ^ --replica-configuration ^ NodeGroupId=0001,NewReplicaCount=2,PreferredAvailabilityZones=us-east-1a,us-east-1c ^ NodeGroupId=0003,NewReplicaCount=3,PreferredAvailabilityZones=us-east-1a,us-east-1b,us-east-1c \ --apply-immediately

如需使用 減少複本數量的詳細資訊CLI,請參閱 Amazon Command Line 參考decrease-replica-count中的 。 ElastiCache

使用 ElastiCache API

若要減少 Valkey 或 Redis OSS 碎片中的複本數量,請使用具有下列參數DecreaseReplicaCount的動作:

  • ReplicationGroupId - 必要項目。識別您希望減少複本數的複寫群組。

  • ApplyImmediately - 必要項目。指定是否要立即減少複本計數 (ApplyImmediately=True),或是在下一次維護時間時進行 (ApplyImmediately=False)。目前不支援 ApplyImmediately=False

  • NewReplicaCount - 選用。指定您希望的複本節點數量。NewReplicaCount 的值必須為有效值,小於節點群組中目前的數量。如需了解最低允許值,請參閱減少碎片中的複本數量。若 --new-replica-count 的值不符合此需求,呼叫便會失敗。

  • ReplicasToRemove - 選用。包含IDs指定要移除之複本節點的節點清單。

  • ReplicaConfiguration - 選用。包含節點群組清單,允許您為每個節點群組分別設定複本數及可用區域。針對您要獨立設定每個節點群組的 Valkey 或 Redis OSS(啟用叢集模式) 群組,使用此參數。

    ReplicaConfiguraion 有三個選用成員:

    • NodeGroupId - 待設定節點群組的四位數 ID。對於 Valkey 或 Redis OSS(停用叢集模式) 複寫群組,節點群組 ID 一律為 0001。若要尋找 Valkey 或 Redis OSS(啟用叢集模式) 節點群組 (碎片) ID,請參閱 尋找碎片的 ID

    • NewReplicaCount - 此作業結束後,您希望此節點群組中擁有的複本數。若已啟用多個可用區,該值必須小於目前的複本數,且其最小值為 1;若未啟用具備自動容錯移轉的多個可用區,則最小值為 0。若此值不小於目前節點群組中的複本數,則呼叫會失敗並附帶異常。

    • PreferredAvailabilityZones - PreferredAvailabilityZone 字串的清單,指定複寫群組節點所在的可用區域。PreferredAvailabilityZone 值的數量必須等於 NewReplicaCount + 1 的值,以包含主要節點。如果ReplicaConfiguration省略此成員, ElastiCache (Redis OSS) 會為每個新複本選擇可用區域。

重要

您必須包含一個 (並且只能一個) NewReplicaCountReplicasToRemoveReplicaConfiguration 參數。

以下範例會使用 NewReplicaCount 將複寫群組 sample-repl-group 中的複本數減少至一。範例完成時,每個節點群組中都會有一個複本。無論是具有單一節點群組的 Valkey 或 Redis OSS(停用叢集模式) 群組,還是具有多個節點群組的 Valkey 或 Redis OSS(啟用叢集模式) 群組,此數字都適用。

https://elasticache.us-west-2.amazonaws.com/ ?Action=DecreaseReplicaCount &ApplyImmediately=True &NewReplicaCount=1 &ReplicationGroupId=sample-repl-group &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>

以下範例透過從節點群組移除兩個指定複本 (00010003),來減少複寫群組 sample-repl-group 中的複本數。

https://elasticache.us-west-2.amazonaws.com/ ?Action=DecreaseReplicaCount &ApplyImmediately=True &ReplicasToRemove.ReplicaToRemove.1=0001 &ReplicasToRemove.ReplicaToRemove.2=0003 &ReplicationGroupId=sample-repl-group &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>

以下範例會使用 ReplicaConfiguration 將複寫群組 sample-repl-group 中的複本數減少到為兩個指定節點群組指定的值。由於有多個節點群組,因此這是 Valkey 或 Redis OSS(啟用叢集模式) 複寫群組。當指定選用的 PreferredAvailabilityZones 時,所列出的可用區域數量必須等於 NewReplicaCount + 1 的值。此方法可涵蓋由 NodeGroupId 識別群組的主要節點。

https://elasticache.us-west-2.amazonaws.com/ ?Action=DecreaseReplicaCount &ApplyImmediately=True &ReplicaConfiguration.ConfigureShard.1.NodeGroupId=0001 &ReplicaConfiguration.ConfigureShard.1.NewReplicaCount=1 &ReplicaConfiguration.ConfigureShard.1.PreferredAvailabilityZones.PreferredAvailabilityZone.1=us-east-1a &ReplicaConfiguration.ConfigureShard.1.PreferredAvailabilityZones.PreferredAvailabilityZone.2=us-east-1c &ReplicaConfiguration.ConfigureShard.2.NodeGroupId=0003 &ReplicaConfiguration.ConfigureShard.2.NewReplicaCount=2 &ReplicaConfiguration.ConfigureShard.2.PreferredAvailabilityZones.PreferredAvailabilityZone.1=us-east-1a &ReplicaConfiguration.ConfigureShard.2.PreferredAvailabilityZones.PreferredAvailabilityZone.2=us-east-1b &ReplicaConfiguration.ConfigureShard.2.PreferredAvailabilityZones.PreferredAvailabilityZone.4=us-east-1c &ReplicationGroupId=sample-repl-group &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>

如需使用 減少複本數量的詳細資訊API,請參閱 Amazon 參考DecreaseReplicaCount中的 。 ElastiCache API