複製 Amazon EC2 AMI
若需要跨多個區域採用一致的 Amazon EC2 執行個體組態,您可將單一 Amazon Machine Image (AMI) 用做範本來啟動所有執行個體。然而,AMI 是區域特定資源,如需在特定 AWS 區域 中啟動執行個體,AMI 必須位於該區域。因此,如需在多個區域採用同一個 AMI,必須從來源區域複製該 AMI 到每個目標區域。
您用於複製 AMI 的方法,視乎您是要跨同一分區內的區域,還是跨不同分區進行複製而定:
-
跨區域複製 – 跨同一分區內的區域複製 AMI,舉例來說,跨商業分區內的區域。本主題介紹了此複製方法。
-
跨分區複製 – 從一個分區複製 AMI 到另一個分區,舉例來說,從商業分區複製到 AWS GovCloud (US) 分區。若要了解此方法的相關詳細資訊,請參閱 存放和還原 AMI。
-
跨帳戶複製 – 建立另一個 AWS 帳戶與您的 AWS 帳戶共享的 AMI 副本。本主題介紹了此複製方法。
跨區域與跨帳戶 AMI 複製的複製操作完成所花時間為盡力而為。若需要控制完成時間,您可指定從 15 分鐘至 48 小時的完成時段,並確保在所需時間範圍內複製 AMI。基於時間的 AMI 複製操作適用額外費用。若要了解詳細資訊,請參閱 Amazon EBS 使用者指南中的基於時間的複製。
考量事項
-
複製 AMI 的許可 - 您可以使用 IAM 政策來授予或拒絕使用者複製 AMI 的許可。自 2024 年 10 月 28 日起,您可在來源 AMI 指定 CopyImage 動作的資源層級許可。新 AMI 的資源層級許可與以前一樣可用。
-
啟動許可與 Amazon S3 儲存貯體許可 - AWS 不會將啟動許可或 Amazon S3 儲存貯體許可從來源 AMI 複製到新的 AMI。複製操作完成後,您可將啟動許可和 Amazon S3 儲存貯體許可套用至新的 AMI。
-
標籤 - 您只能複製連接至來源 AMI 的使用者定義之 AMI 標籤。將不會複製連接至其他 AWS 帳戶 的系統標籤 (字首為 aws:) 和使用者定義的標籤。當複製 AMI 時,您可以連接新標籤至新 AMI 及其備份快照。
-
基於時間的 AMI 複製配額 – 在達到累積快照複製輸送量配額之後,後續基於時間的 AMI 複製請求會失敗。若要了解詳細資訊,請參閱 Amazon EBS 使用者指南中的基於時間的複製配額。
-
受支援的來源目的地複製 – 來源 AMI 的位置會決定您是否可以複製,及新的 AMI 允許的目的地:
-
若來源 AMI 位於一個區域,您可在該區域內對其進行複製、複製到另一個區域、複製到與該區域關聯的 Outpost,或者複製到該區域中的本機區域。
-
如果來源 AMI 位於本機區域,您可以在該本機區域內進行複製、將其複製到該本機區域的父區域,或複製到具有相同父區域的某些其他本機區域。
-
若來源 AMI 位於 Outpost,則您無法將其複製。
-
來源和目的地的 CLI 參數 – 若使用 CLI,會支援以下參數,以便指定待複製 AMI 的來源位置及新 AMI 的目的地。請注意,必須在目的地區域啟動複製操作;若省略 --region 參數,目的地會假設為您在 AWS CLI 設定中設定的預設區域。
| 來源至目的地 |
來源參數 |
目的地參數 |
| 區域至區域 |
--source-region |
--region |
| 區域至 Outpost |
--source-region |
--destination-outpost-arn (Outpost 的 ARN) |
| 區域至本機區域 |
--source-region
必須為本機區域的父區域。
|
--destination-availability-zone (本機區域名稱) 或 --destination-availability-zone-id (本機區域 ID) |
| 本機區域至區域 |
--source-region
必須為本機區域的父區域。
來源本機區域係由指定之來源 AMI ID 的位置推定。
|
--region
必須為本機區域的父區域。
|
| 本機區域至本機區域 |
--source-region必須為本機區域的父區域。 來源本機區域係由指定之來源 AMI ID 的位置推定。 |
--destination-availability-zone (本機區域名稱) 或 --destination-availability-zone-id (本機區域 ID) |
成本
若未指定完成時間,複製 AMI 無須費用。然而,額外費用適用於基於時間的 AMI 複製操作。若要了解詳細資訊,請參閱 Amazon EBS 使用者指南中的基於時間的複製。
標準儲存與資料傳輸費用適用。如果您複製 EBS 後端 AMI,任何其他 EBS 快照的儲存則都會產生費用。
複製 AMI
您可複製您擁有的 AMI,或者由另一個帳戶共享給您的 AMI。若要了解受支援的來源與目的地組合,請參閱 考量事項。
- Console
-
複製 AMI
前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。
-
從主控台導覽列選取內含該 AMI 的區域。
-
在導覽窗格中選擇 AMI,以顯示您區域可用的 AMI 清單。
-
如果您未看到要複製的 AMI,請選擇其他篩選條件。您可按以下方式篩選 AMI:由我擁有、私有映像、公有映像與已停用映像。
-
選取欲複製的 AMI,然後選擇動作、複製 AMI。
-
在複製 Amazon Machine Image (AMI) 頁面,指定以下資訊:
-
AMI copy name (AMI 複本名稱):新 AMI 的名稱。名稱中可納入作業系統資訊,因為 Amazon EC2 在顯示有關 AMI 的詳細資訊時不提供此資訊。
-
AMI copy description (AMI 複本描述):根據預設,描述包括來源 AMI 的資訊,讓您能夠辨識原始和複本內容。您可視需要變更此描述。
-
Destination region (目的地區域):AMI 複製到的區域。如需詳細資訊,請參閱跨區域複製及 跨帳戶複製。
-
複製標籤:選取此核取方塊可在複製 AMI 時包含使用者定義的 AMI 標籤。將不會複製連接至其他 AWS 帳戶 的系統標籤 (字首為 aws:) 和使用者定義的標籤。
-
基於時間的複製:您可如下所示指定複製操作是在特定時間範圍內完成,還是盡力完成:
-
(EBS 支援的 AMI) 加密 AMI 複本的 EBS 快照:選取此核取方塊來加密目標快照或使用不同金鑰重新加密它們。如果您已啟用預設加密,加密 AMI 複本的 EBS 快照核取方塊已選取且無法清除。如需更多詳細資訊,請參閱 加密和複製。
-
(EBS 支援的 AMI) KMS 金鑰:用於加密目標快照的 KMS 金鑰。
-
標籤:您可以使用相同標籤來標記新 AMI 和新快照,或者可以使用不同標籤來進行標記。
若要新增標籤,請選擇 Add tag (新增標籤),然後輸入標籤的鍵和值。針對每個標籤,重複執行上述動作。
-
當您準備好建立 AMI 時,請選擇複製 AMI。
新 AMI 的初始狀態為 Pending。當狀態為 Available 時,表示 AMI 複製作業完成。
- AWS CLI
-
如需將 AMI 從一個區域複製到另一個區域
使用 copy-image 指令。您必須同時指定來源和目的地區域。請使用 --source-region 參數指定來源區域。您可使用 --region 參數來指定目的地區域 (或省略此參數,假設為您的 AWS CLI 設定中設定的預設區域)。
aws ec2 copy-image \
--source-image-id ami-0abcdef1234567890 \
--source-region us-west-2 \
--name my-ami \
--region us-east-1
在 AMI 複製期間加密目標快照時,務必指定其他這些參數:--encrypted 和 --kms-key-id。
如需從一個區域複製 AMI 到本機區域
使用 copy-image 指令。您必須同時指定來源與目的地。請使用 --source-region 參數指定來源區域。您可使用 --destination-availability-zone 參數來指定目的地本機區域 (您可改為使用 --destination-availability-zone-id)。請注意,您僅可從一個區域複製 AMI 到同一區域內的本機區域。
aws ec2 copy-image \
--source-image-id ami-0abcdef1234567890 \
--source-region cn-north-1 \
--destination-availability-zone cn-north-1-pkx-1a \
--name my-ami \
--region cn-north-1
如需從本機區域複製 AMI 到一個區域
使用 copy-image 指令。您必須同時指定來源與目的地。請使用 --source-region 參數指定來源區域。您可使用 --region 參數來指定目的地區域 (或者省略此參數,假設為您的 AWS CLI 設定中設定的預設區域)。來源本機區域係由指定之來源 AMI ID 的位置推定。請注意,您僅可從本機區域複製 AMI 到其父區域。
aws ec2 copy-image \
--source-image-id ami-0abcdef1234567890 \
--source-region cn-north-1 \
--name my-ami \
--region cn-north-1
如需從一個本機區域複製 AMI 到另一個本機區域
使用 copy-image 指令。您必須同時指定來源與目的地。請使用 --source-region 參數來指定本機區域的來源區域。您可使用 --destination-availability-zone 參數來指定目的地本機區域 (您可改為使用 --destination-availability-zone-id)。來源本機區域係由指定之來源 AMI ID 的位置推定。您可使用 --region 參數來指定目的地區域的父區域 (或者省略此參數,假設為您的 AWS CLI 設定中設定的預設區域)。
aws ec2 copy-image \
--source-image-id ami-0abcdef1234567890 \
--source-region cn-north-1 \
--destination-availability-zone cn-north-1-pkx-1a \
--name my-ami \
--region cn-north-1
- PowerShell
-
如需將 AMI 從一個區域複製到另一個區域
使用 Copy-EC2Image cmdlet。您必須同時指定來源和目的地區域。請使用 -SourceRegion 參數指定來源區域。您可使用 -Region 參數或者 Set-AWSDefaultRegion cmdlet,來指定目的地區域。
Copy-EC2Image `
-SourceImageId ami-0abcdef1234567890 `
-SourceRegion us-west-2 `
-Name my-ami `
-Region us-east-1
在 AMI 複製期間加密目標快照時,務必指定其他這些參數:-Encrypted 和 -KmsKeyId。
如需從一個區域複製 AMI 到本機區域
使用 Copy-EC2Image cmdlet。您必須同時指定來源與目的地。請使用 -SourceRegion 參數指定來源區域。您可使用 -DestinationAvailabilityZone 參數來指定目的地本機區域 (您可改為使用 -DestinationAvailabilityZoneId)。請注意,您僅可從一個區域複製 AMI 到同一區域內的本機區域。
Copy-EC2Image `
-SourceImageId ami-0abcdef1234567890 `
-SourceRegion cn-north-1 `
-DestinationAvailabilityZone cn-north-1-pkx-1a `
-Name my-ami `
-Region cn-north-1
如需從本機區域複製 AMI 到一個區域
使用 Copy-EC2Image cmdlet。您必須同時指定來源與目的地。請使用 -SourceRegion 參數指定來源區域。您可使用 -Region 參數或者 Set-AWSDefaultRegion cmdlet,來指定目的地區域。來源本機區域係由指定之來源 AMI ID 的位置推定。請注意,您僅可從本機區域複製 AMI 到其父區域。
Copy-EC2Image `
-SourceImageId ami-0abcdef1234567890 `
-SourceRegion cn-north-1 `
-Name my-ami `
-Region cn-north-1
如需從一個本機區域複製 AMI 到另一個本機區域
使用 Copy-EC2Image cmdlet。您必須同時指定來源與目的地。請使用 -SourceRegion 參數來指定本機區域的來源區域。您可使用 -DestinationAvailabilityZone 參數來指定目的地本機區域 (您可改為使用 -DestinationAvailabilityZoneId)。來源本機區域係由指定之來源 AMI ID 的位置推定。您可使用 -Region 參數或者 Set-AWSDefaultRegion cmdlet,來指定目的地本機區域的父區域。
Copy-EC2Image `
-SourceImageId ami-0abcdef1234567890 `
-SourceRegion cn-north-1 `
-DestinationAvailabilityZone cn-north-1-pkx-1a `
-Name my-ami `
-Region cn-north-1
停用待定的 AMI 複製作業
您可使用下列程序來停止待定的 AMI 複製。
- Console
-
如需停止 AMI 複製操作
前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。
-
從導覽列中的區域選取器,選取目的地區域。
-
在導覽窗格中,選擇 AMIs (AMI)。
-
選取要停止複製的 AMI,然後選擇動作、取消註冊 AMI。
-
要求確認時,請選擇 Deregister AMI (取消註冊 AMI)。
- AWS CLI
-
如需停止 AMI 複製操作
請使用 deregister-image 命令。
aws ec2 deregister-image --image-id ami-0abcdef1234567890
- PowerShell
-
如需停止 AMI 複製操作
使用 Unregister-EC2Image cmdlet。
Unregister-EC2Image -ImageId ami-0abcdef1234567890