建立永久磁碟的快照

請為區域永久磁碟地區永久磁碟建立快照,以便定期備份磁碟中的資料。如要降低非預期的資料遺失風險,請考慮採用設定快照排程的最佳做法,確保系統會定期備份資料。

如果您要刪除快照,或是把快照上的資料還原至永久磁碟,請參閱還原和刪除永久磁碟快照

事前準備

您甚至可以為已連結到執行中執行個體的磁碟建立快照。快照是全球資源,因此,任何快照都可由同一專案內的任何資源存取。您也可以跨專案共用快照。請注意,快照與公開映像檔自訂映像檔不同;這兩種映像檔主要用於為執行個體建立開機磁碟,或是為執行個體範本設定開機磁碟。

快照中的資料是逐量增加的,而且會自動壓縮。因此,相較於定期建立完整磁碟映像檔,定期建立永久磁碟快照不僅速度更快,成本也能大幅降低。增量快照的運作模式如下:

  • 第一個成功建立的永久磁碟快照是完整快照,其中包含永久磁碟上的所有資料。
  • 第二個快照僅包含第一個快照建立後新增或修改過的資料。在第一個快照建立後未曾更動的資料不會包含在第二個快照中, 而第二個快照會包含第一個快照中所有未更動資料的參照。
  • 第三個快照包含第二個快照建立後新增或變更過的資料,但不會加入第一個快照或第二個快照中任何未經修改的資料。第三個快照會包含第一個快照與第二個快照中所有未更動資料區塊的參照。

後續所有的永久磁碟快照皆會重複採用相同模式,以上一次成功建立的快照為基礎來進行備份。

說明如何建立快照的圖表

Compute Engine 會將每個快照的多個複本儲存在不同位置,同時也會自動使用檢查碼機制確保資料完整性。您可使用身分與存取權管理角色跨專案共用快照。

如要查看專案可用的快照清單,請使用 gcloud compute snapshots list 指令:

gcloud compute snapshots list

如要列出特定快照的資訊 (例如建立時間、大小及來源磁碟),請使用 gcloud compute snapshots describe 指令:

gcloud compute snapshots describe [SNAPSHOT_NAME]

其中,[SNAPSHOT_NAME] 是快照名稱,這是您要查看的快照資訊所屬快照。

選取快照的儲存位置

當您建立快照時,可以指定儲存位置。快照的位置會影響其可用性,而且在建立快照或將快照還原至新磁碟時,可能會產生網路費用

快照可儲存在單一 Cloud Storage 多地區位置 (例如 asia),或是單一 Cloud Storage 地區位置 (例如 asia-south1)。

多地區儲存位置會提供較高的可用性,且可能會減少在建立或還原快照時產生的網路費用。舉例來說,當您利用儲存在多地區位置的快照建立磁碟時,只要新的永久磁碟是建立在該多地區群組中的某個地區,就不會產生網路費用。 單一地區儲存位置可讓您更有效地控制資料的實際位置,因為您指定了單一地區。

如果您有包含資源位置限制組織政策,您指定的任何快照儲存位置都必須位於限制所定義的該組位置中。詳情請參閱 Compute Engine 資源位置

如果您未指定快照的儲存位置,GCP 會使用預設位置,將快照儲存在最接近來源磁碟地區的 Cloud Storage 多地區位置。如果您需要選擇單一地區儲存空間,或指定不同的多地區位置,請將快照儲存在自訂位置

預設位置

如果您未指定儲存位置,則快照會儲存在地理位置上最接近永久磁碟位置的多地區中。

例如,如果永久磁碟儲存在 us-central1 中,快照將依預設儲存在 us 多地區中。

但是,諸如 australia-southeast1 等預設位置不在多地區範圍內。最近的多地區為 asia。建立或還原快照會產生網路費用

以下為選擇預設位置儲存快照的使用範例:

  • 預設多地區位置符合企業或政府的資料放置政策。
  • 永久磁碟儲存在屬於預設多地區位置的單一地區位置。例如,永久磁碟位於 us-central1 地區,則預設多地區為 us。在此使用案例中,與可能較低的快照還原效能相比,您更希望獲得較高的快照可用性。
  • 您不想讓快照頻繁還原至預設快照儲存位置外部的磁碟。

自訂位置

如果您要將快照儲存在單一地區位置,或需要指定不同的多地區位置,請選取自訂位置。

以下為選取自訂儲存位置儲存快照的使用範例:

  • 自訂多地區位置符合企業或政府的資料放置政策。
  • 您的應用程式部署在未列入任何 Cloud Storage 多地區位置的地區中,且與快照可用性相比,您更在乎快照還原效能。
  • 您從預設快照儲存位置外部的磁碟多次還原快照。

如果您需要遵循企業或政府的資料放置政策,請將快照儲存在符合這些政策的最近單一地區位置。

如果您的應用程式未部署在屬於多地區的位置中,且與高快照可用性相比,您更在乎降低網路費用,那麼請將快照儲存在來源磁碟所在地區。只要將快照儲存在來源磁碟的所在地區,就能將從該來源磁碟還原與建立快照的網路費用降到最低。

但是,與多地區儲存位置不同的是,單一地區儲存位置不會以備援的形式跨多個資料中心儲存資料,因此,如果發生大規模中斷情形,可能無法存取資料。為了確保資料的可用性,您可能也想將備援快照儲存在第二個位置。

網路費用

如果您要盡量降低網路費用,選取快照的儲存位置是非常重要的。 只要您把快照儲存在來源磁碟的所在地區,當您從相同的地區存取該快照時,就不會產生網路費用。但如果您從另一個地區存取該快照,就會產生網路費用。

如果來源磁碟所在的地理位置與它的多地區位置相同,就不會產生網路費用。

舉例來說,如果您的來源磁碟位於 asia-east1-a,您可以把快照儲存在 asia-east1 地區或 asia 多地區。當您存取自己的快照時,就不會產生網路費用。

跨地區的存取作業會產生網路費用。舉例來說,如果您的來源磁碟位於 asia-east1,而您將快照儲存在 asia-east2,當您跨這兩個地區來存取快照時,就會產生網路費用。

australia-southeast1southamerica-east1 這兩個地區都有預設的多地區快照儲存位置,因此您必須在建立快照時覆寫預設位置,否則就會產生網路費用。

  • 如果來源磁碟位於 australia-southeast1,預設的快照儲存位置就是在 asia 多地區。如要降低費用,請覆寫這個預設位置,並將快照儲存在 australia-southeast1 地區。
  • 如果來源磁碟位於 southamerica-east1,預設的快照儲存位置就是在 us 多地區。如要降低費用,請覆寫這個預設位置,並將快照儲存在 southamerica-east1 地區。

如果您將快照還原到某個磁碟,而該磁碟的所在地區並不在該快照的儲存位置中,就會產生網路費用。舉例來說,如果您利用儲存在多地區位置 asia 的快照,在 australia-southeast1 中建立新的地區永久磁碟,就會產生網路費用。

建立快照

當您在準備建立永久磁碟的快照時,請進行下列動作:

建立區域永久磁碟的快照

當您準備好磁碟之後,就可以建立快照。請遵循下列步驟拍攝區域永久磁碟的快照。如果您要使用的永久磁碟位於多個區域中,請按照操作說明建立地區永久磁碟的快照

Console

  1. 前往 Google Cloud Platform Console 的「Create a Snapshot」(建立快照) 頁面。
    前往「Create a Snapshot」(建立快照) 頁面
  2. 輸入快照的「Name」(名稱)
  3. 您也可以輸入快照的「Description」(說明)
  4. 從下拉式選單中選取 [Source disk] (來源磁碟)
  5. 決定快照儲存位置。您可以使用預設儲存位置自訂儲存位置

    1. 在「Location」(位置) 底下,選取您要將快照儲存在 [Multi-regional] (多地區) 位置還是 [Regional] (單一地區) 位置。
    2. 選取要使用的特定地區或多地區。如要使用最接近來源磁碟的地區或多地區,請選取 [Based on disk's location (default)] (根據磁碟位置 (預設))
  6. 按一下 [Create] (建立) 以建立快照。

gcloud

在預設儲存位置或所選儲存位置建立快照。

  • 如要在預設儲存位置中為區域永久磁碟建立快照,請使用 gcloud compute disks snapshot 指令:

    gcloud compute disks snapshot [DISK_NAME]
    

    其中:

    • [DISK_NAME] 是您要用來建立快照的區域永久磁碟名稱。
  • 或者,如要在自訂儲存位置中建立快照,請使用 --storage-location 標記來指示快照的儲存位置:

    gcloud compute disks snapshot [DISK_NAME] \
        --storage-location [STORAGE_LOCATION]
    

    其中:

gcloud 指令列工具會等到作業傳回 READYFAILED 狀態之後,或是等到作業達到逾時時間上限,並傳回已知的最新快照詳細資料之後,才會開始運作。

API

在預設儲存位置或所選儲存位置建立快照。

  • 如要在預設儲存位置建立快照,請對 disks.createSnapshot 方法發出 POST 要求:

    POST https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/disks/[DISK_NAME]/createSnapshot
    

    其中:

    • [PROJECT_ID] 是您的專案 ID。
    • [ZONE] 是您的執行個體及磁碟所在區域。
    • [DISK_NAME] 是您要用來建立快照的區域永久磁碟名稱。
  • 或者,如要在自訂儲存位置建立快照,請對 disks.createSnapshot 方法發出 POST 要求,然後指定儲存位置:

    POST https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/disks/[DISK_NAME]/createSnapshot
    
    {
      "storageLocations": [STORAGE_LOCATION]
    }
    

    其中:

    • [PROJECT_ID] 是您的專案 ID。
    • [ZONE] 是您的執行個體及磁碟所在區域。
    • [DISK_NAME] 是您要用來建立快照的區域永久磁碟名稱。
    • [STORAGE_LOCATION] 是您要儲存快照位置的 Cloud Storage 多地區Cloud Storage 地區。您只能指定一個儲存位置。

建立地區永久磁碟的快照

當您準備好磁碟之後,就可以建立快照。建立地區永久磁碟的快照時,您必須指示磁碟所在的地區。

Console

  1. 前往 Google Cloud Platform Console 的「Snapshots」(快照) 頁面。
    前往「SNAPSHOTS」(快照) 頁面
  2. 輸入快照的「Name」(名稱)
  3. 視需要輸入快照的「Description」(說明)
  4. 在「Source disk」(來源磁碟) 底下,選取您要用來建立快照的現有磁碟。
  5. (選用) 您可以指定自訂儲存位置

    1. 在「Location」(位置) 底下,選取您要將快照儲存在 [Multi-regional] (多地區) 位置還是 [Regional] (單一地區) 位置。
    2. 選取要使用的特定地區或多地區。如要使用最接近來源磁碟的地區或多地區,請選取 [Based on disk's location] (根據磁碟位置)
  6. 按一下 [Create] (建立) 以建立快照。

gcloud

在預設儲存位置或所選儲存位置建立快照。

  • 如要在預設儲存位置中為地區永久磁碟建立快照,請使用 gcloud compute disks snapshot 指令:

    gcloud compute disks snapshot [DISK_NAME] \
        --region [REGION]
    

    其中:

    • [DISK_NAME] 是您要用來建立快照的地區永久磁碟名稱。
    • [REGION] 是地區永久磁碟所在地區。
  • (選用) 您可以指定自訂儲存位置

    gcloud compute disks snapshot [DISK_NAME] --region [REGION] \
        --storage-location [STORAGE_LOCATION]
    

    其中:

    • [DISK_NAME] 是您要用來建立快照的地區永久磁碟名稱。
    • [REGION] 是地區永久磁碟所在地區。
    • [STORAGE_LOCATION] 是您要儲存快照位置的 Cloud Storage 多地區Cloud Storage 地區。您只能指定一個儲存位置。

    gcloud 指令列工具會等到作業傳回 READYFAILED 狀態之後,或是等到作業達到逾時時間上限,並傳回已知的最新快照詳細資料之後,才會開始運作。

API

  • 如要在預設儲存位置建立快照,請對 regionDisk.createSnapshot 方法發出 POST 要求:

    POST https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/[REGION]/disks/[DISK_NAME]/createSnapshot
    

    其中:

    • [PROJECT_ID] 是您的專案 ID。
    • [REGION] 是地區永久磁碟的所在地區。
    • [DISK_NAME] 是您要建立快照的磁碟名稱。
  • 或者,如要在自訂儲存位置建立快照,請對 regionDisk.createSnapshot 方法發出 POST 要求,然後指定儲存位置:

    POST https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/regions/[REGION]/disks/[DISK_NAME]/createSnapshot
    {
     "storageLocations": [STORAGE_LOCATION]
    }
    

    其中:

    • [PROJECT_ID] 是您的專案 ID。
    • [REGION] 是地區永久磁碟的所在地區。
    • [DISK_NAME] 是您要用來建立快照的地區永久磁碟名稱。
    • [STORAGE_LOCATION] 是您要儲存快照位置的 Cloud Storage 多地區Cloud Storage 地區。您只能指定一個儲存位置。

後續步驟

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Compute Engine 說明文件