تسلسل صريح لأجهزة موازنة حمل GCP L7 من خلال PSC

1- مقدمة

تتيح "مجموعة نقاط نهاية الشبكة" (NEG) في Private Service Connect (PSC) ربط "جهاز موازنة حمل HTTPS داخلي" بـ "جهاز موازنة حمل HTTPS خارجي". ويوفّر ذلك عمليات التحقّق من الصحة الموزّعة وعدد زيارات مستوى البيانات إلى البيئة المحلية باستخدام النطاقات التي يحدّدها العميل. بالإضافة إلى ذلك، تتيح هذه البنية أيضًا ربط عدة شبكات VPC بالبيئة المحلية من خلال عدة خدمات ربط بينية إقليمية.

سنوضّح في هذا الدرس التطبيقي حول الترميز كيفية ضبط هذه البنية من البداية إلى النهاية استنادًا إلى البنية الموضّحة أدناه. من اليمين إلى اليسار، يملك العملاء في البيئة المحلية جهازًا افتراضيًا لمحاكاة خدمات HTTP، ويستفيدون من إمكانية الاتصال المختلط (HA-VPN أو InterConnect) ومجموعة نقاط نهاية الشبكة المختلطة لعرض الخدمات من خلال "جهاز موازنة حمل HTTPS داخلي". تستخدم خدمة PSC "جهاز موازنة حمل HTTPS داخلي" كمرفقات خدمة. تستخدم "مجموعة نقاط نهاية الشبكة" في PSC المرفقات كخدمة خلفية، يتم عرضها على "جهاز موازنة حمل HTTPS خارجي". يمكن لمستخدمي الإنترنت استخدام شبكة Google العالمية لتسريع الوصول إلى خدمات HTTP في البيئة المحلية.

e3f26d8497323a42.png

الشكل 1: تستخدم خدمة Private Service Connect "مجموعة نقاط نهاية الشبكة" ومرفقات الخدمة لربط "جهاز موازنة حمل HTTPS خارجي" بـ "جهاز موازنة حمل HTTPS داخلي"، وتوسيع نطاق الخلفية ليشمل البيئة المحلية.

المواضيع التي ستتعرّف عليها

  • "جهاز موازنة حمل HTTPS داخلي" مع "مجموعة نقاط نهاية الشبكة المختلطة" و"عملية التحقّق من الصحة الموزّعة"
  • مرفق خدمة PSC مع "جهاز موازنة حمل HTTPS داخلي"
  • إعداد "مجموعة نقاط نهاية الشبكة" في PSC
  • عرض "مجموعة نقاط نهاية الشبكة" في PSC باستخدام "جهاز موازنة حمل HTTPS خارجي"

المتطلبات الأساسية

  • معرفة إمكانية الاتصال المختلط، مثل HA-VPN
  • معرفة موازنة حمل HTTPS الداخلية/الخارجية
  • معرفة Private Service Connect

2. قبل البدء

ملاحظة: يقدّم الدرس التطبيقي حول الترميز خطوات الإعداد والتحقّق من الصحة استنادًا إلى البنية الموضّحة، لذا عليك تعديل الإجراء حسب الحاجة لتلبية متطلبات مؤسستك. لا تدخل أذونات IAM ضمن نطاق الدرس التطبيقي حول الترميز.

سيستخدم الدرس التطبيقي حول الترميز مشروعًا واحدًا لمحاكاة العملية بأكملها. يمكنك أيضًا استخدام مشاريع متعددة.

مشروع واحد: تعديل المشروع ليتوافق مع شبكة المنتج والمستهلك

داخل Cloud Shell، تأكَّد من إعداد رقم تعريف مشروعك.

gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
prodproject=YOUR-PROJECT-NAME
echo $prodproject

3- إنشاء موارد في البيئة المحلية

سنقوم في القسم التالي بإعداد شبكة VPC وأجهزة افتراضية في البيئة المحلية لمحاكاة خدمات العملاء في البيئة المحلية.

شبكة VPC

من Cloud Shell

gcloud compute networks create vpc-demo-onprem --project=$prodproject --subnet-mode=custom

إنشاء شبكة فرعية

من Cloud Shell

gcloud compute networks subnets create vpc-demo-onprem-asia-southeast1 --project=$prodproject --range=10.0.0.0/24 --network=vpc-demo-onprem --region=asia-southeast1

إنشاء قواعد جدار الحماية

يتوافق "جهاز موازنة حمل HTTPS داخلي" مع عملية التحقّق من الصحة الموزّعة، ولا تحتاج قواعد جدار الحماية إلا إلى السماح بنطاق عناوين IP للشبكة الفرعية للخادم الوكيل. اتّبِع المستند التالي لإدراج مشاريعك في القائمة المسموح بها.

من Cloud Shell، أنشِئ قاعدة جدار حماية لتفعيل عمليات التحقّق من صحة الخلفية وعدد زيارات مستوى البيانات من الشبكات الفرعية للخادم الوكيل.

gcloud compute firewall-rules create vpc-demo-health-checks --allow tcp:80,tcp:443 --network vpc-demo-onprem --source-ranges 10.0.3.0/24 --enable-logging

من Cloud Shell، أنشِئ قاعدة جدار حماية للسماح لميزة "الشراء داخل التطبيق" بالاتصال بمثيلات الأجهزة الافتراضية.

gcloud compute firewall-rules create psclab-iap-prod --network vpc-demo-onprem --allow tcp:22 --source-ranges=35.235.240.0/20 --enable-logging

4- إنشاء مثيلات الأجهزة الافتراضية في البيئة المحلية

يحاكي هذا الجهاز الافتراضي الخدمات في البيئة المحلية، ويجب عرضه باستخدام "جهاز موازنة حمل HTTPS داخلي" من خلال "مجموعة نقاط نهاية الشبكة المختلطة".

من Cloud Shell، أنشِئ المثيل www01.

gcloud compute instances create www01 \
    --zone=asia-southeast1-b \
    --image-family=debian-11 \
    --image-project=debian-cloud \
    --network-interface=network-tier=PREMIUM,nic-type=GVNIC,stack-type=IPV4_ONLY,subnet=vpc-demo-onprem-asia-southeast1 \
    --shielded-secure-boot \
    --shielded-vtpm \
    --shielded-integrity-monitoring \
    --metadata=startup-script='#! /bin/bash
sudo apt-get update
sudo apt-get install nginx -y
vm_hostname="$(curl -H "Metadata-Flavor:Google" \
http://169.254.169.254/computeMetadata/v1/instance/name)"
filter="{print \$NF}"
vm_zone="$(curl -H "Metadata-Flavor:Google" \
http://169.254.169.254/computeMetadata/v1/instance/zone \
| awk -F/ "${filter}")"
echo "Page on $vm_hostname in $vm_zone" | \
tee /var/www/html/index.nginx-debian.html
sudo systemctl restart nginx'

سنستخدم في القسم التالي أداة letsencrypt لإنشاء الشهادات وتثبيتها على Nginx. نزِّل ملف المفتاح العام والخاص للخطوة التالية. عليك فتح منفذ TCP مؤقتًا رقم 80 على الإنترنت لإنشاء الشهادة.

تأكَّد من أنّ هذا الجهاز الافتراضي لديه اسم نطاق يتم حله علنًا. على سبيل المثال، في Cloud DNS، أضِف سجلّ A‏ [www01.yinghli.demo.altostrat.com](http://www01.yinghli.demo.altostrat.com) وأشِر إلى عنوان IP العام للجهاز الافتراضي.

gcloud dns --project=$prodproject record-sets create www01.yinghli.demo.altostrat.com. --zone="yinghli-demo" --type="A" --ttl="300" --rrdatas="34.87.77.186"

من وحدة تحكّم الجهاز الافتراضي www01، اتّبِع الإرشادات لتثبيت الشهادات على Nginx وأنشِئ نسخة من fullchain.pem وprivate.pem للخطوات التالية.

sudo apt install snapd
sudo snap install core; sudo snap refresh core
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
sudo certbot --nginx

5- إنشاء شبكة VPC للمنتجين

ملاحظة: لا يتضمّن هذا الإعداد ضبط الشبكات المختلطة.

شبكة VPC

من Cloud Shell

gcloud compute networks create vpc-demo-producer --project=$prodproject --subnet-mode=custom

إنشاء شبكة فرعية

من Cloud Shell

gcloud compute networks subnets create vpc-demo-asia-southeast1 --project=$prodproject --range=10.0.2.0/24 --network=vpc-demo-producer --region=asia-southeast1

إنشاء شبكة فرعية للخادم الوكيل

من Cloud Shell

gcloud compute networks subnets create proxy-subnet-asia-southeast1 \
  --purpose=REGIONAL_MANAGED_PROXY \
  --role=ACTIVE \
  --region=asia-southeast1 \
  --network=vpc-demo-producer \
  --range=10.0.3.0/24

Hybrid Connectivity

اتّبِع مستندات Cloud VPN لتنفيذ إمكانية الاتصال HA-VPN بين البيئة المحلية وشبكة VPC للمنتج. احتفِظ بالإعدادات التلقائية على Cloud Router، ولا نحتاج إلى إضافة 130.211.0.0/22 و35.191.0.0/16 إلى إعلانات بروتوكول BGP.

6- إنشاء "مجموعة نقاط نهاية الشبكة المختلطة" للمنتجين

أنشِئ مجموعة نقاط نهاية شبكة مختلطة وأضِف عنوان IP:المنفذ للجهاز الافتراضي في البيئة المحلية إلى "مجموعة نقاط نهاية الشبكة".

من Cloud Shell

gcloud compute network-endpoint-groups create on-prem-service-neg \
    --network-endpoint-type=NON_GCP_PRIVATE_IP_PORT \
    --zone=asia-southeast1-b \
    --network=vpc-demo-producer

gcloud compute network-endpoint-groups update on-prem-service-neg \
    --zone=asia-southeast1-b \
    --add-endpoint="ip=10.0.0.2,port=443"

7- إنشاء "جهاز موازنة حمل HTTPS داخلي" للمنتجين

لا يتيح "جهاز موازنة حمل HTTPS خارجي" حاليًا سوى بروتوكول HTTPS لـ "مجموعة نقاط نهاية الشبكة" في PSC( المستندات). عند نشر الخدمات، علينا استخدام "جهاز موازنة حمل HTTPS داخلي" وتفعيل إمكانية الوصول الشامل إلى قواعد إعادة التوجيه.

من Cloud Shell، أنشِئ عملية التحقّق من الصحة الإقليمية.

gcloud compute health-checks create https on-prem-service-hc \
    --region=asia-southeast1 \
    --use-serving-port

من Cloud Shell، أنشِئ خدمة الخلفية وأضِف "مجموعة نقاط نهاية الشبكة المختلطة".

gcloud compute backend-services create on-premise-service-backend \
   --load-balancing-scheme=INTERNAL_MANAGED \
   --protocol=HTTPS \
   --region=asia-southeast1 \
   --health-checks=on-prem-service-hc \
   --health-checks-region=asia-southeast1

gcloud compute backend-services add-backend on-premise-service-backend \
   --network-endpoint-group=on-prem-service-neg \
   --network-endpoint-group-zone=asia-southeast1-b \
   --region=asia-southeast1 \
   --balancing-mode=RATE \
   --max-rate-per-endpoint=100

من Cloud Shell، أنشِئ خريطة عناوين URL.

gcloud compute url-maps create on-premise-url \
    --default-service on-premise-service-backend \
    --region=asia-southeast1

من Cloud Shell، أنشِئ شهادات SSL الإقليمية. يتم تنزيل ملفَّي شهادة من الجهاز الافتراضي.

gcloud compute ssl-certificates create www01 \
    --certificate=fullchain.pem \
    --private-key=private.pem \
    --region=asia-southeast1

من Cloud Shell، أنشِئ https-target-proxy.

gcloud compute target-https-proxies create on-premise-httpsproxy \
    --ssl-certificates=www01 \
    --url-map=on-premise-url \
    --url-map-region=asia-southeast1 \
    --region=asia-southeast1

من Cloud Shell، احجز عنوان IP داخليًا ثابتًا وأنشِئ قاعدة إعادة التوجيه.

gcloud compute addresses create ilbaddress \
  --region=asia-southeast1 \
  --subnet=vpc-demo-asia-southeast1  \
  --addresses=10.0.2.100 

gcloud compute forwarding-rules create https-ilb-psc \
      --load-balancing-scheme=INTERNAL_MANAGED \
      --network=vpc-demo-producer \
      --subnet=vpc-demo-asia-southeast1  \
      --address=ilbaddress \
      --ports=443 \
      --region=asia-southeast1 \
      --target-https-proxy=on-premise-httpsproxy \
      --target-https-proxy-region=asia-southeast1
      --allow-global-access

8- إنشاء مثيل جهاز افتراضي للمنتج

أنشِئ جهازًا افتراضيًا للمنتج للتحقّق منه.

من Cloud Shell

gcloud compute instances create test01 \
    --zone=asia-southeast1-b \
    --image-family=debian-11 \
    --image-project=debian-cloud \
    --network-interface=network-tier=PREMIUM,nic-type=GVNIC,stack-type=IPV4_ONLY,subnet=vpc-demo-asia-southeast1 \
    --shielded-secure-boot \
    --shielded-vtpm \
    --shielded-integrity-monitoring

للسماح لميزة "الشراء داخل التطبيق" بالاتصال بمثيلات الأجهزة الافتراضية، أنشِئ قاعدة جدار حماية:

من Cloud Shell

gcloud compute firewall-rules create psclab-iap-prod --network vpc-demo-producer --allow tcp:22 --source-ranges=35.235.240.0/20 --enable-logging

من وحدة تحكّم الجهاز الافتراضي للمنتج، انتقِل إلى [www01.yinghli.demo.altostrat.com](https://www01.yinghli.demo.altostrat.com) وحلّ عنوان IP الخاص بـ "جهاز موازنة حمل HTTPS داخلي". يشير الرمز HTTP 200 إلى أنّ الإعدادات عملت على النحو المتوقّع.

curl -v --resolve www01.yinghli.demo.altostrat.com:443:10.0.2.100 https://www01.yinghli.demo.altostrat.com

* Added www01.yinghli.demo.altostrat.com:443:10.0.2.100 to DNS cache
* Hostname www01.yinghli.demo.altostrat.com was found in DNS cache
*   Trying 10.0.2.100:443...
* Connected to www01.yinghli.demo.altostrat.com (10.0.2.100) 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=www01.yinghli.demo.altostrat.com
*  start date: Jun  4 10:36:43 2023 GMT
*  expire date: Sep  2 10:36:42 2023 GMT
*  subjectAltName: host "www01.yinghli.demo.altostrat.com" matched cert's "www01.yinghli.demo.altostrat.com"
*  issuer: C=US; O=Let's Encrypt; CN=R3
*  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 0x55865ef982e0)
> GET / HTTP/2
> Host: www01.yinghli.demo.altostrat.com
> user-agent: curl/7.74.0
> accept: */*
> 
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* old SSL session ID is stale, removing
* Connection state changed (MAX_CONCURRENT_STREAMS == 100)!
< HTTP/2 200 
< server: nginx/1.18.0
< date: Mon, 05 Jun 2023 02:29:38 GMT
< content-type: text/html
< content-length: 35
< last-modified: Sun, 04 Jun 2023 09:02:16 GMT
< etag: "647c5318-23"
< accept-ranges: bytes
< via: 1.1 google
< 
Page on www01 in asia-southeast1-b
* Connection #0 to host www01.yinghli.demo.altostrat.com left intact

ملاحظة: لا يمكنك الوصول إلى خدمات HTTPS للجهاز الافتراضي 10.0.0.2 مباشرةً، لأنّ جدار الحماية في البيئة المحلية لا يسمح إلا للشبكة الفرعية للخادم الوكيل 10.0.3.0/24 بالوصول.

9- إنشاء شبكة فرعية لترجمة عناوين الشبكة (NAT) في PSC

من Cloud Shell

gcloud compute networks subnets create psc-nat-subnet \
--network=vpc-demo-producer \
--region=asia-southeast1 \
--range=10.0.5.0/24 \
--purpose=private-service-connect

10- إنشاء مرفق خدمة HTTPs

من Cloud Shell، أنشِئ مرفق خدمة HTTPs.

gcloud compute service-attachments create ilbserviceattach \
--region=asia-southeast1 \
--producer-forwarding-rule=https-ilb-psc \
--connection-preference=ACCEPT_AUTOMATIC \
--nat-subnets=psc-nat-subnet

تحقَّق من صحة مرفق خدمة HTTPs.

gcloud compute service-attachments describe ilbserviceattach --region asia-southeast1

سجِّل اسم مرفق الخدمة:

projects/<project>/regions/asia-southeast1/serviceAttachments/ilbserviceattach

11- إنشاء شبكة VPC للمستهلكين

في القسم التالي، يتم ضبط شبكة VPC للمستهلك في المشروع نفسه، ولكن يمكن أيضًا استخدام مشاريع مختلفة. يتم التواصل بين شبكة المستهلك وشبكة المنتج من خلال مرفق الخدمة المحدّد في شبكة المنتج.

شبكة VPC

من Cloud Shell

gcloud compute networks create vpc-demo-consumer --project=$prodproject --subnet-mode=custom

إنشاء شبكة فرعية

من Cloud Shell

gcloud compute networks subnets create consumer-subnet --project=$prodproject  --range=10.0.6.0/24 --network=vpc-demo-consumer --region=asia-southeast1

12- إنشاء "مجموعة نقاط نهاية الشبكة" في PSC

إنشاء "مجموعة نقاط نهاية الشبكة" في PSC

انسخ اسم مرفق خدمات https السابق والصقه في المعلَمة --psc-target-service.

من Cloud Shell

gcloud beta compute network-endpoint-groups create consumerpscneg \
--project=$prodproject \
--region=asia-southeast1 \
--network-endpoint-type=PRIVATE_SERVICE_CONNECT \
--psc-target-service=projects/<project>/regions/asia-southeast1/serviceAttachments/ilbserviceattach \
--network=vpc-demo-consumer \
--subnet=consumer-subnet

بعد إعداد "مجموعة نقاط نهاية الشبكة" في PSC بنجاح، انتقِل من واجهة المستخدم إلى Private Service Connect -> Published Services -> لاحظ أنّ اتصال ilbserviceattach المنشور يشير الآن إلى قاعدة إعادة توجيه واحدة.

320741b7dedc7984.png

13- إنشاء "جهاز موازنة حمل HTTPS خارجي" للمستهلك

أنشِئ "جهاز موازنة حمل HTTPS خارجي" واستخدِم "مجموعة نقاط نهاية الشبكة" في PSC كخدمات خلفية( المستندات).

من Cloud Shell

gcloud compute addresses create httpspsclb \
    --ip-version=IPV4 --global

gcloud compute backend-services create consumer-bs \
    --load-balancing-scheme=EXTERNAL_MANAGED \
    --protocol=HTTPS \
    --global

gcloud compute backend-services add-backend consumer-bs \
  --network-endpoint-group=consumerpscneg \
  --network-endpoint-group-region=asia-southeast1 \
  --global

gcloud compute url-maps create consumer-url \
  --default-service=consumer-backend-service \
  --global

gcloud compute ssl-certificates create wwwglobal \
    --certificate=fullchain.pem \
    --private-key=private.pem \
    --global

gcloud compute target-https-proxies create consumer-url-target-proxy \
  --url-map=consumer-url \
  --ssl-certificates=wwwglobal

gcloud compute forwarding-rules create consumer-url-forwarding-rule \
    --load-balancing-scheme=EXTERNAL_MANAGED \
    --network-tier=PREMIUM \
    --address=httpspsclb \
    --target-https-proxy=consumer-url-target-proxy \
    --ports=443 \
    --global

عدِّل سجلّ نظام أسماء النطاقات لـ www01.yinghli.demo.altostrat.com وأشِر إلى عنوان IP العام لـ "جهاز موازنة حمل HTTPS خارجي".

gcloud dns --project=$prodproject record-sets update www01.yinghli.demo.altostrat.com. --type="A" --zone="yinghli-demo" --rrdatas="34.102.178.214" --ttl="300"

14- التحقّق من الصحة

من الكمبيوتر المحمول، انتقِل إلى https://www01.yinghli.demo.altostrat.com باستخدام أداة curl.

curl -v https://www01.yinghli.demo.altostrat.com
*   Trying 34.102.178.214:443...
* Connected to www01.yinghli.demo.altostrat.com (34.102.178.214) port 443 (#0)
* ALPN: offers h2,http/1.1
* 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 h2
* Server certificate:
*  subject: CN=www01.yinghli.demo.altostrat.com
*  start date: Jun  4 10:36:43 2023 GMT
*  expire date: Sep  2 10:36:42 2023 GMT
*  subjectAltName: host "www01.yinghli.demo.altostrat.com" matched cert's "www01.yinghli.demo.altostrat.com"
*  issuer: C=US; O=Let's Encrypt; CN=R3
*  SSL certificate verify ok.
* using HTTP/2
* h2h3 [:method: GET]
* h2h3 [:path: /]
* h2h3 [:scheme: https]
* h2h3 [:authority: www01.yinghli.demo.altostrat.com]
* h2h3 [user-agent: curl/8.0.0]
* h2h3 [accept: */*]
* Using Stream ID: 1 (easy handle 0x149019a00)
> GET / HTTP/2
> Host: www01.yinghli.demo.altostrat.com
> user-agent: curl/8.0.0
> accept: */*
>
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
* old SSL session ID is stale, removing
< HTTP/2 200
< server: nginx/1.18.0
< date: Mon, 05 Jun 2023 02:48:43 GMT
< content-type: text/html
< content-length: 35
< last-modified: Sun, 04 Jun 2023 09:02:16 GMT
< etag: "647c5318-23"
< accept-ranges: bytes
< via: 1.1 google, 1.1 google
< alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
<
Page on www01 in asia-southeast1-b
* Connection #0 to host www01.yinghli.demo.altostrat.com left intact

15- خطوات التنظيف

خطوات إعادة ضبط شبكة المنتج

ملاحظة: لا تعرض خطوات التنظيف سوى الإعدادات ذات الصلة بـ "جهاز موازنة الحمل" وPSC، ولا تتضمّن شبكة VPC وإمكانية الاتصال المختلط.

من Cloud Shell واحد في المحطة الطرفية، احذف مكوّنات المختبر.

gcloud compute forwarding-rules delete consumer-url-forwarding-rule --global
gcloud compute target-https-proxies delete consumer-url-target-proxy
gcloud compute ssl-certificates delete wwwglobal --global
gcloud compute url-maps delete consumer-url
gcloud compute backend-services delete consumer-bs --global
gcloud compute addresses delete httpspsclb --global

gcloud beta compute network-endpoint-groups delete consumerpscneg --region=asia-southeast1

gcloud compute service-attachments delete ilbserviceattach --region=asia-southeast1
gcloud compute networks subnets delete psc-nat-subnet --region=asia-southeast1

gcloud compute forwarding-rules delete https-ilb-psc --region=asia-southeast1
gcloud compute addresses delete ilbaddress --region=asia-southeast1
gcloud compute target-https-proxies delete on-premise-httpsproxy --region=asia-southeast1
gcloud compute ssl-certificates delete www01 --region=asia-southeast1
gcloud compute url-maps delete on-premise-url --region=asia-southeast1
gcloud compute backend-services delete on-premise-service-backend --region=asia-southeast1
gcloud compute health-checks delete on-prem-service-hc --region=asia-southeast1

gcloud compute network-endpoint-groups delete on-prem-service-neg --zone=asia-southeast1-b
gcloud compute networks subnets delete proxy-subnet-asia-southeast1 --region=asia-southeast1

16- تهانينا!

تهانينا على إكمال الدرس التطبيقي حول الترميز.

المواضيع التي تناولناها

  • "جهاز موازنة حمل HTTPS داخلي" مع "مجموعة نقاط نهاية الشبكة المختلطة" و"عملية التحقّق من الصحة الموزّعة"
  • مرفق خدمة PSC مع "جهاز موازنة حمل HTTPS داخلي"
  • إعداد "مجموعة نقاط نهاية الشبكة" في PSC
  • عرض "مجموعة نقاط نهاية الشبكة" في PSC باستخدام "جهاز موازنة حمل HTTPS خارجي"