واجهة Private Service Connect

لمحة عن هذا الدرس التطبيقي حول الترميز
schedule66 دقيقة
subjectتاريخ التعديل الأخير: 9 يونيو 2023
account_circleتأليف: Deepak Michael

واجهة Private Service Connect هي مورد يتيح لشبكة السحابة الإلكترونية الافتراضية الخاصة (VPC) للمُنتِج بدء اتصالات بوجهات مختلفة في شبكة VPC الاستهلاكية. قد تكون شبكات الإنتاج والمستهلكين في مشاريع ومؤسسات مختلفة.

إذا قبل مرفق شبكة اتصالاً من واجهة Private Service Connect، تخصّص خدمة Google Cloud للواجهة عنوان IP من الشبكة الفرعية للمستهلك والتي حدّدها مرفق الشبكة. شبكتا المستهلك والمنتج متصلان ويمكنهما الاتصال باستخدام عناوين IP داخلية.

يتشابه الاتصال بين مرفق شبكة وواجهة Private Service Connect مع الاتصال بين نقطة نهاية Private Service Connect ومرفق خدمة، ولكن هناك نوعان مختلفان من الاتصال:

  • يتيح مرفق الشبكة لشبكة المنتج بدء اتصالات بشبكة مستهلك (خروج خدمة مُدارة)، بينما تتيح نقطة النهاية لشبكة مستهلك بدء اتصالات بشبكة المنتج (دخول الخدمة المُدارة).
  • اتصال واجهة Private Service Connect عملية انتقالية. وهذا يعني أنه يمكن لشبكة المنتجين الاتصال بشبكات أخرى متصلة بشبكة المستهلك.

في هذا البرنامج التعليمي، ستنشئ بنية واجهة اتصال خدمة خاصة (PSC) شاملة تستخدم قواعد جدار الحماية السحابي للسماح بالاتصال من المنتج إلى حوسبة المستهلك أو رفضه كما هو موضح في الشكل 1.

على شكل 1

d39bf35e55bdf9e6.png

عليك إنشاء مرفق psc-network-network في شبكة VPC للمستهلك، ما يؤدي إلى حالات الاستخدام التالية:

  1. إنشاء قاعدة جدار حماية في السحابة الإلكترونية للسماح بالوصول من دب إلى أسد
  2. إنشاء قاعدة جدار حماية على السحابة الإلكترونية لمنع الوصول من دب إلى نمر
  3. إنشاء قاعدة جدار حماية في السحابة الإلكترونية للسماح بالوصول من الكون

المعلومات التي ستطّلع عليها

  • كيفية إنشاء مرفق شبكة
  • كيف يمكن للمنتِج استخدام مرفق شبكة لإنشاء واجهة PSC
  • كيفية إجراء الاتصال من المنتج إلى المستهلك
  • كيفية السماح بالوصول من الجهاز الافتراضي الخاص بالمنتِج (الدب) إلى الجهاز الافتراضي (VM) الاستهلاكي (الأسد)
  • كيفية حظر الوصول من الجهاز الافتراضي الخاص بالمنتِج (الدب) إلى الجهاز الافتراضي (VM) الخاص بالمستهلك (نمر)
  • كيفية السماح بالوصول من الجهاز الافتراضي (VM) الخاص بالمستهلك (cosmo) إلى الجهاز الافتراضي الخاص بالمُنتِج (الدببة)

المتطلبات

2. قبل البدء

تعديل المشروع لدعم الدليل التعليمي

يستخدم هذا البرنامج التعليمي $variables للمساعدة في تنفيذ تهيئة gcloud في Cloud Shell.

داخل Cloud Shell، يمكنك تنفيذ ما يلي:

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

3- إعداد المستهلك

إنشاء VPC للمستهلك

داخل Cloud Shell، يمكنك تنفيذ ما يلي:

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

إنشاء الشبكات الفرعية للمستهلك

داخل Cloud Shell، يمكنك تنفيذ ما يلي:

gcloud compute networks subnets create lion-subnet-1 --project=$projectid --range=192.168.20.0/28 --network=consumer-vpc --region=us-central1

داخل Cloud Shell، يمكنك تنفيذ ما يلي:

gcloud compute networks subnets create tiger-subnet-1 --project=$projectid --range=192.168.30.0/28 --network=consumer-vpc --region=us-central1

داخل Cloud Shell، يمكنك تنفيذ ما يلي:

gcloud compute networks subnets create cosmo-subnet-1 --project=$projectid --range=192.168.40.0/28 --network=consumer-vpc --region=us-central1

إنشاء الشبكة الفرعية لمرفق الشبكة الخاصة بـ Private Service Connect

داخل Cloud Shell، يمكنك تنفيذ ما يلي:

gcloud compute networks subnets create intf-subnet --project=$projectid --range=192.168.10.0/28 --network=consumer-vpc --region=us-central1

إعدادات جهاز توجيه السحابة الإلكترونية وترجمة عنوان الشبكة (NAT)

يتم استخدام ترجمة عنوان الشبكة في السحابة الإلكترونية في البرنامج التعليمي لتثبيت حزمة البرامج لأن الجهاز الافتراضي (VM) ليس له عنوان IP عام. تُتيح آلية Cloud NAT (ترجمة عنوان الشبكة) للأجهزة الافتراضية (VM) التي لها عناوين IP خاصة بالوصول إلى الإنترنت.

أنشئ داخل Cloud Shell جهاز توجيه السحابة الإلكترونية.

gcloud compute routers create cloud-router-for-nat --network consumer-vpc --region us-central1

داخل Cloud Shell، أنشئ بوابة NAT.

gcloud compute routers nats create cloud-nat-us-central1 --router=cloud-router-for-nat --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region us-central1

4. تفعيل الشراء داخل التطبيق

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

  • ينطبق ذلك على جميع مثيلات الأجهزة الافتراضية التي تريد أن تتوفّر إمكانية الوصول إليها من خلال استخدام الشراء داخل التطبيق.
  • يسمح بالزيارات الواردة من نطاق IP 35.235.240.0/20. يحتوي هذا النطاق على جميع عناوين IP التي يستخدمها بروتوكول IAP لإعادة توجيه بروتوكول التحكم بالنقل.

داخل Cloud Shell، أنشئ قاعدة جدار الحماية للشراء داخل التطبيق.

gcloud compute firewall-rules create ssh-iap-consumer \
    --network consumer-vpc \
    --allow tcp:22 \
    --source-ranges=35.235.240.0/20

5- إنشاء مثيلات الأجهزة الافتراضية للمستهلك

داخل Cloud Shell، أنشئ مثيل vm للمستهلك، lion.

gcloud compute instances create lion \
    --project=$projectid \
    --machine-type=e2-micro \
    --image-family debian-11 \
    --no-address \
    --image-project debian-cloud \
    --zone us-central1-a \
    --subnet=lion-subnet-1 \
    --metadata startup-script="#! /bin/bash
      sudo apt-get update
      sudo apt-get install tcpdump
      sudo apt-get install apache2 -y
      sudo service apache2 restart
      echo 'Welcome to the lion app server !!' | tee /var/www/html/index.html
      EOF"

داخل Cloud Shell، أنشئ مثيل vm للمستهلك، tiger.

gcloud compute instances create tiger \
    --project=$projectid \
    --machine-type=e2-micro \
    --image-family debian-11 \
    --no-address \
    --image-project debian-cloud \
    --zone us-central1-a \
    --subnet=tiger-subnet-1 \
    --metadata startup-script="#! /bin/bash
      sudo apt-get update
      sudo apt-get install tcpdump
      sudo apt-get install apache2 -y
      sudo service apache2 restart
      echo 'Welcome to the tiger app server !!' | tee /var/www/html/index.html
      EOF"

داخل Cloud Shell، أنشئ مثيل vm للمستهلك، cosmo.

gcloud compute instances create cosmo \
    --project=$projectid \
    --machine-type=e2-micro \
    --image-family debian-11 \
    --no-address \
    --image-project debian-cloud \
    --zone us-central1-a \
    --subnet=cosmo-subnet-1 \
    --metadata startup-script="#! /bin/bash
      sudo apt-get update
      sudo apt-get install tcpdump
      sudo apt-get install apache2 -y
      sudo service apache2 restart
      echo 'Welcome to the cosmo app server !!' | tee /var/www/html/index.html
      EOF"

الحصول على عناوين IP للمثيلات وتخزينها:

داخل Cloud Shell، اكتب وصفًا لمثيلات الجهاز الافتراضي (VM) للأسد والنمر.

gcloud compute instances describe lion --zone=us-central1-a | grep  networkIP:

gcloud compute instances describe tiger --zone=us-central1-a | grep  networkIP:

gcloud compute instances describe cosmo --zone=us-central1-a | grep  networkIP:

6- مرفق شبكة Private Service Connect

مرفقات الشبكة هي موارد إقليمية تمثّل جانب المستهلك لواجهة Private Service Connect. يمكنك ربط شبكة فرعية واحدة بمرفق شبكة، ويعيِّن المنتج عناوين IP لواجهة Private Service Connect من تلك الشبكة الفرعية. يجب أن تكون الشبكة الفرعية في نفس المنطقة التي يوجد بها مرفق الشبكة. يجب أن يكون مرفق الشبكة في نفس منطقة خدمة المنتج.

إنشاء مرفق الشبكة

داخل Cloud Shell، أنشئ مرفق الشبكة.

gcloud compute network-attachments create psc-network-attachment \
    --region=us-central1 \
    --connection-preference=ACCEPT_MANUAL \
    --producer-accept-list=$projectid \
    --subnets=intf-subnet

إدراج مرفقات الشبكة

داخل Cloud Shell، أدرِج مرفق الشبكة.

gcloud compute network-attachments list

وصف مرفقات الشبكة

وصف مرفق الشبكة داخل Cloud Shell.

gcloud compute network-attachments describe psc-network-attachment --region=us-central1

دوِّن معرّف الموارد المنتظم (URI) psc-network-attachment الذي سيُستخدَم من قِبل المنتج عند إنشاء واجهة Private Service Connect. المثال التالي:

user@cloudshell$ gcloud compute network-attachments describe psc-network-attachment --region=us-central1 
connectionPreference: ACCEPT_MANUAL
creationTimestamp: '2023-06-06T20:57:12.623-07:00'
fingerprint: 4Yq6xAfaRO0=
id: '3235195049527328503'
kind: compute#networkAttachment
name: psc-network-attachment
network: https://www.googleapis.com/compute/v1/projects/$projectid/global/networks/consumer-vpc
producerAcceptLists:
- $projectid
region: https://www.googleapis.com/compute/v1/projects/$projectid/regions/us-central1
selfLink: https://www.googleapis.com/compute/v1/projects/$projectid/regions/us-central1/networkAttachments/psc-network-attachment
subnetworks:
- https://www.googleapis.com/compute/v1/projects/$projectid/regions/us-central1/subnetworks/intf-subnet

7. إعداد أداة الإنتاج

إنشاء شبكة VPC الخاصة بالمنتج

داخل Cloud Shell، يمكنك تنفيذ ما يلي:

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

إنشاء الشبكات الفرعية للمنتج

داخل Cloud Shell، أنشئ الشبكة الفرعية المستخدَمة لـ vNIC0 لواجهة psc.

gcloud compute networks subnets create prod-subnet --project=$projectid --range=10.20.1.0/28 --network=producer-vpc --region=us-central1

8. تفعيل الشراء داخل التطبيق

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

  • ينطبق ذلك على جميع مثيلات الأجهزة الافتراضية التي تريد أن تتوفّر إمكانية الوصول إليها من خلال استخدام الشراء داخل التطبيق.
  • يسمح بالزيارات الواردة من نطاق IP 35.235.240.0/20. يحتوي هذا النطاق على جميع عناوين IP التي يستخدمها بروتوكول IAP لإعادة توجيه بروتوكول التحكم بالنقل.

داخل Cloud Shell، أنشئ قاعدة جدار الحماية للشراء داخل التطبيق.

gcloud compute firewall-rules create ssh-iap-producer \
    --network producer-vpc \
    --allow tcp:22 \
    --source-ranges=35.235.240.0/20

9. إنشاء واجهة Private Service Connect

واجهة Private Service Connect هي مورد يتيح لشبكة السحابة الإلكترونية الافتراضية الخاصة (VPC) للمُنتِج بدء اتصالات بوجهات مختلفة في شبكة VPC الاستهلاكية. قد تكون شبكات الإنتاج والمستهلكين في مشاريع ومؤسسات مختلفة.

إذا قبل مرفق شبكة اتصالاً من واجهة Private Service Connect، تخصّص خدمة Google Cloud للواجهة عنوان IP من الشبكة الفرعية للمستهلك والتي حدّدها مرفق الشبكة. شبكتا المستهلك والمنتج متصلان ويمكنهما الاتصال باستخدام عناوين IP داخلية.

داخل Cloud Shell، أنشِئ واجهة Private Service Connect (دب) وأدرِج psc-network-attachment URI الذي تم تحديده سابقًا من خلال مرفق الشبكة الخاص بالناتج.

gcloud compute instances create bear --zone us-central1-a --machine-type=f1-micro --can-ip-forward --network-interface subnet=prod-subnet,network=producer-vpc,no-address --network-interface network-attachment=https://www.googleapis.com/compute/v1/projects/$projectid/regions/us-central1/networkAttachments/psc-network-attachment

التحقّق من الصحة بعدة عناصر

تحقَّق من ضبط واجهة PSC باستخدام عنوان IP المناسب. ستستخدم vNIC0 الشبكة الفرعية للمنتج (10.20.1.0/28) وستستخدم vNIC1 شبكة intf-subnet للمستهلك (192.168.10.0/28).

gcloud compute instances describe bear --zone=us-central1-a | grep networkIP:

مثال:

user$ gcloud compute instances describe bear --zone=us-central1-a | grep networkIP:
  networkIP: 10.20.1.2
  networkIP: 192.168.10.2

10. تعديل قواعد جدار الحماية للمستهلكين

إنشاء قاعدة جدار حماية على السحابة الإلكترونية للسماح بالوصول من دب إلى أسد

في Cloud Shell، يمكنك إنشاء قاعدة ذات أولوية أعلى تسمح بالخروج من نطاق عنوان IP للشبكة الفرعية للمرفق (intf-subnet) إلى الوجهات في نطاق العنوان lion-subnet-1.

gcloud compute firewall-rules create allow-limited-egress-to-lion \
    --network=consumer-vpc \
    --action=ALLOW \
    --rules=ALL \
    --direction=EGRESS \
    --priority=1000 \
    --source-ranges="192.168.10.0/28" \
    --destination-ranges="192.168.20.0/28" \
    --enable-logging

في Cloud Shell، يمكنك إنشاء قاعدة تتيح الدخول التي تلغي قاعدة دخول الرفض الضمني في ما يتعلق بالزيارات من الشبكة الفرعية psc-network-attachment.

gcloud compute firewall-rules create allow-ingress \
--network=consumer-vpc \
--action=ALLOW \
--rules=ALL \
--direction=INGRESS \
--priority=1000 \
--source-ranges="192.168.10.0/28" \
--enable-logging

إنشاء قاعدة جدار حماية على السحابة الإلكترونية لمنع الوصول من الدب إلى جميع النطاقات (بما في ذلك النمر)

في Cloud Shell، يمكنك إنشاء قاعدة ذات أولوية منخفضة تمنع جميع حركة البيانات الصادرة من نطاق عنوان IP للشبكة الفرعية لمرفق الشبكة، وهي intf-subnet.

gcloud compute firewall-rules create deny-all-egress \
    --network=consumer-vpc \
    --action=DENY \
    --rules=ALL \
    --direction=EGRESS \
    --priority=65534 \
    --source-ranges="192.168.10.0/28" \
    --destination-ranges="0.0.0.0/0" \
    --enable-logging

إنشاء قاعدة جدار حماية على السحابة الإلكترونية للسماح بالوصول من الكون إلى البيانات

في Cloud Shell، يمكنك إنشاء قاعدة تتيح الدخول التي تلغي قاعدة دخول الرفض الضمني في ما يتعلق بالزيارات من الشبكة الفرعية psc-network-attachment.

gcloud compute firewall-rules create vm-subnet-allow-ingress \
    --network=consumer-vpc \
    --action=ALLOW \
    --rules=ALL \
    --direction=INGRESS \
    --priority=1000 \
    --source-ranges="192.168.40.0/28" \
    --destination-ranges="192.168.10.0/28" \
    --enable-logging

11. إنشاء مسارات Linux لواجهة PSC

من مثيل واجهة PSC، يمكنك إعداد مسارات نظام التشغيل linux للسماح بتواصل المنتج إلى الشبكات الفرعية للمستهلك.

البحث عن اسم نظام تشغيل الضيف لواجهة Private Service Connect

لضبط التوجيه، يجب معرفة اسم نظام تشغيل الضيف لواجهة Private Service Connect، والذي يختلف عن اسم الواجهة في Google Cloud.

داخل Cloud Shell، يمكنك فتح علامة تبويب جديدة وتنفيذ ما يلي:

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

سجِّل الدخول إلى psc-interface vm، الدب، باستخدام IAP في Cloud Shell.

gcloud compute ssh bear --project=$projectid --zone=us-central1-a --tunnel-through-iap

في Cloud Shell، يمكنك الحصول على عنوان IP لمثيل psc-interface

ip a

مثال:

user@bear:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1460 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 42:01:0a:14:01:02 brd ff:ff:ff:ff:ff:ff
    altname enp0s4
    inet 10.20.1.2/32 brd 10.20.1.2 scope global dynamic ens4
       valid_lft 85991sec preferred_lft 85991sec
    inet6 fe80::4001:aff:fe14:102/64 scope link 
       valid_lft forever preferred_lft forever
3: ens5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1460 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 42:01:c0:a8:0a:02 brd ff:ff:ff:ff:ff:ff
    altname enp0s5
    inet 192.168.10.2/32 brd 192.168.10.2 scope global dynamic ens5
       valid_lft 85991sec preferred_lft 85991sec
    inet6 fe80::4001:c0ff:fea8:a02/64 scope link 
       valid_lft forever preferred_lft forever

العثور على عنوان IP للمدخل في واجهة PSC

في قائمة واجهات الشبكات، ابحث عن اسم الواجهة المرتبط بعنوان IP لواجهة Private Service Connect وخزِّنه، مثل ens5 (vNIC1).

لضبط التوجيه، عليك معرفة عنوان IP للبوابة التلقائية لواجهة Private Service Connect.

في Cloud Shell، سنستخدم القيمة 1 لأنّ واجهة PSC مرتبطة ببروتوكول vNIC1.

curl http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/1/gateway -H "Metadata-Flavor: Google" && echo

ينتج في المثال المعامل التلقائي gw 192.168.10.1

user@bear:~$ curl http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/1/gateway -H "Metadata-Flavor: Google" && echo
192.168.10.1

إضافة مسارات للشبكات الفرعية للمستهلكين

يجب إضافة مسار إلى البوابة التلقائية لواجهة Private Service Connect لكل شبكة فرعية للمستهلك تتصل بواجهة Private Service Connect. ويضمن هذا أن حركة البيانات المرتبطة بشبكة المستهلك تخرج من واجهة Private Service Connect.

في مثال الدب، أضف المسارات إلى الشبكات الفرعية للمستهلك.

sudo ip route add 192.168.20.0/28 via 192.168.10.1 dev ens5
sudo ip route add 192.168.30.0/28 via 192.168.10.1 dev ens5
sudo ip route add 192.168.40.0/28 via 192.168.10.1 dev ens5

جدول التحقّق من المسار

في Cloud Shell، يمكنك التحقّق من صحة المسارات المُضافة حديثًا.

ip route show

على سبيل المثال،

user@bear:~$ ip route show
default via 10.20.1.1 dev ens4 
10.20.1.0/28 via 10.20.1.1 dev ens4 
10.20.1.1 dev ens4 scope link 
192.168.10.0/28 via 192.168.10.1 dev ens5 
192.168.10.1 dev ens5 scope link 
192.168.20.0/28 via 192.168.10.1 dev ens5 
192.168.30.0/28 via 192.168.10.1 dev ens5 
192.168.40.0/28 via 192.168.10.1 dev ens5 

12. يُرجى التحقّق من صحة اتصال دب إلى الأسد بنجاح.

لنؤكّد أنّ مثيل الجهاز الافتراضي (VM) للمنتِج، الدب، يمكنه التواصل مع مثيل المستهلِك، الأسد من خلال تنفيذ حلقة منعطف.

من المثيل الدب، قم بإجراء عملية ربط مقابل عنوان IP للأسد المحدد سابقًا في البرنامج التعليمي من المثيل الدب.

curl -v <lions IP Address>

مثال:

user@bear:~$ curl -v 192.168.20.2
*   Trying 192.168.20.2:80...
* Connected to 192.168.20.2 (192.168.20.2) port 80 (#0)
> GET / HTTP/1.1
> Host: 192.168.20.2
> User-Agent: curl/7.74.0
> Accept: */*
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Date: Tue, 06 Jun 2023 03:53:08 GMT
< Server: Apache/2.4.56 (Debian)
< Last-Modified: Mon, 05 Jun 2023 19:41:26 GMT
< ETag: "1e-5fd6716a1e11b"
< Accept-Ranges: bytes
< Content-Length: 30
< Content-Type: text/html
< 
Welcome to lion app server !!
* Connection #0 to host 192.168.20.2 left intact

13. تم حظر الاتصال بالتحقق من صحة دب إلى نمر

لنفترض أن قاعدة جدار الحماية للخروج تمنع الوصول من الدب إلى النمور من خلال عرض سجلات جدار الحماية.

من جلسة جديدة على Cloud Console وانتقِل إلى "التسجيل" ← "مستكشف السجلات" ← اختَر "عرض طلب البحث".

2ae597e6d970cddf.png

الصِق سلسلة طلب البحث أدناه في حقل البحث، ثم اختَر ساحة المشاركات.

jsonPayload.rule_details.reference=&quot;network:consumer-vpc/firewall:deny-all-egress&quot;

30d7bfae315f2ee3.png

من مثيل الدب، قم بإجراء عملية ربط على عنوان IP الخاص بالنمر المحدد سابقًا في البرنامج التعليمي من المثيل الدب. ستنتهي المهلة المحددة للثنية في نهاية المطاف.

curl -v <tiger's IP Address>

مثال:

user@bear:~$ curl -v 192.168.30.2 
*   Trying 192.168.30.2:80...
* connect to 192.168.30.2 port 80 failed: Connection timed out
* Failed to connect to 192.168.30.2 port 80: Connection timed out
* Closing connection 0
curl: (28) Failed to connect to 192.168.30.2 port 80: Connection timed out

تحقَّق من أنّ "مستكشف السجلات" قد حصل على سجلات جدار الحماية المرفوضة. اختَر إدخالاً في السجلّ ووسِّع الحقول المتداخلة لعرض البيانات الوصفية.

5c42a6587300be55.png

14. التحقّق من نجاح اتصال cosmo to bear

افتح علامة تبويب جديدة في Cloud Shell وعدِّل إعدادات مشروعك.

داخل Cloud Shell، يمكنك تنفيذ ما يلي:

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

سجِّل الدخول إلى مثيل الكون باستخدام الشراء داخل التطبيق في Cloud Shell.

gcloud compute ssh cosmo --project=$projectid --zone=us-central1-a --tunnel-through-iap

في Cloud Shell، عليك إجراء اختبار فحص الاتصال لعنوان IP vNIV1 الخاص بالدب الذي تم تحديده سابقًا في الدليل التوجيهي.

ping <bears vNIC1 IP Address>

مثال:

user@cosmo:~$ ping 192.168.10.2 -c 5
PING 192.168.10.2 (192.168.10.2) 56(84) bytes of data.
64 bytes from 192.168.10.2: icmp_seq=1 ttl=64 time=0.277 ms
64 bytes from 192.168.10.2: icmp_seq=2 ttl=64 time=0.288 ms
64 bytes from 192.168.10.2: icmp_seq=3 ttl=64 time=0.265 ms
64 bytes from 192.168.10.2: icmp_seq=4 ttl=64 time=0.264 ms
64 bytes from 192.168.10.2: icmp_seq=5 ttl=64 time=0.366 ms

15. تَنظيم

من Cloud Shell، احذف مكوّنات الدليل التوجيهي.

gcloud compute instances delete bear --zone=us-central1-a --quiet

gcloud compute instances delete lion --zone=us-central1-a --quiet

gcloud compute instances delete tiger --zone=us-central1-a --quiet

gcloud compute instances delete cosmo --zone=us-central1-a --quiet

gcloud compute network-attachments delete psc-network-attachment --region=us-central1 --quiet

gcloud compute firewall-rules delete allow-ingress allow-limited-egress-to-lion deny-all-egress ssh-iap-consumer ssh-iap-producer vm-subnet-allow-ingress --quiet

gcloud compute networks subnets delete cosmo-subnet-1 intf-subnet lion-subnet-1 prod-subnet tiger-subnet-1 --region=us-central1 --quiet

gcloud compute routers delete cloud-router-for-nat --region=us-central1 --quiet 

gcloud compute networks delete consumer-vpc --quiet

gcloud compute networks delete producer-vpc --quiet

16. تهانينا

تهانينا، لقد نجحت في إعداد والتحقّق من صحة واجهة اتصال الخدمة الخاصة وإمكانية الاتصال بين المستهلك والمنتج من خلال تنفيذ قواعد جدار الحماية.

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

يعتبر تطبيق Cosmopup الفيديوهات التعليمية رائعة.

e6d3675ca7c6911f.jpeg

الخطوات التالية

اطّلع على بعض هذه البرامج التعليمية...

تعزيز القراءة الفيديوهات

المستندات المرجعية