1. Wprowadzenie
Private Service Connect to funkcja sieci Google Cloud, która umożliwia konsumentom prywatny dostęp do usług zarządzanych z poziomu sieci VPC. Podobnie umożliwia producentom usług zarządzanych hostowanie tych usług we własnych, oddzielnych sieciach VPC i oferowanie prywatnego połączenia z klientami.
Do tej pory, gdy usługi PSC były udostępniane za pomocą przyłącza usługi, nie można było wprowadzać zmian w systemach równoważenia obciążenia usługi bez usunięcia przyłącza usługi i przerwania połączenia z punktem końcowym PSC konsumenta. Wprowadzenie możliwości zmiany PSC umożliwia producentom aktualizowanie systemu równoważenia obciążenia przy zachowaniu połączenia punktu końcowego PSC. Utrzymanie połączenia punktu końcowego PSC z przyłączem usługi podczas zmiany systemu równoważenia obciążenia ma tę zaletę, że nie wymaga żadnych działań po stronie klienta.
Obecnie możliwość zmiany PSC będzie obsługiwać
- Migracja do reguły przekierowania systemu równoważenia obciążenia tego samego typu (np. Przekazywanie sieciowe do przekazywania sieciowego)
- Migracja do reguły przekierowania systemu równoważenia obciążenia innego typu (np. Przekazywanie sieciowe do systemu równoważenia obciążenia aplikacji
Zmienność PSC nie obsługuje edytowania reguły przekierowania w miejscu.
W tym laboratorium utworzysz usługę sieciową producenta udostępnianą przez wewnętrzny przekazujący sieciowy system równoważenia obciążenia, sprawdzisz, czy usługa ma łączność przez punkt końcowy PSC, a następnie zaktualizujesz powiązanie przyłącza usługi z nową regułą przekierowania do wewnętrznego systemu równoważenia obciążenia aplikacji.
Czego się nauczysz
- utworzyć prostą usługę internetową Apache udostępnianą jako usługa producenta PSC;
- Utwórz punkt końcowy PSC.
- Utwórz prywatną strefę Cloud DNS na potrzeby wywołań usługi konsumenckiej.
- Zaktualizuj regułę przekierowania powiązaną z przyłączem usługi za pomocą funkcji PSC Mutability.
Czego potrzebujesz
- Projekt Google Cloud z uprawnieniami właściciela
- Podstawowa wiedza o sieciach w Google Cloud
2. Środowisko testowe
Zazwyczaj producenci i konsumenci pracują w różnych projektach. Dla uproszczenia wszystkie działania wykonamy w tym samym projekcie, ale każdy krok będzie oznaczony jako projekt producenta lub projekt konsumenta, jeśli użytkownik woli pracować w różnych projektach.
Na potrzeby tego modułu zaczniemy od utworzenia sieci VPC producenta z 3 podsieciami: jedną do hostowania usługi producenta i testowej maszyny wirtualnej, jedną dla reguł przekazywania systemu równoważenia obciążenia i jedną dla podsieci NAT PSC. Aby pobrać pakiety Linuksa, potrzebujemy routera Cloud Router i usługi Cloud NAT, które zapewnią dostęp do internetu. Udostępnimy naszą usługę Apache skonfigurowaną za pomocą niezarządzanej grupy instancji za pomocą wewnętrznego regionalnego przekazującego sieciowego systemu równoważenia obciążenia i powiążemy regułę przekierowania z przyłączeniem usługi.
Po stronie konsumenta utworzymy sieć consumer-vpc z jedną podsiecią, w której będzie hostowany punkt końcowy PSC i kliencka maszyna wirtualna do testowania. Skonfigurujemy prywatną strefę Cloud DNS, aby uzyskać dostęp do usługi za pomocą nazwy hosta.
Aby zaprezentować funkcję zmienności PSC, po stronie producenta dodamy 2 dodatkowe podsieci: jedną do hostowania nowej maszyny wirtualnej usługi, a drugą dla podsieci tylko z serwerem proxy systemu równoważenia obciążenia. Utworzymy nową maszynę wirtualną hostującą serwer WWW Apache, ponownie skonfigurowaną za pomocą niezarządzanej grupy instancji, i udostępnimy ją za pomocą nowego wewnętrznego regionalnego systemu równoważenia obciążenia aplikacji. Zaktualizujemy przyłącze usługi, aby wskazywało nową regułę przekierowania, i sprawdzimy, czy po stronie konsumenta połączenie nadal działa.

3. Konfiguracja i wymagania
Samodzielne konfigurowanie środowiska
- Zaloguj się w konsoli Google Cloud i utwórz nowy projekt lub użyj istniejącego. Jeśli nie masz jeszcze konta Gmail ani Google Workspace, musisz je utworzyć.



- Nazwa projektu to wyświetlana nazwa uczestników tego projektu. Jest to ciąg znaków, który nie jest używany przez interfejsy API Google. Zawsze możesz ją zaktualizować.
- Identyfikator projektu jest unikalny we wszystkich projektach Google Cloud i nie można go zmienić po ustawieniu. Konsola Cloud automatycznie generuje unikalny ciąg znaków. Zwykle nie musisz się tym przejmować. W większości ćwiczeń z programowania musisz odwoływać się do identyfikatora projektu (zwykle oznaczanego jako
PROJECT_ID). Jeśli wygenerowany identyfikator Ci się nie podoba, możesz wygenerować inny losowy identyfikator. Możesz też spróbować własnej nazwy i sprawdzić, czy jest dostępna. Po tym kroku nie można go zmienić i pozostaje on taki przez cały czas trwania projektu. - Warto wiedzieć, że istnieje też trzecia wartość, numer projektu, której używają niektóre interfejsy API. Więcej informacji o tych 3 wartościach znajdziesz w dokumentacji.
- Następnie musisz włączyć płatności w konsoli Cloud, aby korzystać z zasobów i interfejsów API Google Cloud. Wykonanie tego laboratorium nie będzie kosztować dużo, a może nawet nic. Aby wyłączyć zasoby i uniknąć naliczania opłat po zakończeniu tego samouczka, możesz usunąć utworzone zasoby lub projekt. Nowi użytkownicy Google Cloud mogą skorzystać z bezpłatnego okresu próbnego, w którym mają do dyspozycji środki w wysokości 300 USD.
Uruchamianie Cloud Shell
Z Google Cloud można korzystać zdalnie na laptopie, ale w tym module praktycznym będziesz używać Google Cloud Shell, czyli środowiska wiersza poleceń działającego w chmurze.
W konsoli Google Cloud kliknij ikonę Cloud Shell na pasku narzędzi w prawym górnym rogu:

Uzyskanie dostępu do środowiska i połączenie się z nim powinno zająć tylko kilka chwil. Po zakończeniu powinno wyświetlić się coś takiego:

Ta maszyna wirtualna zawiera wszystkie potrzebne narzędzia dla programistów. Zawiera również stały katalog domowy o pojemności 5 GB i działa w Google Cloud, co znacznie zwiększa wydajność sieci i usprawnia proces uwierzytelniania. Wszystkie zadania w tym laboratorium możesz wykonać w przeglądarce. Nie musisz niczego instalować.
4. Zanim zaczniesz
Włącz interfejsy API
W Cloud Shell sprawdź, czy identyfikator projektu jest skonfigurowany.
gcloud config list project gcloud config set project [YOUR-PROJECT-NAME] export project=[YOUR-PROJECT-NAME] export region=us-central1 export zone=$region-a echo $project echo $region echo $zone
Włącz wszystkie niezbędne usługi
gcloud services enable compute.googleapis.com gcloud services enable dns.googleapis.com
5. Tworzenie sieci producentów [projekt producenta]
Utwórz sieć VPC
Z Cloud Shell
gcloud compute networks create producer-vpc \
--subnet-mode=custom
Tworzenie podsieci
Zaczniemy od wdrożenia 3 podsieci w sieci VPC producenta. Jedna będzie służyć do wdrażania usługi producenta, druga do reguł przekierowania systemu równoważenia obciążenia, a trzecia będzie powiązana z przyłączem usługi PSC dla naszej podsieci NAT PSC.
Z Cloud Shell
gcloud compute networks subnets create producer-service-subnet \
--network=producer-vpc \
--range=10.0.0.0/28 \
--region=$region
gcloud compute networks subnets create producer-fr-subnet \
--network=producer-vpc \
--range=192.168.0.0/28 \
--region=$region
gcloud compute networks subnets create psc-nat-subnet \
--network=producer-vpc \
--range=10.100.0.0/28 \
--region=$region \
--purpose=PRIVATE_SERVICE_CONNECT
Utwórz Cloud NAT.
Do zainstalowania odpowiednich pakietów dla naszych usług producenta wymagany jest Cloud NAT.
Z Cloud Shell
gcloud compute routers create $region-cr \
--network=producer-vpc \
--region=$region
Z Cloud Shell
gcloud compute routers nats create $region-nat \
--router=$region-cr \
--region=$region \
--nat-all-subnet-ip-ranges \
--auto-allocate-nat-external-ips
Tworzenie zasad i reguł zapory sieciowej
Z Cloud Shell
gcloud compute network-firewall-policies create producer-vpc-policy --global
gcloud compute network-firewall-policies associations create \
--firewall-policy producer-vpc-policy \
--network producer-vpc \
--name network-producer-vpc \
--global-firewall-policy
Aby umożliwić IAP połączenie z instancjami maszyn wirtualnych, utwórz regułę zapory sieciowej, która:
- Dotyczy wszystkich instancji maszyn wirtualnych, które mają być dostępne przez IAP.
- Zezwala na ruch przychodzący z zakresu adresów IP 35.235.240.0/20. Ten zakres zawiera wszystkie adresy IP, których IAP używa do przekierowywania TCP.
Z Cloud Shell
gcloud compute network-firewall-policies rules create 1000 \
--action ALLOW \
--firewall-policy producer-vpc-policy \
--description "SSH with IAP" \
--direction INGRESS \
--src-ip-ranges 35.235.240.0/20 \
--layer4-configs tcp:22 \
--global-firewall-policy
Zaczniemy od 3 reguł zapory sieciowej. Pierwsza z nich umożliwi dostęp do maszyn wirtualnych w ramach kontroli stanu systemu równoważenia obciążenia (2000), druga umożliwi dostęp do maszyn wirtualnych z zakresu NAT PSC (3000), a trzecia umożliwi łączność między maszynami wirtualnymi w podsieci usługi na potrzeby testowania (4000). Utworzymy wszystkie reguły dla portu 80, ponieważ będziemy go używać w naszej usłudze.
Z Cloud Shell
gcloud compute network-firewall-policies rules create 2000 \
--action ALLOW \
--firewall-policy producer-vpc-policy \
--description "LB healthchecks" \
--direction INGRESS \
--src-ip-ranges 130.211.0.0/22,35.191.0.0/16 \
--layer4-configs tcp:80 \
--global-firewall-policy
gcloud compute network-firewall-policies rules create 3000 \
--action ALLOW \
--firewall-policy producer-vpc-policy \
--description "allow access from PSC NAT subnet" \
--direction INGRESS \
--src-ip-ranges 10.100.0.0/28 \
--layer4-configs tcp:80 \
--global-firewall-policy
gcloud compute network-firewall-policies rules create 4000 \
--action ALLOW \
--firewall-policy producer-vpc-policy \
--description "allow access between producer service VMs and testing client for testing purposes" \
--direction INGRESS \
--src-ip-ranges 10.0.0.0/28 \
--layer4-configs tcp:80 \
--global-firewall-policy
6. Tworzenie usługi producenta [projekt producenta]
Utworzymy prostą usługę internetową Apache za pomocą niezarządzanej grupy instancji, która wyświetla komunikat „I am a Producer Service”.
Utwórz instancję
Z Cloud Shell
gcloud compute instances create producer-service-vm \
--network producer-vpc \
--subnet producer-service-subnet \
--zone $zone \
--no-address \
--metadata startup-script='#! /bin/bash
sudo apt-get update
sudo apt-get install apache2 -y
a2enmod ssl
sudo a2ensite default-ssl
echo "I am a Producer Service." | \
tee /var/www/html/index.html
systemctl restart apache2'
Utwórz niezarządzaną grupę instancji
Z Cloud Shell
gcloud compute instance-groups unmanaged create producer-uig \ --zone=$zone
Dodaj maszynę wirtualną producer-service-vm do utworzonej właśnie niezarządzanej grupy instancji.
Z Cloud Shell
gcloud compute instance-groups unmanaged add-instances producer-uig \ --zone=$zone \ --instances=producer-service-vm
Tworzenie komponentów systemu równoważenia obciążenia
W przypadku wersji 1 usługi producenta udostępnimy usługę za pomocą przekazującego sieciowego systemu równoważenia obciążenia na porcie 80.
Wdróż kontrolę stanu dla portu 80.
Z Cloud Shell
gcloud compute health-checks create http producer-hc \
--region=$region
Wdróż usługę backendu i dodaj do niej backend.
Z Cloud Shell
gcloud compute backend-services create producer-bes \ --load-balancing-scheme=internal \ --protocol=tcp \ --region=$region \ --health-checks=producer-hc \ --health-checks-region=$region gcloud compute backend-services add-backend producer-bes \ --region=$region \ --instance-group=producer-uig \ --instance-group-zone=$zone
Utwórz statyczny adres IP, który będzie używany w regule przekierowania systemu równoważenia obciążenia.
Z Cloud Shell
gcloud compute addresses create producer-fr-ip\ --region $region \ --subnet producer-fr-subnet \ --addresses 192.168.0.2
Utwórz regułę przekierowania systemu równoważenia obciążenia, która udostępnia port 80, korzystając z utworzonej wcześniej usługi backendu i adresu IP.
Z Cloud Shell
gcloud compute forwarding-rules create producer-fr \ --region=$region \ --load-balancing-scheme=internal \ --network=producer-vpc \ --subnet=producer-fr-subnet \ --address=producer-fr-ip \ --ip-protocol=TCP \ --ports=80 \ --backend-service=producer-bes \ --backend-service-region=$region
7. Testowanie usługi producenta [projekt producenta]
Utwórz testową maszynę wirtualną w podsieci usługi producenta, zaloguj się na nią i przetestuj wywołanie usługi Apache.
Z Cloud Shell
gcloud compute instances create producer-test-vm \
--zone=$zone \
--subnet=producer-service-subnet \
--no-address
Z Cloud Shell
gcloud compute ssh producer-test-vm \
--zone=$zone \
--command="curl -s 192.168.0.2/index.html"
Oczekiwane dane wyjściowe
I am a Producer Service.
8. Udostępnianie usługi producenta za pomocą przyłącza usługi [projekt producenta]
Utwórz przyłącze usługi. Powiąż go z regułą przekierowania utworzoną za pomocą psc-nat-subnet.
Z Cloud Shell
gcloud compute service-attachments create producer-attachment \
--region=$region \
--producer-forwarding-rule=producer-fr \
--connection-preference=ACCEPT_AUTOMATIC \
--nat-subnets=psc-nat-subnet
Zanotuj identyfikator URI przyłączenia usługi (selfLink), ponieważ będzie on potrzebny w kolejnym kroku konfiguracji punktu końcowego PSC. Możesz go uzyskać, wykonując w Cloud Shell to polecenie.
Z Cloud Shell
gcloud compute service-attachments describe producer-attachment --region=$region
Przykładowe dane wyjściowe
connectionPreference: ACCEPT_AUTOMATIC creationTimestamp: '2026-02-10T07:50:04.250-08:00' description: '' enableProxyProtocol: false fingerprint: xxx id: 'xxx' kind: compute#serviceAttachment name: producer-attachment natSubnets: - https://www.googleapis.com/compute/v1/projects/$project/regions/$region/subnetworks/psc-nat-subnet pscServiceAttachmentId: high: 'xxx' low: 'xxx' reconcileConnections: false region: https://www.googleapis.com/compute/v1/projects/$project/regions/$region selfLink: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/serviceAttachments/producer-attachment targetService: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-fr
Skopiuj identyfikator URI zaczynający się od projects.
Przykład: projects/$project/regions/$region/serviceAttachments/producer-attachment
9. Tworzenie sieci konsumenta [projekt konsumenta]
Utwórz sieć VPC
Z Cloud Shell
gcloud compute networks create consumer-vpc \
--subnet-mode=custom
Utwórz podsieć
Zostanie wdrożona jedna podsieć, w której wdrożymy punkt końcowy PSC i testową maszynę wirtualną klienta.
Z Cloud Shell
gcloud compute networks subnets create consumer-subnet \
--network=consumer-vpc \
--range=10.0.0.0/28 \
--region=$region
Tworzenie zasad i reguł zapory sieciowej
Z Cloud Shell
gcloud compute network-firewall-policies create consumer-vpc-policy --global
gcloud compute network-firewall-policies associations create \
--firewall-policy consumer-vpc-policy \
--network consumer-vpc \
--name network-consumer-vpc \
--global-firewall-policy
Skonfigurujemy też sieć VPC klienta, aby używała IAP do SSH.
Z Cloud Shell
gcloud compute network-firewall-policies rules create 1000 \
--action ALLOW \
--firewall-policy consumer-vpc-policy \
--description "SSH with IAP" \
--direction INGRESS \
--src-ip-ranges 35.235.240.0/20 \
--layer4-configs tcp:22 \
--global-firewall-policy
10. Utwórz punkt końcowy Private Service Connect [projekt konsumenta]
Zarezerwuj statyczny adres IP, który będzie używany w punkcie końcowym usługi PSC.
Z Cloud Shell
gcloud compute addresses create psc-endpoint-ip \
--region=$region \
--subnet=consumer-subnet \
--addresses 10.0.0.2
Utwórz punkt końcowy PSC, używając zarezerwowanego statycznego adresu IP i identyfikatora URI przyłącza usługi, które zostały zanotowane wcześniej.
Z Cloud Shell
gcloud compute forwarding-rules create psc-endpoint \ --region=$region \ --network=consumer-vpc \ --address=psc-endpoint-ip \ --target-service-attachment=projects/$project/regions/$region/serviceAttachments/producer-attachment
11. Konfigurowanie prywatnej strefy DNS dla punktu końcowego PSC [projekt klienta]
Za pomocą Cloud DNS skonfigurujemy prywatną strefę DNS o nazwie DNS myservice.com, która będzie używana z naszym punktem końcowym PSC.
Z Cloud Shell
gcloud dns managed-zones create "consumer-service" \
--dns-name=myservice.com \
--description="consumer service dns" \
--visibility=private \
--networks=consumer-vpc
gcloud dns record-sets transaction start \
--zone="consumer-service"
Utwórz rekord A dla domeny myservice.com i skieruj go na adres IP punktu końcowego PSC.
Z Cloud Shell
gcloud dns record-sets transaction add 10.0.0.2 \ --name=myservice.com \ --ttl=300 \ --type=A \ --zone="consumer-service" gcloud dns record-sets transaction execute \ --zone="consumer-service"
12. Testowanie punktu końcowego PSC [projekt klienta]
Tworzenie klienckiej maszyny wirtualnej
Z Cloud Shell
gcloud compute instances create consumer-client-vm \
--zone=$zone \
--subnet=consumer-subnet \
--no-address
Testowanie połączenia z punktem końcowym PSC
Z Cloud Shell
gcloud compute ssh consumer-client-vm \
--zone=$zone \
--command="curl -s myservice.com/index.html"
Oczekiwane dane wyjściowe
I am a Producer Service.
W kolejnej części tego laboratorium kodowania utworzymy nową usługę producenta i przeprowadzimy do niej migrację. Zaprezentujemy też funkcję zmienności PSC, która umożliwia bezproblemową aktualizację bez konieczności wprowadzania zmian w konfiguracji po stronie konsumenta.
13. Tworzenie zaktualizowanej usługi producenta [projekt producenta]
Aby zaktualizować usługę producenta, wdrożymy nową maszynę wirtualną z podobnym serwerem WWW Apache i komunikatem „I am a NEW Producer service”. Dodamy tę maszynę wirtualną do nowej niezarządzanej grupy instancji i użyjemy jej jako backendu nowego systemu równoważenia obciążenia. Zamiast korzystać z przekazującego sieciowego systemu równoważenia obciążenia, zaktualizujemy system równoważenia obciążenia do regionalnego wewnętrznego systemu równoważenia obciążenia aplikacji.
Aktualizowanie sieci
Utwórz nową podsieć, która będzie używana jako podsieć tylko-proxy dla systemu równoważenia obciążenia aplikacji.
Z Cloud Shell
gcloud compute networks subnets create lb-proxy-subnet \
--network=producer-vpc \
--range=10.200.0.0/24 \
--region=$region \
--purpose=REGIONAL_MANAGED_PROXY \
--role=ACTIVE
Utwórz nową podsieć, w której będzie hostowana nowa usługa.
Z Cloud Shell
gcloud compute networks subnets create producer-service-new-subnet \
--network=producer-vpc \
--range=10.0.1.0/28 \
--region=$region
Utwórz nową regułę zapory sieciowej, która zezwoli na połączenie z naszą nową usługą producenta z podsieci tylko dla proxy.
Z Cloud Shell
gcloud compute network-firewall-policies rules create 3001 \
--action ALLOW \
--firewall-policy producer-vpc-policy \
--description "allow access from proxy only subnet" \
--direction INGRESS \
--src-ip-ranges 10.200.0.0/24 \
--layer4-configs tcp:80 \
--global-firewall-policy
Utwórz instancję
Z Cloud Shell
gcloud compute instances create new-producer-service-vm \
--network producer-vpc \
--subnet producer-service-new-subnet \
--zone $zone \
--no-address \
--metadata startup-script='#! /bin/bash
sudo apt-get update
sudo apt-get install apache2 -y
a2enmod ssl
sudo a2ensite default-ssl
echo "I am a NEW Producer Service." | \
tee /var/www/html/index.html
systemctl restart apache2'
Utwórz niezarządzaną grupę instancji
Z Cloud Shell
gcloud compute instance-groups unmanaged create producer-new-uig \
--zone=$zone
gcloud compute instance-groups unmanaged add-instances producer-new-uig \
--zone=$zone \
--instances=new-producer-service-vm
gcloud compute instance-groups unmanaged set-named-ports producer-new-uig \
--named-ports=http:80 \
--zone=$zone
Tworzenie nowych komponentów systemu równoważenia obciążenia
Utwórz usługę backendu. Zwróć uwagę, że używamy schematu równoważenia obciążenia INTERNAL_MANAGED, ponieważ przechodzimy na wewnętrzny system równoważenia obciążenia aplikacji.
Z Cloud Shell
gcloud compute backend-services create producer-new-bes \ --load-balancing-scheme=INTERNAL_MANAGED \ --protocol=http \ --region=$region \ --health-checks=producer-hc \ --health-checks-region=$region
Dodaj niezarządzaną grupę instancji jako backend do usługi backendu.
Z Cloud Shell
gcloud compute backend-services add-backend producer-new-bes \ --region=$region \ --instance-group=producer-new-uig \ --instance-group-zone=$zone
Utwórz mapę adresów URL i docelowe serwery proxy HTTP.
Z Cloud Shell
gcloud compute url-maps create producer-url-map \ --default-service=producer-new-bes \ --region=$region gcloud compute target-http-proxies create http-proxy \ --url-map=producer-url-map \ --region=$region
Utwórz statyczny adres IP, którego użyjemy w regule przekierowania. Będzie ona pochodzić z tej samej podsieci, której użyliśmy w przypadku pierwotnej reguły przekierowania.
Z Cloud Shell
gcloud compute addresses create producer-fr-new-ip\ --region $region \ --subnet producer-fr-subnet \ --addresses 192.168.0.3
Utwórz regułę przekierowania.
Z Cloud Shell
gcloud compute forwarding-rules create new-producer-fr \ --load-balancing-scheme=INTERNAL_MANAGED \ --network=producer-vpc \ --subnet=producer-fr-subnet \ --address=producer-fr-new-ip \ --ports=80 \ --region=$region \ --target-http-proxy=http-proxy \ --target-http-proxy-region=$region
14. Testowanie zaktualizowanej usługi producenta [projekt producenta]
Użyjemy tej samej testowej maszyny wirtualnej, której użyliśmy do testowania pierwotnie wdrożonej usługi.
Z Cloud Shell
gcloud compute ssh producer-test-vm \
--zone=$zone \
--command="curl -s 192.168.0.3/index.html"
Pamiętaj, że dzwonimy na zaktualizowany adres IP. 192.168.0.3 to adres IP naszego regionalnego wewnętrznego systemu równoważenia obciążenia aplikacji.
Oczekiwane dane wyjściowe
I am a NEW Producer Service.
15. Aktualizowanie połączenia z usługą [projekt producenta]
Aby lepiej zobrazować aktualizację reguły przekierowania do połączenia z usługą, możemy uruchomić polecenie „describe” w połączeniu z usługą przed zmianą i po niej.
Z Cloud Shell
gcloud compute service-attachments describe producer-attachment \
--region=$region \
--format="value(targetService)"
Oczekiwane dane wyjściowe
https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-fr
Zaktualizuj przyłącze usługi.
Z Cloud Shell
gcloud compute service-attachments update producer-attachment \ --region=$region \ --target-service=projects/$project/regions/$region/forwardingRules/new-producer-fr
Teraz ponownie uruchom polecenie describe, aby zobaczyć nową regułę przekierowania.
Z Cloud Shell
gcloud compute service-attachments describe producer-attachment \
--region=$region \
--format="value(targetService)"
Oczekiwane dane wyjściowe
https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/new-producer-fr
16. Ponowne testowanie połączenia PSC konsumenta [projekt konsumenta]
Zaloguj się w tym samym kliencie konsumenckim.
Z Cloud Shell
gcloud compute ssh consumer-client-vm \
--zone=$zone \
--command="curl -s myservice.com/index.html"
Oczekiwane dane wyjściowe
I am a NEW Producer Service.
Gratulacje! Usługa równoważenia obciążenia usługi producenta PSC została zaktualizowana i nie wymagała żadnych zmian konfiguracji po stronie konsumenta.
17. Procedura czyszczenia [projekt konsumenta]
Usuwanie komponentów laboratorium z jednego terminala Cloud Shell
gcloud dns record-sets delete myservice.com --zone="consumer-service" --type=A -q gcloud dns managed-zones delete "consumer-service" -q gcloud compute forwarding-rules delete psc-endpoint --region=$region -q gcloud compute addresses delete psc-endpoint-ip --region=$region -q gcloud compute instances delete consumer-client-vm --zone=$zone --project $project -q gcloud compute network-firewall-policies rules delete 1000 --firewall-policy consumer-vpc-policy --global-firewall-policy -q gcloud compute network-firewall-policies associations delete --firewall-policy=consumer-vpc-policy --name=network-consumer-vpc --global-firewall-policy -q gcloud compute network-firewall-policies delete consumer-vpc-policy --global -q gcloud compute networks subnets delete consumer-subnet --region $region -q gcloud compute networks delete consumer-vpc -q
18. Procedura czyszczenia [Projekt producenta]
Usuwanie komponentów laboratorium z jednego terminala Cloud Shell
gcloud compute service-attachments delete producer-attachment --region=$region -q gcloud compute instances delete producer-test-vm --zone=$zone --project $project -q gcloud compute forwarding-rules delete new-producer-fr --region=$region -q gcloud compute addresses delete producer-fr-new-ip --region $region -q gcloud compute target-http-proxies delete http-proxy --region $region -q gcloud compute url-maps delete producer-url-map --region $region -q gcloud compute backend-services delete producer-new-bes --region $region -q gcloud compute instance-groups unmanaged delete producer-new-uig --zone $zone -q gcloud compute instances delete new-producer-service-vm --zone $zone --project $project -q gcloud compute networks subnets delete producer-service-new-subnet --region $region -q gcloud compute networks subnets delete lb-proxy-subnet --region $region -q gcloud compute forwarding-rules delete producer-fr --region=$region -q gcloud compute addresses delete producer-fr-ip --region $region -q gcloud compute backend-services delete producer-bes --region $region -q gcloud compute health-checks delete producer-hc --region $region -q gcloud compute instance-groups unmanaged delete producer-uig --zone $zone -q gcloud compute instances delete producer-service-vm --zone $zone --project $project -q gcloud compute network-firewall-policies rules delete 4000 --firewall-policy producer-vpc-policy --global-firewall-policy -q gcloud compute network-firewall-policies rules delete 3001 --firewall-policy producer-vpc-policy --global-firewall-policy -q gcloud compute network-firewall-policies rules delete 3000 --firewall-policy producer-vpc-policy --global-firewall-policy -q gcloud compute network-firewall-policies rules delete 2000 --firewall-policy producer-vpc-policy --global-firewall-policy -q gcloud compute network-firewall-policies rules delete 1000 --firewall-policy producer-vpc-policy --global-firewall-policy -q gcloud compute network-firewall-policies associations delete --firewall-policy=producer-vpc-policy --name=network-producer-vpc --global-firewall-policy -q gcloud compute network-firewall-policies delete producer-vpc-policy --global -q gcloud compute routers nats delete $region-nat --router=$region-cr --region=$region -q gcloud compute routers delete $region-cr --region=$region -q gcloud compute networks subnets delete psc-nat-subnet --region=$region -q gcloud compute networks subnets delete producer-fr-subnet --region=$region -q gcloud compute networks subnets delete producer-service-subnet --region=$region -q gcloud compute networks delete producer-vpc -q
19. Gratulacje!
Gratulujemy ukończenia ćwiczenia.
Omówione zagadnienia
- utworzyć prostą usługę internetową Apache udostępnianą jako usługa producenta PSC;
- Utwórz punkt końcowy PSC.
- Utwórz prywatną strefę Cloud DNS na potrzeby wywołań usługi konsumenckiej.
- Zaktualizuj regułę przekierowania powiązaną z przyłączem usługi za pomocą funkcji PSC Mutability.