您可以使用直接虛擬私有雲輸出,讓 Cloud Run 服務或工作將流量傳送至共用虛擬私有雲網路,且無需使用無伺服器虛擬私有雲存取連接器。
本頁說明如何設定 Cloud Run 的 IAM 權限,以便使用共用虛擬私有雲網路的子網路,然後將服務或工作置於共用子網路。
事前準備
限制
下列限制適用於 Cloud Run 服務和工作:
- Cloud Run 支援每個個別執行個體最高 1 Gbps 的總處理量。超過這個數量時,系統就會限制效能。
Cloud Run 使用量配額會限制您可設定的執行個體數量上限,以便使用直接虛擬私有雲輸出流量。每個 Cloud Run 修訂版本或工作執行作業都會設定上限。如要提高預設限制,請參閱如何提高配額。
- 在網路基礎架構維護事件期間,Cloud Run 服務和工作可能會發生連線中斷的情形。建議您使用可處理偶發連線重設問題的用戶端程式庫。
- 內部 IPv6 流量的直接 VPC 出口僅在預先發布版中提供。
- Private NAT 僅適用於預先發布版。
直接 VPC 出口不支援下列項目:
- 虛擬私有雲流程記錄不會提供 Cloud Run 服務或修訂版本的名稱。
- 非 VM 資源 (例如 Cloud Run 或內部部署機器) 不會回報虛擬私有雲流程記錄。
- 封包鏡像
- Network Intelligence Center,包括 Connectivity Tests
- 透過虛擬私有雲網路傳送的外部 IPv6 流量
- 輸入防火牆規則中的網路標記或服務身分。
- 防火牆規則無法使用附加至 Cloud Run 工作負載的 Resource Manager 標記。
- 執行時間超過 1 小時的 Cloud Run 工作可能會發生連線中斷情形。這些錯誤可能發生在維護事件期間,也就是從一台機器將工作遷移至另一台機器的過程中。容器會在事件發生前 10 秒收到
SIGTSTP
信號,並在事件發生後收到SIGCONT
信號。容器收到SIGCONT
信號後,請重試連線。
設定身分與存取權管理權限
共用 VPC 服務專案中的 Cloud Run 才能存取共用 VPC 網路,您必須先確認 Cloud Run 服務代理程式具備足夠的權限,才能使用子網路。
如要存取共用虛擬私有雲網路,請為 Cloud Run 服務代理程式授予足夠的權限,方法是新增下列其中一個角色:
共用虛擬私有雲主專案中的Compute 網路使用者 (
compute.networkUser
)。例如,執行下列指令:
gcloud projects add-iam-policy-binding HOST_PROJECT_ID \ --member "serviceAccount:service-SERVICE_PROJECT_NUMBER@serverless-robot-prod.iam.gserviceaccount.com" \ --role "roles/compute.networkUser"
更改下列內容:
- HOST_PROJECT_ID:共用虛擬私有雲主專案的 ID。
- SERVICE_PROJECT_NUMBER:部署 Cloud Run 服務或工作所在的共用 VPC 服務專案編號。
共用虛擬私有雲主專案中的 Compute Network Viewer (
compute.networkViewer
) 角色,以及共用虛擬私有雲子網路中的 Compute Network User (compute.networkUser
) 角色。舉例來說,如要在子網路上授予 Compute 網路使用者角色,請執行下列指令:
gcloud compute networks subnets add-iam-policy-binding SUBNET_NAME \ --region REGION \ --member "serviceAccount:service-SERVICE_PROJECT_NUMBER@serverless-robot-prod.iam.gserviceaccount.com" \ --role "roles/compute.networkUser" \ --project HOST_PROJECT_ID
更改下列內容:
- SUBNET_NAME:您要執行 Cloud Run 服務的子網路的全格式資源名稱。
- REGION:Cloud Run 服務的區域,必須與子網路的區域相符。
- SERVICE_PROJECT_NUMBER:部署 Cloud Run 服務或工作所在的共用 VPC 服務專案編號。
- HOST_PROJECT_ID:共用虛擬私有雲主專案的 ID。
Cloud Run 服務代理人需要在 Cloud Run 專案中具備 Cloud Run 服務代理人角色。您可以執行下列指令,確認角色並未遭到手動移除:
gcloud projects get-iam-policy SERVICE_PROJECT_ID \ --flatten bindings \ --filter "bindings.role:roles/run.serviceAgent"
將 SERVICE_PROJECT_ID 替換為 Cloud Run 服務或工作專案 ID。
如要進一步細微控管,您可以確保 Cloud Run 服務代理具備下列權限:
- 共用虛擬私有雲主專案中的
compute.networks.get
- 主專案或特定子網路的
compute.subnetworks.get
- 主專案或特定子網路的
compute.subnetworks.use
- 共用虛擬私有雲服務專案的
compute.addresses.get
- 共用虛擬私有雲服務專案的
compute.addresses.list
- 共用虛擬私有雲服務專案的
compute.addresses.createInternal
- 共用虛擬私有雲服務專案的
compute.addresses.deleteInternal
- 共用虛擬私有雲服務專案的
compute.regionOperations.get
IP 位址分配
如要將 Cloud Run 服務或工作放置在 VPC 網路中,您必須指定網路和子網路。Cloud Run 會從子網路中分配 IP 位址。
IP 位址是臨時性的,因此請勿根據個別 IP 建立政策。如果您需要根據 IP 建立政策 (例如防火牆規則),則必須使用整個子網路的 IP 位址範圍。
如要變更服務或工作所使用的網路或子網路,請部署新的服務修訂版本,或執行使用新網路和子網路值的新工作任務。
擴大及縮減規模
為在流量激增期間加快擴充,Cloud Run 會一次保留 16 個區塊 (28
子網路遮罩) 的 IP 位址。查看 Cloud Run 已分配的 IP 位址。為確保您在 Cloud Run 中使用足夠的 IPv4 位址,子網路的 IPv4 位址範圍必須為 /26
或更大。
為提高 IP 配置效率並便於管理,請將多個資源放在同一個子網路中。如果您的 IPv4 位址空間有限,請參閱「支援的 IPv4 範圍」一文,瞭解更多選項。
如要刪除子網路,您必須先刪除或重新部署 Cloud Run 服務或工作,停止使用子網路,然後等待 1 到 2 小時。
服務的 IP 位址用量
在穩定狀態下,Cloud Run 會使用 2 倍 (2X) 的 IP 位址,以對應執行個體數量。當修訂版本縮減時,Cloud Run 會保留 IP 位址最多 20 分鐘。總共至少要預留 2 倍的 IP 位址數量,再加上用於因應修訂更新的緩衝區。
舉例來說,如果您升級修訂版本,讓 revision 1
從 100 個執行個體縮減至零,而 revision 2
從零縮減至 100,Cloud Run 會在縮減後保留 revision 1
IP 位址,最多 20 分鐘。在 20 分鐘的保留期間,您必須保留至少 400 個 IP 位址 ((100 + 100) * 2
)。
工作 IP 用量
針對 Cloud Run 工作,每項工作會在執行期間和完成後的 7 分鐘內,占用 1 個 IP 位址。請確認子網路足夠大,可容納所有並行執行的工作任務,並保留最少 /26
子網路。
例如:
- 每天執行的單一工作,且在下次執行前至少會提前 7 分鐘完成,在子網路中最多會使用 1 個 IP 位址。
- 每 10 分鐘執行 10 項工作的工作,每項工作執行 15 分鐘,每項工作會使用 1 個 IP 位址 22 分鐘 (3 次執行作業會同時使用 IP 位址),如以下範例所示。因此,工作會在穩定狀態下耗用 30 個 IP 位址。
- 單一工作需要 1 分鐘才能執行完畢,且每分鐘執行 100 次,因此需要約 800 個 IP 位址 (視執行的確切時間而定)。
支援的 IPv4 範圍
Cloud Run 支援下列 IPv4 範圍的子網路:
部署服務
直接虛擬私有雲輸出可讓 Cloud Run 服務將流量傳送至共用虛擬私有雲網路,而不需要無伺服器虛擬私有雲存取連接器。網路費用會隨著服務的調度率降至零。您也可以直接在 Cloud Run 服務修訂版本上新增網路標記,以便實施更精細的網路安全性,例如套用 VPC 防火牆規則。
您可以使用Google Cloud 主控台、Google Cloud CLI 或 YAML,設定服務的 Direct VPC 出口。
控制台
前往 Google Cloud 控制台的「Cloud Run」頁面:
從選單中選取「Services」,然後按一下「Deploy container」,設定新服務。如果您要設定及部署現有服務,請按一下該服務,然後點選「編輯並部署新修訂版本」。
如果您要設定新的服務,請視需要填寫初始服務設定頁面,然後按一下「容器、磁碟區、網路與安全性」,展開服務設定頁面。
按一下 [網路] 分頁標籤。
按一下「連線至虛擬私有雲,以傳出流量」。
按一下「直接將流量傳送至虛擬私有雲」。
選取「與我共用的網路」。
在「Network」(網路) 欄位中,選取要傳送流量的 Shared VPC 網路。
在「Subnet」(子網路)欄位中,選取服務接收 IP 位址的子網路。
選用:輸入要與服務相關聯的網路標記名稱。網路標記是在修訂版本層級指定。每個服務修訂版本都可以有不同的網路標記,例如
network-tag-2
。在「Traffic routing」(流量路由) 部分,選取下列其中一個選項:
- 僅將要求轉送至虛擬私有雲的私人 IP,這樣就只會透過共用虛擬私有雲網路將流量傳送至內部位址。
- 將所有流量轉送至虛擬私有雲,透過共用虛擬私有雲網路傳送所有傳出流量。
按一下 [Create] (建立) 或 [Deploy] (部署)。
如要確認服務是否位於共用虛擬私有雲網路中,請依序點選服務和「Networking」分頁標籤。網路和子網路會列在「VPC」VPC資訊卡中。
您現在可以根據防火牆規則,從 Cloud Run 服務傳送要求至共用虛擬私有雲網路上的任何資源。
gcloud
如要將服務置於共用子網路,請執行下列指令,為共用 VPC 網路和子網路指定完整的資源名稱:
gcloud run deploy SERVICE_NAME \ --image IMAGE_URL \ --network projects/HOST_PROJECT_ID/global/networks/VPC_NETWORK \ --subnet projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME \ --network-tags NETWORK_TAG_NAMES \ --vpc-egress=EGRESS_SETTING \ --region REGION \ --max-instances MAX
更改下列內容:
- SERVICE_NAME:Cloud Run 服務名稱。
- IMAGE_URL:服務的圖片網址。
- HOST_PROJECT_ID:共用虛擬私有雲專案的 ID。
- VPC_NETWORK:共用虛擬私有雲網路的完整資源名稱。
- REGION:Cloud Run 服務的區域,必須與子網路的區域相符。
- SUBNET_NAME:子網路的完整資源名稱。
- 選用:NETWORK_TAG_NAMES 與您要與服務建立關聯的網路標記名稱 (以半形逗號分隔)。對於服務,網路標記是在修訂版本層級指定。每個服務修訂版本都可以有不同的網路標記,例如
network-tag-2
。 - EGRESS_SETTING 搭配egress 設定值:
all-traffic
:透過共用虛擬私有雲網路傳送所有出站流量。private-ranges-only
:只透過共用虛擬私有雲網路將流量傳送至內部位址。
- MAX:共用虛擬私有雲網路可使用的執行個體數量上限。服務允許的執行個體數量上限為 100 個。
如需更多詳細資料和選用引數,請參閱 gcloud
參考資料。
YAML
如果您要建立新服務,請略過這個步驟。如果您要更新現有服務,請下載其 YAML 設定:
gcloud run services describe SERVICE --format export > service.yaml
更新下列屬性:
apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE_NAME labels: cloud.googleapis.com/location: REGION spec: template: metadata: annotations: run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]' run.googleapis.com/vpc-access-egress: EGRESS_SETTING spec: containers: - image: IMAGE
取代:
- SERVICE_NAME 改為 Cloud Run 服務名稱。服務名稱長度不得超過 49 個字元,且每個區域和專案的服務名稱都必須是獨一無二的。
- REGION 與 Cloud Run 服務的地區,必須與子網路的地區相符。
- 將 NETWORK 替換為共用虛擬私人雲端網路的完整資源名稱。
- SUBNET_NAME 與子網路的完整資源名稱。
- 選用:NETWORK_TAG_NAMES 與您要與服務建立關聯的網路標記名稱。對於服務,網路標記是在修訂版本層級指定。每個服務修訂版本都可以有不同的網路標記,例如
network-tag-2
。 - EGRESS_SETTING 搭配egress 設定值:
all-traffic
:透過共用虛擬私有雲網路傳送所有出站流量。private-ranges-only
:只透過共用虛擬私有雲網路將流量傳送至內部位址。
- IMAGE 與服務容器映像檔的網址。
使用下列指令建立或更新服務:
gcloud run services replace service.yaml
Terraform
如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。
請將以下內容新增到您的
main.tf
檔案中:
如要允許未經驗證的存取權,您可以選擇公開服務。
建立工作
直接虛擬私有雲輸出可讓 Cloud Run 工作將流量傳送至共用虛擬私有雲網路,而不需要無伺服器虛擬私有雲存取連接器。您也可以直接在 Cloud Run 工作上新增網路標記,以便實施更精細的網路安全性,例如套用 VPC 防火牆規則。
您可以使用Google Cloud 主控台、Google Cloud CLI 或 YAML,為工作設定 Direct VPC 出口。
控制台
前往 Google Cloud 控制台的「Cloud Run」頁面:
如果您要設定新工作,請按一下「部署容器」,然後選取「工作」,視需要填寫初始的「建立工作」表單。如果您要設定現有的工作,請按一下「工作」分頁標籤,選取工作,然後按一下「編輯」。
按一下「容器、變數和密鑰、連線、安全性」,展開工作屬性頁面。
按一下「連線設定」分頁標籤。
按一下「連線至虛擬私有雲,以傳出流量」。
按一下「直接將流量傳送至虛擬私有雲」。
選取「與我共用的網路」。
在「Network」(網路) 欄位中,選取要傳送流量的 Shared VPC 網路。
在「Subnet」(子網路) 欄位中,選取工作接收 IP 位址的子網路。
選用:輸入要與工作建立關聯的網路代碼名稱。針對工作,網路標記是在執行層級指定。每個工作執行作業都可以有不同的網路標記,例如
network-tag-2
。在「Traffic routing」(流量路由) 部分,選取下列其中一個選項:
- 僅將要求轉送至虛擬私有雲的私人 IP,這樣就只會透過共用虛擬私有雲網路將流量傳送至內部位址。
- 將所有流量轉送至虛擬私有雲,透過共用虛擬私有雲網路傳送所有傳出流量。
按一下「建立」或「更新」。
如要確認工作位於共用虛擬私有雲網路,請按一下工作,然後按一下「Configuration」分頁標籤。網路和子網路會列在 VPC 資訊卡中。
您現在可以執行 Cloud Run 工作,並根據防火牆規則,將工作中的要求傳送至共用虛擬私有雲網路中的任何資源。
gcloud
如要將工作置於共用子網路,請執行下列指令,為共用虛擬私有雲網路和子網路指定完整資源名稱:
gcloud run jobs create JOB_NAME \ --image IMAGE_URL \ --network projects/HOST_PROJECT_ID/global/networks/VPC_NETWORK \ --subnet projects/HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME \ --network-tags NETWORK_TAG_NAMES \ --vpc-egress=EGRESS_SETTING \ --region REGION \
更改下列內容:
- JOB_NAME:Cloud Run 工作名稱。
- IMAGE_URL:工作圖片的網址。
- HOST_PROJECT_ID:共用虛擬私有雲主專案的 ID。
- VPC_NETWORK:共用虛擬私有雲網路的完整資源名稱。
- REGION:Cloud Run 作業的區域,必須與子網路的區域相符。
- SUBNET_NAME:子網路名稱的完整資源名稱。
- 選用:NETWORK_TAG_NAMES 使用半形逗號分隔的名稱,代表要與工作相關聯的網路標記。每個工作執行作業都可以有不同的網路標記,例如
network-tag-2
。 - EGRESS_SETTING 搭配egress 設定值:
all-traffic
:透過共用虛擬私有雲網路傳送所有出站流量。private-ranges-only
:只透過共用虛擬私有雲網路將流量傳送至內部位址。
如需更多詳細資料和選用引數,請參閱 gcloud
參考資料。
YAML
如果您要建立新工作,請略過這個步驟。如果您要更新現有工作,請下載其 YAML 設定:
gcloud run jobs describe JOB_NAME --format export > job.yaml
更新下列屬性:
apiVersion: run.googleapis.com/v1 kind: Job metadata: name: JOB_NAME annotations: run.googleapis.com/launch-stage: BETA labels: cloud.googleapis.com/location: REGION spec: template: metadata: annotations: run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]' run.googleapis.com/vpc-access-egress: EGRESS_SETTING spec: containers: - image: IMAGE
取代:
- JOB_NAME 替換為 Cloud Run 作業的名稱。工作名稱長度不得超過 49 個半形字元,且每個區域和專案的名稱都必須不重複。
- REGION 與 Cloud Run 工作所在的區域,該區域必須與子網路的區域相符。
- 將 NETWORK 替換為共用虛擬私人雲端網路的完整資源名稱。
- SUBNET 替換為子網路的完整資源名稱。
- 選用:NETWORK_TAG_NAMES 可用來指定要與工作相關聯的網路標記名稱。針對工作,網路標記是在執行層級指定。每個工作執行作業都可以有不同的網路標記,例如
network-tag-2
。 - EGRESS_SETTING 搭配egress 設定值:
all-traffic
:透過共用虛擬私有雲網路傳送所有出站流量。private-ranges-only
:只透過共用虛擬私有雲網路將流量傳送至內部位址。
- IMAGE 與工作容器映像檔的網址。
使用下列指令建立或更新工作:
gcloud run jobs replace job.yaml
設定雙重堆疊子網路
如要在 Cloud Run 服務或工作中新增內部 IPv6 範圍的雙重堆疊子網路,請參閱「設定雙重堆疊子網路」一文。
取消服務連結
控制台
如要將服務從共用虛擬私有雲網路中移除,請按照下列步驟操作:
前往 Google Cloud 控制台的「Cloud Run」頁面:
按一下要移除的服務,然後點選「編輯及部署新的修訂版本」。
按一下 [網路] 分頁標籤。
清除「連線至虛擬私有雲,以傳出流量」。
按一下 [Deploy] (部署)。
如要確認服務已不再位於共用虛擬私有雲網路,請按一下「網路」分頁。網路和子網路不再列在 VPC 資訊卡中。
如要只移除網路標記,同時讓服務連線至共用 VPC 網路,請按照下列步驟操作:
按一下含有要移除的網路標記的服務,然後點選「編輯並部署新修訂版本」。
按一下 [網路] 分頁標籤。
清除不再想與服務建立關聯的網路標記名稱。
按一下 [Deploy] (部署)。
gcloud
如要從共用虛擬私有雲網路中移除服務,請執行下列指令:
gcloud run services update SERVICE_NAME --region=REGION \ --clear-network
如要只移除網路標記,同時讓服務連線至共用虛擬私有雲網路,請執行下列指令:
gcloud run services update SERVICE_NAME --region=REGION \ --clear-network-tags
更改下列內容:
- SERVICE_NAME:Cloud Run 服務名稱。
- REGION:Cloud Run 服務的區域。
YAML
如要將服務從共用虛擬私有雲網路中移除,請按照下列步驟操作:
下載服務的 YAML 設定:
gcloud run services describe SERVICE_NAME --format export > service.yaml
請從
service.yaml
檔案中移除下列內容:run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]'
地點
- NETWORK:共用虛擬私有雲網路的完整資源名稱。
- SUBNET:子網路的完整資源名稱。
- 選用:NETWORK_TAG_NAMES:如果您已將網路標記與服務建立關聯,則為網路標記的名稱。
使用下列指令更新服務:
gcloud run services replace service.yaml
如要只移除網路標記,同時讓服務連線至共用 VPC 網路,請按照下列步驟操作:
下載服務的 YAML 設定:
gcloud run services describe SERVICE_NAME --format export > service.yaml
從
service.yaml
檔案的內容中移除tags
變數,保留network
和subnetwork
變數,如以下範例所示:run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET"}]'
更改下列內容:
- NETWORK:共用虛擬私有雲網路的完整資源名稱。
- SUBNET:子網路的完整資源名稱。
使用下列指令更新服務:
gcloud run services replace service.yaml
取消連結工作
控制台
如要將工作移出共用虛擬私有雲網路,請按照下列步驟操作:
前往 Google Cloud 控制台的「Cloud Run」頁面:
按一下要移除的工作,然後點選「編輯及部署新的修訂版本」。
按一下 [設定] 標籤。
清除「連線至虛擬私有雲,以傳出流量」。
按一下「更新」。
如要確認工作已不再位於共用 VPC 網路,請按一下「Configuration」分頁。網路和子網路不再列在 VPC 資訊卡中。
如要只移除網路標記,同時讓工作連線至共用 VPC 網路,請按照下列步驟操作:
按一下含有要移除的網路標記的工作,然後按一下「編輯並部署新修訂版本」。
按一下「連線設定」分頁標籤。
清除不再想與工作建立關聯的網路標記名稱。
按一下「更新」。
gcloud
如要將工作從共用虛擬私有雲網路中移除,請執行下列指令:
gcloud run jobs update JOB_NAME --region=REGION \ --clear-network
如要只移除網路標記,同時讓工作與共用 VPC 網路保持連線,請執行下列指令:
gcloud run jobs update JOB_NAME --region=REGION \ --clear-network-tags
更改下列內容:
- JOB_NAME:Cloud Run 工作名稱。
- REGION:Cloud Run 工作的區域。
YAML
如要將工作移出共用虛擬私有雲網路,請按照下列步驟操作:
下載工作YAML 設定:
gcloud run jobs describe JOB_NAME --format export > job.yaml
請從
job.yaml
檔案中移除下列內容:run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]'
地點
- NETWORK:共用虛擬私有雲網路的完整資源名稱。
- SUBNET:子網路的完整資源名稱。
- 選用:NETWORK_TAG_NAMES:如果您已將網路標記與工作建立關聯,則為網路標記的名稱。
使用下列指令更新工作:
gcloud run jobs replace job.yaml
如要只移除網路標記,同時讓工作連線至共用 VPC 網路,請按照下列步驟操作:
下載工作YAML 設定:
gcloud run jobs describe JOB_NAME --format export > job.yaml
請從
job.yaml
檔案中移除下列內容:run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]'
地點
- NETWORK:共用虛擬私有雲網路的完整資源名稱。
- SUBNET:子網路的完整資源名稱。
- 選用:NETWORK_TAG_NAMES:如果您已將網路標記與工作建立關聯,則為網路標記的名稱。
使用下列指令更新工作:
gcloud run jobs replace job.yaml
疑難排解
無法刪除子網路
如要刪除子網路,您必須先刪除所有使用該子網路的資源。如果 Cloud Run 使用子網路,您必須先將 Cloud Run 與共用虛擬私有雲網路解除連結或移至其他子網路,再刪除子網路。
無法卸離共用虛擬私有雲網路
如要卸載主專案中的共用虛擬私有雲網路,請按照這篇文章的步驟操作,並務必將任何 Cloud Run 服務或工作從共用虛擬私有雲網路中卸除。
如要查看哪些 Cloud Run 資源使用共用虛擬私有雲網路,請執行下列指令:
gcloud compute shared-vpc list-associated-resources HOST_PROJECT_ID
將 HOST_PROJECT_ID 替換為共用虛擬私有雲主專案的 ID。
直接虛擬私有雲子網路的 IPv4 位址用盡
嘗試部署時會發生下列錯誤:
Instance failed to start because of insufficient free IP addresses in the subnetwork SUBNET_ID when attempting to create an address in the subnetwork. Please consider moving to a subnetwork with more available IP addresses.
如果虛擬私有雲網路的子網路用盡 IPv4 位址,Cloud Logging 會記錄這項資訊。發生這種情況時,Cloud Run 必須等到更多 IPv4 位址可用,才能再啟動任何服務執行個體或工作任務。
如要解決這個問題,請按照IP 位址用盡策略操作。
查看已分配的 IP 位址
如要查看 Cloud Run 已分配的 IP 位址,請前往 Google Cloud 控制台的「IP 位址」頁面,或在 Google Cloud CLI 中執行下列指令:
gcloud compute addresses list