建立叢集 - Amazon ElastiCache 的雷迪斯

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

建立叢集

下列範例說明如何使用 AWS Management Console、 AWS CLI 和 ElastiCache API 建立 Redis 叢集。

ElastiCache 當您使用 Redis 引擎時,支援複寫。若要監控將資料寫入 Redis 讀取/寫入主要叢集與傳播至唯讀次要叢集之間的延遲時間,請在叢集中 ElastiCache 新增一個特殊金鑰。ElastiCacheMasterReplicationTimestamp此鍵是目前國際標準時間 (UTC) 的時間。由於 Redis 叢集可能會於稍後新增至複寫群組,因此所有 Redis 叢集都會隨附此鍵,即使一開始叢集不屬於複寫群組成員亦同。如需複寫群組的詳細資訊,請參閱使用複寫群組的高可用性

若要建立 Redis (停用叢集模式) 叢集,請按照建立 Redis (停用叢集模式) 叢集 (主控台)的步驟執行。

一旦叢集的狀態變為可用,您就可以為其授予 Amazon EC2 存取權限、連線至叢集並開始使用叢集。如需更多詳細資訊,請參閱「步驟3:授予叢集的存取權」及「步驟 4:連線至叢集的節點」。

重要

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

若您執行 Redis 3.2.4 版或更新版本,您可以建立 Redis (啟用叢集模式) 叢集。Redis (啟用叢集模式) 叢集支援將資料分割至 1 到 500 個碎片 (API/CLI:節點群組),但受限於某些限制。如需比較 Redis (停用叢集模式) 和 Redis (啟用叢集模式),請參閱「支援的 ElastiCache for Redis 版本」。

若要使用主控台建立 Redis (已啟用叢集模式) 叢集 ElastiCache
  1. 登錄到 AWS Management Console 並打開 Amazon ElastiCache 控制台 https://console.aws.amazon.com/elasticache/.

  2. 從右上角的清單中,選擇您要在其中啟動此叢集的 AWS 區域。

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

  4. 選擇 Create VPC (建立 VPC),然後按照建立虛擬私有雲端 (VPC) 中列出的步驟操作。

  5. 在 [ ElastiCache 儀表板] 頁面上,選擇 [建立叢集],然後選擇 [建立 Redis 叢集]。

  6. Cluster settings (叢集設定) 中,執行下列動作:

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

    2. 針對 Cluster mode (叢集模式),選擇 Enabled (已啟用)。

    3. 針對 Cluster info (叢集資訊),輸入 Name (名稱) 值。

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

  7. Location (位置) 中:

    AWS Cloud
    1. 針對 AWS 雲端,建議您接受多可用區域自動容錯移轉的預設設定。如需詳細資訊,請參閱使用異地同步備份 ElastiCache 的 Redis 最小化停機時間

    2. Cluster settings (叢集設定) 中

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

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

      3. 對於 Parameter group (參數群組),請選擇參數群組或新建參數群組。參數群組可控制叢集的執行時間參數。如需參數群組的詳細資訊,請參閱 Redis 專用參數建立參數群組

        注意

        當您選取參數群組來設定引擎組態值時,該參數群組會套用至全域資料存放區中的所有叢集。在 Parameter Groups (參數群組) 頁面上,yes/no (是/否) Global (全域) 屬性指出參數群組是否為全域資料存放區的一部分。

      4. Node type (節點類型) 中,選擇向下箭頭 ( )。在 Change node type (變更節點類型) 對話方塊中,為您想要的節點類型選擇 Instance family (執行個體系列) 的值。然後選擇您要用於此叢集的節點類型,然後選擇 Save (儲存)

        如需詳細資訊,請參閱 選擇您的節點大小

        如果選擇 r6gd 節點類型,將自動啟用資料分層。如需詳細資訊,請參閱 資料分層

      5. 針對 Number of shards (碎片數),選擇您要讓此 Redis (啟用叢集模式) 叢集具備的碎片 (分割區/節點群組) 數量。

        對於某些版本的 Redis (啟用叢集模式),您可以動態變更叢集中的碎片數量:

        • Redis 3.2.10 和更新版本 - 如果您的叢集執行 Redis 3.2.10 或更新版本,您可以動態變更叢集中的碎片數。如需詳細資訊,請參閱 擴展 Redis (啟用叢集模式) 中的叢集

        • 其他 Redis 版本 - 如果您的叢集執行 3.2.10 之前的 Redis 版本,則還有另一種方法可用。在這種情況下,若要變更叢集中的碎片數量,請使用新的碎片數量建立新的叢集。如需詳細資訊,請參閱 從備份還原到新的快取

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

        Redis (啟用叢集模式) 存在下列限制。

        • 如果您已啟用多個可用區,請確保每個碎片至少有一個複本。

        • 使用主控台建立叢集時,每個碎片的複本數都相同。

        • 每個碎片的僅供讀取複本數均固定而無法變更。如果您發現每個碎片 (API/CLI:節點群組) 需要更多或更少的複本,則必須使用新的複本數來建立新叢集。如需詳細資訊,請參閱 使用外部建立的備份植入新的自行設計叢集

    3. Connectivity (連線) 下

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

      2. 對於子網路群組,請選擇要套用至此叢集的子網路。 ElastiCache 使用該子網路群組來選擇該子網路內的子網路和 IP 位址,以便與您的節點建立關聯。 ElastiCache 叢集需要具有指派 IPv4 和 IPv6 位址的雙堆疊子網路,才能在雙堆疊模式下運作,以及僅限 IPv6 的子網路以僅 IPv4 和 IPv6 位址運作。

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

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

        如需詳細資訊,請參閱:

        如果您是 搭配 ElastiCache 使用本地區域 ,必須建立或選擇位於本地區域中的子網路。

        如需詳細資訊,請參閱 子網路和子網路群組

    4. 針對 Availability zone placements (可用區域置放),您有兩種選項:

      • 無偏好設定 — ElastiCache 選擇可用區域。

      • Specify availability zones (指定可用區域) - 您可為每個叢集指定可用區域。

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

      如需詳細資訊,請參閱 選擇區域與可用區域

    5. 選擇 Next (下一步)

    6. Advanced Redis settings (進階 Redis 設定) 中

      1. 針對 Security (安全):

        1. 若要加密資料,您有下列選項:

          • Encryption at rest (靜態加密) - 啟用存放在磁碟上的資料加密功能。如需詳細資訊,請參閱靜態加密

            注意

            您可以選擇客戶受管 AWS KMS 金鑰並選擇金鑰,以提供不同的加密金鑰。如需詳細資訊,請參閱使用來自 AWS KMS 的客戶受管金鑰

          • Encryption in-transit (傳輸中加密) - 啟用傳輸中資料加密功能。如需詳細資訊,請參閱傳輸中加密。針對 Redis 引擎 6.0 和更新版本,如果您啟用傳輸中加密功能,系統會提示您指定下列其中一項 Access Control (存取控制) 選項:

            • No Access Control (無存取控制) - 這是預設的設定。這表示使用者存取叢集時不受任何限制。

            • User Group Access Control List (使用者群組存取控制清單) - 選取的使用者群組需具有可存取叢集的已定義使用者集。如需詳細資訊,請參閱 使用主控台和 CLI 管理使用者群組

            • Redis AUTH Default User (Redis AUTH 預設使用者) - Redis 伺服器的身分驗證機制。如需詳細資訊,請參閱 Redis AUTH

          • Redis AUTH - Redis 伺服器的身分驗證機制。如需詳細資訊,請參閱 Redis AUTH

          注意

          針對 3.2.6 以上的 Redis 版本 (不包含 3.2.10 版),Redis AUTH 是唯一的選項。

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

          如需安全群組的詳細資訊,請參閱 Amazon VPC 使用者指南中的 VPC 的安全群組

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

      如需 Redis 備份和還原的詳細資訊,請參閱 快照和還原

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

      如需詳細資訊,請參閱 管理維護作業

    9. (選用) 針對 Logs (日誌)

      • Log format (日誌格式) 下,選擇 Text (文字)JSON

      • 在「目的地類型」下,選擇「CloudWatch 記錄檔」或「Kinesis Firehose」。

      • 在 [記錄目的地] 下方,選擇 [建立新的],然後輸入您的 CloudWatch 記錄檔群組名稱或 Firehose 串流名稱,或選擇 [選取現有的],然後選擇您的 CloudWatch 記錄檔記錄群組名稱或 Firehose 串流名稱。

    10. 對於標籤,為了幫助您管理叢集和其他 ElastiCache 資源,您可以將自己的中繼資料以標記的形式指派給每個資源。如需詳細資訊,請參閱為您的 ElastiCache 資源加上標籤

    11. 選擇下一步

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

    On premises
    1. 針對 On premises (內部部署),建議您將 Auto-failover (自動容錯移轉) 保持啟用。如需詳細資訊,請參閱使用異地同步備份將 Redis ElastiCache 的停機時間最小化

    2. 按照使用 Outposts 的步驟執行。

若要使用 ElastiCache API 或 AWS CLI 不使用 ElastiCache 主控台建立對等項目,請參閱下列內容:

一旦叢集的狀態變為可用,您就可以為其授予 EC2 存取權限、連線至叢集並開始使用叢集。如需更多詳細資訊,請參閱「步驟3:授予叢集的存取權」及「步驟 4:連線至叢集的節點」。

重要

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

若要使用建立叢集 AWS CLI,請使用create-cache-cluster指令。

重要

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

建立 Redis (停用叢集模式) 叢集 (CLI)

範例 - 不含讀取僅供讀取複本的 Redis (停用叢集模式) 叢集

下列 CLI 程式碼會建立不含任何複本節點的 Redis (停用叢集模式) 快取叢集。

注意

使用 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:::my_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:::my_bucket/snapshot.rdb

建立 Redis (啟用叢集模式) 叢集 (AWS CLI)

無法使用 create-cache-cluster 作業建立 Redis (啟用叢集模式) 叢集 (API/CLI:複寫群組)。若要建立 Redis (啟用叢集模式) 叢集 (API/CLI:複寫群組),請參閱「從頭建立 Redis (啟用叢集模式) 複寫群組 (AWS CLI)」。

如需詳細資訊,請參閱〈 AWS CLI 供 ElastiCache 參考〉主題create-replication-group

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

重要

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

建立 Redis (叢集模式已停用) 快取叢集 (ElastiCache API)

下列程式碼會建立 Redis (叢集模式停用) 快取叢集 (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>

在 Redis 中建立快取叢集 (啟用叢集模式) (ElastiCache API)

無法使用 CreateCacheCluster 作業建立 Redis (啟用叢集模式) 叢集 (API/CLI:複寫群組)。若要建立 Redis (啟用叢集模式) 叢集 (API/CLI:複寫群組),請參閱「從頭開始在 Redis (啟用叢集模式) 建立複寫群組 (ElastiCache API)」。

如需詳細資訊,請參閱 ElastiCache API 參考主題CreateReplicationGroup