設定執行個體複寫

本指南說明如何使用 Filestore 執行個體複寫功能。

事前準備

  1. 完成使用 Filestore 的設定步驟。執行個體的配額會因專案、區域和層級而異。請確認您有足夠的權限可完成這些工作。詳情請參閱「配額」或「要求增加配額」。

  2. 如果尚未建立 Filestore 執行個體,請先建立。在本指南中,這就是來源執行個體。

為執行個體建立副本

Google Cloud 控制台

  1. 前往 Google Cloud 控制台的 Filestore 執行個體頁面。

    前往 Filestore 執行個體

  2. 找出要複製的執行個體,然後按一下該執行個體的「Instance ID」(執行個體 ID)。

  3. 在「說明」部分中,按一下「複寫」分頁標籤。

  4. 按一下「建立備用資源」

  5. 按一下說明文件連結,查看支援的復原點目標 (RPO),然後點選「下一步」

  6. 填寫所有必填欄位,並視需要填寫選填欄位。

    • 指定的容量必須大於或等於來源容量。
    • 下列規格必須與來源執行個體相符:
    • 為降低資料遺失風險,強烈建議使用者選擇來源專屬的區域和可用區。
  7. 點選「下一步」

  8. 查看詳細資料,然後按一下「下一步」

  9. 點選「建立」

  10. 等待作業完成,完成後,副本會列在「執行個體」頁面的來源執行個體下方。

  11. 按一下副本的執行個體 ID,即可查看詳細資料。

gcloud

  1. 您可以執行 filestore instances create 指令來建立副本執行個體。

    gcloud filestore instances create INSTANCE-ID \
        --source-instance=SOURCE-INSTANCE \
        --project=PROJECT-ID \
        --location=LOCATION \
        --network=name="NETWORK" \
        --tier=TIER \
        --file-share=name="FILE-SHARE-NAME",capacity=FILE-SHARE-SIZE \
    

更改下列內容:

  • INSTANCE-ID 替換為要建立的執行個體名稱,例如 my-replica
  • SOURCE-INSTANCE,並替換為要建立副本的來源執行個體名稱和位置。例如:projects/my-genomics-project/locations/us-east1-b/instances/my-genomics-instance
  • PROJECT-ID 替換為來源執行個體所在 Google Cloud 專案 的專案 ID。
  • LOCATION 替換為要放置副本執行個體的位置,例如 us-central1-a。如果來源位於區域服務層級,您必須為副本指定區域和可用區。
  • NETWORK 替換為要使用的網路名稱,例如 default
  • TIER 改為所需的服務層級,例如 ZONAL。層級和容量範圍必須與來源相符。
  • FILE-SHARE-NAME,並指定執行個體提供的 NFS 檔案共用區名稱,例如 vol1
  • FILE-SHARE-SIZE 替換為檔案共用區的大小,例如 1.25TB。容量必須大於或等於來源,且 (如適用) 必須在相同容量範圍內。

REST API

  1. 安裝並初始化 gcloud CLI,以便為 Authorization 標頭產生存取權杖。

  2. 使用 cURL 呼叫 Filestore API

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      -d '{"tier": "TIER",
          "networks": { "network": "NETWORK" },
          "file_shares": {"name": "SHARE_NAME","capacity_gb": "CAPACITY"},
          "replication": {"replicas":[{"peer_instance": "projects/PROJECT/locations/ACTIVE_LOCATION/instances/ACTIVE_NAME"}], "role":"standby"},
          "description": "DESCRIPTION" }' \
      "https://file.googleapis.com/v1beta1/projects/PROJECT/locations/REPLICA_LOCATION/instances?instanceId=REPLICA_INSTANCE_NAME"
    

    其中:

    • TIER 是您要用於副本的服務層級名稱。例如:REGIONAL
    • NETWORK 是您要用於副本的網路名稱。例如,default。您必須使用與來源相同的網路。
    • SHARE_NAME 是檔案共用區的名稱。例如:vol1
    • CAPACITY 是要為副本分配的大小,單位為 GiB。例如,1024。容量必須大於或等於來源執行個體。
    • PROJECT 是副本所在的專案名稱。例如,my-genomics-project。來源和副本必須位於同一專案。
    • ACTIVE_LOCATION 是來源所在位置。例如:us-east1
    • ACTIVE_NAME 是要複製的執行個體名稱。例如:my-genomics-instance
    • DESCRIPTION 是要建立的副本執行個體說明。例如:My genomics replica
    • REPLICA_LOCATION 是您要備用資源所在的位置。例如:us-central1
    • REPLICA_INSTANCE_NAME 是要建立的副本執行個體名稱。例如:my-genomics-replica

查看執行個體狀態

Google Cloud 控制台

  1. 前往 Google Cloud 控制台的 Filestore 執行個體頁面。

    前往 Filestore 執行個體

  2. 找出要查看的副本,然後按一下該副本的執行個體 ID。

  3. 在「說明」部分中,按一下「複寫」分頁標籤。

  4. 您可以在這裡查看副本狀態上次同步處理點,這是指上次將資料完整副本複製到副本的時間戳記。

gcloud

  1. 如要查看特定執行個體的相關資訊,請執行 instances describe 指令:

    gcloud filestore instances describe INSTANCE-ID \
        --project=PROJECT-ID \
        --location=LOCATION \
    

更改下列內容:

  • INSTANCE-ID 替換為要查看的 Filestore 執行個體 ID,例如 genomics-instance
  • PROJECT-ID 替換為包含 Filestore 執行個體的 Google Cloud 專案 Google Cloud 專案 ID。
  • LOCATION 是執行個體所在的位置,例如 us-east1-b

    instances describe 指令的回應類似下列任一範例。

    這個回應範例顯示已啟用執行個體複製功能的來源執行個體。請注意,指定的角色是 ACTIVE

    createTime: '2024-06-17T22:17:26.475900265Z'
    fileShares:
    - capacityGb: '1024'
      name: vol1
    name: projects/genomics-project/locations/us-east1-b/instances/genomics-instance-source
    networks:
    - connectMode: DIRECT_PEERING
      ipAddresses:
      - 172.27.220.2
      modes:
      - MODE_IPV4
      network: default
      reservedIpRange: 172.27.220.0/26
    replication:
      replicas:
      - peerInstance: projects/genomics-project/locations/us-central1-a/instances/genomics-instance-replica
        state: READY
      role: ACTIVE
    state: READY
    tier: ZONAL
    

    這個回應範例顯示已升級為一般執行個體的副本執行個體。請注意,由於複製功能尚未啟用,因此未指定複製功能:

    createTime: '2024-06-20T17:11:56.048062134Z'
    fileShares:
    - capacityGb: '1024'
      name: vol1
    name: projects/genomics-project/locations/us-west2-a/instances/genomics-instance-replica
    networks:
    - connectMode: DIRECT_PEERING
      ipAddresses:
      - 10.155.90.194
      network: default
      reservedIpRange: 10.155.90.192/26
    satisfiesPzi: true
    state: READY
    tier: ZONAL
    

    這個回應範例顯示與作用中執行個體配對的副本。請注意,角色會列為 STANDBY

    createTime: '2024-06-21T04:15:21.721579074Z'
    fileShares:
    - capacityGb: '1280'
      name: vol1
    name: projects/genomics-project/locations/us-west1-a/instances/genomics-replica
    networks:
    - connectMode: DIRECT_PEERING
      ipAddresses:
      - 10.153.44.194
      network: default
      reservedIpRange: 10.153.44.192/26
    replication:
      replicas:
      - peerInstance: projects/genomics-project/locations/us-west2-a/instances/genomics-instance
        state: READY
      role: STANDBY
    satisfiesPzi: true
    state: READY
    tier: ZONAL
    

REST API

  1. 安裝並初始化 gcloud CLI,以便為 Authorization 標頭產生存取權杖。

  2. 使用 cURL 呼叫 Filestore API

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      GET "https://file.googleapis.com/v1beta1/projects/PROJECT/locations/LOCATION/instances/INSTANCE_NAME"

    其中:

    • PROJECT 是執行個體所在的專案名稱。例如:my-genomics-project
    • LOCATION 是執行個體所在位置。例如:us-west1-a
    • INSTANCE_NAME 是您要查看的執行個體名稱。例如:my-genomics-instance

列出專案中的所有執行個體

Google Cloud 控制台

  1. 前往 Google Cloud 控制台的 Filestore 執行個體頁面。

    前往 Filestore 執行個體

    備用資源會列在相關聯的來源執行個體下方。

gcloud

  1. 如要查看專案中所有執行個體的清單,請執行 instances list 指令:

    gcloud filestore instances list
        --project=PROJECT-ID \
    

    更改下列內容:

    • PROJECT-ID 替換為要查看的專案 ID。

    回應會傳回類似下列內容:

    INSTANCE_NAME                       LOCATION     TIER      CAPACITY_GB  FILE_SHARE_NAME  IP_ADDRESS     STATE  CREATE_TIME
    genomics-source-1                   us-east1-b   ZONAL     1024         vol1             172.27.220.2   READY  2024-06-17T22:17:26
    genomics-source-1-replica           us-west1-a   ZONAL     1024         vol1             10.142.57.194  READY  2024-06-17T23:47:19
    

REST API

  1. 安裝並初始化 gcloud CLI,以便為 Authorization 標頭產生存取權杖。

  2. 使用 cURL 呼叫 Filestore API

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      GET "https://file.googleapis.com/v1/projects/PROJECT/locations/LOCATION/instances"

    其中:

    • PROJECT 是執行個體所在的專案名稱。例如:my-genomics-project
    • LOCATION 是要搜尋的位置。如要在專案中任何位置搜尋所有執行個體,請使用 -

中斷複製作業並升級備用資源

在本節中,您將中斷作用中和待命執行個體之間的複製作業。這項操作會將副本升級為一般執行個體。

  • 這項操作無法復原,請務必謹慎使用。

  • 升級為一般例項後,資源即可與新的副本配對。

  • 回復不會自動進行。中斷複製作業完成後,管理員必須將應用程式重新連線至新的來源執行個體。詳情請參閱「升級副本」。

Google Cloud 控制台

  1. 前往 Google Cloud 控制台的 Filestore 執行個體頁面。

    前往 Filestore 執行個體

  2. 找出要使用的副本,然後按一下其執行個體 ID。

  3. 按一下「中斷複製作業」

  4. 請先詳閱警示訊息,再繼續操作。

    中斷複製作業會永久停止資料同步處理作業,並將已啟用的執行個體和待命執行個體轉換為一般執行個體。在上次記錄的同步點之後所做的任何變更,都不會複製。 這個動作無法復原。

  5. 輸入副本的執行個體 ID,然後按一下「Break replication」(中斷複製)

  6. 等待作業順利完成。

gcloud

  1. 您可以執行 gcloud filestore instances promote-replica 指令來升級副本執行個體。

    gcloud filestore instances promote-replica INSTANCE-ID \
        --project=PROJECT-ID \
        --location=LOCATION \
    

更改下列內容:

  • INSTANCE-ID,並將其替換為要升級的 Filestore 執行個體 ID,例如 my-replica
  • PROJECT-ID 替換為包含 Filestore 執行個體的 Google Cloud 專案 ID。
  • LOCATION,例如 us-central1

成功完成後,系統會傳回下列或類似的回應:

capacityGb: '1024'
capacityStepSizeGb: '256'
createTime: '2024-06-20T17:11:56.048062134Z'
fileShares:
- capacityGb: '1024'
  name: vol1
maxCapacityGb: '9984'
maxShareCount: '1'
name: projects/genomics-project/locations/us-west2-a/instances/my-replica
networks:
- connectMode: DIRECT_PEERING
  ipAddresses:
  - 10.155.90.194
  network: default
  reservedIpRange: 10.155.90.192/26
protocol: NFS_V3
replication:
  replicas:
  - lastActiveSyncTime: '2024-06-21T00:13:23Z'
    peerInstance: projects/genomics-project/locations/us-east1-b/instances/my-source
  role: STANDBY
satisfiesPzi: true
state: PROMOTING
tier: ZONAL

REST API

  1. 安裝並初始化 gcloud CLI,以便為 Authorization 標頭產生存取權杖。

  2. 使用 cURL 呼叫 Filestore API

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      -d '{}' "https://file.googleapis.com/v1beta1/projects/PROJECT/locations/LOCATION/instances/REPLICA_NAME:promoteReplica"

    其中:

    • PROJECT 是副本所在的專案名稱。例如:my-genomics-project
    • LOCATION 是副本所在位置。例如:us-west1-a
    • REPLICA_NAME 是您要升級的執行個體名稱。例如:my-genomics-replica

刪除執行個體

Google Cloud 控制台

  1. 前往 Google Cloud 控制台的 Filestore 執行個體頁面。

    前往 Filestore 執行個體

    備用資源會列在相關聯的來源執行個體下方。如果沒有看到副本,請參閱這項工作的 gcloud 指令。

  2. 找出您要刪除的執行個體,按一下該執行個體的「Instance ID」(執行個體 ID)。

  3. 點選「刪除」。

gcloud

  1. 如要查看專案中所有執行個體的清單,請執行 instances list 指令:

    gcloud filestore instances list
        --project=PROJECT-ID \
    

    更改下列內容:

    • PROJECT-ID 替換為要查看的專案 ID。
  2. 複製要刪除執行個體的詳細資料。

  3. 您可以執行 filestore instances delete 指令刪除執行個體。

    gcloud filestore instances delete INSTANCE-ID \
        --location=LOCATION \
    

更改下列內容:

  • INSTANCE-ID,例如 my-replica
  • LOCATION,例如 us-central1-a

REST API

  1. 安裝並初始化 gcloud CLI,以便為 Authorization 標頭產生存取權杖。

  2. 使用 cURL 呼叫 Filestore API

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      --request DELETE "https://file.googleapis.com/v1beta1/projects/PROJECT/locations/LOCATION/instances/INSTANCE_NAME"

    其中:

    • PROJECT 是執行個體所在的專案名稱。例如:my-genomics-project
    • LOCATION 是執行個體所在位置。例如:us-west1-a
    • INSTANCE_NAME 是要刪除的執行個體名稱。例如:my-genomics-instance

監控執行個體複製作業

Google Cloud 控制台

如要在 Cloud Monitoring 資訊主頁中查看 Filestore 執行個體複寫指標,請按照下列步驟操作:

  1. 開始之前,請確認您具備下列角色:

    • 監控檢視者
    • Monitoring 編輯者

    如要瞭解如何授予這些角色的存取權,請參閱「授予 Cloud Monitoring 存取權」。

  2. 前往 Google Cloud 控制台的 「Metrics Explorer」頁面:

    前往 Metrics Explorer

    如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果

  3. 按一下「選取指標」可展開的部分。

  4. 在「Filter by resource or metric name」(依資源或指標名稱篩選) 欄位中,輸入 filestore,然後選取「Filestore Instance」(Filestore 執行個體) 可展開的區段。

  5. 選取「執行個體」可展開部分,然後按一下「RPO」

  6. 系統會顯示 RPO 指標 times_since_last_replication。完成複製資料的初始同步作業後,幾分鐘內就會顯示這項指標。

後續步驟