

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

# 增加碎片中的複本數量
<a name="increase-replica-count"></a>

您可以將 Valkey 或 Redis OSS （啟用叢集模式） 碎片、Valkey 或 Redis OSS （停用叢集模式） 複寫群組中的複本數量增加到最多五個。您可以使用 AWS 管理主控台、 AWS CLI或 ElastiCache API 來執行此操作。

**Topics**
+ [使用 AWS 管理主控台](#increase-replica-count-con)
+ [使用 AWS CLI](#increase-replica-count-cli)
+ [使用 ElastiCache API](#increase-replica-count-api)

## 使用 AWS 管理主控台
<a name="increase-replica-count-con"></a>

下列程序使用 主控台來增加 Valkey 或 Redis OSS （啟用叢集模式） 複寫群組中的複本數量。

**若要增加碎片中的複本數量**

1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/) 的 ElastiCache 主控台。

1. 在導覽窗格中，選擇 **Valkey** 或 **Redis OSS**，然後選擇您要新增複本的複寫群組名稱。

1. ​選擇每個您欲新增複本碎片的方塊。

1. 選擇 **Add replicas (新增複本)**。

1. 完成 **Add Replicas to Shards (新增複本至碎片)** 頁面：
   + 針對 **New number of replicas/shard (新的複本/碎片數)**，輸入您希望所選取碎片擁有的複本數。此值必須大於等於 **Current Number of Replicas per shard (目前每個碎片的複本數)**，並小於等於五。我們建議您包含至少兩個複本，做為運作的最低需求。
   + 針對 **Availability Zones (可用區域)**，選擇 **No preference (無偏好設定)** 讓 ElastiCache 為每個新複本選擇可用區域，或 **Specify Availability Zones (指定可用區域)** 來選擇每個新複本的可用區域。

     如果您選擇 **Specify Availability Zones (指定可用區域)**，請使用清單指定每個複本的可用區域。

1. 選擇 **Add (新增)** 以新增複本，或選擇 **Cancel (取消)** 以取消操作。

## 使用 AWS CLI
<a name="increase-replica-count-cli"></a>

若要增加 Valkey 或 Redis OSS 碎片中的複本數量，請使用 `increase-replica-count`命令搭配下列參數：
+ `--replication-group-id` - 必要項目。識別您希望增加複本數的複寫群組。
+ `--apply-immediately` 或 `--no-apply-immediately` - 必要項目。指定是否要立即增加複本計數 (`--apply-immediately`)，或是在下一次維護時間時進行 (`--no-apply-immediately`)。目前不支援 `--no-apply-immediately`。
+ `--new-replica-count` - 選用。指定您希望完成時擁有的複本節點數，最多五個。針對只有一個節點群組或 Valkey 或 Redis OSS （啟用叢集模式） 群組，或您希望所有節點群組擁有相同數量複本的複寫群組，使用此參數。若此值不大於目前節點群組中的複本數，則呼叫會失敗並附帶異常。
+ `--replica-configuration` - 選用。允許您為每個節點群組分別設定複本數及可用區域。將此參數用於您要獨立設定每個節點群組的 Valkey 或 Redis OSS （啟用叢集模式） 群組。

  `--replica-configuration` 有三個選用成員：
  + `NodeGroupId` - 待設定節點群組的四位數 ID。對於 Valkey 或 Redis OSS （停用叢集模式） 複寫群組，碎片 ID 一律為 `0001`。若要尋找 Valkey 或 Redis OSS （啟用叢集模式） 節點群組的 （碎片） ID，請參閱 [尋找碎片的 ID](Shards.md#shard-find-id)。
  + `NewReplicaCount` - 此作業結束後，您希望此節點群組中擁有的複本數。其值必須大於目前的複本數，最多五個。若此值不大於目前節點群組中的複本數，則呼叫會失敗並附帶異常。
  + `PreferredAvailabilityZones` - `PreferredAvailabilityZone` 字串的清單，指定複寫群組節點所在的可用區域。`PreferredAvailabilityZone` 值的數量必須等於 `NewReplicaCount` \+ 1 的值，以包含主要節點。如果省略 `--replica-configuration`的此成員，ElastiCache for Redis OSS 會為每個新複本選擇可用區域。

**重要**  
您必須在呼叫中包含 `--new-replica-count` 或 `--replica-configuration` 參數，但不可同時包含兩者。

**Example**  
以下範例會將複寫群組 `sample-repl-group` 中的複本數增加到三。範例完成時，每個節點群組中都會有三個複本。無論是具有單一節點群組的 Valkey 或 Redis OSS （停用叢集模式） 群組，還是具有多個節點群組的 Valkey 或 Redis OSS （啟用叢集模式） 群組，此數字都適用。  
針對 Linux、macOS 或 Unix：  

```
aws elasticache increase-replica-count \
    --replication-group-id {{sample-repl-group}} \
    --new-replica-count {{3}} \
    --apply-immediately
```
針對 Windows：  

```
aws elasticache increase-replica-count ^
    --replication-group-id {{sample-repl-group}} ^
    --new-replica-count {{3}} ^
    --apply-immediately
```
以下範例會將複寫群組 `sample-repl-group` 中的複本數增加到為兩個指定節點群組指定的值。假設有多個節點群組，這是 Valkey 或 Redis OSS （啟用叢集模式） 複寫群組。當指定選用的 `PreferredAvailabilityZones` 時，所列出的可用區域數量必須等於 `NewReplicaCount` \+ 1 的值。此方法可涵蓋由 `NodeGroupId` 識別群組的主要節點。  
針對 Linux、macOS 或 Unix：  

```
aws elasticache increase-replica-count \
    --replication-group-id {{sample-repl-group}} \
    --replica-configuration \
        NodeGroupId={{0001}},NewReplicaCount={{2}},PreferredAvailabilityZones={{us-east-1a}},{{us-east-1c}},{{us-east-1b}} \
        NodeGroupId={{0003}},NewReplicaCount={{3}},PreferredAvailabilityZones={{us-east-1a}},{{us-east-1b}},{{us-east-1c}},{{us-east-1c}} \
    --apply-immediately
```
針對 Windows：  

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

如需使用 CLI 增加複本數量的詳細資訊，請參閱 *Amazon ElastiCache 命令列參考*中的 [increase-replica-count](https://docs.aws.amazon.com/cli/latest/reference/elasticache/increase-replica-count.html)。

## 使用 ElastiCache API
<a name="increase-replica-count-api"></a>

若要增加 Valkey 或 Redis OSS 碎片中的複本數量，請使用 `IncreaseReplicaCount`動作搭配下列參數：
+ `ReplicationGroupId` - 必要項目。識別您希望增加複本數的複寫群組。
+ `ApplyImmediately` - 必要項目。指定是否要立即增加複本計數 (`ApplyImmediately=True`)，或是在下一次維護時間時進行 (`ApplyImmediately=False`)。目前不支援 `ApplyImmediately=False`。
+ `NewReplicaCount` - 選用。指定您希望完成時擁有的複本節點數，最多五個。將此參數用於只有一個節點群組的 Valkey 或 Redis OSS （停用叢集模式） 複寫群組，或您想要所有節點群組擁有相同數量複本的 Valkey 或 Redis OSS （啟用叢集模式） 群組。若此值不大於目前節點群組中的複本數，則呼叫會失敗並附帶異常。
+ `ReplicaConfiguration` - 選用。允許您為每個節點群組分別設定複本數及可用區域。將此參數用於您要獨立設定每個節點群組的 Valkey 或 Redis OSS （啟用叢集模式） 群組。

  `ReplicaConfiguraion` 有三個選用成員：
  + `NodeGroupId` - 待設定節點群組的四位數 ID。對於 Valkey 或 Redis OSS （停用叢集模式） 複寫群組，節點群組 （碎片） ID 一律為 `0001`。若要尋找 Valkey 或 Redis OSS （啟用叢集模式） 節點群組的 （碎片） ID，請參閱 [尋找碎片的 ID](Shards.md#shard-find-id)。
  + `NewReplicaCount` - 此作業結束後，您希望此節點群組中擁有的複本數。其值必須大於目前的複本數，並且最多五個。若此值不大於目前節點群組中的複本數，則呼叫會失敗並附帶異常。
  + `PreferredAvailabilityZones` - `PreferredAvailabilityZone` 字串的清單，指定複寫群組節點所在的可用區域。`PreferredAvailabilityZone` 值的數量必須等於 `NewReplicaCount` \+ 1 的值，以包含主要節點。如果省略 `ReplicaConfiguration` 的此成員，ElastiCache for Redis OSS 會為每個新複本選擇可用區域。

**重要**  
您必須在呼叫中包含 `NewReplicaCount` 或 `ReplicaConfiguration` 參數，但不可同時包含兩者。

**Example**  
以下範例會將複寫群組 `sample-repl-group` 中的複本數增加到三。範例完成時，每個節點群組中都會有三個複本。無論是具有單一節點群組的 Valkey 或 Redis OSS （停用叢集模式） 群組，還是具有多個節點群組的 Valkey 或 Redis OSS （啟用叢集模式） 群組，此數字都適用。  

```
https://elasticache.us-west-2.amazonaws.com/
      ?Action=IncreaseReplicaCount
      &ApplyImmediately=True
      &NewReplicaCount=3
      &ReplicationGroupId=sample-repl-group
      &Version=2015-02-02
      &SignatureVersion=4
      &SignatureMethod=HmacSHA256
      &Timestamp=20150202T192317Z
      &X-Amz-Credential=<credential>
```
以下範例會將複寫群組 `sample-repl-group` 中的複本數增加到為兩個指定節點群組指定的值。假設有多個節點群組，這是 Valkey 或 Redis OSS （啟用叢集模式） 複寫群組。當指定選用的 `PreferredAvailabilityZones` 時，所列出的可用區域數量必須等於 `NewReplicaCount` \+ 1 的值。此方法可涵蓋由 `NodeGroupId` 識別群組的主要節點。  

```
https://elasticache.us-west-2.amazonaws.com/
      ?Action=IncreaseReplicaCount
      &ApplyImmediately=True
      &ReplicaConfiguration.ConfigureShard.1.NodeGroupId=0001
      &ReplicaConfiguration.ConfigureShard.1.NewReplicaCount=2
      &ReplicaConfiguration.ConfigureShard.1.PreferredAvailabilityZones.PreferredAvailabilityZone.1=us-east-1a
      &ReplicaConfiguration.ConfigureShard.1.PreferredAvailabilityZones.PreferredAvailabilityZone.2=us-east-1c
      &ReplicaConfiguration.ConfigureShard.1.PreferredAvailabilityZones.PreferredAvailabilityZone.3=us-east-1b
      &ReplicaConfiguration.ConfigureShard.2.NodeGroupId=0003
      &ReplicaConfiguration.ConfigureShard.2.NewReplicaCount=3
      &ReplicaConfiguration.ConfigureShard.2.PreferredAvailabilityZones.PreferredAvailabilityZone.1=us-east-1a
      &ReplicaConfiguration.ConfigureShard.2.PreferredAvailabilityZones.PreferredAvailabilityZone.2=us-east-1b
      &ReplicaConfiguration.ConfigureShard.2.PreferredAvailabilityZones.PreferredAvailabilityZone.3=us-east-1c
      &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 ElastiCache 命令列參考*中的 [IncreaseReplicaCount](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_IncreaseReplicaCount.html)。