Private Service Connect Muability Codelab

1. Введение

Private Service Connect — это функция сетевых возможностей Google Cloud, которая позволяет пользователям получать доступ к управляемым сервисам в частном порядке из своей сети VPC. Аналогичным образом, она позволяет производителям управляемых сервисов размещать эти сервисы в своих отдельных сетях VPC и предлагать своим пользователям частное соединение.

До настоящего времени, после того как сервисы PSC предоставлялись через подключение к сервису, внесение изменений в балансировщики нагрузки сервисов было невозможно без удаления подключения к сервису и нарушения связи конечной точки PSC с потребителем. С появлением возможности изменения PSC производители могут обновлять свои балансировщики нагрузки, сохраняя при этом связь с конечной точкой PSC. Сохранение связи конечной точки PSC с подключением к сервису при изменении балансировщика нагрузки имеет преимущество в том, что не требует никаких действий со стороны потребителя.

В настоящее время изменчивость PSC будет способствовать

  • Переход на правило переадресации балансировщика нагрузки того же типа (например, сквозная передача данных по сети)
  • Переход на правило переадресации балансировщика нагрузки другого типа (например, сквозная передача сети балансировщику нагрузки приложений).

Функция изменения PSC не поддерживает редактирование действующего правила пересылки.

В этой лабораторной работе вы создадите веб-сервис производителя, доступный через внутренний балансировщик нагрузки Network Passthrough, убедитесь, что сервис имеет подключение через конечную точку PSC, а затем обновите связь подключения сервиса с новым правилом переадресации на внутренний балансировщик нагрузки приложений.

Что вы узнаете

  • Создайте простой веб-сервис Apache, представленный в качестве сервиса-производителя PSC.
  • Создайте конечную точку PSC.
  • Создайте частную зону Cloud DNS для обращений к клиентским сервисам.
  • Обновите правило переадресации, связанное с подключением услуги, используя функцию изменения PSC.

Что вам понадобится

  • A Google Cloud project with owner permissions
  • Базовые знания сетевых технологий Google Cloud.

2. Тестовая среда

Традиционно производители и потребители работают в разных проектах. Для простоты мы будем выполнять все действия в рамках одного проекта, но каждый из этапов будет обозначен проектом производителя или потребителя на случай, если пользователь предпочтет работать в разных проектах.

Для этой лабораторной работы мы начнем с создания producer-vpc с тремя подсетями: одна для размещения сервиса producer и тестовой виртуальной машины, одна для правил переадресации балансировщика нагрузки и подсеть NAT для PSC. Нам понадобится Cloud Router и Cloud NAT для обеспечения доступа в интернет для загрузки пакетов Linux. Мы предоставим доступ к нашему сервису Apache, настроенному через группу неуправляемых экземпляров, через внутренний региональный балансировщик нагрузки Network Passthrough и свяжем правило переадресации с подключением сервиса.

На стороне потребителя мы создадим потребительскую VPC с одной подсетью для размещения нашей конечной точки PSC и виртуальной машины тестового клиента. Мы настроим частную зону Cloud DNS для доступа к сервису по имени хоста.

Чтобы продемонстрировать функцию PSC Mutability, на стороне производителя мы добавим две дополнительные подсети: одну для размещения новой виртуальной машины сервиса, а другую для подсети, предназначенной только для прокси-сервера балансировщика нагрузки. Мы создадим новую виртуальную машину с веб-сервером Apache, снова настроенную через группу неуправляемых экземпляров, и предоставим к ней доступ через новый внутренний региональный балансировщик нагрузки приложений. Мы обновим подключение сервиса, указав новое правило переадресации, и проверим, сохраняется ли подключение на стороне потребителя.

683e2b440a0cc07f.png

3. Настройка и требования

Настройка среды для самостоятельного обучения

  1. Войдите в консоль Google Cloud и создайте новый проект или используйте существующий. Если у вас еще нет учетной записи Gmail или Google Workspace, вам необходимо ее создать .

295004821bab6a87.png

37d264871000675d.png

96d86d3d5655cdbe.png

  • Название проекта — это отображаемое имя участников данного проекта. Это строка символов, не используемая API Google. Вы всегда можете его изменить.
  • Идентификатор проекта уникален для всех проектов Google Cloud и является неизменяемым (его нельзя изменить после установки). Консоль Cloud автоматически генерирует уникальную строку; обычно вам неважно, какая она. В большинстве практических заданий вам потребуется указать идентификатор вашего проекта (обычно обозначается как PROJECT_ID ). Если сгенерированный идентификатор вас не устраивает, вы можете сгенерировать другой случайный идентификатор. В качестве альтернативы вы можете попробовать свой собственный и посмотреть, доступен ли он. После этого шага его нельзя изменить, и он сохраняется на протяжении всего проекта.
  • К вашему сведению, существует третье значение — номер проекта , которое используется некоторыми API. Подробнее обо всех трех значениях можно узнать в документации .
  1. Далее вам потребуется включить оплату в консоли Cloud для использования ресурсов/API Cloud. Выполнение этого практического задания не потребует больших затрат, если вообще потребует. Чтобы отключить ресурсы и избежать дополнительных расходов после завершения этого урока, вы можете удалить созданные ресурсы или удалить проект. Новые пользователи Google Cloud имеют право на бесплатную пробную версию стоимостью 300 долларов США .

Запустить Cloud Shell

Хотя Google Cloud можно управлять удаленно с ноутбука, в этом практическом занятии вы будете использовать Google Cloud Shell — среду командной строки, работающую в облаке.

В консоли Google Cloud нажмите на значок Cloud Shell на панели инструментов в правом верхнем углу:

Активировать Cloud Shell

Подготовка и подключение к среде займут всего несколько минут. После завершения вы должны увидеть что-то подобное:

Скриншот терминала Google Cloud Shell, показывающий, что среда подключена.

Эта виртуальная машина содержит все необходимые инструменты разработки. Она предоставляет постоянный домашний каталог объемом 5 ГБ и работает в облаке Google, что значительно повышает производительность сети и аутентификацию. Вся работа в этом практическом задании может выполняться в браузере. Вам не нужно ничего устанавливать.

4. Прежде чем начать

Включить API

Внутри Cloud Shell убедитесь, что идентификатор вашего проекта указан правильно.

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

Включите все необходимые службы

gcloud services enable compute.googleapis.com
gcloud services enable dns.googleapis.com

5. Создание сети продюсеров [Продюсерский проект]

Создание сети VPC

Из Cloud Shell

gcloud compute networks create producer-vpc \
    --subnet-mode=custom

Создание подсетей

Начнём с развертывания трёх подсетей в vpc производителя. Одна будет использоваться для развертывания службы производителя, другая — для правил пересылки балансировщика нагрузки, а третья будет связана с подключением службы PSC для нашей подсети NAT PSC.

Из 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

Создать облачный NAT

Для установки необходимых пакетов для наших сервисов-производителей требуется облачный NAT.

Из Cloud Shell

gcloud compute routers create $region-cr \
    --network=producer-vpc \
    --region=$region

Из Cloud Shell

gcloud compute routers nats create $region-nat \
    --router=$region-cr \
    --region=$region \
    --nat-all-subnet-ip-ranges \
    --auto-allocate-nat-external-ips

Создание политики и правил сетевого брандмауэра

Из 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

Чтобы разрешить IAP подключаться к вашим виртуальным машинам, создайте правило брандмауэра, которое:

  • Применяется ко всем экземплярам виртуальных машин, к которым вы хотите обеспечить доступ с помощью IAP.
  • Разрешает входящий трафик из диапазона IP-адресов 35.235.240.0/20. Этот диапазон содержит все IP-адреса, которые IAP использует для пересылки TCP-трафика.

Из 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

Начнём с трёх правил брандмауэра. Одно разрешит доступ к виртуальным машинам для проверки работоспособности балансировщика нагрузки (2000), одно — доступ к виртуальным машинам из диапазона NAT PSC (3000), и одно — подключение между виртуальными машинами в подсети сервиса для целей тестирования (4000). Все правила будут предназначены для порта 80, поскольку мы будем использовать этот порт для нашего сервиса.

Из 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. Создать сервис для продюсеров [Проект продюсера]

Мы создадим простой веб-сервис Apache, используя группу неуправляемых экземпляров, который будет отображать сообщение "Я являюсь сервисом-производителем".

Создать экземпляр

Из 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'

Создать группу неуправляемых экземпляров

Из Cloud Shell

gcloud compute instance-groups unmanaged create producer-uig \
  --zone=$zone

Добавьте producer-service-vm в только что созданную группу неуправляемых экземпляров.

Из Cloud Shell

gcloud compute instance-groups unmanaged add-instances producer-uig \
  --zone=$zone \
  --instances=producer-service-vm

Создание компонентов балансировки нагрузки

Для первой версии сервиса производителя мы будем предоставлять к нему доступ с помощью балансировщика нагрузки Network Passthrough Load Balancer на порту 80.

Разверните проверку работоспособности для порта 80.

Из Cloud Shell

gcloud compute health-checks create http producer-hc \
        --region=$region

Разверните серверную часть и добавьте её в эту серверную часть.

Из 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

Создайте статический IP-адрес, который будет использоваться для правила переадресации балансировщика нагрузки.

Из Cloud Shell

gcloud compute addresses create producer-fr-ip\
  --region $region \
  --subnet producer-fr-subnet \
  --addresses 192.168.0.2

Создайте правило переадресации балансировщика нагрузки, открывающее порт 80, используя ранее созданные нами серверную службу и IP-адрес.

Из 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. Тестирование сервиса «Производитель» [Проект «Производитель»]

Создайте тестовую виртуальную машину в подсети producer-service-subnet, войдите в нее и протестируйте вызов службы Apache.

Из Cloud Shell

 gcloud compute instances create producer-test-vm \
    --zone=$zone \
    --subnet=producer-service-subnet \
    --no-address

Из Cloud Shell

gcloud compute ssh producer-test-vm \
    --zone=$zone \
    --command="curl -s 192.168.0.2/index.html"

Ожидаемый результат

I am a Producer Service.

8. Представление услуг производителя посредством предоставления услуг в рамках программы "Прикрепление к производственной группе" [Проект производителя]

Создайте подключение к службе. Свяжите его с правилом переадресации, которое мы создали с помощью psc-nat-subnet.

Из 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

Запишите URI подключения к службе ( selfLink ), так как он понадобится вам на следующем шаге для настройки конечной точки PSC. Получить его можно, выполнив следующую команду в Cloud Shell.

Из Cloud Shell

gcloud compute service-attachments describe producer-attachment --region=$region

Пример выходных данных

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

Скопируйте URI, начиная с проектов.

Пример: projects/$project/regions/$region/serviceAttachments/producer-attachment

9. Создание потребительской сети [Потребительский проект]

Создание сети VPC

Из Cloud Shell

gcloud compute networks create consumer-vpc \
    --subnet-mode=custom

Создать подсеть

Будет развернута единая подсеть, в которой мы развернем конечную точку PSC и тестовую клиентскую виртуальную машину.

Из Cloud Shell

gcloud compute networks subnets create consumer-subnet \
    --network=consumer-vpc \
    --range=10.0.0.0/28 \
    --region=$region

Создание политики и правил сетевого брандмауэра

Из 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

Мы также настроим consumer-vpc для использования IAP для SSH.

Из 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. Создайте конечную точку подключения частной службы [Проект потребителя]

Зарезервируйте статический IP-адрес, который будет использоваться для конечной точки PSC.

Из Cloud Shell

gcloud compute addresses create psc-endpoint-ip \
    --region=$region \
    --subnet=consumer-subnet \
    --addresses 10.0.0.2

Создайте конечную точку PSC, используя зарезервированный статический IP-адрес и URI подключения службы, которые мы указали ранее.

Из 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. Настройте частную DNS-зону для конечной точки PSC [потребительский проект].

Используя Cloud DNS, мы настроим частную DNS-зону с DNS-именем myservice.com , которая будет использоваться с нашей конечной точкой PSC.

Из 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"

Создайте запись типа A для myservice.com и укажите в ней IP-адрес конечной точки PSC.

Из 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. Тестирование конечной точки PSC [потребительский проект]

Создайте клиентскую виртуальную машину.

Из Cloud Shell

gcloud compute instances create consumer-client-vm \
    --zone=$zone \
    --subnet=consumer-subnet \
    --no-address

Проверка подключения конечной точки PSC

Из Cloud Shell

gcloud compute ssh consumer-client-vm \
    --zone=$zone \
    --command="curl -s myservice.com/index.html"

Ожидаемый результат

I am a Producer Service.

В следующей части практического занятия мы создадим и перенесем новый сервис производителя, продемонстрировав функцию PSC Mutability, которая позволяет выполнить это бесшовное обновление без необходимости внесения каких-либо изменений в конфигурацию на стороне потребителя.

13. Создайте обновленную службу производителя [Проект производителя]

Для обновления нашей службы производителя мы развернем новую виртуальную машину с аналогичным веб-сервером Apache и сообщением «Я являюсь НОВОЙ службой производителя». Мы добавим эту виртуальную машину в новую группу неуправляемых экземпляров и будем использовать эту группу в качестве бэкэнда для нашего нового балансировщика нагрузки. Вместо использования балансировщика нагрузки с сетевой передачей мы обновим наш балансировщик нагрузки до регионального внутреннего балансировщика нагрузки приложений.

Обновите сеть

Создайте новую подсеть, которая будет использоваться в качестве подсети только для прокси-сервера для балансировщика нагрузки приложений.

Из 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

Создайте новую подсеть, в которой будет размещен наш новый сервис.

Из Cloud Shell

gcloud compute networks subnets create producer-service-new-subnet \
    --network=producer-vpc \
    --range=10.0.1.0/28 \
    --region=$region

Создайте новое правило брандмауэра, которое разрешит подключение к нашей новой службе производителя из подсети, предназначенной только для прокси-серверов.

Из 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

Создать экземпляр

Из 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'

Создать группу неуправляемых экземпляров

Из 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

Создание новых компонентов балансировки нагрузки

Создайте серверную службу. Обратите внимание, что мы используем схему балансировки нагрузки INTERNAL_MANAGED, поскольку обновляем систему до внутреннего балансировщика нагрузки приложения.

Из 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

Добавьте группу неуправляемых экземпляров в качестве бэкэнда к серверной службе.

Из Cloud Shell

gcloud compute backend-services add-backend producer-new-bes \
  --region=$region \
  --instance-group=producer-new-uig \
  --instance-group-zone=$zone

Создайте карту URL-адресов и настройте целевые HTTP-прокси.

Из 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

Создайте статический IP-адрес, который мы будем использовать для нашего правила переадресации. Он будет из той же подсети, что и исходное правило переадресации.

Из Cloud Shell

gcloud compute addresses create producer-fr-new-ip\
  --region $region \
  --subnet producer-fr-subnet \
  --addresses 192.168.0.3

Создайте правило пересылки.

Из 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. Протестируйте обновленную службу производителя [Проект производителя]

Мы будем использовать ту же тестовую виртуальную машину, которую создали для тестирования изначально развернутой службы.

Из Cloud Shell

gcloud compute ssh producer-test-vm \
    --zone=$zone \
    --command="curl -s 192.168.0.3/index.html"

Обратите внимание, что мы используем обновленный IP-адрес! 192.168.0.3 — это IP-адрес нашего регионального внутреннего балансировщика нагрузки приложений.

Ожидаемый результат

I am a NEW Producer Service.

15. Обновите приложение к услуге [Проект производителя]

Для лучшей визуализации обновления правила пересылки вложений к услугам мы можем выполнить команду describe для вложений к услугам до и после изменения.

Из Cloud Shell

gcloud compute service-attachments describe producer-attachment \
    --region=$region \
    --format="value(targetService)"

Ожидаемый результат

https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-fr

Обновите приложение к услуге.

Из Cloud Shell

gcloud compute service-attachments update producer-attachment \
  --region=$region \
  --target-service=projects/$project/regions/$region/forwardingRules/new-producer-fr

Теперь снова запустите команду describe, чтобы увидеть новое правило пересылки.

Из Cloud Shell

gcloud compute service-attachments describe producer-attachment \
    --region=$region \
    --format="value(targetService)"

Ожидаемый результат

https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/new-producer-fr

16. Повторная проверка подключения потребительского PSC [Потребительский проект]

Войдите в ту же клиентскую программу.

Из Cloud Shell

gcloud compute ssh consumer-client-vm \
    --zone=$zone \
    --command="curl -s myservice.com/index.html"

Ожидаемый результат

 I am a NEW Producer Service.

Поздравляем! Вы успешно обновили балансировщик нагрузки сервиса производителя PSC, и это не потребовало никаких изменений конфигурации на стороне потребителя!

17. Этапы очистки [Потребительский проект]

Из одного терминала 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. Этапы очистки [Проект продюсера]

Из одного терминала 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. Поздравляем!

Поздравляем с завершением практического занятия!

Что мы рассмотрели

  • Создайте простой веб-сервис Apache, представленный в качестве сервиса-производителя PSC.
  • Создайте конечную точку PSC.
  • Создайте частную зону Cloud DNS для обращений к клиентским сервисам.
  • Обновите правило переадресации, связанное с подключением услуги, используя функцию изменения PSC.