您可以設定 Vertex AI 與虛擬私有雲 (VPC) 對等互連,直接連線至 Vertex AI 中的特定資源,包括:
本指南說明如何設定虛擬私有雲網路對等互連,讓網路與 Vertex AI 資源對等互連。本指南適用於已熟悉網路概念的網路管理員。 Google Cloud
總覽
本指南涵蓋下列工作:
- 為 VPC 設定私人服務存取權。這樣一來,您就能在虛擬私有雲和 Google 的共用虛擬私有雲網路之間建立對等互連連線。
- 考量需要為 Vertex AI 預留的 IP 範圍。
- 視情況匯出自訂路徑,以便 Vertex AI 匯入。
事前準備
- 選取要與 Vertex AI 資源對等互連的 VPC。Vertex AI 一次只能與每個地區的一個網路配對。
- 選取或建立要用於 Vertex AI 的 Google Cloud 專案。
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API, Vertex AI API, and Service Networking APIs.
- 您也可以選擇使用共用虛擬私有雲。如果您使用共用虛擬私有雲,通常會在與 VPC 主專案不同的Google Cloud專案中使用 Vertex AI。在兩個專案中啟用 Compute Engine API 和 Service Networking API。瞭解如何佈建共用虛擬私有雲。
- 如要執行本指南中的
gcloud
範例,請安裝 gcloud CLI。
必要的角色
如果您不是專案擁有者或編輯者,請確認您具有Compute Network Admin 角色 (roles/compute.networkAdmin
),其中包含管理網路資源所需的必要角色。
與內部部署網路對等互連
如果是虛擬私人雲端網路對等互連內部部署網路,則需要額外執行以下步驟:
設定虛擬私有雲的私人服務存取權
設定私人服務存取權時,您會在您的網路與 Google 或第三方服務 (服務供應商) 所擁有的網路之間建立私人連線。在這種情況下,Vertex AI 是服務製作者。如要設定私人服務存取權,您需要為服務供應商保留 IP 範圍,然後建立與 Vertex AI 的對等互連連線。
如果您已擁有已設定私人服務存取權的 VPC,請繼續匯出自訂路徑。
- 設定專案 ID、保留範圍名稱和網路名稱的環境變數。如果您使用共用虛擬私人雲端,請使用 VPC 主機專案的專案 ID。否則,請使用您用於 Vertex AI 的 Google Cloud 專案 ID。
- 啟用必要的 API。如果您使用共用虛擬私有雲,請參閱「使用共用虛擬私有雲搭配 Vertex AI」。
- 使用
gcloud compute addresses create
設定保留範圍。 使用
gcloud services vpc-peerings connect
,在 VPC 主機專案和 Google 的 Service Networking 之間建立對等互連連線。對於私人推論端點,我們建議為模型代管作業保留至少一個
/21
區塊的子網路。預留較小的區塊可能會因 IP 位址不足而導致部署錯誤。PROJECT_ID=YOUR_PROJECT_ID gcloud config set project $PROJECT_ID # This is for display only; you can name the range anything. PEERING_RANGE_NAME=google-reserved-range NETWORK=YOUR_NETWORK_NAME # NOTE: `prefix-length=16` means a CIDR block with mask /16 will be # reserved for use by Google services, such as Vertex AI. gcloud compute addresses create $PEERING_RANGE_NAME \ --global \ --prefix-length=16 \ --description="peering range for Google service" \ --network=$NETWORK \ --purpose=VPC_PEERING # Create the VPC connection. gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --network=$NETWORK \ --ranges=$PEERING_RANGE_NAME \ --project=$PROJECT_ID
進一步瞭解私人服務存取權。
搭配 Vertex AI 使用共用虛擬私有雲
如果您在專案中使用共用虛擬私有雲,請參閱如何佈建共用虛擬私有雲,並確實完成下列步驟:
在主機和服務專案中啟用 Compute Engine API 和 Service Networking API。必須為服務專案啟用 Vertex AI API。
在主機專案中,建立 VPC 與 Google 服務之間的 VPC 網路對等互連連線。
建立 Vertex AI 時,您必須指定要讓 Vertex AI 存取共用虛擬私有雲的網路名稱。
確認所使用的服務或使用者帳戶具有Compute 網路使用者角色 (
roles/compute.networkUser
)。
為 Vertex AI 預留 IP 範圍
為服務供應者預留 IP 範圍後,Vertex AI 和其他服務就能使用該範圍。如果您使用相同範圍連線至多個服務供應商,請分配較大的範圍來容納這些供應商,以免 IP 用盡。
請參閱這篇文章,瞭解要使用私人 IP 搭配不同類型的自訂訓練工作時,應預留的預估 IP 範圍。
如果工作是以下參數啟動,就會在 Google 管理的網路中啟動,該網路與您的 VPC 和連結至該網路的其他網路對等互連:
--network = "projects/${host_project}/global/networks/${network}"
任何不需要存取網路的工作,都可以在不宣告此內容的情況下啟動,因此可以保留 IP 分配。
匯出自訂路徑
如果您使用自訂路徑,請務必匯出這些路徑,以便 Vertex AI 匯入。如果您不使用自訂路徑,請略過本節。
如要匯出自訂路徑,您必須在 VPC 中更新對等互連連線。匯出自訂路徑會將虛擬私人雲端網路中的所有符合資格的靜態和動態路徑 (例如前往內部部署網路的路徑) 傳送至服務供應者的網路 (在本例中為 Vertex AI)。這麼做可建立必要的連線,並讓訓練工作將流量傳回您的內部網路。
請確認內部部署網路有回傳路徑可連往為 Vertex AI 配置的 IP 位址範圍,以便回傳的回應正確轉送至 Vertex AI。舉例來說,請使用包含 Vertex AI IP 位址範圍的 Cloud Router 自訂路徑通告。
進一步瞭解內部部署網路的私人連線。
主控台
- 前往 Google Cloud 控制台的「VPC Network Peering」(VPC 網路對等互連) 頁面。
前往「VPC Network Peering」(VPC 網路對等互連) 頁面 - 選取要更新的對等互連連線。
- 按一下 [編輯]。
- 選取「Export custom routes」。
gcloud
找出要更新的對等互連連線名稱。如果您有多個對等連線,請省略
--format
標記。gcloud services vpc-peerings list \ --network=$NETWORK \ --service=servicenetworking.googleapis.com \ --project=$PROJECT_ID \ --format "value(peering)"
更新對等互連連線,以匯出自訂路徑。
gcloud compute networks peerings update PEERING-NAME \ --network=$NETWORK \ --export-custom-routes \ --project=$PROJECT_ID
檢查對等連線狀態
如要查看對等互連連線是否處於活動狀態,您可以使用下列指令列出這些連線:
gcloud compute networks peerings list --network $NETWORK
您應該會看到剛建立的對等互連狀態為 ACTIVE
。進一步瞭解有效對等互連連線。
疑難排解
本節列出設定 VPC 網路對等互連與 Vertex AI 時的常見問題。
將 Vertex AI 設定為使用共用虛擬私有雲網路時,請按照下列方式指定網路 URI。
"projects/YOUR_SHARED_VPC_HOST_PROJECT/global/networks/YOUR_SHARED_VPC_NETWORK"
如果您為 Vertex AI 指定共用虛擬私有雲網路,請確認服務專案中 Vertex AI 的任何使用者或服務帳戶執行者,都已在主專案中授予
compute.networkUser
角色。請確認您已為網路連線的所有服務供應者 (包括 Vertex AI) 分配足夠的 IP 範圍。
如果您遇到
IP_SPACE_EXHAUSTED
、RANGES_EXHAUSTED
或PEERING_RANGE_EXHAUSTED
錯誤訊息,就必須增加網路中servicenetworking
預留功能的可用 IP 位址數量。您可以新增範圍至現有的 VPC 網路對等互連設定,或是刪除部分 Vertex AI 資源來釋出已分配的 IP 位址。連線逾時:匯出自訂路徑後,來自 Vertex AI 的連線會透過您的網路路由,連至其他網路中的端點。不過,這些端點可能不會透過您的網路傳送回應,傳回至 Vertex AI。請務必在這些網路中新增靜態或動態路徑,以便返回路徑指向 Vertex AI 的已分配 IP 範圍。
連線逾時 / 主機無法連線錯誤:由於不支援傳遞對等連線,因此即使啟用「Export custom routes」(匯出自訂路徑),Vertex AI 的連線也無法連上直接對等於您網路的其他網路端點。請與網路管理員合作,確保沒有人試圖直接將您的網路從一個直接對等互連的網路重新導向至另一個網路。如有需要,您可以將其中一個對等互連躍點替換為支援靜態或動態路徑的解決方案。
主機無法連線 DNS 錯誤:如果 Vertex AI 工作需要解析 VPC 中的主機名稱,請務必完成與服務供應者共用私人 DNS 區域的設定。
如果遇到
Unable to create an instance within a Shared VPC network
錯誤,請參閱排解 Vertex AI Workbench 問題。如果您看到錯誤訊息
For the peered network $network_name, couldn't find a free blocks in allocated IP ranges. This is needed to create the cluster.
,就必須增加服務可用的已分配範圍數量。您可以透過下列方式達成此目的:- 在網路中新增分配範圍,並將其新增至
servicenetworking-googleapis-com
私人連線。請注意,所需的最小分配範圍大小為/18
。 - 刪除現有的未使用 Vertex AI 資源,釋出已分配的 IP 位址。
或者,您可以考慮使用私人服務存取權連線取代虛擬私有雲端網路對等互連。
- 在網路中新增分配範圍,並將其新增至
如需其他疑難排解資訊,請參閱 VPC 網路對等互連疑難排解指南。
後續步驟
- 瞭解如何使用私人 IP 進行自訂訓練。
- 瞭解如何使用私人端點進行推論。
- 進一步瞭解虛擬私有雲網路對等互連。
- 請參閱虛擬私人雲端設計的參考架構和最佳做法。