本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用外部建立的快照尋找新叢集
當您建立新的 MemoryDB 叢集時,您可以使用 Valkey 或 Redis .rdb OSS 快照檔案的資料將其植入。
若要從 MemoryDB 快照或 ElastiCache (Redis OSS) 快照植入新的 MemoryDB 叢集,請參閱 從快照還原。
當您使用 .rdb 檔案植入新的 MemoryDB 叢集時,您可以執行下列動作:
-
在新叢集中指定一些碎片。此數字可能與用於建立快照檔案的叢集中的碎片數量不同。
-
為新叢集指定不同的節點類型,其大小等於或小於製作快照的叢集中使用的節點類型。如果您擴展到較小的節點類型,請確定新的節點類型有足夠的記憶體來容納資料和引擎額外負荷。
重要
-
您必須確保快照資料不超過節點的資源。
如果快照太大,產生的叢集狀態為
restore-failed
。如果發生此情況,您必須刪除叢集並重新開始。如需節點類型和規格的完整清單,請參閱 MemoryDB 節點類型特定參數。
-
您只能使用 Amazon S3 伺服器端加密 (SSE-S3) 加密 .rdb 檔案。如需詳細資訊,請參閱使用伺服器端加密保護資料。
步驟 1:在外部叢集上建立快照
建立快照以植入 MemoryDB 叢集
如需建立快照的詳細資訊,請參閱持久性
步驟 2:建立 Amazon S3 儲存貯體和資料夾
建立快照檔案後,您需要將其上傳至 Amazon S3 儲存貯體中的資料夾。若要執行此操作,您必須先擁有 Amazon S3 儲存貯體,且該儲存貯體中有資料夾。如果您已有具備適當許可的 Amazon S3 儲存貯體和資料夾,您可以跳到「步驟 3:將快照上傳至 Amazon S3」。
建立 Amazon S3 儲存貯體
-
登入 AWS Management Console 並在 開啟 Amazon S3 主控台https://console.aws.amazon.com/s3/
。 -
依照 Amazon Simple Storage Service 使用者指南中的建立儲存貯體提供的指引操作,建立 Amazon S3 儲存貯體。
Amazon S3 儲存貯體的名稱必須符合 DNS。否則,MemoryDB 無法存取您的備份檔案。DNS 合規規則包括:
-
名稱長度須為 3 到 63 個字元。
-
名稱必須是一連串一或多個標籤,並以句號 (.) 分隔,其中每個標籤:
-
以小寫字母或數字開頭。
-
以小寫字母或數字結尾。
-
僅包含小寫字母、數字和破折號。
-
-
不得使用 IP 地址格式 (例如 192.0.2.0)。
強烈建議您在與新 MemoryDB 叢集相同的 AWS 區域中建立 Amazon S3 儲存貯體。此方法可確保當 MemoryDB 從 Amazon S3 讀取您的 .rdb 檔案時,資料傳輸速度最高。
注意
為了讓您的資料盡可能保持安全,請盡可能限制您 Amazon S3 儲存貯體的許可。同時, 許可仍然需要允許儲存貯體及其內容用於植入您的新 MemoryDB 叢集。
-
在 Amazon S3 儲存貯體中新增資料夾
-
登入 AWS Management Console 並在 開啟 Amazon S3 主控台https://console.aws.amazon.com/s3/
。 -
選擇您要上傳 .rdb 檔案的目的地儲存貯體名稱。
-
選擇 Create folder (建立資料夾)。
-
輸入您的新資料夾名稱。
-
選擇 Save (儲存)。
記下儲存貯體名稱和資料夾名稱。
步驟 3:將快照上傳至 Amazon S3
現在,上傳您在步驟 1:在外部叢集上建立快照中建立的 .rdb 檔案 上傳到在 步驟 2:建立 Amazon S3 儲存貯體和資料夾 中建立的 Amazon S3 儲存貯體和資料夾。如需此任務的詳細資訊,請參閱上傳物件。在步驟 2 到 3 之間,選擇您已建立的資料夾名稱。
將 .rdb 檔案上傳到 Amazon S3 資料夾
-
登入 AWS Management Console 並在 開啟 Amazon S3 主控台https://console.aws.amazon.com/s3/
。 -
選擇您在步驟 2 中建立的 Amazon S3 儲存貯體名稱。
-
選擇您在步驟 2 中建立的資料夾名稱。
-
選擇上傳。
-
選擇 Add files (新增檔案)。
-
瀏覽至您要上傳的一或多個檔案,然後選擇一或多個檔案。若要選擇多個檔案,請按住 Ctrl 鍵並選擇每個檔案名稱。
-
選擇 Open (開啟)。
-
確認上傳頁面中列出正確的檔案,然後選擇上傳 。
記下 .rdb 檔案的路徑。例如,如果您的儲存貯體名稱為 myBucket
且路徑為 myFolder/redis.rdb
,請輸入 myBucket/myFolder/redis.rdb
。您需要此路徑,才能使用此快照中的資料為新叢集植入。
如需詳細資訊,請參閱 Amazon Simple Storage Service 使用者指南 中的儲存貯體命名規則。
步驟 4:授予 MemoryDB 對 .rdb 檔案的讀取存取權
AWS 2019 年 3 月 20 日之前引入的區域預設為啟用。您可以立即開始在這些 AWS 區域中工作。2019 年 3 月 20 日之後引入的區域預設為停用。您必須啟用或選擇加入這些區域,才能使用它們,如管理 AWS 區域 中所述。
授予 MemoryDB 對 .rdb 檔案的讀取存取權
授予對快照檔案的 MemoryDB 讀取存取權
-
登入 AWS Management Console 並在 開啟 Amazon S3 主控台https://console.aws.amazon.com/s3/
。 -
選擇包含您 .rdb 檔案的 S3 儲存貯體名稱。
-
選擇包含您 .rdb 檔案的資料夾名稱。
-
選擇 .rdb 快照檔案的名稱。所選檔案的名稱將會顯示在頁面頂端的標籤上方。
-
選擇許可索引標籤標籤。
-
在 Permissions (許可) 中,選擇 Bucket policy (儲存貯體政策),然後選擇 Edit (編輯)。
-
更新政策以授予 MemoryDB 執行操作所需的許可:
將
[ "Service" : "
新增至region-full-name
.memorydb-snapshot.amazonaws.com" ]Principal
。新增下列將快照匯出至 Amazon S3 儲存貯體所需的許可:
"s3:GetObject"
"s3:ListBucket"
"s3:GetBucketAcl"
以下是已更新政策可能有的外觀範例。
{ "Version": "2012-10-17", "Id": "Policy15397346", "Statement": [ { "Sid": "Stmt15399483", "Effect": "Allow", "Principal": { "Service": "us-east-1.memorydb-snapshot.amazonaws.com" }, "Action": [ "s3:GetObject", "s3:ListBucket", "s3:GetBucketAcl" ], "Resource": [ "arn:aws:s3:::example-bucket", "arn:aws:s3:::example-bucket/snapshot1.rdb", "arn:aws:s3:::example-bucket/snapshot2.rdb" ] } ] }
選擇 Save (儲存)。
步驟 5:使用 .rdb 檔案資料種子 MemoryDB 叢集
現在,您已準備好建立 MemoryDB 叢集,並使用來自 .rdb 檔案的資料將其植入。若要建立叢集,請遵循 的指示建立 MemoryDB 叢集。
您用來告訴 MemoryDB 在何處尋找您上傳到 Amazon S3 的快照的方法取決於您用來建立叢集的方法:
使用 .rdb 檔案資料種子 MemoryDB 叢集
-
使用 MemoryDB 主控台
選擇引擎後,請展開進階設定區段,然後尋找將資料匯入叢集 。在種子RDB檔案 S3 位置方塊中,輸入檔案的 Amazon S3 路徑 (Amazon S3)。如果您有多個 .rdb 檔案,請以逗號分隔清單輸入每個檔案的路徑。Amazon S3 路徑看起來像
。myBucket
/myFolder
/myBackupFilename
.rdb -
使用 AWS CLI
如果您使用
create-cluster
或create-cluster
操作,請使用 參數--snapshot-arns
來指定ARN每個 .rdb 檔案的完整資格。例如:arn:aws:s3:::
。必須ARN解析為您儲存在 Amazon S3 中的快照檔案。myBucket
/myFolder
/myBackupFilename
.rdb -
使用 MemoryDB API
如果您使用
CreateCluster
或CreateCluster
MemoryDB API操作,請使用 參數SnapshotArns
來指定ARN每個 .rdb 檔案的完整資格。例如:arn:aws:s3:::
。必須ARN解析為您儲存在 Amazon S3 中的快照檔案。myBucket
/myFolder
/myBackupFilename
.rdb
在建立叢集的過程中,快照中的資料會寫入叢集。您可以檢視 MemoryDB 事件訊息來監控進度。若要執行此操作,請參閱 MemoryDB 主控台,然後選擇事件 。您也可以使用 AWS MemoryDB 命令列介面或 MemoryDB API 來取得事件訊息。