1. Giriş
Şirket içi ana makineler, herkese açık internet üzerinden (1. seçenek) veya şirket içi ağınızdan Private Service Connect (PSC) ile Cloud VPN ya da Cloud Interconnect'i (2. seçenek) kullanarak ve her ikisi de SSL/TLS şifrelemesi sunan bir Online Tahmine erişebilir. Ara bağlantı üzerinden online tahmine yönelik karma bağlantı, internetten daha iyi performans gösterir. Bu nedenle, Şekil 1'de gösterildiği gibi kritik uygulamalar için önerilir.
Bu eğiticide, çoklu bulut ve şirket içi özel bağlantıya temel oluşturabilecek iki VPC ağı arasında Online Tahmine gizli olarak erişmek için Yüksek Kullanılabilirlikli VPN'nin (HA VPN) nasıl kullanılacağını göstereceğiz.
Vertex Online Prediction herkese açık bir uç nokta olduğundan, Vertex ve diğer Googleapis'e erişime izin vermek veya erişimi reddetmek için güvenli çevreler oluşturmak amacıyla VPC Hizmet Kontrolleri (VPC-SC) kullanarak erişimi kısıtlamak istediğinizi unutmayın. Bu eğitim, VPC-SC ile ilgili değildir. Daha ayrıntılı bilgi için Vertex AI ile VPC Hizmet Kontrolleri başlıklı makaleyi inceleyebilirsiniz.
Neler oluşturacaksınız?
Şirket içi ortamı temsil etmesi için on-prem-vpc
adında bir VPC ağı oluşturacaksınız. Dağıtımınız için on-prem-vpc
mevcut olmaz. Bunun yerine, şirket içi veri merkezinize veya bulut sağlayıcınıza karma ağ kullanılır.
Aşağıdaki ayrıntılara göre, Online tahmine herkese açık olarak Cloud NAT ve HA VPN üzerinden PSC'yi özel olarak kullanarak erişimi gösteren kapsamlı bir Private Service Connect mimarisi oluşturacaksınız.
Online tahmin Google Cloud projesinde dağıtıldıktan sonra aşağıdaki kullanım alanları incelenecektir:
Online tahmine herkese açık erişim şunlardan oluşur:
- İnternet çıkış erişimi için NAT'den yararlanan bir GCE örneği (nat-client) oluşturma
- Modelle ilgili çıkarım yapmak için CURL kullanma
- Online tahmine herkese açık bir VIP üzerinden erişildiğini doğrulamak için TCPDUMP'yi kullanın
Online tahmine özel erişim şunlardan oluşur:
- Projedeki aVertex online tahmin uç noktasına model dağıtma
- aiml-vpc'de Private Service Connect (Googleapis) Uç Noktası oluşturma
- Bulut yönlendiricisi üzerinden PSC IP adresini, şirket içi VPC'ye özel bir reklam olarak dışa aktarın
- GCE örneği (özel istemci) oluşturma ve vb/ana makine dosyalarını PSC uç nokta IP'siyle güncelleme
- Modelle ilgili çıkarım yapmak için CURL kullanma
- Online tahmine PSC uç nokta IP Adresi aracılığıyla erişildiğini doğrulamak için TCPDUMP kullanma
Neler öğreneceksiniz?
- Private Service Connect Uç Noktası oluşturma
- Cloud Router üzerinden PSC Uç Nokta IP'sinin reklamını yapma
- Hem Herkese Açık hem de Gizli Online Tahmin erişimini doğrulamak için TCPDUMP'yi kullanma
Gerekenler
- Google Cloud Projesi
IAM İzinleri
2. Başlamadan önce
Projeyi, eğiticiyi destekleyecek şekilde güncelleme
Bu eğiticide, Cloud Shell'de gcloud yapılandırması uygulamasına yardımcı olmak için $variables kullanımı açıklanmaktadır.
Cloud Shell'in içinde aşağıdaki işlemleri gerçekleştirin:
gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectid=YOUR-PROJECT-NAME
echo $projectid
3. Hizmetleri Etkinleştir
Cloud Shell'in içinde aşağıdaki işlemleri gerçekleştirin:
gcloud services enable dns.googleapis.com
gcloud services enable aiplatform.googleapis.com
gcloud services enable iam.googleapis.com
gcloud services enable compute.googleapis.com
gcloud services enable notebooks.googleapis.com
4. aiml-vpc kurulumu
aiml-vpc'yi oluşturma
Cloud Shell'in içinde aşağıdaki işlemleri gerçekleştirin:
gcloud compute networks create aiml-vpc --project=$projectid --subnet-mode=custom
Kullanıcı tarafından yönetilen not defteri alt ağını oluşturma
Cloud Shell'in içinde aşağıdaki işlemleri gerçekleştirin:
gcloud compute networks subnets create workbench-subnet --project=$projectid --range=172.16.10.0/28 --network=aiml-vpc --region=us-central1 --enable-private-ip-google-access
Cloud Yönlendirici ve NAT yapılandırması
Kullanıcı tarafından yönetilen not defteri örneğinin harici bir IP adresi olmadığından not defteri yazılım paketi indirmeleri için eğiticide Cloud NAT kullanılır. Cloud NAT ayrıca NAT çıkışı özellikleri sunar. Bu sayede internet ana makinelerinin, kullanıcı tarafından yönetilen bir not defteriyle iletişim başlatmasına izin verilmez. Bu sayede not defteri daha güvenli hale gelir.
Cloud Shell'in içinde bölgesel bulut yönlendiricisini oluşturun.
gcloud compute routers create cloud-router-us-central1-aiml-nat --network aiml-vpc --region us-central1
Cloud Shell'in içinde bölgesel bulut nat ağ geçidini oluşturun.
gcloud compute routers nats create cloud-nat-us-central1 --router=cloud-router-us-central1-aiml-nat --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region us-central1
5. Şirket içi VPC kurulumu
Şirket içi VPC'yi oluşturma
Cloud Shell'in içinde aşağıdaki işlemleri gerçekleştirin:
gcloud compute networks create on-prem-vpc --project=$projectid --subnet-mode=custom
Nat-alt ağını oluşturma
Cloud Shell'in içinde aşağıdaki işlemleri gerçekleştirin:
gcloud compute networks subnets create nat-subnet --project=$projectid --range=192.168.10.0/28 --network=on-prem-vpc --region=us-central1
Özel-ip-alt ağını oluşturma
Cloud Shell'in içinde aşağıdaki işlemleri gerçekleştirin:
gcloud compute networks subnets create private-ip-subnet --project=$projectid --range=192.168.20.0/28 --network=on-prem-vpc --region=us-central1
Cloud Yönlendirici ve NAT yapılandırması
Cloud NAT, yazılım paketi indirmeleri için eğitimde kullanılır. Cloud NAT ayrıca NAT çıkış özellikleri sunar. Bu sayede internet ana makinelerinin bilgi işlem ile iletişim başlatmasına izin verilmez. Bu sayede daha güvenli hale gelir.
Cloud Shell'in içinde bölgesel bulut yönlendiricisini oluşturun.
gcloud compute routers create cloud-router-us-central1-on-prem-nat --network on-prem-vpc --region us-central1
Cloud Shell'in içinde bölgesel bulut nat ağ geçidini oluşturun.
gcloud compute routers nats create cloud-nat-us-central1 --router=cloud-router-us-central1-on-prem-nat --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region us-central1
6. Private Service Connect uç noktasını oluşturma
Aşağıdaki bölümde, Vertex API'ye şirket içi VPC'den erişmek için kullanılacak bir Private Service Connect (PSC) uç noktası oluşturacaksınız. 100.100.10.10 PSC IP adresinin, sonraki bir adımda aiml-vpc-cloud-router-vpn üzerinden şirket içi ağa özel bir yönlendirici reklamı olarak tanıtılacaktır.
Cloud Shell'den
gcloud compute addresses create psc-ip \
--global \
--purpose=PRIVATE_SERVICE_CONNECT \
--addresses=100.100.10.10 \
--network=aiml-vpc
PSC uç noktasını oluşturma
Cloud Shell'den
gcloud compute forwarding-rules create pscvertex \
--global \
--network=aiml-vpc \
--address=psc-ip \
--target-google-apis-bundle=all-apis
Yapılandırılmış Private Service Connect uç noktalarını listeleme
Cloud Shell'den
gcloud compute forwarding-rules list \
--filter target="(all-apis OR vpc-sc)" --global
Yapılandırılmış Private Service Connect uç noktalarını açıklama
Cloud Shell'den
gcloud compute forwarding-rules describe \
pscvertex --global
7. Karma bağlantı
Aşağıdaki bölümde Sınır Ağ Geçidi Protokolü'nü (BGP) kullanarak sanal özel bulutunuz (VPC) ve eş ağınız arasında dinamik olarak rota değişimi yapmanızı sağlayan bir Cloud Router oluşturacaksınız.
Cloud Yönlendirici, ağlarınızı bağlamak için Cloud VPN tüneli üzerinden BGP oturumu oluşturabilir. Yeni alt ağın IP adresi aralıklarını otomatik olarak öğrenir ve eş ağınıza duyurur.
Eğitimde HA VPN'yi aiml-vpc ve on-prem-vpc arasında dağıtacaksınız.
aiml-vpc için HA VPN ağ geçidini oluşturma
Her ağ geçidi oluşturulduğunda, her ağ geçidi arayüzü için bir tane olmak üzere iki harici IPv4 adresi otomatik olarak ayrılır.
Cloud Shell'in içinde HA VPN ağ geçidi oluşturun
gcloud compute vpn-gateways create aiml-vpn-gw \
--network=aiml-vpc\
--region=us-central1
on-prem-vpc için HA VPN ağ geçidini oluşturma
Her ağ geçidi oluşturulduğunda, her ağ geçidi arayüzü için bir tane olmak üzere iki harici IPv4 adresi otomatik olarak ayrılır. Yapılandırma adımlarında daha sonra kullanmak üzere bu IP adreslerini not edin.
Cloud Shell'in içinde HA VPN ağ geçidini oluşturun.
gcloud compute vpn-gateways create on-prem-vpn-gw \
--network=on-prem-vpc\
--region=us-central1
HA VPN ağ geçidi oluşturmayı doğrulama
Konsolu kullanarak HYBRID CONNECTIVITY → VPN → CLOUD VPN GATEWAYS'e gidin ve ağ geçidi IP'lerinin oluşturulduğunu doğrulayın.
aiml-vpc için Cloud Router oluşturma
Cloud Shell'in içinde, us-central1 bölgesinde bulunan Cloud Router'ı oluşturun
gcloud compute routers create aiml-cr-us-central1 \
--region=us-central1 \
--network=aiml-vpc\
--asn=65001
Şirket içi VPC için Cloud Router oluşturma
Cloud Shell'in içinde, us-central1 bölgesinde bulunan Cloud Router'ı oluşturun
gcloud compute routers create on-prem-cr-us-central1 \
--region=us-central1 \
--network=on-prem-vpc \
--asn=65002
aiml-vpc için VPN tünelleri oluşturma
Her HA VPN ağ geçidinde iki VPN tüneli oluşturacaksınız.
VPN tüneli oluştur0
Cloud Shell'in içinde tünel 0 oluşturun:
gcloud compute vpn-tunnels create aiml-vpc-tunnel0 \
--peer-gcp-gateway on-prem-vpn-gw \
--region us-central1 \
--ike-version 2 \
--shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \
--router aiml-cr-us-central1 \
--vpn-gateway aiml-vpn-gw \
--interface 0
VPN tüneli oluştur1
Cloud Shell'in içinde tünel1 oluşturun:
gcloud compute vpn-tunnels create aiml-vpc-tunnel1 \
--peer-gcp-gateway on-prem-vpn-gw \
--region us-central1 \
--ike-version 2 \
--shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \
--router aiml-cr-us-central1 \
--vpn-gateway aiml-vpn-gw \
--interface 1
Şirket içi VPC için VPN tünelleri oluşturma
Her HA VPN ağ geçidinde iki VPN tüneli oluşturacaksınız.
VPN tüneli oluştur0
Cloud Shell'in içinde tünel 0 oluşturun:
gcloud compute vpn-tunnels create on-prem-tunnel0 \
--peer-gcp-gateway aiml-vpn-gw \
--region us-central1 \
--ike-version 2 \
--shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \
--router on-prem-cr-us-central1 \
--vpn-gateway on-prem-vpn-gw \
--interface 0
VPN tüneli oluştur1
Cloud Shell'in içinde tünel1 oluşturun:
gcloud compute vpn-tunnels create on-prem-tunnel1 \
--peer-gcp-gateway aiml-vpn-gw \
--region us-central1 \
--ike-version 2 \
--shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \
--router on-prem-cr-us-central1 \
--vpn-gateway on-prem-vpn-gw \
--interface 1
VPN tüneli oluşturmayı doğrulayın
Konsolu kullanarak HYBRID CONNECTIVITY → VPN → CLOUD VPN GOOGLES'a gidin.
8. BGP komşuları oluşturma
BGP oturumları oluşturma
Bu bölümde, Cloud Router arayüzlerini ve BGP eşlemelerini yapılandıracaksınız.
BGP arayüzü ve aiml-vpc için eşleme oluşturma
Cloud Shell'in içinde BGP arayüzünü oluşturun:
gcloud compute routers add-interface aiml-cr-us-central1 \
--interface-name if-tunnel0-to-onprem \
--ip-address 169.254.1.1 \
--mask-length 30 \
--vpn-tunnel aiml-vpc-tunnel0 \
--region us-central1
Cloud Shell'in içinde BGP eşlemesini oluşturun:
gcloud compute routers add-bgp-peer aiml-cr-us-central1 \
--peer-name bgp-on-premises-tunnel0 \
--interface if-tunnel1-to-onprem \
--peer-ip-address 169.254.1.2 \
--peer-asn 65002 \
--region us-central1
Cloud Shell'in içinde BGP arayüzünü oluşturun:
gcloud compute routers add-interface aiml-cr-us-central1 \
--interface-name if-tunnel1-to-onprem \
--ip-address 169.254.2.1 \
--mask-length 30 \
--vpn-tunnel aiml-vpc-tunnel1 \
--region us-central1
Cloud Shell'in içinde BGP eşlemesini oluşturun:
gcloud compute routers add-bgp-peer aiml-cr-us-central1 \
--peer-name bgp-on-premises-tunnel1 \
--interface if-tunnel2-to-onprem \
--peer-ip-address 169.254.2.2 \
--peer-asn 65002 \
--region us-central1
BGP arayüzü ve şirket içi VPC arayüzü için eşleme oluşturma
Cloud Shell'in içinde BGP arayüzünü oluşturun:
gcloud compute routers add-interface on-prem-cr-us-central1 \
--interface-name if-tunnel0-to-aiml-vpc\
--ip-address 169.254.1.2 \
--mask-length 30 \
--vpn-tunnel on-prem-tunnel0 \
--region us-central1
Cloud Shell'in içinde BGP eşlemesini oluşturun:
gcloud compute routers add-bgp-peer on-prem-cr-us-central1 \
--peer-name bgp-aiml-vpc-tunnel0 \
--interface if-tunnel1-to-aiml-vpc\
--peer-ip-address 169.254.1.1 \
--peer-asn 65001 \
--region us-central1
Cloud Shell'in içinde BGP arayüzünü oluşturun:
gcloud compute routers add-interface on-prem-cr-us-central1 \
--interface-name if-tunnel1-to-aiml-vpc\
--ip-address 169.254.2.2 \
--mask-length 30 \
--vpn-tunnel on-prem-tunnel1 \
--region us-central1
Cloud Shell'in içinde BGP eşlemesini oluşturun:
gcloud compute routers add-bgp-peer on-prem-cr-us-central1 \
--peer-name bgp-aiml-vpc-tunnel1\
--interface if-tunnel2-to-aiml-vpc\
--peer-ip-address 169.254.2.1 \
--peer-asn 65001 \
--region us-central1
VPN tüneli ayrıntılarını görüntülemek için Karma BAĞLANTI → VPN'e gidin.
HA VPN üzerinden aiml-vpc tarafından öğrenilen rotaları doğrulama
Konsolu kullanarak VPC ağı → VPC ağları → aiml-vpc→ ROUTES → BÖLGE → ABD-MERKEZİ1 → GÖRÜNÜM'e gidin
aiml-vpc'nin gözlemleri şirket içi VPC nat-alt ağı ve özel-ip-alt ağından öğrendiği
Şirket içi VPC'nin HA-VPN üzerinden Workbench alt ağını öğrendiğini doğrulayın
Konsolu kullanarak VPC ağı → VPC ağları → şirket içi VPN → ROUTES → BÖLGE → ABD-MERKEZİ1 → GÖRÜNÜM'e gidin
9. Özel rota reklamları oluşturma aiml-vpc
VPC'de alt ağ yapılandırılmadığından Private Service Connect Uç Nokta IP'sinin reklamı, aiml-cr-us-central1 bulut yönlendiricisi tarafından otomatik olarak yapılmaz.
Bunun yerine, 100.100.10.10 uç nokta IP Adresi için aiml-cr-us-central bulut yönlendiricisinden özel bir rota reklamı oluşturmanız gerekir. Bu reklam, BGP üzerinden şirket içi ortama şirket içi ortama bildirilecek.
Konsolda HYBRID CONNECTIVITY → CLOUD ROUTERS → aiml-cr-us-central1'e gidin ve DÜZENLE'yi seçin.
Tanıtılan rotalar bölümünde Özel rota oluştur seçeneğini belirleyin, aşağıdaki örneğe göre alanları güncelleyin, BİTTİ'yi seçin ve ardından KAYDET'i tıklayın.
Doğrulama
Şirket içi VPC'nin, HA-VPN üzerinden PSC Uç Nokta IP Adresi'ni öğrendiğini doğrulayın
Konsolu kullanarak VPC ağı → VPC ağları → şirket içi VPN → ROUTES → BÖLGE → ABD-MERKEZİ1 → GÖRÜNÜM'e gidin
10. Şirket içi VPC'de özel rota reklamları oluşturma
Şirket içi VPC bulut yönlendiricisi varsayılan olarak tüm alt ağları tanıtır ancak yalnızca özel IP alt ağı gerekir.
Aşağıdaki bölümde, on-prem-cr-us-central1 bulut yönlendiricisinden rota bildirimlerini güncelleyin.
Konsolda HYBRID CONNECTIVITY → CLOUD ROUTERS → on-prem-cr-us-central1'e gidin ve DÜZENLE'yi seçin.
Tanıtılan rotalar bölümünde Özel rota oluştur seçeneğini belirleyin, aşağıdaki örneğe göre alanları güncelleyin, BİTTİ'yi seçin ve ardından KAYDET'i tıklayın.
Doğrulama
aiml-vpc'nin şirket içi VPC'den özel IP alt ağ rotasını öğrendiğini doğrulayın.
Konsolu kullanarak VPC ağı → VPC ağları → aiml-vpc → ROUTES → BÖLGE → ABD-MERKEZİ1 → GÖRÜNÜM'e gidin
11. Kullanıcı tarafından yönetilen bir hizmet hesabı (GCE Örnekleri) oluşturma
Vertex API'ye hassas düzeyde kontrol olanağı sağlamak için nat ve gizli istemci örneklerine uygulanacak, kullanıcı tarafından yönetilen bir hizmet hesabı gereklidir. Hizmet hesabı izinleri oluşturulduktan sonra iş gereksinimlerine göre değiştirilebilir. Eğiticide, kullanıcı tarafından yönetilen hizmet hesabına (vertex-sa) aşağıdaki roller uygulanır:
Devam etmeden önce Service Account API'yi gerekir.
Cloud Shell'in içinde hizmet hesabını oluşturun.
gcloud iam service-accounts create gce-vertex-sa \
--description="service account for vertex" \
--display-name="gce-vertex-sa"
Cloud Shell'in içinde, hizmet hesabını işlem örneği yöneticisi rolüyle güncelleme
gcloud projects add-iam-policy-binding $projectid --member="serviceAccount:gce-vertex-sa@$projectid.iam.gserviceaccount.com" --role="roles/compute.instanceAdmin.v1"
Cloud Shell'in içinde hizmet hesabını Vertex AI Kullanıcısı rolüyle güncelleme
gcloud projects add-iam-policy-binding $projectid --member="serviceAccount:gce-vertex-sa@$projectid.iam.gserviceaccount.com" --role="roles/aiplatform.user"
12. Kullanıcı tarafından yönetilen hizmet hesabı oluşturma (Not defteri)
Aşağıdaki bölümde, eğitimde kullanılan Vertex Workbench (Notebook) ile ilişkilendirilecek kullanıcı tarafından yönetilen hizmet hesabı oluşturacaksınız.
Eğiticide, hizmet hesabına aşağıdaki roller uygulanır:
Cloud Shell'in içinde hizmet hesabını oluşturun.
gcloud iam service-accounts create user-managed-notebook-sa \
--display-name="user-managed-notebook-sa"
Cloud Shell'in içinde, hizmet hesabını Depolama Alanı Yöneticisi rolüyle güncelleyin.
gcloud projects add-iam-policy-binding $projectid --member="serviceAccount:user-managed-notebook-sa@$projectid.iam.gserviceaccount.com" --role="roles/storage.admin"
Cloud Shell'in içinde hizmet hesabını Vertex AI Kullanıcısı rolüyle güncelleyin.
gcloud projects add-iam-policy-binding $projectid --member="serviceAccount:user-managed-notebook-sa@$projectid.iam.gserviceaccount.com" --role="roles/aiplatform.user"
Cloud Shell'in içinde hizmet hesabını Artifact Registry Yöneticisi rolüyle güncelleyin.
gcloud projects add-iam-policy-binding $projectid --member="serviceAccount:user-managed-notebook-sa@$projectid.iam.gserviceaccount.com" --role="roles/artifactregistry.admin"
Cloud Shell'de hizmet hesabını listeleyin ve kullanıcı tarafından yönetilen not defterini oluştururken kullanılacak e-posta adresini not edin.
gcloud iam service-accounts list
13. Test örnekleri oluşturuldu
Aşağıdaki bölümde, özellikle Vertex API'lerine ulaşmak üzere farklı yöntemleri doğrulamak için test örnekleri oluşturacaksınız:
nat-client,
örneği, Vertex AI'ı çözümlemek için Cloud NAT'yi kullanır. Dolayısıyla, internet üzerinden Online Tahmin uç noktasına erişirprivate-client
örneği, HA-VPN üzerinden Online Tahmin uç noktasına erişmek için 100.100.10.10 numaralı Private Service Connect IP'sini kullanır.
Cloud Shell'in içinde nat-client
örneğini oluşturun.
gcloud compute instances create nat-client \
--zone=us-central1-a \
--image-family=debian-11 \
--image-project=debian-cloud \
--subnet=nat-subnet \
--service-account=vertex-sa@$projectid.iam.gserviceaccount.com \
--scopes=https://www.googleapis.com/auth/cloud-platform \
--no-address \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt-get install tcpdump dnsutils -y"
Cloud Shell'in içinde private-client
örneğini oluşturun.
gcloud compute instances create private-client \
--zone=us-central1-a \
--image-family=debian-11 \
--image-project=debian-cloud \
--subnet=private-ip-subnet \
--service-account=vertex-sa@$projectid.iam.gserviceaccount.com \
--scopes=https://www.googleapis.com/auth/cloud-platform \
--no-address \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt-get install tcpdump dnsutils -y"
Identity-Aware Proxy'nin (IAP) sanal makine örneklerinize bağlanmasına izin vermek için aşağıdaki işlemleri yapan bir güvenlik duvarı kuralı oluşturun:
- IAP kullanarak erişilmesini istediğiniz tüm sanal makine örnekleri için geçerlidir.
- 35.235.240.0/20 IP aralığından giriş trafiğine izin verir. Bu aralık, IAP'nin TCP yönlendirme için kullandığı tüm IP adreslerini içerir.
Cloud Shell'in içinde IAP güvenlik duvarı kuralını oluşturun.
gcloud compute firewall-rules create ssh-iap-on-prem-vpc \
--network on-prem-vpc \
--allow tcp:22 \
--source-ranges=35.235.240.0/20
14. Kullanıcı tarafından yönetilen not defteri oluşturma
Aşağıdaki bölümde, önceden oluşturulmuş hizmet hesabını (user-managed-notebook-sa) içeren, kullanıcı tarafından yönetilen bir not defteri oluşturun.
Cloud Shell'in içinde özel istemci örneğini oluşturun.
gcloud notebooks instances create workbench-tutorial \
--vm-image-project=deeplearning-platform-release \
--vm-image-family=common-cpu-notebooks \
--machine-type=n1-standard-4 \
--location=us-central1-a \
--subnet-region=us-central1 \
--subnet=workbench-subnet \
--no-public-ip --service-account=user-managed-notebook-sa@$projectid.iam.gserviceaccount.com
15. Modeli ve Online Tahmini Dağıtma
Aşağıdaki bölümde, önceki adımda not defteri oluşturduğunuz için sağlanan codelab,Vertex AI:tahminler için işlem verilerini önceden işlemek ve yayınlamak üzere Sklearn ile özel tahmin rutinlerini kullanın bölümü 7. bölümden başlar. Model dağıtıldıktan sonra eğiticiye geri dönerek sonraki bölüme geçin.
16. İnternet üzerinden Vertex API'ye erişimi doğrulama
Aşağıdaki bölümde, örneğe ve nat-client'ye giriş yapacak ve Vertex API'lerini çözmek için kullanılan us-central1-aiplatform.googleapis.com alan adına göre disiplin ve tcpdump kullanımı yoluyla Vertex AI'a bağlantıyı doğrulayacaksınız.
Cloud Shell'de IAP kullanarak nat-client'ye giriş yaparak Vertex API bağlantısını doğrulamak için us-central1-aiplatform.googleapis.com tepe alanında araştırma yapın.
gcloud compute ssh nat-client --project=$projectid --zone=us-central1-a --tunnel-through-iap
Araştırmayı yürütün.
dig us-central1-aiplatform.googleapis.com
Örneğin, DNS yanıtındaki genel IP'leri not edin.
user@nat-client:~$ dig us-central1-aiplatform.googleapis.com
; <<>> DiG 9.16.42-Debian <<>> us-central1-aiplatform.googleapis.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56761
;; flags: qr rd ra; QUERY: 1, ANSWER: 16, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;us-central1-aiplatform.googleapis.com. IN A
;; ANSWER SECTION:
us-central1-aiplatform.googleapis.com. 300 IN A 108.177.111.95
us-central1-aiplatform.googleapis.com. 300 IN A 142.250.1.95
us-central1-aiplatform.googleapis.com. 300 IN A 108.177.121.95
us-central1-aiplatform.googleapis.com. 300 IN A 142.250.103.95
us-central1-aiplatform.googleapis.com. 300 IN A 108.177.120.95
us-central1-aiplatform.googleapis.com. 300 IN A 142.251.171.95
us-central1-aiplatform.googleapis.com. 300 IN A 142.250.159.95
us-central1-aiplatform.googleapis.com. 300 IN A 142.251.120.95
us-central1-aiplatform.googleapis.com. 300 IN A 142.251.161.95
us-central1-aiplatform.googleapis.com. 300 IN A 142.251.172.95
us-central1-aiplatform.googleapis.com. 300 IN A 74.125.126.95
us-central1-aiplatform.googleapis.com. 300 IN A 74.125.70.95
us-central1-aiplatform.googleapis.com. 300 IN A 74.125.132.95
us-central1-aiplatform.googleapis.com. 300 IN A 74.125.201.95
us-central1-aiplatform.googleapis.com. 300 IN A 74.125.202.95
us-central1-aiplatform.googleapis.com. 300 IN A 74.125.69.95
;; Query time: 4 msec
;; SERVER: 169.254.169.254#53(169.254.169.254)
;; WHEN: Thu Jun 29 01:35:57 UTC 2023
;; MSG SIZE rcvd: 322
Online Tahmine göre curl işlemi gerçekleştirirken DNS çözümlemesini doğrulamak için nat-client OS'te tcpdump çalıştırın.
sudo tcpdump -i any port 53 -n
Örnek:
user@nat-client:~$ sudo tcpdump -i any port 53 -n
tcpdump: data link type LINUX_SLL2
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on any, link-type LINUX_SLL2 (Linux cooked v2), snapshot length 262144 bytes
"+" işaretini seçerek yeni bir Cloud Shell terminali açın. Yeni sekme açıldığında proje adı değişkenini güncelleyin.
Cloud Shell'in içinde proje adı değişkenini güncelleyin.
gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectid=YOUR-PROJECT-NAME
echo $projectid
Cloud Shell ikinci içinde ssh'den nat-client örneğine geçiş yapın.
gcloud compute ssh --zone "us-central1-a" "nat-client" --project "$projectid"
Aşağıdaki bölümde, sudo VI düzenleyici veya nano kullanarak bir sample.json dosyası oluşturacak ve dağıtılan modelden tahmin almak için kullanılan veri dizesini ekleyeceksiniz.
nat-client işletim sisteminde, aşağıdaki veri dizesiyle bir instances.json dosyası oluşturun:
{"instances": [
[0.23, 'Ideal', 'E', 'VS2', 61.5, 55.0, 3.95, 3.98, 2.43],
[0.29, 'Premium', 'J', 'Internally Flawless', 52.5, 49.0, 4.00, 2.13, 3.11]]}
Örnek:
user@nat-client:$ more instances.json
{"instances": [
[0.23, 'Ideal', 'E', 'VS2', 61.5, 55.0, 3.95, 3.98, 2.43],
[0.29, 'Premium', 'J', 'Internally Flawless', 52.5, 49.0, 4.00, 2.13, 3.11]]}
user@nat-client:$
Sonraki adımlarda kullanılacak Online Tahmin Uç Nokta Kimliğinizi Cloud Console'dan alın.
VERTEX AI → İNTERNETTEKİ TAHMİN'e gidin
nat-client OS'ten aşağıdaki değişkenleri oluşturun:
gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectid=YOUR-PROJECT-NAME
echo $projectid
ENDPOINT_ID="insert-your-endpoint-id-here"
Örnek:
ENDPOINT_ID="3328226095324463104"
Modelden bir yanıt almak için nat-client işletim sisteminde bir curl işlemi gerçekleştirin.
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/${projectid}/locations/us-central1/endpoints/${ENDPOINT_ID}:predict -d @instances.json
Örnek, başarılı tahmine dikkat edin.
user@nat-client$ curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/${projectid}/locations/us-central1/endpoints/${ENDPOINT_ID}:predict -d @instances.json
{
"predictions": [
"$479.0",
"$586.0"
],
"deployedModelId": "1949163636186415104",
"model": "projects/234086459238/locations/us-central1/models/947543727654567936",
"modelDisplayName": "diamonds-cpr",
"modelVersionId": "1"
}
17. Doğrulama - Vertex API'ye İnternet Erişimi
Şimdi tahmini yürüttüğünüze göre, us-central1-aiplatform.googleapis.com Vertex AI alan adı için yerel DNS sunucusunda 169.254.169.254 DNS sorgusu yürüten nat-client örneğini (192.168.10.2) gösteren TCPDUMP sonuçlarına (terminal 1) göz atalım. DNS sorgusunun sonucu, aşağıda belirtildiği gibi Vertex API'leri için genel Sanal IP Adresleri'dir (VIPS):
user@nat-client:~$ sudo tcpdump -i any port 53 -n
tcpdump: data link type LINUX_SLL2
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on any, link-type LINUX_SLL2 (Linux cooked v2), snapshot length 262144 bytes
20:05:09.260937 ens4 Out IP 192.168.10.2.40782 > 169.254.169.254.53: 47190+ A? oauth2.googleapis.com. (39)
20:05:09.260946 ens4 Out IP 192.168.10.2.40782 > 169.254.169.254.53: 28075+ AAAA? oauth2.googleapis.com. (39)
20:05:09.263556 ens4 In IP 169.254.169.254.53 > 192.168.10.2.40782: 28075 4/0/0 AAAA 2607:f8b0:4001:c34::5f, AAAA 2607:f8b0:4001:c54::5f, AAAA 2607:f8b0:4001:c16::5f, AAAA 2607:f8b0:4001:c17::5f (151)
20:05:09.265018 ens4 In IP 169.254.169.254.53 > 192.168.10.2.40782: 47190 16/0/0 A 74.125.201.95, A 74.125.202.95, A 74.125.69.95, A 64.233.183.95, A 173.194.193.95, A 173.194.194.95, A 173.194.195.95, A 173.194.196.95, A 173.194.197.95, A 64.233.191.95, A 173.194.74.95, A 173.194.192.95, A 209.85.145.95, A 209.85.146.95, A 209.85.147.95, A 142.250.125.95 (295)
20:05:09.474478 ens4 Out IP 192.168.10.2.57356 > 169.254.169.254.53: 36008+ A? us-central1-aiplatform.googleapis.com. (55)
20:05:09.474488 ens4 Out IP 192.168.10.2.57356 > 169.254.169.254.53: 47020+ AAAA? us-central1-aiplatform.googleapis.com. (55)
20:05:09.477190 ens4 In IP 169.254.169.254.53 > 192.168.10.2.57356: 36008 16/0/0 A 173.194.194.95, A 173.194.195.95, A 173.194.196.95, A 173.194.197.95, A 173.194.74.95, A 173.194.192.95, A 209.85.145.95, A 209.85.146.95, A 209.85.147.95, A 142.250.125.95, A 142.250.136.95, A 142.250.148.95, A 209.85.200.95, A 209.85.234.95, A 142.250.152.95, A 142.250.128.95 (311)
20:05:09.478607 ens4 In IP 169.254.169.254.53 > 192.168.10.2.57356: 47020 4/0/0 AAAA 2607:f8b0:4001:c1b::5f, AAAA 2607:f8b0:4001:c0c::5f, AAAA 2607:f8b0:4001:c0e::5f, AAAA 2607:f8b0:4001:c1e::5f (167)
18. Vertex API'lerine Özel Erişim'i etkinleştirme
Aşağıdaki bölümde, online tahmine gizli olarak ulaşmak için karma ağ iletişimi (HA VPN) üzerinden Private Service Connect'i kullanarak Vertex API'lerine erişeceksiniz. Eğiticide kullanılan örnekte, özel istemci örneğindeki /etc/hosts dosyasını güncelleyeceksiniz.
Şirket içi ortamınızda test için bir veya birkaç makine /etc/hosts dosyasını güncellemek uygundur ancak büyük ölçekli ve üretim ortamları için PSC uç noktası FQDN'sini kullanarak yeni bir yönlendirme bölgesi oluşturmak daha tercih edilir.
Eğiticide oluşturulan psc uç noktasının adı pscvertex'tir. Bu uç nokta pscvertex.p.googleapis.com adresine dönüşür. Köşe noktası kullanılırken FQDN'yi hizmetle birlikte ekleyin (ör. us-central1-aiplatform-pscvertex.p.googleapis.com).
Şirket içi DNS'nin PSC uç noktasıyla güncellenmesi için yerel uygulamaların, herkese açık yerel uç nokta us-central1-aiplatform.googleapis.com yerine FDQN'yi (ör.us-central1-aiplatform-pscvertex.p.googleapis.com) çağırmak üzere yeniden düzenlenmesi de gerekir.
Özel bir uç nokta kullanacak şekilde yapılandırılabilen istemciler, uç noktaya istek göndermek için p.googleapis.com DNS adlarını kullanabilir.
Özel uç noktalar kullanacak şekilde yapılandırma hakkında bilgi edinmek için istemci veya istemci kitaplığınızın belgelerine bakın. Örneğin:
- Python: api_endpoint'i, google-api-core paketindeki İstemci seçenekleri sınıfında yapılandırabilirsiniz.
- Go: WithEndpoint'i API paketindeki İstemci seçenekleri paketinde yapılandırabilirsiniz.
- gcloud: api_endpoint_overrides'i yapılandırabilirsiniz
"+" işaretini seçerek yeni bir Cloud Shell terminali açın. Yeni sekme açıldığında proje adı değişkenini güncelleyin.
Cloud Shell'den.
gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectid=YOUR-PROJECT-NAME
echo $projectid
us-central1-aiplatform.googleapis.com tepe alan adında bir inceleme gerçekleştirerek Vertex API bağlantısını doğrulamak için yeni bir Cloud Shell'de IAP kullanarak özel istemciye giriş yapın.
Cloud Shell'den özel istemci işletim sistemi örneğine giriş yapın.
gcloud compute ssh private-client --project=$projectid --zone=us-central1-a --tunnel-through-iap
Araştırmayı yürütün.
dig us-central1-aiplatform.googleapis.com
Örnek olarak, DNS yanıtına göre Genel IP'leri not edin.
user@private-client:~$ dig us-central1-aiplatform.googleapis.com
; <<>> DiG 9.16.42-Debian <<>> us-central1-aiplatform.googleapis.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33311
;; flags: qr rd ra; QUERY: 1, ANSWER: 16, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;us-central1-aiplatform.googleapis.com. IN A
;; ANSWER SECTION:
us-central1-aiplatform.googleapis.com. 300 IN A 74.125.132.95
us-central1-aiplatform.googleapis.com. 300 IN A 74.125.201.95
us-central1-aiplatform.googleapis.com. 300 IN A 74.125.202.95
us-central1-aiplatform.googleapis.com. 300 IN A 74.125.69.95
us-central1-aiplatform.googleapis.com. 300 IN A 64.233.182.95
us-central1-aiplatform.googleapis.com. 300 IN A 64.233.183.95
us-central1-aiplatform.googleapis.com. 300 IN A 173.194.193.95
us-central1-aiplatform.googleapis.com. 300 IN A 173.194.194.95
us-central1-aiplatform.googleapis.com. 300 IN A 173.194.195.95
us-central1-aiplatform.googleapis.com. 300 IN A 173.194.196.95
us-central1-aiplatform.googleapis.com. 300 IN A 173.194.197.95
us-central1-aiplatform.googleapis.com. 300 IN A 64.233.191.95
us-central1-aiplatform.googleapis.com. 300 IN A 173.194.74.95
us-central1-aiplatform.googleapis.com. 300 IN A 173.194.192.95
us-central1-aiplatform.googleapis.com. 300 IN A 209.85.145.95
us-central1-aiplatform.googleapis.com. 300 IN A 209.85.146.95
;; Query time: 4 msec
;; SERVER: 169.254.169.254#53(169.254.169.254)
;; WHEN: Sun Jul 02 20:5
us-central1-aiplatform.googleapis.com adresindeki Vertext AI FQDN kaydının, 100.100.10.10 PSC uç noktasına işaret ettiği bir kaydı oluşturmak için sudo VI editor veya nano kullanarak /etc/hosts özel istemci örneğini güncelleyin. Başka değişiklik yapmanız gerekmez.
Örnek:
user@private-client:~$ more /etc/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
100.100.10.10 us-central1-aiplatform.googleapis.com
192.168.20.2 private-client.c.$projectid.internal private-client # Added by Google
169.254.169.254 metadata.google.internal # Added by Google
Özel istemci işletim sisteminden Vertex API uç noktasına PING işlemi uygulayın.
ping us-central1-aiplatform.googleapis.com
Örnek: PING, PSC uç nokta IP'sini döndürür ve herhangi bir yanıt beklenmemektedir.
user@private-client:~$ ping us-central1-aiplatform.googleapis.com
PING us-central1-aiplatform.googleapis.com (100.100.10.10) 56(84) bytes of data.
Online tahmine göre curl işlemi gerçekleştirirken özel istemci işletim sisteminde PSC uç noktasına giden DNS çözümlemesini ve IP veri yolunu doğrulamak için tcpdump çalıştırın.
sudo tcpdump -i any port 53 -n or host 100.100.10.10
"+" işaretini seçerek dördüncü bir Cloud Shell terminali açın. Yeni sekme açıldığında proje adı değişkenini güncelleyin.
Cloud Shell'in içinde proje adı değişkenini güncelleyin.
gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectid=YOUR-PROJECT-NAME
echo $projectid
Cloud Shell dördüncü içinde ssh'den özel istemci örneğine geçiş yapın.
gcloud compute ssh --zone "us-central1-a" "private-client" --project "$projectid"
Aşağıdaki bölümde, sudo VI düzenleyici veya nano kullanarak bir sample.json dosyası oluşturacak ve dağıtılan modelden tahmin almak için kullanılan veri dizesini ekleyeceksiniz.
Özel istemci işletim sisteminde aşağıdaki veri dizesiyle bir instances.json dosyası oluşturun:
{"instances": [
[0.23, 'Ideal', 'E', 'VS2', 61.5, 55.0, 3.95, 3.98, 2.43],
[0.29, 'Premium', 'J', 'Internally Flawless', 52.5, 49.0, 4.00, 2.13, 3.11]]}
Örnek:
user@private-client:$ more instances.json
{"instances": [
[0.23, 'Ideal', 'E', 'VS2', 61.5, 55.0, 3.95, 3.98, 2.43],
[0.29, 'Premium', 'J', 'Internally Flawless', 52.5, 49.0, 4.00, 2.13, 3.11]]}
user@private-client:$
Özel istemci işletim sisteminde aşağıdaki değişkenleri oluşturun:
gcloud config list project
projectid=YOUR-PROJECT-NAME
echo $projectid
ENDPOINT_ID="insert-your-endpoint-id-here"
Örnek:
ENDPOINT_ID="3328226095324463104"
Modelden bir yanıt almak için Cloud Shell dört'teki özel istemci işletim sisteminde curl işlemi gerçekleştirin.
curl -v -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/${projectid}/locations/us-central1/endpoints/${ENDPOINT_ID}:predict -d @instances.json
19. Doğrulama - Vertex API'ye Özel Erişim
Vertex API'ye erişmek için Cloud Shell dört'teki özel istemci işletim sisteminde PSC uç nokta IP'sinin (100.100.10.10) kullanıldığını unutmayın.
user@private-client$ curl -v -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/${projectid}/locations/us-central1/endpoints/${ENDPOINT_ID}:predict -d @instances.json
Note: Unnecessary use of -X or --request, POST is already inferred.
* Trying 100.100.10.10:443...
* Connected to us-central1-aiplatform.googleapis.com (100.100.10.10) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
* CAfile: /etc/ssl/certs/ca-certificates.crt
* CApath: /etc/ssl/certs
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
* TLSv1.3 (IN), TLS handshake, Certificate (11):
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
* TLSv1.3 (IN), TLS handshake, Finished (20):
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.3 (OUT), TLS handshake, Finished (20):
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN, server accepted to use h2
* Server certificate:
* subject: CN=upload.video.google.com
* start date: May 29 08:21:36 2023 GMT
* expire date: Aug 21 08:21:35 2023 GMT
* subjectAltName: host "us-central1-aiplatform.googleapis.com" matched cert's "*.googleapis.com"
* issuer: C=US; O=Google Trust Services LLC; CN=GTS CA 1C3
* SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
* Using Stream ID: 1 (easy handle 0x55f2ab65c2c0)
> POST /v1/projects/$projectid/locations/us-central1/endpoints/3328226095324463104:predict HTTP/2
> Host: us-central1-aiplatform.googleapis.com
> user-agent: curl/7.74.0
> accept: */*
> authorization: Bearer ya29.a0AbVbY6NdCbIJYj0mQROeq-xYgQCw534TTtjRc1kBAEOimKCFxb3gqgD5AvhfefJatSNr33eW1YJirfQVMptFoqfjRoB-i8zEJJ_GGCVqhsVnpSOjK0hzJQSuo2YGjIiSe1o1zdo7lWmh1Px-vLe8FImieGkrQ1hqVaa6aCgYKAXgSARESFQFWKvPlUQ_FuKB2hrDJRyFDjupL1g0171
> content-type: application/json
> content-length: 154
>
* Connection state changed (MAX_CONCURRENT_STREAMS == 100)!
* We are completely uploaded and fine
< HTTP/2 200
< content-type: application/json; charset=UTF-8
< x-vertex-ai-internal-prediction-backend: harpoon
< date: Mon, 03 Jul 2023 22:13:35 GMT
< vary: X-Origin
< vary: Referer
< vary: Origin,Accept-Encoding
< server: scaffolding on HTTPServer2
< cache-control: private
< x-xss-protection: 0
< x-frame-options: SAMEORIGIN
< x-content-type-options: nosniff
< accept-ranges: none
<
{
"predictions": [
"$479.0",
"$586.0"
],
"deployedModelId": "1949163636186415104",
"model": "projects/234086459238/locations/us-central1/models/947543727654567936",
"modelDisplayName": "diamonds-cpr",
"modelVersionId": "1"
}
* Connection #0 to host us-central1-aiplatform.googleapis.com left intact
Cloud Shell üç'teki TCPDUMP terminalinden, /etc/host dosyası öncelikli olmasına rağmen veri yolunda PSC IP Adresi 100.100.10.10 kullanıldığı için us-central1-aiplatform.googleapis.com'a yapılan DNS aramasının gözlemlenmediğini doğrulayabiliriz.
user@private-client:~$ sudo tcpdump -i any port 53 -n or host 100.100.10.10
tcpdump: data link type LINUX_SLL2
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on any, link-type LINUX_SLL2 (Linux cooked v2), snapshot length 262144 bytes
22:13:35.507625 ens4 Out IP 192.168.20.2.37004 > 169.254.169.254.53: 58585+ A? oauth2.googleapis.com. (39)
22:13:35.507631 ens4 Out IP 192.168.20.2.37004 > 169.254.169.254.53: 15580+ AAAA? oauth2.googleapis.com. (39)
22:13:35.511796 ens4 In IP 169.254.169.254.53 > 192.168.20.2.37004: 58585 16/0/0 A 142.251.6.95, A 108.177.112.95, A 74.125.124.95, A 172.217.212.95, A 172.217.214.95, A 172.253.114.95, A 172.253.119.95, A 108.177.111.95, A 142.250.1.95, A 108.177.121.95, A 142.250.103.95, A 108.177.120.95, A 142.251.171.95, A 142.250.159.95, A 142.251.120.95, A 142.251.161.95 (295)
22:13:35.512002 ens4 In IP 169.254.169.254.53 > 192.168.20.2.37004: 15580 4/0/0 AAAA 2607:f8b0:4001:c2b::5f, AAAA 2607:f8b0:4001:c18::5f, AAAA 2607:f8b0:4001:c5f::5f, AAAA 2607:f8b0:4001:c58::5f (151)
22:13:35.722145 ens4 Out IP 192.168.20.2.47304 > 100.100.10.10.443: Flags [S], seq 1951267724, win 65320, options [mss 1420,sackOK,TS val 1371205990 ecr 0,nop,wscale 7], length 0
22:13:35.730727 ens4 In IP 100.100.10.10.443 > 192.168.20.2.47304: Flags [S.], seq 3198878726, ack 1951267725, win 65535, options [mss 1366,sackOK,TS val 67847676 ecr 1371205990,nop,wscale 8], length 0
22:13:35.730760 ens4 Out IP 192.168.20.2.47304 > 100.100.10.10.443: Flags [.], ack 1, win 511, options [nop,nop,TS val 1371205999 ecr 67847676], length 0
22:13:35.738339 ens4 Out IP 192.168.20.2.47304 > 100.100.10.10.443: Flags [P.], seq 1:518, ack 1, win 511, options [nop,nop,TS val 1371206006 ecr 67847676], length 517
22:13:35.739922 ens4 In IP 100.100.10.10.443 > 192.168.20.2.47304: Flags [.], ack 518, win 261, options [nop,nop,TS val 67847688 ecr 1371206006], length 0
22:13:35.740860 ens4 In IP 100.100.10.10.443 > 192.168.20.2.47304: Flags [.], seq 1:2709, ack 518, win 261, options [nop,nop,TS val 67847689 ecr 1371206006], length 2708
22:13:35.740863 ens4 In IP 100.100.10.10.443 > 192.168.20.2.47304: Flags [P.], seq 2709:4699, ack 518, win 261, options [nop,nop,TS val 67847689 ecr 1371206006], length 1990
22:13:35.740874 ens4 Out IP 192.168.20.2.47304 > 100.100.10.10.443: Flags [.], ack 2709, win 497, options [nop,nop,TS val 1371206009 ecr 67847689], length 0
22:13:35.740886 ens4 Out IP 192.168.20.2.47304 > 100.100.10.10.443: Flags [.], ack 4699, win 485, options [nop,nop,TS val 1371206009 ecr 67847689], length 0
22:13:35.742709 ens4 Out IP 192.168.20.2.47304 > 100.100.10.10.443: Flags [P.], seq 518:598, ack 4699, win 501, options [nop,nop,TS val 1371206011 ecr 67847689], length 80
22:13:35.743996 ens4 Out IP 192.168.20.2.47304 > 100.100.10.10.443: Flags [P.], seq 598:644, ack 4699, win 501, options [nop,nop,TS val 1371206012 ecr 67847689], length 46
22:13:35.744011 ens4 Out IP 192.168.20.2.47304 > 100.100.10.10.443: Flags [P.], seq 644:693, ack 4699, win 501, options [nop,nop,TS val 1371206012 ecr 67847689], length 49
22:13:35.744082 ens4 Out IP 192.168.20.2.47304 > 100.100.10.10.443: Flags [P.], seq 693:728, ack 4699, win 501, options [nop,nop,TS val 1371206012 ecr 67847689], length 35
22:13:35.744165 ens4 Out IP 192.168.20.2.47304 > 100.100.10.10.443: Flags [P.], seq 728:1069, ack 4699, win 501, options [nop,nop,TS val 1371206012 ecr 67847689], length 341
Online tahmine internet üzerinden herkese açık bir uç nokta üzerinden, karma ağ iletişimi ve Private Service Connect (googleapis) kullanımıyla gizli olarak bağlanmayı başarıyla doğruladınız. Cloud Shell istemine geri dönen işletim sisteminden çıkın.
20. Temizleme
Cloud Shell'den eğitim bileşenlerini silin.
gcloud compute forwarding-rules delete pscvertex --global --quiet
gcloud compute instances delete workbench-tutorial --zone=us-central1-a --quiet
gcloud compute addresses delete psc-ip --global --quiet
gcloud compute networks subnets delete workbench-subnet --region=us-central1 --quiet
gcloud compute vpn-tunnels delete aiml-vpc-tunnel0 aiml-vpc-tunnel1 on-prem-tunnel0 on-prem-tunnel1 --region=us-central1 --quiet
gcloud compute vpn-gateways delete aiml-vpn-gw on-prem-vpn-gw --region=us-central1 --quiet
gcloud compute routers delete aiml-cr-us-central1 cloud-router-us-central1-aiml-nat --region=us-central1 --quiet
gcloud compute routers delete cloud-router-us-central1-on-prem-nat on-prem-cr-us-central1 --region=us-central1 --quiet
gcloud compute instances delete nat-client private-client --zone=us-central1-a --quiet
gcloud compute firewall-rules delete ssh-iap-on-prem-vpc --quiet
gcloud compute networks subnets delete nat-subnet private-ip-subnet --region=us-central1 --quiet
gcloud compute networks delete on-prem-vpc --quiet
gcloud compute networks delete aiml-vpc --quiet
Vertex Bileşenlerini Silme
Container görüntüsünü silmek için Artifact Registry'ye gidin, oluşturduğunuz depoyu ve Sil'i seçin.
Storage Paketini silmek için Cloud Console'unuzdaki Gezinme menüsünü kullanarak Storage'a gidin, paketinizi seçin ve Sil'i tıklayın:
Modelin uç noktadan dağıtımını kaldırın. Vertex AI'a gidin → Online tahmin → diamonds-cpr_endpoint'i seçin → Uç noktadan Model dağıtımını kaldırın → Dağıtımı kaldır
Modeli silin. Vertex AI'a gitme → Model Kaydı → Modeli Silme
Online tahmin uç noktasını siler. VertexAI'ya gidin → Online tahmin → diamonds-cpr_endpoint'i seçin → Uç noktayı sil
21. Tebrikler
Tebrikler, Online Tahmin'e interneti kullanarak yerel olarak, Private Service Connect ve karma ağ iletişimi ile özel olarak bağlanmayı başarıyla yapılandırdınız ve doğruladınız.
Bir nat-istemci ve özel istemci oluşturdunuz ve Vertex API'lerine erişmek için kullanılan IP adreslerini doğrulamak için TCPDUMP kullandınız. Ayrıca Private Service Connect (googleapis) hakkında bilgi edindiniz ve müşteri PSC uç noktasından yararlanarak şirket içi uygulamaları ve çoklu bulut uygulamalarını yalıtmak için nasıl kullanılabileceğini öğrendiniz.
Cosmopup, eğitici videoların çok iyi olduğunu düşünüyor.
Sırada ne var?
Bu eğitimlerden bazılarına göz atın...
- Google API'leri için Private Service Connect
- Vertex AI, kullanıcı tarafından yönetilen güvenli bir not defteri oluşturma
Daha fazla bilgi ve Videolar
- Private Service Connect'e genel bakış
- Private Service Connect nedir?
- ML modelinden tahmin alma
- Vertex AI nedir?