1. Einführung
Nutzen Sie Private Service Connect (PSC), um einen hochsicheren, privaten Zugriff für Modelle zu erstellen, die aus dem Vertex AI Model Garden bereitgestellt wurden. Anstatt einen öffentlichen Endpunkt verfügbar zu machen, können Sie mit dieser Methode Ihr Modell in einem privaten Vertex AI-Endpunkt bereitstellen, auf den nur innerhalb Ihrer Virtual Private Cloud (VPC) zugegriffen werden kann.
Private Service Connect erstellt einen Endpunkt mit einer internen IP-Adresse in Ihrer VPC, der direkt mit dem von Google verwalteten Vertex AI-Dienst verbunden ist, auf dem Ihr Modell gehostet wird. So können Anwendungen in Ihrer VPC und in lokalen Umgebungen (über Cloud VPN oder Interconnect) Inferenzanfragen mit privaten IPs senden.
Wichtig ist, dass der gesamte Netzwerk-Traffic zwischen Ihrer VPC und dem privaten Vertex AI-Endpunkt im dedizierten Netzwerk von Google verbleibt und vollständig vom öffentlichen Internet isoliert ist. Außerdem wird diese private Verbindung während der Übertragung mit TLS-Verschlüsselung gesichert. Diese End-to-End-Verschlüsselung schützt Ihre Vorhersageanfragen und Modellantworten und verbessert so die Vertraulichkeit und Integrität der Daten. Die Kombination aus Netzwerkisolation über PSC und TLS-Verschlüsselung bietet eine robuste und sichere Umgebung für Ihre Onlinevorhersagen, reduziert die Latenz und stärkt Ihre Sicherheitslage erheblich.

Was Sie erstellen
In dieser Anleitung laden Sie Gemma 3 aus Model Garden herunter, das in Vertex AI Online Inference als privater Endpunkt gehostet wird, auf den über Private Service Connect zugegriffen werden kann. Ihre End-to-End-Einrichtung umfasst Folgendes:
- Model Garden-Modell: Sie wählen Gemma 3 aus dem Vertex AI Model Garden aus und stellen es in einem Private Service Connect-Endpunkt bereit.
- Private Service Connect: Sie konfigurieren einen Nutzerendpunkt in Ihrer Virtual Private Cloud (VPC), der aus einer internen IP-Adresse in Ihrem eigenen Netzwerk besteht.
- Sichere Verbindung zu Vertex AI: Der PSC-Endpunkt zielt auf den Dienstanhang ab, der von Vertex AI automatisch für die private Modellbereitstellung generiert wird. Dadurch wird eine private Verbindung hergestellt, sodass der Traffic zwischen Ihrer VPC und dem Modellbereitstellungsendpunkt nicht über das öffentliche Internet geleitet wird.
- Clientkonfiguration in Ihrer VPC: Sie richten einen Client (z.B. eine Compute Engine-VM) in Ihrer VPC ein, um Inferenzanfragen mit der internen IP-Adresse des PSC-Endpunkts an das bereitgestellte Modell zu senden.
- TLS-Verschlüsselung prüfen: Von der Client-VM in Ihrer VPC aus stellen Sie mit Standardtools ( openssl s_client) eine Verbindung zur internen IP-Adresse des PSC-Endpunkts her. In diesem Schritt können Sie prüfen, ob der Kommunikationskanal zum Vertex AI-Dienst tatsächlich mit TLS verschlüsselt ist. Dazu untersuchen Sie die Handshake-Details und das präsentierte Serverzertifikat.
Am Ende haben Sie ein funktionierendes Beispiel für ein Model Garden-Modell, das privat bereitgestellt wird und nur über Ihr angegebenes VPC-Netzwerk zugänglich ist.
Lerninhalte
In dieser Anleitung erfahren Sie, wie Sie ein Modell aus dem Vertex AI Model Garden bereitstellen und es über Private Service Connect (PSC) sicher von Ihrer Virtual Private Cloud (VPC) aus zugänglich machen. Mit dieser Methode können Ihre Anwendungen in Ihrer VPC (der Nutzer) privat eine Verbindung zum Vertex AI-Modellendpunkt (dem Dienstersteller) herstellen, ohne das öffentliche Internet zu durchlaufen.
Im Einzelnen lernen Sie Folgendes:
- PSC für Vertex AI: Wie PSC private und sichere Verbindungen zwischen Nutzern und Erstellern ermöglicht. Ihre VPC kann über interne IP-Adressen auf das bereitgestellte Model Garden-Modell zugreifen.
- Modell mit privatem Zugriff bereitstellen: So konfigurieren Sie einen Vertex AI-Endpunkt für Ihr Model Garden-Modell, um PSC zu verwenden und es zu einem privaten Endpunkt zu machen.
- Rolle des Dienstanhangs: Wenn Sie ein Modell in einem privaten Vertex AI-Endpunkt bereitstellen, erstellt Google Cloud automatisch einen Dienstanhang in einem von Google verwalteten Mandantenprojekt. Dieser Dienstanhang macht den Dienst zur Bereitstellung des Modells für Nutzernetzwerke verfügbar.
- PSC-Endpunkt in Ihrer VPC erstellen:
- So rufen Sie den eindeutigen URI des Dienstanhangs aus den Details Ihres bereitgestellten Vertex AI-Endpunkts ab.
- So reservieren Sie eine interne IP-Adresse in Ihrem ausgewählten Subnetz in Ihrer VPC.
- So erstellen Sie eine Weiterleitungsregel in Ihrer VPC, die als PSC-Endpunkt fungiert und auf den Vertex AI-Dienstanhang abzielt. Über diesen Endpunkt ist das Modell über die reservierte interne IP-Adresse zugänglich.
- Private Konnektivität einrichten: Wie der PSC-Endpunkt in Ihrer VPC eine Verbindung zum Dienstanhang herstellt und Ihr Netzwerk sicher mit dem Vertex AI-Dienst verbindet.
- Inferenzanfragen privat senden: So senden Sie Vorhersageanfragen von Ressourcen (z. B. Compute Engine-VMs) in Ihrer VPC an die interne IP-Adresse des PSC-Endpunkts.
- Validierung: Schritte zum Testen und Bestätigen, dass Sie Inferenzanfragen über die private Verbindung erfolgreich von Ihrer VPC an das bereitgestellte Model Garden-Modell senden können.
- TLS-Verschlüsselung prüfen:So verwenden Sie Tools von Ihrem VPC-Client (z.B. einer Compute Engine-VM) aus, um über TLS eine Verbindung zur internen IP-Adresse des PSC-Endpunkts herzustellen.
So können Sie Modelle aus Model Garden hosten, die nur über Ihre private Netzwerkinfrastruktur erreichbar sind.
Voraussetzungen
Google Cloud-Projekt
IAM-Berechtigungen
- AI Platform-Administrator (roles/ml.Admin)
- Compute-Netzwerkadministrator (roles/compute.networkAdmin)
- Compute-Instanzadministrator (roles/compute.instanceAdmin)
- Compute-Sicherheitsadministrator (roles/compute.securityAdmin)
- DNS-Administrator (roles/dns.admin)
- Nutzer IAP-gesicherter Tunnel (roles/iap.tunnelResourceAccessor)
- Logging-Administrator (roles/logging.admin)
- Notebooks-Administrator (roles/notebooks.admin)
- Projekt-IAM-Administrator (roles/resourcemanager.projectIamAdmin)
- Dienstkontoadministrator (roles/iam.serviceAccountAdmin)
- Service Usage-Administrator (roles/serviceusage.serviceUsageAdmin)
2. Hinweis
Projekt für die Anleitung aktualisieren
In dieser Anleitung werden $variables verwendet, um die Implementierung der gcloud-Konfiguration in Cloud Shell zu erleichtern.
Führen Sie in Cloud Shell folgende Schritte aus:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
projectid=[YOUR-PROJECT-ID]
echo $projectid
API-Aktivierung
Führen Sie in Cloud Shell folgende Schritte aus:
gcloud services enable "compute.googleapis.com"
gcloud services enable "aiplatform.googleapis.com"
gcloud services enable "serviceusage.googleapis.com"
gcloud services enable dns.googleapis.com
3. Modell bereitstellen
Folgen Sie der Anleitung unten, um Ihr Modell aus Model Garden bereitzustellen.
Rufen Sie in der Google Cloud Console Model Garden auf und suchen Sie nach Gemma 3.

Klicken Sie auf „Modell bereitstellen“ und wählen Sie „Vertex AI“ aus.

Wählen Sie unten im Bereich „Bereitstellungseinstellungen“ die Option „Einstellungen bearbeiten“ aus.

Achten Sie im Bereich „In Vertex AI bereitstellen“ darauf, dass der Endpunktzugriff als „Private Service Connect“ konfiguriert ist, und wählen Sie dann Ihr Projekt aus.

Übernehmen Sie für alle anderen Optionen die Standardeinstellungen und wählen Sie unten „Bereitstellen“ aus. Prüfen Sie in Ihren Benachrichtigungen den Bereitstellungsstatus.

Wählen Sie in Model Garden die Region „us-central1“ aus, in der das Modell und der Endpunkt von Gemma 3 bereitgestellt werden. Die Modellbereitstellung dauert etwa 5 Minuten.

Nach Abschluss der Bereitstellung ändert sich der Status des Endpunkts nach 30 Minuten in „Aktiv“.

Rufen Sie die Endpunkt-ID ab und notieren Sie sie, indem Sie den Endpunkt auswählen.

Wählen Sie den Endpunkt aus, um die Endpunkt-ID abzurufen und die Variable zu aktualisieren. Im gezeigten Beispiel ist die ID „1934769929467199488“.
Führen Sie in Cloud Shell folgende Schritte aus:
endpointID=<Enter_Your_Endpoint_ID>
region=us-central1
Führen Sie die folgenden Schritte aus, um den URI des Dienstanhangs für Private Service Connect abzurufen. Dieser URI-String wird vom Nutzer verwendet, wenn er einen PSC-Nutzerendpunkt bereitstellt.
Verwenden Sie in Cloud Shell die Variable für die Endpunkt-ID/Region und führen Sie dann den folgenden Befehl aus:
gcloud ai endpoints describe $endpointID --region=$region | grep -i serviceAttachment:
Ein Beispiel dafür sehen Sie unten:
user@cloudshell:$ gcloud ai endpoints describe 1934769929467199488 --region=us-central1 | grep -i serviceAttachment:
Using endpoint [https://us-central1-aiplatform.googleapis.com/]
serviceAttachment: projects/o9457b320a852208e-tp/regions/us-central1/serviceAttachments/gkedpm-52065579567eaf39bfe24f25f7981d
Kopieren Sie den Inhalt nach „serviceAttachment“ in eine Variable mit dem Namen „Service_attachment“. Sie benötigen sie später, wenn Sie die PSC-Verbindung erstellen.
user@cloudshell:$ Service_attachment=<Enter_Your_ServiceAttachment>
4. Nutzerkonfiguration
Nutzer-VPC erstellen
Führen Sie in Cloud Shell folgende Schritte aus:
gcloud compute networks create consumer-vpc --project=$projectid --subnet-mode=custom
Subnetz für die Nutzer-VM erstellen
Führen Sie in Cloud Shell folgende Schritte aus:
gcloud compute networks subnets create consumer-vm-subnet --project=$projectid --range=192.168.1.0/24 --network=consumer-vpc --region=$region --enable-private-ip-google-access
Subnetz für den PSC-Endpunkt erstellen. Führen Sie dazu in Cloud Shell folgende Schritte aus:****
gcloud compute networks subnets create pscendpoint-subnet --project=$projectid --range=10.10.10.0/28 --network=consumer-vpc --region=$region
5. IAP aktivieren
Damit IAP eine Verbindung zu Ihren VM-Instanzen herstellen kann, erstellen Sie eine Firewallregel, die:
- für alle VM-Instanzen gilt, die über IAP zugänglich sein sollen.
- eingehenden Traffic aus dem IP-Bereich „35.235.240.0/20“ zulässt. Dieser Bereich enthält alle IP-Adressen, die IAP für die TCP-Weiterleitung verwendet.
Erstellen Sie in Cloud Shell die IAP-Firewallregel.
gcloud compute firewall-rules create ssh-iap-consumer \
--network consumer-vpc \
--allow tcp:22 \
--source-ranges=35.235.240.0/20
6. VM-Instanzen für den Nutzer erstellen
Erstellen Sie in Cloud Shell die VM-Instanz für den Nutzer, „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. Private Service Connect-Endpunkte
Der Nutzer erstellt einen Nutzerendpunkt (Weiterleitungsregel) mit einer internen IP-Adresse in seiner VPC. Dieser PSC-Endpunkt zielt auf den Dienstanhang des Erstellers ab. Clients in der VPC oder im Hybridnetzwerk des Nutzers können Traffic an diese interne IP-Adresse senden, um den Dienst des Erstellers zu erreichen.
Reservieren Sie eine IP-Adresse für den Nutzerendpunkt.
Erstellen Sie in Cloud Shell die Weiterleitungsregel.
gcloud compute addresses create psc-address \
--project=$projectid \
--region=$region \
--subnet=pscendpoint-subnet \
--addresses=10.10.10.6
Prüfen Sie, ob die IP-Adresse reserviert ist.
Listen Sie in Cloud Shell die reservierte IP-Adresse auf.
gcloud compute addresses list
Die IP-Adresse „10.10.10.6“ sollte reserviert sein.

Erstellen Sie den Nutzerendpunkt, indem Sie den URI des Dienstanhangs „target-service-attachment“ angeben, den Sie im vorherigen Schritt im Abschnitt „Modell bereitstellen“ erfasst haben.
Beschreiben Sie in Cloud Shell den Netzwerk-Anhang.
gcloud compute forwarding-rules create psc-consumer-ep \
--network=consumer-vpc \
--address=psc-address \
--region=$region \
--target-service-attachment=$Service_attachment \
--project=$projectid
Prüfen Sie, ob der Dienstanhang den Endpunkt akzeptiert.
Führen Sie in Cloud Shell folgende Schritte aus:
gcloud compute forwarding-rules describe psc-consumer-ep \
--project=$projectid \
--region=$region
Prüfen Sie in der Antwort, ob für das Feld „pscConnectionStatus“ der Status „ACCEPTED“ angezeigt wird.

8. Verbindung zum Vertex AI-HTTPS-Endpunkt über TLS einrichten
Erstellen Sie eine private DNS-Zone, damit Sie Online Inference ohne Angabe einer IP-Adresse nutzen können.
Führen Sie in Cloud Shell folgende Schritte aus:
DNS_NAME_SUFFIX="prediction.p.vertexai.goog."
gcloud dns managed-zones create vertex \
--project=$projectid \
--dns-name=$DNS_NAME_SUFFIX \
--networks=consumer-vpc \
--visibility=private \
--description="A DNS zone for Vertex AI endpoints using Private Service Connect."
Erstellen Sie einen A-Eintrag, um die Domain der PSC-IP-Adresse zuzuordnen.
Führen Sie in Cloud Shell folgende Schritte aus:
gcloud dns record-sets create "*.prediction.p.vertexai.goog." \
--zone=vertex \
--type=A \
--ttl=300 \
--rrdatas="10.10.10.6"
Erstellen Sie eine Cloud Router-Instanz als Voraussetzung für eine NAT-Instanz.
Führen Sie in Cloud Shell folgende Schritte aus:
gcloud compute routers create consumer-cr \
--region=$region --network=consumer-vpc \
--asn=65001
Erstellen Sie eine Cloud NAT-Instanz, mit der Sie die Pakete „openssl“ und „dnsutils“ herunterladen können.
Führen Sie in Cloud Shell folgende Schritte aus:
gcloud compute routers nats create consumer-nat-gw \
--router=consumer-cr \
--region=$region \
--nat-all-subnet-ip-ranges \
--auto-allocate-nat-external-ips
Stellen Sie eine SSH-Verbindung (Konsole) zur Nutzer-VM her. Führen Sie in Cloud Shell folgende Schritte aus:
gcloud compute ssh --zone "us-central1-a" "consumer-vm" --tunnel-through-iap --project "$projectid"
Aktualisieren Sie die folgenden Pakete, installieren Sie „open-ssl“ und installieren Sie DNS-Dienstprogramme.
Führen Sie in Cloud Shell folgende Schritte aus:
sudo apt update
sudo apt install openssl
sudo apt-get install -y dnsutils
Sie benötigen die Projektnummer im nächsten Schritt. Führen Sie den folgenden Befehl in Cloud Shell aus, um Ihre Projektnummer abzurufen und in einer Variablen zu speichern:
Führen Sie in Cloud Shell folgende Schritte aus:
gcloud projects describe $projectid --format="value(projectNumber)"
Example Output: 549538389202
projectNumber=549538389202
In den nächsten Schritten müssen Sie einige weitere Variablen definieren. Definieren Sie diese Variablen(ENDPOINT_ID, REGION, VERTEX_AI_PROJECT_ID), indem Sie sie zuerst aus Cloud Shell erfassen und dann dieselben Variablen in der VM erstellen.
Führen Sie in Cloud Shell folgende Schritte aus:
echo $projectNumber
echo $projectid
echo $region
echo $endpointID
Beispielausgabe:
549538389202
test4-473419
Us-central1
1934769929467199s
Fügen Sie diese Variablen in Ihrer Nutzer-VM hinzu. Beispiel:
projectNumber=1934769929467199488
projectid=test4-473419
region=us-central1
endpointID=1934769929467199488
Laden Sie das Vertex AI-Zertifikat herunter, indem Sie den folgenden Befehl in Ihrem Home-Verzeichnis in Ihrer VM ausführen. Mit diesem Befehl wird eine Datei mit dem Namen vertex_certificate.crt erstellt.
sudo openssl s_client -showcerts -connect $endpointID-$region-$projectNumber.prediction.p.vertexai.goog:443 </dev/null | openssl x509 -outform pem -out vertex_certificate.crt
Output should look like below, error is expected.

Verschieben Sie das Zertifikat in den System-Truststore.
sudo mv vertex_certificate.crt /usr/local/share/ca-certificates
Aktualisieren Sie den Zertifikatsmanager.
sudo update-ca-certificates
Nach der Aktualisierung sollte es so aussehen:
user@linux-vm:~$ sudo update-ca-certificates
Updating certificates in /etc/ssl/certs...
1 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
Done.
9. Abschließender Test von der Nutzer-VM aus
Authentifizieren Sie sich auf der Nutzer-VM noch einmal mit den Standardanmeldedaten für Anwendungen und geben Sie die Vertex AI-Bereiche an:
gcloud auth application-default login
--scopes=https://www.googleapis.com/auth/cloud-platform
Führen Sie auf der Nutzer-VM den folgenden curl-Befehl aus, um die Vorhersage für Ihr Gemini-Modell mit der Eingabeaufforderung „What weighs more 1 pound of feathers or rocks?“ zu testen.
curl -v -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" -H "Content-Type: application/json" https://$endpointID-$region-$projectNumber.prediction.p.vertexai.goog/v1/projects/$projectid/locations/$region/endpoints/$endpointID/chat/completions -d '{"model": "google/gemma-3-12b-it", "messages": [{"role": "user","content": "What weighs more 1 pound of feathers or rocks?"}] }'
ABSCHLIESSENDES ERGEBNIS – ERFOLG!!!
Im unteren Teil der Ausgabe sollte die Vorhersage von Gemma 3 angezeigt werden. Das zeigt, dass Sie den API-Endpunkt privat über den PSC-Endpunkt erreichen konnten.
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
10. Bereinigen
Löschen Sie in Cloud Shell die Komponenten der Anleitung.
Get Deployed Model ID first with this command, you will need it to delete the Endpoint ID:
gcloud ai endpoints describe $endpointID \
--region=$region \
--project=$projectid \
--format="table[no-heading](deployedModels.id)"
Example Output: 7389140900875599872
Put it in a Variable:
deployedModelID=7389140900875599872
Run following Commands:
gcloud ai endpoints undeploy-model $endpointID --deployed-model-id=$deployedModelID --region=$region --quiet
gcloud ai endpoints delete $endpointID --project=$projectid --region=$region --quiet
Run Following command to get $MODEL_ID to delete Model:
gcloud ai models list --project=$projectid --region=$region
Example Output:
Using endpoint [https://us-central1-aiplatform.googleapis.com/]
MODEL_ID: gemma-3-12b-it-1768409471942
DISPLAY_NAME: gemma-3-12b-it-1768409471942
Put MODEL_ID value in a variable:
MODEL_ID=gemma-3-12b-it-1768409471942
Run the follow command to delete Model:
gcloud ai models delete $MODEL_ID --project=$projectid --region=$region --quiet
Clean up rest of the lab:
gcloud compute instances delete consumer-vm --zone=us-central1-a --quiet
gcloud compute forwarding-rules delete psc-consumer-ep --region=$region --project=$projectid --quiet
gcloud compute addresses delete psc-address --region=$region --project=$projectid --quiet
gcloud compute networks subnets delete pscendpoint-subnet consumer-vm-subnet --region=$region --quiet
gcloud compute firewall-rules delete ssh-iap-consumer --project=$projectid
gcloud compute routers delete consumer-cr --region=$region
gcloud compute networks delete consumer-vpc --project=$projectid --quiet
11. Glückwunsch
Glückwunsch! Sie haben den privaten Zugriff auf die Gemma 3 API, die in Vertex AI Prediction gehostet wird, erfolgreich konfiguriert und validiert. Dazu haben Sie einen Private Service Connect-Endpunkt mit einem selbstsignierten Zertifikat verwendet, das Sie von Vertex AI erhalten und im Truststore der VMs bereitgestellt haben.
Sie haben die Nutzerinfrastruktur erstellt, einschließlich der Reservierung einer internen IP-Adresse, der Konfiguration eines Private Service Connect-Endpunkts (einer Weiterleitungsregel) in Ihrer VPC und eines privaten DNS, der dem selbstsignierten Zertifikat *prediction.p.vertexai.goog entspricht. Dieser Endpunkt stellt eine sichere Verbindung zum Vertex AI-Dienst her, indem er auf den Dienstanhang abzielt, der mit Ihrem bereitgestellten Gemma 3-Modell verknüpft ist.
Diese Einrichtung sorgt dafür, dass Ihre Anwendungen in der VPC oder in verbundenen Netzwerken privat über eine interne IP-Adresse mit Zertifikaten mit der Gemma 3 API interagieren können. Der gesamte Traffic verbleibt im Google-Netzwerk und durchläuft niemals das öffentliche Internet.