

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

# 為 Valkey 或 Redis OSS 建立叢集
<a name="Clusters.Create"></a>

下列範例示範如何使用AWS 管理主控台AWS CLI和 ElastiCache API 建立 Valkey 或 Redis OSS 叢集。

## 建立 Valkey 或 Redis OSS （停用叢集模式） （主控台）
<a name="Clusters.Create.CON.Redis"></a>

當您使用 Valkey 或 Redis OSS 引擎時，ElastiCache 支援複寫。若要監控資料寫入 Valkey 或 Redis OSS 讀取/寫入主要叢集和傳播至唯讀次要叢集之間的延遲，ElastiCache 會將特殊金鑰 新增至叢集`ElastiCacheMasterReplicationTimestamp`。此鍵是目前國際標準時間 (UTC) 的時間。由於 Valkey 或 Redis OSS 叢集稍後可能會新增至複寫群組，因此此金鑰會包含在所有 Valkey 或 Redis OSS 叢集中，即使最初不是複寫群組的成員。如需複寫群組的詳細資訊，請參閱[使用複寫群組的高可用性](Replication.md)。

若要建立 Valkey 或 Redis OSS （停用叢集模式） 叢集，請遵循 中的步驟[建立 Valkey （停用叢集模式） 叢集 （主控台）](SubnetGroups.designing-cluster-pre.valkey.md#Clusters.Create.CON.valkey-gs)。

一旦叢集的狀態變為*可用*，您就可以為其授予 Amazon EC2 存取權限、連線至叢集並開始使用叢集。如需詳細資訊，請參閱[步驟 3。授權對叢集的存取](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.AuthorizeAccess.valkey)及[步驟 4. 連接至叢集的節點](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.ConnectToCacheNode.valkey)。

**重要**  
在您的叢集可用之後，系統就會按叢集作用中時間每個小時或部分小時計費 (即使您並未主動使用亦同)。若要停止此叢集產生費用，您必須將其刪除。請參閱 [在 ElastiCache 中刪除叢集](Clusters.Delete.md)。

## 建立 Valkey 或 Redis OSS （啟用叢集模式） 叢集 （主控台）
<a name="Clusters.Create.CON.RedisCluster"></a>

如果您執行 Redis OSS 3.2.4 或更新版本，您可以建立 Valkey 或 Redis OSS （啟用叢集模式） 叢集。Valkey 或 Redis OSS （啟用叢集模式） 叢集支援將您的資料分割到 1 到 500 個碎片 (API/CLI：節點群組），但有一些限制。如需 Valkey 或 Redis OSS （停用叢集模式） 和 Valkey 或 Redis OSS （啟用叢集模式） 的比較，請參閱 [支援的引擎和版本](VersionManagement.md#supported-engine-versions)。

**使用 ElastiCache 主控台建立 Valkey 或 Redis OSS （啟用叢集模式） 叢集**

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

1. 從右上角的清單中，選擇要啟動此叢集AWS的區域。

1. 從導覽窗格選擇 **Get started** (開始使用)。

1. 選擇 **Create VPC** (建立 VPC)，然後按照[建立虛擬私有雲端 (VPC)](VPCs.CreatingVPC.md) 中列出的步驟操作。

1. 在 ElastiCache 儀表板頁面上，選擇**建立叢集**，然後選擇**建立 Valkey 叢集**或**建立 Redis OSS 叢集**。

1. 在 **Cluster settings** (叢集設定) 中，執行下列動作：

   1. 選擇 **Configure and create a new cluster** (設定和建立新叢集)。

   1. 針對 **Cluster mode** (叢集模式)，選擇 **Enabled** (已啟用)。

   1. 針對 **Cluster info** (叢集資訊)，輸入 **Name** (名稱) 值。

   1. (選用) 輸入 **Description** (描述) 值。

1. 在 **Location** (位置) 中：

------
#### [ AWS Cloud  ]

   1. 針對 **AWS雲端**，建議您接受**多可用區域**和**自動容錯移轉**的預設設定。如需詳細資訊，請參閱[使用異地同步備份將 ElastiCache for Redis OSS 的停機時間降至最低](AutoFailover.md)。

   1. 在 **Cluster settings** (叢集設定) 中

      1. 針對 **Engine version** (引擎版本)，選擇可用的版本。

      1. 針對 **Port** (連接埠)，使用預設連接埠 6379。如果您基於任何原因需要使用不同的連接埠，請輸入連接埠號碼。

      1. 對於 **Parameter group (參數群組)**，請選擇參數群組或新建參數群組。參數群組可控制叢集的執行時間參數。如需參數群組的詳細資訊，請參閱 [Valkey 和 Redis OSS 參數](ParameterGroups.Engine.md#ParameterGroups.Redis)和[建立 ElastiCache 參數群組](ParameterGroups.Creating.md)。
**注意**  
當您選取參數群組來設定引擎組態值時，該參數群組會套用至全域資料存放區中的所有叢集。在 **Parameter Groups (參數群組)** 頁面上，yes/no (是/否) **Global (全域)** 屬性指出參數群組是否為全域資料存放區的一部分。

      1. 在 **Node type (節點類型)** 中，選擇向下箭頭 (![\[Downward-pointing triangle icon, typically used to indicate a dropdown menu.\]](http://docs.aws.amazon.com/zh_tw/AmazonElastiCache/latest/dg/images/ElastiCache-DnArrow.png))。在 **Change node type (變更節點類型)** 對話方塊中，為您想要的節點類型選擇 **Instance family (執行個體系列)** 的值。然後選擇您要用於此叢集的節點類型，然後選擇 **Save (儲存)**。

         如需詳細資訊，請參閱[選擇您的節點大小](CacheNodes.SelectSize.md)。

         如果選擇 r6gd 節點類型，將自動啟用資料分層。如需詳細資訊，請參閱[ElastiCache 中的資料分層](data-tiering.md)。

      1. 針對**碎片數量**，選擇您希望此 Valkey 或 Redis OSS （啟用叢集模式） 叢集的碎片數量 （分割區/節點群組）。

         對於某些版本的 Valkey 或 Redis OSS （啟用叢集模式），您可以動態變更叢集中的碎片數量：
         + **Redis OSS 3.2.10 和更新版本** – 如果您的叢集執行 Redis OSS 3.2.10 或更新版本，您可以動態變更叢集中的碎片數量。如需詳細資訊，請參閱[擴展 Valkey 或 Redis OSS （啟用叢集模式） 叢集](scaling-redis-cluster-mode-enabled.md)。
         + **其他 Redis OSS 版本** – 如果您的叢集在 3.2.10 版之前執行 Redis OSS 版本，則有其他方法。在這種情況下，若要變更叢集中的碎片數量，請使用新的碎片數量建立新的叢集。如需詳細資訊，請參閱[從備份還原到新的快取](backups-restoring.md)。

      1. 針對 **Replicas per shard (每個碎片的複本)**，選擇您要讓每個碎片具備的僅供讀取複本節點數目。

         下列限制適用於 Valkey 或 Redis OSS （啟用叢集模式）。
         + 如果您已啟用多個可用區，請確保每個碎片至少有一個複本。
         + 使用主控台建立叢集時，每個碎片的複本數都相同。
         + 每個碎片的僅供讀取複本數均固定而無法變更。如果您發現每個碎片 (API/CLI：節點群組) 需要更多或更少的複本，則必須使用新的複本數來建立新叢集。如需詳細資訊，請參閱[教學課程：使用外部建立的備份植入新的節點型叢集](backups-seeding-redis.md)。

   1. 在 **Connectivity** (連線) 下

      1. 針對 **Network type** (網路類型)，請選擇此叢集支援的 IP 版本。

      1. 在 **Subnet group** (子網路群組) 中，選擇要套用至此叢集的子網路。ElastiCache 會使用此子網路群組選擇子網路及該子網路中的 IP 地址，以與您的節點建立關聯。ElastiCache 叢集需要具有 IPv4 和 IPv6 地址的雙堆疊子網路，以便在雙堆疊模式下運作，且僅限 IPv6 的子網路僅會以 IPv6 運作。

         建立新的子網路群組時，請輸入其所屬的 **VPC ID**。

         選取 **Discovery IP type** (探索 IP 類型)。僅回傳您選擇的通訊協定 IP 地址。

         如需詳細資訊，請參閱：
         + [在 ElastiCache 中選擇網路類型](network-type.md).
         + [在 VPC 中建立子網路](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#AddaSubnet)。

         如果您是 [搭配 ElastiCache 使用本地區域](Local_zones.md)，必須建立或選擇位於本地區域中的子網路。

         如需詳細資訊，請參閱[子網路和子網路群組](SubnetGroups.md)。

   1. 針對 **Availability zone placements** (可用區域置放)，您有兩種選項：
      + **No preference (無偏好設定)** - ElastiCache 會選擇可用區域。
      + **Specify availability zones (指定可用區域)** - 您可為每個叢集指定可用區域。

        如果您選擇指定可用區域，請針對每個碎片中的每個叢集，從清單中選擇可用區域。

      如需詳細資訊，請參閱[選擇 ElastiCache 的區域和可用區域](RegionsAndAZs.md)。

   1. 選擇 **Next** (下一步)

   1. 在**進階 Valkey 設定**或**進階 Redis OSS 設定**下，或 

      1. 針對 **Security** (安全)：

        1. 若要加密資料，您有下列選項：
           + **Encryption at rest (靜態加密)** - 啟用存放在磁碟上的資料加密功能。如需詳細資訊，請參閱[靜態加密](at-rest-encryption.md)。
**注意**  
您可以選擇**客戶受管AWS KMS 金鑰**並選擇金鑰，以提供不同的加密金鑰。如需詳細資訊，請參閱[使用來自AWS KMS 的客戶受管金鑰](at-rest-encryption.md#using-customer-managed-keys-for-elasticache-security)。
           + **Encryption in-transit (傳輸中加密)** - 啟用傳輸中資料加密功能。如需詳細資訊，請參閱[傳輸中加密](in-transit-encryption.md)。對於 Valkey 7.2 及更高版本或 Redis OSS 6.0 及更高版本，如果您啟用傳輸中加密，系統會提示您指定下列其中一個**存取控制**選項：
             + **No Access Control (無存取控制)** - 這是預設的設定。這表示使用者存取叢集時不受任何限制。
             + **User Group Access Control List (使用者群組存取控制清單)** - 選取的使用者群組需具有可存取叢集的已定義使用者集。如需詳細資訊，請參閱[使用主控台和 CLI 管理使用者群組](Clusters.RBAC.md#User-Groups)。
             + **AUTH 預設使用者** – Valkey 或 Redis OSS 伺服器的身分驗證機制。如需詳細資訊，請參閱 [AUTH](auth.md)。
           + **AUTH** – Valkey 或 Redis OSS 伺服器的身分驗證機制。如需詳細資訊，請參閱 [AUTH](auth.md)。
**注意**  
對於 3.2.6 以上版本的 Redis OSS，除了 3.2.10 版之外，AUTH 是唯一的選項。

        1. 在 **Security groups (安全群組)** 中，選擇要用於此叢集的安全群組。*安全群組*可做為防火牆來控制叢集的網路存取。您可以使用 VPC 的預設安全群組，或建立新的安全群組。

           如需安全群組的詳細資訊，請參閱 *Amazon VPC 使用者指南*中的 [VPC 的安全群組](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html)。

   1. 針對定期排程自動備份，請選取 **Enable automatic backups (啟用自動備份)**，然後輸入每份自動備份要保存的天數，過了此天數後即會自動將其刪除。如果您不想定期排程自動備份，請清除 **Enable automatic backups (啟用自動備份)** 核取方塊。在任何一種情況下，您都可以選擇建立手動備份。

      如需備份和還原的詳細資訊，請參閱[快照和還原](backups.md)。

   1. (選用) 指定維護時段。*維護時段*是 ElastiCache 排程的每週叢集系統維護時間，通常長度為一小時。您可以讓 ElastiCache 選擇維護時段的日期和時間 (*No preference* (無偏好設定))，或自行選擇日期、時間和持續時間 (*Specify maintenance window* (指定維護時段))。如果您從清單中選擇 *Specify maintenance window (指定維護時段)*，請為您的維護時段選擇 *Start day (開始日)*、*Start time (開始時間)* 和 *Duration (持續時間)*。所有時間都是 UCT 時間。

      如需詳細資訊，請參閱[管理 ElastiCache 叢集維護](maintenance-window.md)。

   1. (選用) 針對 **Logs (日誌)**：
      + 在 **Log format (日誌格式)** 下，選擇 **Text (文字)** 或 **JSON**。
      + 在 **Destination Type (目的地類型)** 下，選擇 **CloudWatch Logs** 或 **Kinesis Firehose**。
      + 在**日誌目的地**下，選擇**建立新** ，然後輸入您的 CloudWatch Logs 日誌群組名稱或 Firehose 串流名稱，或選擇**選取現有**，然後選擇您的 CloudWatch Logs 日誌群組名稱或您的 Firehose 串流名稱。

   1. 針對 **Tags** (標籤)，為協助您管理叢集和其他 ElastiCache 資源，您可以用標籤形式將自己的中繼資料指派給每個資源。如需詳細資訊，請參閱[為您的 ElastiCache 資源加上標籤](Tagging-Resources.md)。

   1. 選擇**下一步**。

   1. 檢閱所有項目和選項，然後進行任何所需的更正。當您準備好時，請選擇 **Create** (建立)。

------
#### [ On premises ]

   1. 針對 **On premises** (內部部署)，建議您將 **Auto-failover** (自動容錯移轉) 保持啟用。如需詳細資訊，請參閱[使用異地同步備份將 ElastiCache for Redis OSS 的停機時間降至最低](AutoFailover.md)

   1. 按照[使用 Outposts](ElastiCache-Outposts.md) 的步驟執行。

------

若要使用 ElastiCache API 或AWS CLI而非 ElastiCache 主控台建立對等項目，請參閱以下內容：
+ API：[CreateReplicationGroup](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateReplicationGroup.html)
+ CLI：[create-replication-group](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-replication-group.html)

一旦叢集的狀態變為*可用*，您就可以為其授予 EC2 存取權限、連線至叢集並開始使用叢集。如需詳細資訊，請參閱[步驟 3。授權對叢集的存取](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.AuthorizeAccess.valkey)及[步驟 4. 連接至叢集的節點](SubnetGroups.designing-cluster-pre.valkey.md#GettingStarted.ConnectToCacheNode.valkey)。

**重要**  
在您的叢集可用之後，系統就會按叢集作用中時間每個小時或部分小時計費 (即使您並未主動使用亦同)。若要停止此叢集產生費用，您必須將其刪除。請參閱 [在 ElastiCache 中刪除叢集](Clusters.Delete.md)。

## 建立叢集 (AWS CLI)
<a name="Clusters.Create.CLI"></a>

若要使用 建立叢集AWS CLI，請使用 `create-cache-cluster`命令。

**重要**  
在您的叢集可用之後，系統就會按叢集作用中時間每個小時或部分小時計費 (即使您並未主動使用亦同)。若要停止此叢集產生費用，您必須將其刪除。請參閱 [在 ElastiCache 中刪除叢集](Clusters.Delete.md)。

### 建立 Valkey 或 Redis OSS （停用叢集模式） 叢集 (CLI)
<a name="Clusters.Create.CLI.Redis"></a>

**Example – 沒有僅供讀取複本的 Valkey 或 Redis OSS （停用叢集模式） 叢集**  
下列 CLI 程式碼會建立沒有複本的 Valkey 或 Redis OSS （停用叢集模式） 叢集。  
使用 r6gd 系列中的節點類型建立叢集時，必須傳遞 `data-tiering-enabled` 參數。
針對 Linux、macOS 或 Unix：  

```
aws elasticache create-cache-cluster \
--cache-cluster-id my-cluster \
--cache-node-type cache.r4.large \
--engine redis \
--num-cache-nodes 1 \
--cache-parameter-group default.redis6.x \
--snapshot-arns arn:aws:s3:::amzn-s3-demo-bucket/snapshot.rdb
```
針對 Windows：  

```
aws elasticache create-cache-cluster ^
--cache-cluster-id my-cluster ^
--cache-node-type cache.r4.large ^
--engine redis ^
--num-cache-nodes 1 ^
--cache-parameter-group default.redis6.x ^
--snapshot-arns arn:aws:s3:::amzn-s3-demo-bucket/snapshot.rdb
```

### 建立 Valkey 或 Redis OSS （啟用叢集模式） 叢集 (AWS CLI)
<a name="Clusters.Create.CLI.RedisCluster"></a>

無法使用 `create-cache-cluster`操作建立 Valkey 或 Redis OSS （啟用叢集模式） 叢集 (API/CLI：複寫群組）。若要建立 Valkey 或 Redis OSS （啟用叢集模式） 叢集 (API/CLI：複寫群組），請參閱 [從頭開始建立 Valkey 或 Redis OSS （啟用叢集模式） 複寫群組 (AWS CLI)](Replication.CreatingReplGroup.NoExistingCluster.Cluster.md#Replication.CreatingReplGroup.NoExistingCluster.Cluster.CLI)。

如需詳細資訊，請參閱AWS CLI適用於 ElastiCache 的 參考主題[https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-replication-group.html](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-replication-group.html)。

## 為 Valkey 或 Redis OSS 建立叢集 (ElastiCache API)
<a name="Clusters.Create.API.red-heading"></a>

若要使用 ElastiCache API 建立叢集，請使用 `CreateCacheCluster` 動作。

**重要**  
在您的叢集可用之後，系統就會按叢集作用中時間每個小時或部分小時計費 (即使您並未使用亦同)。若要停止此叢集產生費用，您必須將其刪除。請參閱 [在 ElastiCache 中刪除叢集](Clusters.Delete.md)。

**Topics**
+ [建立 Valkey 或 Redis OSS （停用叢集模式） 叢集 (ElastiCache API)](#Clusters.Create.API.Redis)
+ [在 Valkey 或 Redis OSS 中建立叢集 （啟用叢集模式） (ElastiCache API)](#Clusters.Create.API.RedisCluster)

### 建立 Valkey 或 Redis OSS （停用叢集模式） 叢集 (ElastiCache API)
<a name="Clusters.Create.API.Redis"></a>

下列程式碼會建立 Valkey 或 Redis OSS （停用叢集模式） 叢集 (ElastiCache API)。

加上分行符號的用意是便於閱讀。

```
https://elasticache.us-west-2.amazonaws.com/
    ?Action=CreateCacheCluster
    &CacheClusterId=my-cluster
    &CacheNodeType=cache.r4.large
    &CacheParameterGroup=default.redis3.2
    &Engine=redis
    &EngineVersion=3.2.4
    &NumCacheNodes=1
    &SignatureVersion=4       
    &SignatureMethod=HmacSHA256
    &SnapshotArns.member.1=arn%3Aaws%3As3%3A%3A%3AmyS3Bucket%2Fdump.rdb
    &Timestamp=20150508T220302Z
    &Version=2015-02-02
    &X-Amz-Algorithm=&AWS;4-HMAC-SHA256
    &X-Amz-Credential=<credential>
    &X-Amz-Date=20150508T220302Z
    &X-Amz-Expires=20150508T220302Z
    &X-Amz-SignedHeaders=Host
    &X-Amz-Signature=<signature>
```

### 在 Valkey 或 Redis OSS 中建立叢集 （啟用叢集模式） (ElastiCache API)
<a name="Clusters.Create.API.RedisCluster"></a>

無法使用 `CreateCacheCluster`操作建立 Valkey 或 Redis OSS （啟用叢集模式） 叢集 (API/CLI：複寫群組）。若要建立 Valkey 或 Redis OSS （啟用叢集模式） 叢集 (API/CLI：複寫群組），請參閱 [從頭開始在 Valkey 或 Redis OSS （啟用叢集模式） 中建立複寫群組 (ElastiCache API)](Replication.CreatingReplGroup.NoExistingCluster.Cluster.md#Replication.CreatingReplGroup.NoExistingCluster.Cluster.API)。

如需詳細資訊，請參閱 ElastiCache API 參考主題 [https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateReplicationGroup.html](https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateReplicationGroup.html)。