このガイドでは、Vertex AI リソースの Private Service Connect インターフェースを設定する方法について説明します。
Vertex AI の特定のリソース(次のリソースなど)に Private Service Connect インターフェース接続を構成できます。
VPC ピアリング接続とは異なり、Private Service Connect インターフェース接続は推移的であるため、コンシューマ VPC ネットワークで必要な IP アドレスが少なくなります。これにより、プロジェクト内の他の VPC ネットワークやオンプレミスに柔軟に接続できます。 Google Cloud
このガイドは、 Google Cloud ネットワーキングのコンセプトに精通しているネットワーク管理者を対象としています。
目標
このガイドでは、次のタスクについて説明します。
- プロデューサー VPC ネットワーク、サブネット、ネットワーク アタッチメントを構成します。
- Google Cloud ネットワーク ホスト プロジェクトにファイアウォール ルールを追加します。
- Private Service Connect インターフェースを使用するネットワーク アタッチメントを指定して、Vertex AI リソースを作成します。
始める前に
次の手順で Google Cloud プロジェクトを作成または選択し、Vertex AI と Private Service Connect で使用するように構成します。
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI, Compute Engine, and Cloud Storage APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Update and install
gcloud
components:gcloud components update
gcloud components install beta -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Vertex AI, Compute Engine, and Cloud Storage APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Update and install
gcloud
components:gcloud components update
gcloud components install beta - プロジェクト オーナーではなく、プロジェクト IAM 管理者(
roles/resourcemanager.projectIamAdmin
)のロールがない場合、ネットワーク リソースを管理するために必要なロールが含まれる Compute ネットワーク管理者(roles/compute.networkAdmin
)のロールを付与するようオーナーに依頼してください。 - ネットワーク ホスト プロジェクトの Compute ネットワーク管理者ロールを、Vertex AI Training サービスを使用しているプロジェクトの AI Platform サービス エージェント アカウントに割り当てます。 Google Cloud
VPC ネットワークとサブネットを設定する
このセクションでは、既存の VPC ネットワークを使用できます。既存のネットワークがない場合は、構成手順に沿って新しい VPC ネットワークを作成します。
-
gcloud compute networks create NETWORK \ --subnet-mode=custom
NETWORK は、VPC ネットワークの名前に置き換えます。
-
gcloud compute networks subnets create SUBNET_NAME \ --network=NETWORK \ --range=PRIMARY_RANGE \ --region=REGION
次のように置き換えます。
- SUBNET_NAME: サブネットの名前。
PRIMARY_RANGE: 新しいサブネットのプライマリ IPv4 範囲(CIDR 表記)。詳細については、IPv4 サブネットの範囲をご覧ください。
Vertex AI には
/28
サブネットワークが必要です。Vertex AI は、必要な PRIMARY_RANGE で指定された RFC 1918 範囲にのみ到達できます。有効な RFC 1918 範囲の一覧については、有効な IPv4 範囲をご覧ください。Vertex AI は、次の RFC 1918 以外の範囲に到達できません。
100.64.0.0/10
192.0.0.0/24
192.0.2.0/24
198.18.0.0/15
198.51.100.0/24
203.0.113.0/24
240.0.0.0/4
REGION: 新しいサブネットが作成されるリージョン。 Google Cloud
ネットワーク アタッチメントを作成する
共有 VPC デプロイでは、ホスト プロジェクトでネットワーク アタッチメントに使用するサブネットを作成し、次にサービス プロジェクトで Private Service Connect ネットワーク アタッチメントを作成します。
次の例は、接続を手動で受け入れるネットワーク アタッチメントを作成する方法を示しています。
gcloud compute network-attachments create NETWORK_ATTACHMENT_NAME \
--region=REGION \
--connection-preference=ACCEPT_MANUAL \
--subnets=SUBNET_NAME
NETWORK_ATTACHMENT_NAME は、ネットワーク アタッチメントの名前に置き換えます。
Vertex AI サービス エージェントが必要とするロール
ネットワーク アタッチメントを作成するプロジェクトで、同じプロジェクトの Vertex AI サービス エージェントに compute.networkAdmin
ロールが付与されていることを確認します。このプロジェクトが Vertex AI を使用するサービス プロジェクトと異なる場合は、事前にこのプロジェクトで Vertex AI API を有効にする必要があります。
ファイアウォール ルールの構成
コンシューマ VPC に上り(内向き)ファイアウォール ルールが適用され、コンピューティング エンドポイントとオンプレミス エンドポイントから Private Service Connect インターフェース ネットワーク アタッチメント サブネットとの通信が有効になります。
ファイアウォール ルールの構成は任意です。ただし、次の例に示すように、一般的なファイアウォール ルールを設定することをおすすめします。
TCP ポート 22 で SSH アクセスを許可するファイアウォール ルールを作成します。
gcloud compute firewall-rules create NETWORK-firewall1 \ --network NETWORK \ --allow tcp:22
TCP ポート 443 で HTTPS トラフィックを許可するファイアウォール ルールを作成します。
gcloud compute firewall-rules create NETWORK-firewall2 \ --network NETWORK \ --allow tcp:443
ICMP トラフィック(ping リクエストなど)を許可するファイアウォール ルールを作成します。
gcloud compute firewall-rules create NETWORK-firewall3 \ --network NETWORK \ --allow tcp:icmp
トラブルシューティング
このセクションでは、Vertex AI で Private Service Connect インターフェースを構成する際の一般的な問題について説明します。
- 共有 VPC ネットワークを使用するように Vertex AI を構成する場合は、Vertex AI リソースにネットワーク アタッチメントを指定します。たとえば、
CustomJob
作成リクエストでは、次の形式を使用します。"projects/YOUR_SHARED_VPC_HOST_PROJECT_NUMBER/regions/REGION/networkAttachments/NETWORK_ATTACHMENT_NAME"
- Vertex AI が使用する共有 VPC ネットワークを指定する場合は、サービス プロジェクトの AI Platform Service エージェントに、VPC ホスト プロジェクトの
compute.networkUser
ロールが付与されていることを確認します。 - ネットワーク アタッチメントは、プロデューサー(Vertex AI)が割り振られたリソースを削除しない限り、削除できません。削除プロセスを開始するには、Vertex AI サポートにお問い合わせください。
次のステップ
- Ray on Vertex AI で Private Service Connect インターフェース下り(外向き)を使用する方法を学習する。
- カスタム トレーニングで Private Service Connect インターフェースの下り(外向き)接続を使用する方法を学習する。
- Vertex AI Pipelines で Private Service Connect インターフェース下り(外向き)を使用する方法について学習する。