在某些情況下,您可能需要將即時快照複製到來源磁碟以外的可用區或區域。可能包括:
- 在刪除來源磁碟前,請先保留即時快照中的資料,因為刪除磁碟會連帶刪除即時快照。
- 將即時快照儲存在不同位置,避免可用區或區域中斷服務時受到影響。
- 將含有事件或專案里程碑資料的即時快照移至長期儲存空間。
- 使用某個位置的即時快照,在另一個位置建立新磁碟。
在這些情況下,您必須從即時快照建立標準或封存快照,並使用新建立的快照。新的標準或封存快照會儲存為磁碟現有快照鏈中的增量資源。
本頁說明如何從即時快照建立標準或封存快照。
事前準備
-
如果尚未設定驗證,請先完成設定。
驗證可確認您的身分,以便存取 Google Cloud 服務和 API。如要從本機開發環境執行程式碼或範例,請選取下列其中一個選項,向 Compute Engine 進行驗證:
選取這個頁面上範例的預計用途分頁:
控制台
使用 Google Cloud 控制台存取 Google Cloud 服務和 API 時,不需要設定驗證。
gcloud
-
安裝 Google Cloud CLI。 完成後,執行下列指令來初始化 Google Cloud CLI:
gcloud init若您採用的是外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
-
- 設定預設區域和可用區。
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。
安裝 Google Cloud CLI。
如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
詳情請參閱 Google Cloud 驗證說明文件中的「使用 REST 進行驗證」。
所需角色和權限
如要取得從即時快照建立標準快照所需的權限,請要求管理員在專案中授予您下列 IAM 角色:
- Compute 執行個體管理員 (v1) (
roles/compute.instanceAdmin.v1) -
如要連線至附加服務帳戶的 VM,請授予「服務帳戶使用者 (v1)」 (
roles/iam.serviceAccountUser) 角色。
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
這些預先定義的角色具備從即時快照建立標準快照所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:
所需權限
您必須具備下列權限,才能透過即時快照建立標準快照:
-
compute.snapshots.create新標準快照的目的地專案 -
compute.instantSnapshots.useReadOnly即時快照
限制
如果即時快照的來源磁碟是以客戶提供的加密金鑰 (CSEK) (已淘汰) 加密,則即時快照也會以相同的金鑰加密。因此,如要從 CSEK 加密的即時快照建立標準快照,您必須提供用於加密來源磁碟的金鑰。
每 60 分鐘最多可為個別磁碟建立 6 個標準快照。這項限制也適用於從磁碟的即時快照建立標準快照。
從即時快照建立標準或封存快照
您可以使用 gcloud CLI、 Google Cloud 控制台或 REST,從即時快照建立標準快照或封存快照。
控制台
找出即時快照:
前往 Google Cloud 控制台的「Snapshots」(快照) 頁面。
按一下「即時快照」分頁標籤。
在「Name」(名稱) 欄中,記下要還原的快照名稱。
按一下 [Create snapshot] (建立快照)。
在「名稱」欄位中,輸入可識別快照的不重複名稱。
選用。在「說明」欄位中新增快照的詳細資料。
在「快照來源類型」下方,選擇「即時快照」。
在「來源即時快照」清單中,選取要使用的即時快照。
在「Type」(類型) 部分,選擇「Snapshot」(快照) 或「Archive snapshot」(封存快照)。
在「Location」(位置) 部分,選擇快照儲存位置。 系統會自動選取快照設定中指定的預先定義或自訂預設位置。如要覆寫快照設定,將快照儲存在自訂儲存位置,請執行下列步驟:
選擇快照的儲存位置類型。
- 若選擇「Multi-regional」(多區域) ,費用較高但提供較高可用性。
- 選擇「Regional snapshots」(區域快照) ,便能以較低的費用 進一步控管資料的實際位置。
在「Select location」(選取位置) 欄位,選擇要使用的特定區域或多區域。如要使用離來源磁碟最近的區域或多區域,請選取「Based on disk's location」(以磁碟位置為準)。
如果即時快照已透過 CSEK 加密,請提供加密金鑰:
- 在「Decryption」(解密) 部分,在「Encryption key」(加密金鑰) 欄位中輸入加密金鑰。
- 如果金鑰是以公開 RSA 金鑰包裝,請選取「包裝金鑰」。
按一下 [Create] (建立) 以建立快照。
gcloud
使用 gcloud compute snapshots create 指令,從可用區或區域即時快照建立標準快照或封存快照。視即時快照是可用區或區域磁碟而定,您會使用不同的旗標。
可用區即時快照
使用快照設定中定義的儲存位置政策,或使用您選擇的替代儲存位置,從可用區即時快照建立標準或封存快照。詳情請參閱「選擇快照儲存位置」。
- 如要在快照設定中指定的預先定義或自訂預設位置建立標準快照或封存快照,請使用下列指令:
gcloud compute snapshots create NEW_STANDARD_SNAPSHOT_NAME \ --source-instant-snapshot=SRC_INSTANT_SNAPSHOT_NAME \ --source-instant-snapshot-zone=SOURCE_ZONE \ --snapshot-type=SNAPSHOT_TYPE
將下列項目替換為對應的值:
NEW_STANDARD_SNAPSHOT_NAME:新標準快照的專屬名稱。SRC_INSTANT_SNAPSHOT_NAME:來源即時快照的名稱。SOURCE_ZONE:即時快照所在的可用區。SNAPSHOT_TYPE:要建立的快照類型,可以是STANDARD或ARCHIVE。如果省略此旗標,系統會建立標準快照。如要覆寫快照設定,在自訂儲存位置建立標準或封存快照,請加入
--storage-location標記,指出快照的儲存位置:
gcloud compute snapshots create NEW_STANDARD_SNAPSHOT_NAME \ --source-instant-snapshot=SRC_INSTANT_SNAPSHOT_NAME \ --source-instant-snapshot-zone=SOURCE_ZONE \ --storage-location=STORAGE_LOCATION \ --snapshot-type=SNAPSHOT_TYPE
將下列項目替換為對應的值:
NEW_STANDARD_SNAPSHOT_NAME:新快照的專屬名稱。SRC_INSTANT_SNAPSHOT_NAME:來源即時快照的名稱。SOURCE_ZONE:即時快照所在的可用區。STORAGE_LOCATION:如果是自訂儲存位置,這是指您要儲存快照的 Cloud Storage 多區域或 Cloud Storage 區域。您只能指定一個儲存位置。只有在想覆寫快照設定中預先定義或自訂的預設儲存位置時,才使用
--storage-location標記。SNAPSHOT_TYPE:要建立的快照類型,可以是STANDARD或ARCHIVE。如果省略此旗標,系統會建立標準快照。
區域性即時快照
使用快照設定中定義的儲存位置政策,或使用您選擇的替代儲存位置,從區域即時快照建立標準或封存快照。詳情請參閱「選擇快照儲存位置」。
- 如要在快照設定中指定的預先定義或自訂預設位置建立標準快照或封存快照,請使用下列指令:
gcloud compute snapshots create NEW_STANDARD_SNAPSHOT_NAME \ --source-instant-snapshot=SRC_INSTANT_SNAPSHOT_NAME \ --source-instant-snapshot-region=SOURCE_REGION \ --snapshot-type=SNAPSHOT_TYPE
將下列項目替換為對應的值:
NEW_STANDARD_SNAPSHOT_NAME:新標準快照的專屬名稱。SRC_INSTANT_SNAPSHOT_NAME:來源即時快照的名稱。SOURCE_REGION:即時快照所在的區域。SNAPSHOT_TYPE:要建立的快照類型,可以是STANDARD或ARCHIVE。如果省略此旗標,系統會建立標準快照。如要覆寫快照設定,在自訂儲存位置建立標準或封存快照,請加入
--storage-location標記,指出快照的儲存位置:
gcloud compute snapshots create NEW_STANDARD_SNAPSHOT_NAME \ --source-instant-snapshot=SRC_INSTANT_SNAPSHOT_NAME \ --source-instant-snapshot-region=SOURCE_REGION \ --storage-location=STORAGE_LOCATION \ --snapshot-type=SNAPSHOT_TYPE
將下列項目替換為對應的值:
NEW_STANDARD_SNAPSHOT_NAME:新快照的專屬名稱。SRC_INSTANT_SNAPSHOT_NAME:來源即時快照的名稱。SOURCE_REGION:即時快照所在的區域。STORAGE_LOCATION:如果是自訂儲存位置,這是指您要儲存快照的 Cloud Storage 多區域或 Cloud Storage 區域。您只能指定一個儲存位置。只有在想覆寫快照設定中預先定義或自訂的預設儲存位置時,才使用
--storage-location標記。SNAPSHOT_TYPE:要建立的快照類型,可以是STANDARD或ARCHIVE。如果省略這個旗標,系統會建立標準快照。
REST
如要從可用區或區域即時快照建立標準快照,請對 snapshots.insert 方法提出 POST 要求。
API 要求屬性取決於即時快照是可用區磁碟還是區域磁碟。
可用區即時快照
使用快照設定定義的儲存位置政策,或使用您選擇的其他儲存位置,從可用區即時快照建立標準或封存快照。詳情請參閱「選擇快照儲存位置」。
如要在快照設定中指定的預先定義或自訂預設位置建立標準或封存快照,請向
snapshots.insert方法提出POST要求。如要覆寫快照設定,在自訂儲存位置建立快照,請在要求中加入
storageLocations屬性。
POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT/global/snapshots
{
"name": "NEW_STANDARD_SNAPSHOT_NAME",
"snapshotType": "NEW_SNAPSHOT_TYPE",
"sourceInstantSnapshot": "projects/SOURCE_PROJECT/zones/SOURCE_ZONE/instantSnapshots/SOURCE_INSTANT_SNAPSHOT_NAME",
"sourceInstantSnapshotEncryptionKey": "SOURCE_ENCRYPTION_KEY"
}
將下列項目替換為對應的值:
DESTINATION_PROJECT:要在其中建立新快照的專案。NEW_STANDARD_SNAPSHOT_NAME:新快照的專屬名稱。NEW_SNAPSHOT_TYPE:要建立的快照類型,可以是STANDARD或ARCHIVE。SOURCE_PROJECT:包含來源即時快照的專案。SOURCE_ZONE:即時快照所在的可用區。SOURCE_INSTANT_SNAPSHOT_NAME:來源即時快照的名稱。SOURCE_ENCRYPTION_KEY:如果即時快照是以客戶提供的金鑰或客戶自行管理的金鑰加密,請將這個值替換為金鑰資訊。否則,您可以省略這項屬性。STORAGE_LOCATION:選用。要儲存快照的 Cloud Storage 多區域或 Cloud Storage 區域。您只能指定一個儲存位置。
只有在想覆寫快照設定中預先定義或自訂的預設儲存位置時,才使用 storageLocations 參數。
區域即時快照
使用快照設定定義的儲存位置政策,或自行選擇其他儲存位置,從區域性即時快照建立區域性標準或封存快照。詳情請參閱「選擇快照儲存位置」。
如要在快照設定中指定的預先定義或自訂預設位置建立標準或封存快照磁碟區,請向 snapshots.insert 方法發出 POST 要求。
POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT/global/snapshots
{
"name": "NEW_STANDARD_SNAPSHOT_NAME",
"snapshotType": "NEW_SNAPSHOT_TYPE",
"sourceInstantSnapshot": "projects/SOURCE_PROJECT/regions/SOURCE_REGION/instantSnapshots/SOURCE_INSTANT_SNAPSHOT_NAME",
"sourceInstantSnapshotEncryptionKey": "SOURCE_ENCRYPTION_KEY"
}
將下列項目替換為對應的值:
DESTINATION_PROJECT:要建立新快照的專案。NEW_STANDARD_SNAPSHOT_NAME:新快照的不重複名稱。NEW_SNAPSHOT_TYPE:要建立的快照類型,可以是STANDARD或ARCHIVE。SOURCE_PROJECT:包含來源即時快照的專案。SOURCE_REGION:即時快照所在的區域。SOURCE_INSTANT_SNAPSHOT_NAME:來源即時快照的名稱。SOURCE_ENCRYPTION_KEY:如果即時快照是以客戶提供的金鑰或客戶管理的金鑰加密,請將這個值替換為金鑰資訊。否則可以省略這項屬性。
API 要求回應
如果 POST 要求成功,回應主體會是物件,您可以輪詢該物件,取得快照建立狀態。詳情請參閱「處理 API 回應」。
後續步驟
- 瞭解如何跨專案共用標準快照。
- 瞭解如何從標準快照建立 VM。
- 取得協助,排解建立標準快照時發生的錯誤,以及建立即時快照時發生的錯誤。