1. Введение
Используйте Private Service Connect для организации безопасного и приватного доступа к моделям, развёрнутым из Vertex AI Model Garden. Вместо предоставления публичной конечной точки этот метод позволяет развернуть модель на частной конечной точке Vertex AI, доступной только в вашем виртуальном частном облаке (VPC).
Private Service Connect создаёт конечную точку с внутренним IP-адресом внутри вашего VPC, которая напрямую подключается к сервису Vertex AI под управлением Google, где размещена ваша модель. Это позволяет приложениям в вашем VPC и локальных средах (через Cloud VPN или Interconnect) отправлять запросы на вывод, используя частные IP-адреса. Весь сетевой трафик остаётся в сети Google, что повышает безопасность, сокращает задержки и полностью изолирует конечную точку, обслуживающую вашу модель, от общедоступного Интернета.

Что вы построите
В этом руководстве вы скачаете Gemma 3 из Model Garden, размещённую в Vertex AI Online Inference в качестве частной конечной точки, доступной через Private Service Connect. Ваша сквозная конфигурация будет включать:
- Модель Model Garden: вам нужно выбрать Gemma 3 из Vertex AI Model Garden и развернуть ее на конечной точке Private Service Connect.
- Private Service Connect: вам нужно настроить конечную точку потребителя в вашем виртуальном частном облаке (VPC), состоящую из внутреннего IP-адреса в вашей собственной сети.
- Защищённое подключение к Vertex AI: конечная точка PSC будет использовать сервисное подключение, автоматически сгенерированное Vertex AI для развёртывания вашей частной модели. Это устанавливает частное соединение, гарантируя, что трафик между вашей VPC и конечной точкой обслуживания модели не будет проходить через общедоступный Интернет.
- Конфигурация клиента в вашем VPC: вам нужно настроить клиент (например, виртуальную машину Compute Engine) в вашем VPC для отправки запросов на вывод развернутой модели с использованием внутреннего IP-адреса конечной точки PSC.
К концу у вас будет функциональный пример модели Model Garden, обслуживаемой в частном порядке и доступной только из вашей выделенной сети VPC.
Чему вы научитесь
В этом руководстве вы узнаете, как развернуть модель из Vertex AI Model Garden и обеспечить к ней безопасный доступ из вашего виртуального частного облака (VPC) с помощью Private Service Connect (PSC). Этот метод позволяет вашим приложениям в вашем VPC (потребителю) подключаться к конечной точке модели Vertex AI (сервису-производителю) в частном порядке, не используя общедоступный интернет.
В частности, вы узнаете:
- Понимание PSC для Vertex AI: как PSC обеспечивает приватные и безопасные соединения между потребителями и производителями. Ваша VPC может получить доступ к развёрнутой модели Model Garden, используя внутренние IP-адреса.
- Развертывание модели с частным доступом: как настроить конечную точку Vertex AI для вашей модели Model Garden для использования PSC, сделав ее частной конечной точкой.
- Роль сервисного подключения: при развертывании модели на частной конечной точке Vertex AI, Google Cloud автоматически создает сервисное подключение в проекте клиента, управляемом Google. Это подключение предоставляет доступ к модели, обслуживающей сервис, сетям потребителей.
- Создание конечной точки PSC в вашем VPC:
- Как получить уникальный URI-адрес прикрепления службы из данных развернутой конечной точки Vertex AI.
- Как зарезервировать внутренний IP-адрес в выбранной вами подсети в вашей VPC.
- Как создать правило переадресации в вашем VPC, которое будет действовать как конечная точка PSC, нацеленная на подключение к сервису Vertex AI. Эта конечная точка сделает модель доступной через зарезервированный внутренний IP-адрес.
- Установление частного подключения: как конечная точка PSC в вашем VPC подключается к подключению к службе, обеспечивая безопасное соединение вашей сети со службой Vertex AI.
- Отправка запросов на вывод в частном порядке: как отправлять запросы на прогнозирование из ресурсов (например, виртуальных машин Compute Engine) в пределах вашего VPC на внутренний IP-адрес конечной точки PSC.
- Проверка: шаги по проверке и подтверждению того, что вы можете успешно отправлять запросы на вывод из вашего VPC в развернутую модель Model Garden через частное соединение.
Выполнив это, вы сможете размещать модели из Model Garden, доступ к которым будет возможен только из инфраструктуры вашей частной сети.
Что вам понадобится
Проект Google Cloud
Разрешения IAM
- Администратор платформы ИИ (roles/ml.Admin)
- Администратор вычислительной сети (roles/compute.networkAdmin)
- Администратор экземпляра вычислений (roles/compute.instanceAdmin)
- Администратор безопасности вычислений (roles/compute.securityAdmin)
- Администратор DNS (roles/dns.admin)
- Пользователь туннеля, защищенного IAP (roles/iap.tunnelResourceAccessor)
- Администратор журнала (roles/logging.admin)
- Администратор блокнотов (roles/notebooks.admin)
- Администратор IAM проекта (roles/resourcemanager.projectIamAdmin)
- Администратор учетной записи службы (roles/iam.serviceAccountAdmin)
- Администратор использования услуг (roles/serviceusage.serviceUsageAdmin)
2. Прежде чем начать
Обновите проект для поддержки руководства.
В этом руководстве используются $переменные для упрощения реализации конфигурации gcloud в Cloud Shell.
Внутри Cloud Shell выполните следующие действия:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
projectid=[YOUR-PROJECT-ID]
echo $projectid
Включение API
Внутри Cloud Shell выполните следующие действия:
gcloud services enable "compute.googleapis.com"
gcloud services enable "aiplatform.googleapis.com"
gcloud services enable "serviceusage.googleapis.com"
3. Развертывание модели
Выполните следующие шаги, чтобы развернуть модель из Model Garden.
В консоли Google Cloud перейдите в раздел Model Garden , найдите и выберите Gemma 3.

Нажмите «Параметры развертывания» и выберите Vertex AI.

На панели «Развёртывание на Vertex AI» выберите «Дополнительно». Предварительно заполненный регион и спецификация машины выбираются на основе доступной мощности. Вы можете изменить эти значения, хотя эта практическая работа разработана для us-central1.

На панели «Развертывание на Vertex AI» убедитесь, что для параметра Endpoint Access установлено значение Private Service Connect, затем выберите свой проект.

Оставьте все значения по умолчанию для остальных параметров, затем выберите «Развернуть» внизу и проверьте уведомления о статусе развертывания.

В Model Garden выберите регион us-central1, который предоставляет модель и конечную точку Gemma 3. Развёртывание модели занимает около 5 минут.

Через 30 минут после завершения процесса конечная точка перейдет в состояние «Активна».

Получите и запишите идентификатор конечной точки, выбрав ее.

Откройте Cloud Shell и выполните следующие действия, чтобы получить URI-адрес присоединения к службе Private Service Connect. Эта строка URI используется потребителем при развертывании конечной точки потребителя PSC.
Внутри Cloud Shell обновите идентификатор конечной точки, затем выполните следующую команду.
gcloud ai endpoints describe [Endpoint ID] --region=us-central1 | grep -i serviceAttachment:
Ниже приведен пример:
user@cloudshell:$ gcloud ai endpoints describe 2124795225560842240 --region=us-central1 | grep -i serviceAttachment:
Using endpoint [https://us-central1-aiplatform.googleapis.com/]
serviceAttachment: projects/o9457b320a852208e-tp/regions/us-central1/serviceAttachments/gkedpm-52065579567eaf39bfe24f25f7981d
Скопируйте содержимое после serviceAttachment в переменную с именем «Service_attachment», оно понадобится вам позже при создании соединения PSC.
user@cloudshell:$ Service_attachment=projects/o9457b320a852208e-tp/regions/us-central1/serviceAttachments/gkedpm-52065579567eaf39bfe24f25f7981d
4. Потребительская настройка
Создайте потребительскую VPC
Внутри Cloud Shell выполните следующие действия:
gcloud compute networks create consumer-vpc --project=$projectid --subnet-mode=custom
Создайте подсеть потребительской виртуальной машины
Внутри Cloud Shell выполните следующие действия:
gcloud compute networks subnets create consumer-vm-subnet --project=$projectid --range=192.168.1.0/24 --network=consumer-vpc --region=us-central1 --enable-private-ip-google-access
Создайте подсеть конечной точки PSC
gcloud compute networks subnets create pscendpoint-subnet --project=$projectid --range=10.10.10.0/28 --network=consumer-vpc --region=us-central1
5. Включить IAP
Чтобы разрешить IAP подключаться к экземплярам ваших виртуальных машин, создайте правило брандмауэра, которое:
- Применяется ко всем экземплярам виртуальных машин, к которым вы хотите обеспечить доступ с помощью IAP.
- Разрешает входящий трафик из диапазона IP-адресов 35.235.240.0/20. Этот диапазон содержит все IP-адреса, которые IAP использует для пересылки TCP.
Внутри Cloud Shell создайте правило брандмауэра IAP.
gcloud compute firewall-rules create ssh-iap-consumer \
--network consumer-vpc \
--allow tcp:22 \
--source-ranges=35.235.240.0/20
6. Создайте экземпляры виртуальных машин потребителя
Внутри Cloud Shell создайте экземпляр потребительской виртуальной машины, consumer-vm.
gcloud compute instances create consumer-vm \
--project=$projectid \
--machine-type=e2-micro \
--image-family debian-11 \
--no-address \
--shielded-secure-boot \
--image-project debian-cloud \
--zone us-central1-a \
--subnet=consumer-vm-subnet
7. Конечные точки подключения к частным службам
Потребитель создаёт конечную точку потребителя (правило переадресации) с внутренним IP-адресом в своей VPC. Эта конечная точка PSC нацелена на подключение к сервису поставщика. Клиенты в потребительской VPC или гибридной сети могут отправлять трафик на этот внутренний IP-адрес для доступа к сервису поставщика.
Зарезервируйте IP-адрес для конечной точки потребителя.
Внутри Cloud Shell создайте правило пересылки.
gcloud compute addresses create psc-address \
--project=$projectid \
--region=us-central1 \
--subnet=pscendpoint-subnet \
--addresses=10.10.10.6
Убедитесь, что IP-адрес зарезервирован.
Внутри Cloud Shell укажите зарезервированный IP-адрес.
gcloud compute addresses list
Вы должны увидеть зарезервированный IP-адрес 10.10.10.6.

Создайте конечную точку потребителя, указав URI прикрепления службы, target-service-attachment, который вы получили на предыдущем шаге в разделе «Развертывание модели».
Внутри Cloud Shell опишите сетевое подключение.
gcloud compute forwarding-rules create psc-consumer-ep \
--network=consumer-vpc \
--address=psc-address \
--region=us-central1 \
--target-service-attachment=$Service_attachment \
--project=$projectid
Убедитесь, что приложение службы принимает конечную точку
gcloud compute forwarding-rules describe psc-consumer-ep \
--project=$projectid \
--region=us-central1 \
В ответе убедитесь, что в поле pscConnectionStatus отображается статус «ПРИНЯТО».

8. Тест с использованием потребительской виртуальной машины
В Cloud Shell выполните следующие шаги, чтобы предоставить доступ к Consumer VM для доступа к API Vertex Model Garden.
SSH-подключение к виртуальной машине потребителя

Выполните повторную аутентификацию с использованием учетных данных приложения по умолчанию и укажите области действия Vertex AI.
gcloud auth application-default login
--scopes=https://www.googleapis.com/auth/cloud-platform
Используйте эту таблицу ниже для создания команды CURLl, настраивая ее в соответствии с вашей средой.
Атрибут | Ценить |
Протокол | HTTP |
Расположение | us-central1 |
Конечная точка онлайн-прогнозирования | 2133539641536544768 |
Идентификатор проекта | тест4-473419 |
Модель | gemma-3-12b-it |
IP-адрес конечной точки подключения частной службы | 10.10.10.6 |
Сообщения | [{"role": "user","content": "Что весит больше: 1 фунт перьев или камней?"}] |
Обновите и выполните команду curl на основе сведений о вашей среде:
curl -k -v -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" -H "Content-Type: application/json" http://[PSC-IP]/v1/projects/[Project-ID]/locations/us-central1/endpoints/[Predictions Endpoint]/chat/completions -d '{"model": "google/gemma-3-12b-it", "messages": [{"role": "user","content": "What weighs more 1 pound of feathers or rocks?"}] }'
Пример:
curl -k -v -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" -H "Content-Type: application/json" http://10.10.10.6/v1/projects/test4-473419/locations/us-central1/endpoints/2133539641536544768/chat/completions -d '{"model": "google/gemma-3-12b-it", "messages": [{"role": "user","content": "What weighs more 1 pound of feathers or rocks?"}] }'
КОНЕЧНЫЙ РЕЗУЛЬТАТ - УСПЕХ!!!
В результате вы должны увидеть прогноз от Gemma 3 в нижней части выходных данных. Это показывает, что вы смогли подключиться к конечной точке API в частном порядке через конечную точку PSC.
Connection #0 to host 10.10.10.6 left intact
{"id":"chatcmpl-9e941821-65b3-44e4-876c-37d81baf62e0","object":"chat.completion","created":1759009221,"model":"google/gemma-3-12b-it","choices":[{"index":0,"message":{"role":"assistant","reasoning_content":null,"content":"This is a classic trick question! They weigh the same. One pound is one pound, regardless of the material. 😊\n\n\n\n","tool_calls":[]},"logprobs":null,"finish_reason":"stop","stop_reason":106}],"usage":{"prompt_tokens":20,"total_tokens":46,"completion_tokens":26,"prompt_tokens_details":null},"prompt_logprobs":null
9. Уборка
Из Cloud Shell удалите компоненты руководства.
gcloud ai endpoints undeploy-model ENDPOINT_ID --deployed-model-id=DEPLOYED_MODEL_ID --region=us-central1 --quiet
gcloud ai endpoints delete $ENDPOINT_ID --project=$projectid --region=us-central1 --quiet
gcloud ai models delete $MODEL_ID --project=$projectid --region=us-central1 --quiet
gcloud compute instances delete consumer-vm --zone=us-central1-a --quiet
gcloud compute forwarding-rules delete psc-consumer-ep --region=us-central1 --project=$projectid --quiet
gcloud compute addresses delete psc-address --region=us-central1 --project=$projectid --quiet
gcloud compute networks subnets delete pscendpoint-subnet consumer-vm-subnet --region=us-central1 --quiet
gcloud compute firewall-rules delete ssh-iap-consumer --project=$projectid
gcloud compute networks delete consumer-vpc --project=$projectid --quiet
gcloud projects delete $projectid --quiet
10. Поздравления
Поздравляем, вы успешно настроили и проверили частный доступ к API Gemma 3, размещенному на Vertex AI Prediction, с использованием конечной точки Private Service Connect.
Вы создали инфраструктуру потребителя, включая резервирование внутреннего IP-адреса и настройку частной конечной точки подключения к сервису (правила переадресации) в вашем VPC. Эта конечная точка безопасно подключается к сервису Vertex AI, используя подключение к сервису, связанное с вашей развернутой моделью Gemma 3. Такая настройка позволяет вашим приложениям в VPC или подключенных сетях взаимодействовать с API Gemma 3 конфиденциально и безопасно, используя внутренний IP-адрес, без необходимости передачи трафика через общедоступный Интернет.