本頁面適用於網路專家,他們希望在傳送流量至虛擬私有雲網路時,將標準虛擬私有雲網路流量從使用無伺服器虛擬私有雲存取連接器遷移至使用直接虛擬私有雲輸出。
直接虛擬私有雲 egress 速度更快,且可處理的流量比連接器更多,因為它使用新的直接網路路徑,而非連接器執行個體,因此可縮短延遲時間並提高處理量。
在遷移前,建議您熟悉 Direct VPC 外連的必要條件、限制、IP 位址分配和 IAM 權限。
將服務遷移至直接虛擬私有雲 egress
逐步將服務遷移至直接虛擬私有雲輸出
將 Cloud Run 服務從無伺服器虛擬私有雲存取連接器遷移至直接虛擬私有雲輸出時,建議您採取漸進式轉換方式。
如要逐步轉換:
- 請按照本節的操作說明,更新服務以使用直接 VPC 出口。
- 拆分少量流量,判斷流量是否正常運作。
- 更新流量分配比例,以便使用直接虛擬私有雲輸出功能,將所有流量傳送至新修訂版本。
如要為服務遷移使用直接虛擬私有雲輸出的流量,請使用Google Cloud 控制台或 Google Cloud CLI:
控制台
前往 Google Cloud 控制台的「Cloud Run」頁面。
按一下要從連接器遷移至直接 VPC 出口的服務,然後點選「編輯及部署新的修訂版本」。
按一下 [網路] 分頁標籤。
在「連線至虛擬私有雲,以傳出流量」中,按一下「直接將流量傳送至虛擬私有雲」。
在「Network」(網路) 欄位中,選取要傳送流量的 VPC 網路。
在「子網路」欄位中,選取服務接收 IP 位址的子網路。您可以在同一個子網路中部署多項服務。
選用:輸入要與服務相關聯的網路標記名稱。網路標記是在修訂版本層級指定。每個服務修訂版本都可以有不同的網路標記,例如
network-tag-2
。在「Traffic routing」(流量路由) 部分,選取下列其中一個選項:
- 僅將傳至私人 IP 的要求轉送至虛擬私有雲,這樣系統就只會透過 VPC 網路傳送流量至內部位址。
- 將所有流量轉送至虛擬私有雲,透過虛擬私有雲網路傳送所有出站流量。
按一下 [Deploy] (部署)。
如要確認服務位於虛擬私有雲網路中,請按一下服務,然後點選「Networking」分頁標籤。網路和子網路會列在 VPC 資訊卡中。
您現在可以根據防火牆規則,直接從 Cloud Run 服務將要求傳送至虛擬私有雲網路上的任何資源。
gcloud
如要使用 Google Cloud CLI 將 Cloud Run 服務從連接器遷移至直接虛擬私有雲輸出,請按照下列步驟操作:
使用下列指令更新 Cloud Run 服務:
gcloud run services update SERVICE_NAME \ --clear-vpc-connector \ --network=NETWORK \ --subnet=SUBNET \ --network-tags=NETWORK_TAG_NAMES \ --vpc-egress=EGRESS_SETTING \ --region=REGION
取代:
SERVICE_NAME
改為您的服務名稱。- 將 NETWORK 替換為虛擬私人雲端網路名稱。
- 將 SUBNET 替換為子網路名稱。您可以在同一個子網路中部署或執行多項服務或工作。
- 選用:NETWORK_TAG_NAMES,其中包含您要與服務建立關聯的網路標記名稱,以半形逗號分隔。對於服務,網路標記是在修訂版本層級指定。每個服務修訂版本都可以有不同的網路標記,例如
network-tag-2
。 - EGRESS_SETTING 搭配egress 設定值:
all-traffic
:透過虛擬私有雲網路傳送所有傳出流量。private-ranges-only
:只透過虛擬私有雲網路將流量傳送至內部位址。
- REGION 改為服務的地區。
如要確認服務位於 VPC 網路中,請執行下列指令:
gcloud run services describe SERVICE_NAME \ --region=REGION
取代:
SERVICE_NAME
改為您的服務名稱。- 將
REGION
替換為您在上一個步驟中指定的服務地區。
輸出內容應包含網路、子網路和出口設定的名稱,例如:
VPC access: Network: default Subnet: subnet Egress: private-ranges-only
您現在可以根據防火牆規則,從 Cloud Run 服務傳送要求至 VPC 網路上的任何資源。
將工作遷移至直接虛擬私有雲網路輸出
您可以使用Google Cloud 控制台或 Google Cloud CLI,為工作遷移使用 Direct VPC 出口的流量。
控制台
前往 Google Cloud 控制台的「Cloud Run」頁面。
按一下要從連接器遷移至 Direct VPC 出口的工作,然後按一下「編輯」。
按一下 [網路] 分頁標籤。
按一下「容器、變數和密鑰、連線、安全性」,展開工作屬性頁面。
按一下「連線設定」分頁標籤。
在「連線至虛擬私有雲,以傳出流量」中,按一下「直接將流量傳送至虛擬私有雲」。
在「Network」(網路) 欄位中,選取要傳送流量的 VPC 網路。
在「Subnet」(子網路) 欄位中,選取工作接收 IP 位址的子網路。您可以在同一個子網路中部署多個工作。
選用:輸入要與服務相關聯的網路標記名稱。網路標記是在修訂版本層級指定。每個服務修訂版本都可以有不同的網路標記,例如
network-tag-2
。在「Traffic routing」(流量路由) 部分,選取下列其中一個選項:
- 僅將傳至私人 IP 的要求轉送至虛擬私有雲,這樣系統就只會透過 VPC 網路傳送流量至內部位址。
- 將所有流量轉送至虛擬私有雲,透過虛擬私有雲網路傳送所有出站流量。
按一下 [Update]。
如要確認工作位於虛擬私有雲網路,請按一下工作,然後點選「Configuration」分頁標籤。網路和子網路會列於 VPC 資訊卡中。
您現在可以執行 Cloud Run 工作,並根據防火牆規則,將工作傳送至虛擬私有雲網路中的任何資源。
gcloud
如要使用 Google Cloud CLI 將 Cloud Run 工作從連接器遷移至直接虛擬私有雲輸出,請按照下列步驟操作:
使用下列指令更新 Cloud Run 工作:
gcloud run jobs update JOB_NAME \ --clear-network \ --image=IMAGE_URL \ --network=NETWORK \ --subnet=SUBNET \ --network-tags=NETWORK_TAG_NAMES \ --vpc-egress=EGRESS_SETTING \ --region=REGION
取代:
JOB_NAME
改為工作名稱。- 將 NETWORK 替換為虛擬私人雲端網路名稱。
- 將 SUBNET 替換為子網路名稱。您可以在同一個子網路中部署或執行多項服務或工作。
- 選用:NETWORK_TAG_NAMES 可用來指定要與工作相關聯的網路標記名稱。針對工作,網路標記是在執行層級指定。每個工作執行作業可以有不同的網路標記,例如
network-tag-2
。 - EGRESS_SETTING 搭配egress 設定值:
all-traffic
:透過虛擬私有雲網路傳送所有傳出流量。private-ranges-only
:只透過虛擬私有雲網路將流量傳送至內部位址。
- 將 REGION 替換為工作所在的區域。
如要確認工作位於虛擬私有雲網路,請執行下列指令:
gcloud run jobs describe JOB_NAME \ --region=REGION
取代:
JOB_NAME
改為工作名稱。REGION
與您在上一個步驟中指定的工作區域。
輸出內容應包含網路、子網路和出口設定的名稱,例如:
VPC access: Network: default Subnet: subnet Egress: private-ranges-only
您現在可以根據防火牆規則,從 Cloud Run 工作傳送要求至虛擬私有雲網路中的任何資源。