將共用虛擬私有雲連接器遷移至直接虛擬私有雲 egress

本頁內容適用於網路專家,他們希望將傳送至共用虛擬私有雲網路的流量,從使用無伺服器虛擬私有雲存取連接器,遷移至使用直接虛擬私有雲輸出

直連虛擬私有雲輸出比連接器更快,且能處理更多流量,因為這項功能使用新的直接網路路徑,而非連接器執行個體,因此延遲時間較短,處理量也較高。

遷移前,建議您先瞭解直連虛擬私有雲輸出的必要條件限制IP 位址分配身分與存取權管理權限

即使連接器沒有流量且已中斷連線,仍會產生費用。詳情請參閱計費。如果不再需要連接器,請務必將其刪除,以免持續計費。

逐步將服務遷移至直連虛擬私有雲輸出流量

將 Cloud Run 服務從無伺服器虛擬私有雲存取連接器遷移至直接虛擬私有雲輸出時,建議您逐步遷移。

如要逐步轉換,請按照下列步驟操作:

  1. 請按照本指南中的說明,更新服務或作業以使用直連虛擬私有雲輸出流量。
  2. 分配一小部分流量,測試流量是否正常運作。
  3. 更新流量分配比例,使用直連虛擬私有雲輸出功能將所有流量傳送至新修訂版本。

如要透過服務的直連虛擬私有雲輸出流量遷移流量,請使用Google Cloud 控制台或 Google Cloud CLI:

控制台

  1. 前往 Google Cloud 控制台的 Cloud Run「Services」(服務) 頁面:

    前往 Cloud Run

  2. 按一下要從連接器遷移至 Direct VPC 輸出的服務,然後點選「編輯及部署新的修訂版本」

  3. 按一下 [網路] 分頁標籤。

  4. 在「連線至虛擬私有雲,以傳出流量」中,按一下「直接將流量傳送至虛擬私有雲」

  5. 選取「與我共用的網路」

  6. 在「Network」(網路) 欄位中,選取要傳送流量的 Shared VPC 網路。

  7. 在「子網路」欄位中,選取服務接收 IP 位址的子網路。您可以在同一個子網路上部署多項服務。

  8. 選用:輸入要與服務建立關聯的網路標記名稱。網路標記是在修訂版本層級指定。每個服務修訂版本可以有不同的網路標記,例如 network-tag-2

  9. 在「流量轉送」中,選取下列其中一個選項:

    • 僅將傳至私人 IP 的要求轉送至虛擬私有雲,透過共用虛擬私有雲網路僅將流量傳送至內部位址。
    • 將所有流量轉送至虛擬私有雲,透過共用虛擬私有雲網路傳送所有輸出流量。
  10. 點選「Deploy」(部署)

  11. 如要確認服務是否位於共用虛擬私有雲網路中,請按一下服務,然後按一下「網路」分頁標籤。網路和子網路會列在「VPC」資訊卡中。

    現在,您可以根據防火牆規則,直接從 Cloud Run 服務將要求傳送至共用 VPC 網路上的任何資源。

gcloud

如要使用 Google Cloud CLI,將 Cloud Run 服務從連接器遷移至直連虛擬私有雲輸出流量,請按照下列步驟操作:

  1. 使用下列指令,指定共用虛擬私有雲網路和子網路的完整資源名稱,更新共用子網路上的服務。

    gcloud run services update SERVICE_NAME \
      --clear-vpc-connector \
      --network projects/HOST_PROJECT_ID/global/networks/VPC_NETWORK \
      --subnet projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME \
      --network-tags NETWORK_TAG_NAMES \
      --region REGION \
      --max-instances MAX \
      --no-traffic

    更改下列內容:

    • SERVICE_NAME:Cloud Run 服務的名稱。
    • HOST_PROJECT_ID:Shared VPC 專案的 ID。
    • VPC_NETWORK:共用虛擬私有雲網路的名稱。
    • REGION:Cloud Run 服務的區域,必須與子網路的區域相符。
    • SUBNET_NAME:子網路名稱。
    • 選用:以半形逗號分隔的網路標記名稱,用於與服務建立關聯。對於服務,網路標記是在修訂版本層級指定。每個服務修訂版本可以有不同的網路標記,例如 network-tag-2NETWORK_TAG_NAMES
    • MAX:共用虛擬私有雲網路可使用的執行個體數量上限。服務允許的執行個體數量上限為 100 個。
  2. 選用:如要透過 Shared VPC 網路轉送所有輸出流量,請執行下列指令來更新輸出設定:

    gcloud run services update SERVICE_NAME \
      --vpc-egress=all-traffic \
      --region REGION

    更改下列內容:

    • SERVICE_NAME:Cloud Run 服務的名稱。
    • REGION:Cloud Run 服務的區域。

    如要瞭解詳情和選用引數,請參閱 gcloud 參考資料

  3. 如要確認服務是否位於共用 VPC 網路上,請執行下列指令:

    gcloud run services describe SERVICE_NAME \
      --region=REGION

    更改項目:

    • SERVICE_NAME 改為您的服務名稱。
    • REGION 替換為您在上一個步驟中指定的服務區域。

    輸出內容應包含網路、子網路和輸出設定的名稱,例如:

    VPC access:
      Network:       default
      Subnet:        subnet
      Egress:        private-ranges-only
    
  4. 將一小部分流量轉送至新的直連虛擬私有雲 egress 路徑。舉例來說,如要將 10% 的流量轉移至上一個步驟建立的最新修訂版本,請執行下列指令:

    gcloud run services update-traffic SERVICE_NAME --to-revisions=LATEST=10

    SERVICE_NAME 改為您的服務名稱。

    確認沒有任何回歸後,請逐步將流量遷移至最新修訂版本。

現在,您可以根據防火牆規則,從 Cloud Run 服務將要求傳送至共用 VPC 網路上的任何資源。

將工作遷移至直連虛擬私有雲輸出

您可以使用Google Cloud 控制台或 Google Cloud CLI,為工作遷移具有直連虛擬私有雲輸出功能的流量。

控制台

  1. 前往 Google Cloud 控制台的 Cloud Run「Jobs」頁面:

    前往 Cloud Run

  2. 按一下要從連結器遷移至 Direct VPC 輸出的工作,然後點選「編輯」

  3. 按一下 [網路] 分頁標籤。

  4. 按一下「Container, Variables & Secrets, Connections, Security」(容器、變數和密鑰、連線、安全性),展開工作屬性頁面。

  5. 按一下「連結」分頁標籤。

  6. 在「連線至虛擬私有雲,以傳出流量」中,按一下「直接將流量傳送至虛擬私有雲」

  7. 選取「與我共用的網路」

  8. 在「Network」(網路) 欄位中,選取要傳送流量的 Shared VPC 網路。

  9. 在「Subnet」(子網路) 欄位中,選取工作接收 IP 位址的子網路。您可以在同一個子網路上部署多項工作。

  10. 選用:輸入要與工作建立關聯的網路標記名稱。對於工作,網路標記是在執行層級指定。每個工作執行個體可以有不同的網路標記,例如 network-tag-2

  11. 在「流量轉送」中,選取下列其中一個選項:

    • 僅將傳至私人 IP 的要求轉送至虛擬私有雲,透過共用虛擬私有雲網路僅將流量傳送至內部位址。
    • 將所有流量轉送至虛擬私有雲,透過共用虛擬私有雲網路傳送所有輸出流量。
  12. 按一下「Update」

  13. 如要確認工作是否位於共用虛擬私有雲網路,請按一下工作,然後按一下「Configuration」(設定) 分頁標籤。網路和子網路會列在「VPC」資訊卡中。

現在您可以執行 Cloud Run 工作,並根據防火牆規則,從工作傳送要求至共用 VPC 網路上的任何資源。

gcloud

如要使用 Google Cloud CLI,將 Cloud Run 工作從連接器遷移至直連虛擬私有雲輸出流量,請按照下列步驟操作:

  1. 使用下列指令,指定共用虛擬私有雲網路和子網路的完整資源名稱,更新共用子網路上的作業。

    gcloud run jobs update JOB_NAME \
      --clear-vpc-connector \
      --network projects/HOST_PROJECT_ID/global/networks/VPC_NETWORK \
      --subnet projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME \
      --network-tags NETWORK_TAG_NAMES \
      --region REGION

    更改下列內容:

    • JOB_NAME:Cloud Run 工作名稱。
    • HOST_PROJECT_ID:Shared VPC 專案的 ID。
    • VPC_NETWORK:共用虛擬私有雲網路的名稱。
    • REGION:Cloud Run 作業的區域,必須與子網路的區域相符。
    • SUBNET_NAME:子網路名稱。
    • 選用:NETWORK_TAG_NAMES,以半形逗號分隔要與工作建立關聯的網路標記名稱。每個工作執行作業可以有不同的網路標記,例如 network-tag-2
  2. 選用:如要透過 Shared VPC 網路轉送所有輸出流量,請執行下列指令來更新輸出設定:

    gcloud run jobs update JOB_NAME \
      --vpc-egress=all-traffic \
      --region REGION

    更改下列內容:

    • JOB_NAME:Cloud Run 工作名稱。
    • REGION:Cloud Run 工作的區域。

    如要瞭解詳情和選用引數,請參閱 gcloud 參考資料

  3. 如要確認工作是否位於共用虛擬私有雲網路上,請執行下列指令:

    gcloud run jobs describe JOB_NAME \
      --region=REGION

    更改項目:

    • JOB_NAME 改為您的工作名稱。
    • REGION,並在上一個步驟中指定作業的區域。

    輸出內容應包含網路、子網路和輸出設定的名稱,例如:

    VPC access:
      Network:       default
      Subnet:        subnet
      Egress:        private-ranges-only
    

現在,您可以根據防火牆規則,從 Cloud Run 作業將要求傳送至共用 VPC 網路上的任何資源。