सेवाएं पब्लिश करने और उनका इस्तेमाल करने के लिए Private Service Connect का इस्तेमाल करना

1. परिचय

Private Service Connect की मदद से, सेवा देने वाला प्रोड्यूसर, सेवा देने वाले किसी उपभोक्ता को निजी तौर पर सेवाएं दे सकता है. Private Service Connect के ये फ़ायदे हैं:

  • सेवा प्रोड्यूसर VPC नेटवर्क, सेवा देने वाले एक से ज़्यादा उपभोक्ताओं के साथ काम कर सकता है.
  • हर उपभोक्ता उस अंदरूनी आईपी पते से कनेक्ट होता है जिसे वह तय करता है. Private Service Connect, नेटवर्क अड्रेस ट्रांसलेशन (NAT) करता है, ताकि अनुरोध को सर्विस प्रोड्यूसर तक भेजा जा सके.

45b90d50690dd111.png

दूसरी इमेज. Private Service Connect, एंडपॉइंट और सेवा अटैचमेंट का इस्तेमाल करता है, ताकि सेवा उपभोक्ता, उपभोक्ता के VPC नेटवर्क से सेवा प्रोड्यूसर के VPC नेटवर्क की सेवाओं पर ट्रैफ़िक भेज सकें. इसे बड़ा करने के लिए क्लिक करें.

आपको इनके बारे में जानकारी मिलेगी

  • निजी सेवा कनेक्ट के फ़ायदे
  • सेवा उपभोक्ताओं के लिए मुख्य सिद्धांत
  • सर्विस प्रोड्यूसर के लिए खास कॉन्सेप्ट
  • प्रोड्यूसर एनवायरमेंट बनाना
  • सेवा अटैचमेंट की मदद से सेवा (प्रोड्यूसर एनवायरमेंट) दिखाएं
  • उपभोक्ता के लिए एनवायरमेंट बनाना
  • उपभोक्ता नेटवर्क में फ़ॉरवर्ड करने का नियम बनाना
  • टीसीपी के उपभोक्ता ऐक्सेस की पुष्टि करें
  • सक्षम करें और प्रॉक्सी प्रोटोकॉल की पुष्टि करें
  • नीति का ऐक्सेस कंट्रोल चालू करें

आपको इन चीज़ों की ज़रूरत होगी

  • इंटरनल लोड बैलेंसर के बारे में जानकारी
  • दो प्रोजेक्ट में VPC बनाने की सुविधा

2. निजी सेवा कनेक्ट के फ़ायदे

PSC में, VPC पीयरिंग की तुलना में आपको कई फ़ायदे मिलते हैं:

प्राइवेट आईपी स्पेस का बेहतर कंट्रोल

  • सेवा उपभोक्ता के तौर पर, आपके पास उस निजी आईपी पते को कंट्रोल करने का विकल्प होता है जिसका इस्तेमाल, मैनेज की जा रही उस सेवा से कनेक्ट करने के लिए किया जाता है जिसे आपको ऐक्सेस करना है.
  • सेवा उपभोक्ता के तौर पर, आपको VPC में इस्तेमाल की जाने वाली बैकएंड सेवाओं के लिए, निजी आईपी पते की रेंज रिज़र्व करने के बारे में परेशान होने की ज़रूरत नहीं है. प्रोड्यूसर सेवाओं से कनेक्ट करने के लिए, आपको सिर्फ़ अपने सबनेट से कोई आईपी पता चुनना होगा.
  • सेवा प्रोड्यूसर के तौर पर, आपके पास मल्टी-टेनेंट मॉडल को डिप्लॉय करने का विकल्प होता है. इस मॉडल में, आपके VPC में ऐसी सेवाएं शामिल होती हैं जो कई उपभोक्ताओं के लिए उपलब्ध हैं. ओवरलैप होने वाली सबनेट रेंज इस्तेमाल करने वाले उपभोक्ताओं को अब कोई समस्या नहीं है.
  • सेवा देने वाली कंपनी के तौर पर, आपके पास ज़रूरत के मुताबिक, वीएम इंस्टेंस के हिसाब से अपनी सेवा को बढ़ाने का विकल्प होता है. इसके लिए, आपको ज़्यादा आईपी पतों के लिए अपने उपभोक्ता से संपर्क करने की ज़रूरत नहीं होती.

बेहतर सुरक्षा और आइसोलेशन

  • सेवा उपभोक्ता के तौर पर, सिर्फ़ आपके पास सेवा प्रोड्यूसर से संपर्क करने की सुविधा होती है. एकतरफ़ा कनेक्टिविटी, फ़ायरवॉल कॉन्फ़िगरेशन को बहुत ज़्यादा आसान बना देती है, लेकिन इससे सर्विस प्रोड्यूसर से आने वाले रूज ट्रैफ़िक का जोखिम भी कम हो जाता है.
  • सेवा प्रोड्यूसर के तौर पर, आपको उपभोक्ता के VPC में सबनेट रेंज के आधार पर अपने फ़ायरवॉल नियमों को बदलने की ज़रूरत नहीं है. आप अपनी सेवा के लिए कॉन्फ़िगर की गई NAT IP पता श्रेणी के लिए आसानी से फ़ायरवॉल नियम बना सकते हैं.

बेहतर बढ़ाए जा सकने की योग्यता

  • PSC के डिज़ाइन में काफ़ी बड़े पैमाने पर बदलाव किए जा सकते हैं. इसके लिए, हज़ारों उपभोक्ताओं की मदद की जाती है. साथ ही, सर्विस प्रोड्यूसर ऐसा भी करते हैं जिससे बड़े पैमाने पर मल्टी-टेनेंट या सिंगल-टेनेंट (एक ही किराये पर लेने वाले) की सेवाएं मिलती हैं.
  • निजी सेवा कनेक्ट का इस्तेमाल करने वाले सेवा उपभोक्ता के तौर पर, आपके पास VPC के मुताबिक, संसाधन बनाने का विकल्प होता है. इस स्केल पर, प्रोड्यूसर VPC में बनाए गए ऐसे संसाधनों की संख्या का कोई असर नहीं पड़ता है.

3. सेवा उपभोक्ताओं के लिए मुख्य सिद्धांत

VPC नेटवर्क से बाहर की सेवाओं का इस्तेमाल करने के लिए, Private Service Connect के एंडपॉइंट का इस्तेमाल किया जा सकता है. सेवा उपभोक्ता, Private Service Connect के ऐसे एंडपॉइंट बनाते हैं जो टारगेट की गई सेवा से कनेक्ट होते हैं.

एंडपॉइंट

टारगेट की गई सेवा से कनेक्ट करने के लिए, Private Service Connect के एंडपॉइंट का इस्तेमाल किया जाता है. एंडपॉइंट के पास आपके VPC नेटवर्क में इंटरनल आईपी पता होता है. यह आईपी पता, फ़ॉरवर्ड करने के नियम से जुड़े संसाधन पर आधारित होता है.

ट्रैफ़िक को एंडपॉइंट पर भेजा जाता है, जो उसे आपके VPC नेटवर्क से बाहर के टारगेट पर फ़ॉरवर्ड करता है.

टारगेट

Private Service Connect के एंडपॉइंट में एक टारगेट सेट किया गया है. यह वह सेवा है जिससे आपको कनेक्ट करना है:

  • एपीआई बंडल:
  • सभी एपीआई: ज़्यादातर Google API
  • VPC-SC: ऐसे एपीआई जो VPC सर्विस कंट्रोल के साथ काम करते हैं
  • किसी अन्य VPC नेटवर्क में, पब्लिश की गई सेवा. इस सेवा को आपका संगठन या कोई तीसरा पक्ष मैनेज कर सकता है.

पब्लिश की गई सेवा

अपने एंडपॉइंट को सेवा प्रोड्यूसर की सेवा से कनेक्ट करने के लिए, आपको सेवा के लिए सेवा अटैचमेंट की ज़रूरत होगी. सेवा अटैचमेंट यूआरआई का फ़ॉर्मैट यह है: प्रोजेक्ट/SERVICE_PROJECT/ आखिरी जगह

4. सर्विस प्रोड्यूसर के लिए खास कॉन्सेप्ट

उपभोक्ताओं को कोई सेवा उपलब्ध कराने के लिए, आप उपभोक्ता आईपी पतों के नेटवर्क अड्रेस ट्रांसलेशन (NAT) का इस्तेमाल करने के लिए एक या उससे ज़्यादा ऐसे सबनेट बनाते हैं जो खास तौर पर बनाए जाते हैं. फिर आप एक सेवा अटैचमेंट बनाते हैं, जो उन सबनेट के बारे में बताता है.

Private Service Connect सबनेट

किसी सेवा को सार्वजनिक करने के लिए, सेवा प्रोड्यूसर पहले Private Service Connect के हिसाब से एक या उससे ज़्यादा सबनेट बनाता है.

जब किसी उपभोक्ता VPC नेटवर्क से कोई अनुरोध भेजा जाता है, तब उपभोक्ता के सोर्स आईपी पते को सोर्स NAT (SNAT) का इस्तेमाल करके, Private Service Connect के किसी सबनेट से चुने गए आईपी पते में बदला जाता है.

अगर आपको उपभोक्ता कनेक्शन के आईपी पते की जानकारी बनाए रखनी है, तो उपभोक्ता कनेक्शन की जानकारी देखना पर जाएं.

इन सबनेट का इस्तेमाल, वीएम इंस्टेंस या फ़ॉरवर्ड करने के नियमों जैसे संसाधनों के लिए नहीं किया जा सकता. सबनेट का इस्तेमाल सिर्फ़ ग्राहक के इनकमिंग कनेक्शन के SNAT को आईपी पते देने के लिए किया जाता है.

Private Service Connect सबनेट में, हर 63 उपभोक्ता वीएम के लिए कम से कम एक आईपी पता होना चाहिए. इससे नेटवर्क पते का अनुवाद करने के लिए, हर उपभोक्ता वीएम को 1,024 सोर्स टपल असाइन किए जाएंगे.

Private Service Connect सबनेट का कम से कम साइज़ /24 है.

सेवा अटैचमेंट

सर्विस प्रोड्यूसर, सेवा अटैचमेंट के ज़रिए अपनी सेवा दिखाते हैं.

  • किसी सेवा को सार्वजनिक करने के लिए, सेवा प्रोड्यूसर एक सेवा अटैचमेंट बनाता है. यह अटैचमेंट सेवा के लोड बैलेंसर को फ़ॉरवर्ड करने के नियम से जुड़ा होता है.
  • किसी सेवा को ऐक्सेस करने के लिए, सेवा उपभोक्ता एक ऐसा एंडपॉइंट बनाता है जो सेवा अटैचमेंट के बारे में बताता है.

कनेक्शन की सेटिंग

जब आप कोई सेवा बनाते हैं, तो आप चुनते हैं कि उसे कैसे उपलब्ध कराया जाए. ऐसा करने के दो विकल्प हैं:

  • सभी प्रोजेक्ट के लिए कनेक्शन अपने-आप स्वीकार किए जाते हैं. सेवा का इस्तेमाल करने वाला कोई भी उपभोक्ता, एंडपॉइंट को कॉन्फ़िगर कर सकता है और सेवा से अपने-आप कनेक्ट कर सकता है.
  • चुने गए प्रोजेक्ट के लिए कनेक्शन स्वीकार करें - सेवा उपभोक्ता, सेवा से कनेक्ट करने के लिए एंडपॉइंट को कॉन्फ़िगर करते हैं और सर्विस प्रोड्यूसर कनेक्शन के अनुरोधों को स्वीकार या अस्वीकार करते हैं.

5. टेस्ट एनवायरमेंट

उपभोक्ता नेटवर्क में एक टीसीपी स्टैटिक आईपी पता होता है, जिसका इस्तेमाल सेवा बनाने वाले को अनुरोध भेजने के लिए किया जाता है. इसके अलावा, इसमें प्रोड्यूसर के सेवा अटैचमेंट (पब्लिश की गई सेवा) से मैप करने वाले टारगेट-सेवा-अटैचमेंट के साथ-साथ उसका भी इस्तेमाल किया जाता है.

चलिए, अब प्रोड्यूसर के नेटवर्क के बारे में बात करते हैं. ध्यान दें कि कैसे निर्माता नेटवर्क के पास, उपभोक्ता नेटवर्क के लिए मैपिंग नहीं है. इसके बजाय, निर्माता नेटवर्क में सेवा अटैचमेंट (पब्लिश की गई सेवा) शामिल है, जिसका इस्तेमाल उपभोक्ता सेवाओं के लिए करता है. हमारी लैब में प्रोड्यूसर की सर्विस अटैचमेंट, लेयर 4 इंटरनल लोड बैलेंसर (प्रोड्यूसर-फ़ॉरवर्डिंग-नियम) है. इसे टीसीपी ऐप्लिकेशन के साथ काम करने वाली बैकएंड सेवा पर मैप किया गया है.

एनएटी सबनेट और इससे जुड़े फ़ायरवॉल नियम, प्रोड्यूसर ऐप्लिकेशन से संपर्क करने की अनुमति देते हैं.

28b09284a99eb60b.png

अपने हिसाब से एनवायरमेंट सेटअप करना

  1. Cloud Console में साइन इन करें और नया प्रोजेक्ट बनाएं या किसी मौजूदा प्रोजेक्ट का फिर से इस्तेमाल करें. अगर आपके पास पहले से Gmail या Google Workspace खाता नहीं है, तो आपको नया खाता बनाना होगा.

96a9c957bc475304.png

b9a10ebdf5b5a448.png

a1e3c01a38fa61c2.png

प्रोजेक्ट आईडी याद रखें. यह Google Cloud के सभी प्रोजेक्ट के लिए एक खास नाम होता है (ऊपर दिया गया नाम पहले ही ले लिया गया है और यह आपके लिए काम नहीं करेगा!). बाद में, इस कोडलैब को इस कोडलैब में PROJECT_ID के तौर पर दिखाया जाएगा.

  1. इसके बाद, आपको Google Cloud के संसाधनों का इस्तेमाल करने के लिए, Cloud Console में बिलिंग की सुविधा चालू करनी होगी.

इस कोडलैब का इस्तेमाल करने पर, आपको ज़्यादा पैसे नहीं चुकाने होंगे. "साफ़ करना" सेक्शन में दिए गए निर्देशों का पालन करना न भूलें सेक्शन में, संसाधनों को बंद करने का तरीका बताया गया है. इससे इस ट्यूटोरियल के अलावा बिलिंग की सुविधा नहीं मिलेगी. Google Cloud के नए उपयोगकर्ता, 300 डॉलर के मुफ़्त ट्रायल वाले प्रोग्राम में हिस्सा ले सकते हैं.

Cloud Shell शुरू करना

Google Cloud को आपके लैपटॉप से, कहीं से भी ऑपरेट किया जा सकता है. हालांकि, इस कोडलैब में Google Cloud Shell का इस्तेमाल किया जा रहा है. यह क्लाउड में चलने वाला कमांड लाइन एनवायरमेंट है.

GCP कंसोल में, सबसे ऊपर दाईं ओर मौजूद टूलबार पर क्लाउड शेल आइकॉन पर क्लिक करें:

bce75f34b2c53987.png

प्रावधान करने और एनवायरमेंट से कनेक्ट होने में कुछ ही समय लगेगा. उसके पूरा हो जाने पर, आपको कुछ ऐसा दिखाई देगा:

f6ef2b5f13479f3a.png

इस वर्चुअल मशीन में ऐसे सभी डेवलपमेंट टूल मौजूद हैं जिनकी आपको ज़रूरत पड़ेगी. यह पांच जीबी की स्थायी होम डायरेक्ट्री उपलब्ध कराता है और Google Cloud पर चलता है. यह नेटवर्क की परफ़ॉर्मेंस और पुष्टि करने की प्रक्रिया को बेहतर बनाता है. इस लैब में आपका सारा काम बस एक ब्राउज़र से किया जा सकता है.

6. शुरू करने से पहले

कोडलैब के लिए दो प्रोजेक्ट की ज़रूरत होती है. हालांकि, PSC के लिए ऐसा करना ज़रूरी नहीं है. एक या एक से ज़्यादा प्रोजेक्ट को सपोर्ट करने के लिए रेफ़रंस नोट करें.

सिंगल प्रोजेक्ट - प्रोड्यूसर और कंज़्यूमर नेटवर्क की मदद के लिए प्रोजेक्ट अपडेट करें

Cloud Shell में, पक्का करें कि आपका प्रोजेक्ट आईडी सेट अप किया गया हो

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

एक से ज़्यादा प्रोजेक्ट - प्रोड्यूसर के नेटवर्क के साथ काम करने के लिए प्रोजेक्ट अपडेट करें

Cloud Shell में, पक्का करें कि आपका प्रोजेक्ट आईडी सेट अप किया गया हो

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

7. प्रोड्यूसर के लिए 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-us-west2 --project=$prodproject --range=10.0.2.0/24 --network=vpc-demo-producer --region=us-west2

Cloud NAT इंस्टेंस बनाएं

Cloud NAT, PSC के लिए इस्तेमाल होने वाला NAT नहीं है. Cloud NAT का इस्तेमाल खास तौर पर इंटरनेट ऐक्सेस के लिए, ऐप्लिकेशन पैकेज डाउनलोड करने के लिए किया जाता है.

क्लाउड राऊटर बनाना

Cloud Shell से

gcloud compute routers create crnatprod --network vpc-demo-producer --region us-west2

Cloud NAT बनाना

Cloud Shell से

gcloud compute routers nats create cloudnatprod --router=crnatprod --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --enable-logging --region us-west2

8. कंप्यूट इंस्टेंस बनाएं

Cloud Shell से www-01 इंस्टेंस बनाएं

gcloud compute instances create www-01 \
    --zone=us-west2-a \
    --image-family=debian-9 \
    --image-project=debian-cloud \
    --subnet=vpc-demo-us-west2 --no-address \
    --metadata=startup-script='#! /bin/bash
apt-get update
apt-get install tcpdump -y
apt-get install apache2 -y
a2ensite default-ssl
apt-get install iperf3 -y
a2enmod ssl
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.html
systemctl restart apache2
iperf3 -s -p 5050'

Cloud Shell से www-02 इंस्टेंस बनाएं

gcloud compute instances create www-02 \
    --zone=us-west2-a \
    --image-family=debian-9 \
    --image-project=debian-cloud \
    --subnet=vpc-demo-us-west2 --no-address \
    --metadata=startup-script='#! /bin/bash
apt-get update
apt-get install tcpdump -y
apt-get install apache2 -y
a2ensite default-ssl
apt-get install iperf3 -y
a2enmod ssl
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.html
systemctl restart apache2
iperf3 -s -p 5050'

9. मैनेज नहीं किया जा रहा इंस्टेंस ग्रुप बनाएं

मैनेज नहीं किया जा रहा इंस्टेंस ग्रुप बनाएं. इसमें www-01 और www-02

Cloud Shell से

gcloud compute instance-groups unmanaged create vpc-demo-ig-www --zone=us-west2-a

gcloud compute instance-groups unmanaged add-instances vpc-demo-ig-www --zone=us-west2-a --instances=www-01,www-02

gcloud compute health-checks create http hc-http-80 --port=80

10. टीसीपी बैकएंड सेवाएं, फ़ॉरवर्ड करने से जुड़े नियम, और फ़ायरवॉल

Cloud Shell से बैकएंड सेवा बनाएं

gcloud compute backend-services create vpc-demo-www-be-tcp --load-balancing-scheme=internal --protocol=tcp --region=us-west2 --health-checks=hc-http-80

gcloud compute backend-services add-backend vpc-demo-www-be-tcp --region=us-west2 --instance-group=vpc-demo-ig-www --instance-group-zone=us-west2-a

Cloud Shell से फ़ॉरवर्ड करने का नियम बनाएं

gcloud compute forwarding-rules create vpc-demo-www-ilb-tcp --region=us-west2 --load-balancing-scheme=internal --network=vpc-demo-producer --subnet=vpc-demo-us-west2 --address=10.0.2.10 --ip-protocol=TCP --ports=all --backend-service=vpc-demo-www-be-tcp --backend-service-region=us-west2

बैकएंड की परफ़ॉर्मेंस की जांच चालू करने के लिए, Cloud Shell से फ़ायरवॉल का नियम बनाएं

gcloud compute firewall-rules create vpc-demo-health-checks --allow tcp:80,tcp:443 --network vpc-demo-producer --source-ranges 130.211.0.0/22,35.191.0.0/16 --enable-logging

आईएपी को अपने वीएम इंस्टेंस से कनेक्ट करने की अनुमति देने के लिए, फ़ायरवॉल का नियम बनाएं:

  • यह उन सभी वीएम इंस्टेंस पर लागू होता है जिन्हें आपको आईएपी का इस्तेमाल करके ऐक्सेस करना है.
  • आईपी रेंज 35.235.240.0/20 से, इन्ग्रेस डेटा ट्रैफ़िक की अनुमति देता है. इस रेंज में वे सभी आईपी पते शामिल होते हैं जिनका इस्तेमाल आईएपी, टीसीपी फ़ॉरवर्ड करने के लिए करता है.

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

11. टीसीपी एनएटी सबनेट बनाएं

Cloud Shell से

gcloud compute networks subnets create vpc-demo-us-west2-psc-tcp --network=vpc-demo-producer --region=us-west2 --range=192.168.0.0/24 --purpose=private-service-connect

12. टीसीपी सेवा अटैचमेंट और फ़ायरवॉल के नियम बनाएं

Cloud Shell से टीसीपी सेवा अटैचमेंट बनाएं

gcloud compute service-attachments create vpc-demo-psc-west2-tcp --region=us-west2 --producer-forwarding-rule=vpc-demo-www-ilb-tcp --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=vpc-demo-us-west2-psc-tcp

टीसीपी सेवा अटैचमेंट की पुष्टि करें

gcloud compute service-attachments describe vpc-demo-psc-west2-tcp --region us-west2

Cloud Shell से फ़ायरवॉल का नियम बनाएं, ताकि टीसीपी एनएटी सबनेट को आईएलबी बैकएंड को ऐक्सेस करने की अनुमति मिल सके

gcloud compute --project=$prodproject firewall-rules create vpc-demo-allowpsc-tcp --direction=INGRESS --priority=1000 --network=vpc-demo-producer --action=ALLOW --rules=all --source-ranges=192.168.0.0/24 --enable-logging

13. उपभोक्ताओं के लिए VPC नेटवर्क बनाएं

ध्यान दें: नीचे दिए गए सेक्शन में, उस प्रोजेक्ट के कॉन्फ़िगरेशन अपडेट लागू करें जिसमें आपकी उपभोक्ता सेवा शामिल है

नीचे दिए गए सेक्शन में, उपभोक्ता VPC को एक अलग प्रोजेक्ट में कॉन्फ़िगर किया गया है. उपभोक्ता और उत्पादक नेटवर्क के बीच कम्यूनिकेशन, उपभोक्ता नेटवर्क में बताए गए सेवा अटैचमेंट के ज़रिए किया जाता है.

VPC नेटवर्क

कोडलैब के लिए दो प्रोजेक्ट की ज़रूरत होती है. हालांकि, PSC के लिए ऐसा करना ज़रूरी नहीं है. एक या एक से ज़्यादा प्रोजेक्ट को सपोर्ट करने के लिए रेफ़रंस नोट करें.

सिंगल प्रोजेक्ट - प्रोड्यूसर और कंज़्यूमर नेटवर्क की मदद के लिए प्रोजेक्ट अपडेट करें

Cloud Shell में, पक्का करें कि आपका प्रोजेक्ट आईडी सेट अप किया गया हो

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

एक से ज़्यादा प्रोजेक्ट - उपभोक्ता को नेटवर्क देने में मदद करने के लिए, प्रोजेक्ट अपडेट करें

Cloud Shell में, पक्का करें कि आपका प्रोजेक्ट आईडी सेट अप किया गया हो

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

Cloud Shell से

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

पीएससी के लिए सबनेट बनाएं

Cloud Shell से

gcloud compute networks subnets create consumer-subnet --project=$consumerproject  --range=10.0.60.0/24 --network=vpc-demo-consumer --region=us-west2

टीसीपी ऐप्लिकेशन के लिए स्टैटिक आईपी पता बनाना

Cloud Shell से

gcloud compute addresses create vpc-consumer-psc-tcp --region=us-west2 --subnet=consumer-subnet --addresses 10.0.60.100

फ़ायरवॉल के नियम बनाएं

आईएपी को अपने वीएम इंस्टेंस से कनेक्ट करने की अनुमति देने के लिए, फ़ायरवॉल का नियम बनाएं:

  • यह उन सभी वीएम इंस्टेंस पर लागू होता है जिन्हें आपको आईएपी का इस्तेमाल करके ऐक्सेस करना है.
  • आईपी रेंज 35.235.240.0/20 से, इन्ग्रेस डेटा ट्रैफ़िक की अनुमति देता है. इस रेंज में वे सभी आईपी पते शामिल होते हैं जिनका इस्तेमाल आईएपी, टीसीपी फ़ॉरवर्ड करने के लिए करता है.

Cloud Shell से

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

हालांकि, पीएससी के लिए ईग्रेस फ़ायरवॉल के नियम बनाना ज़रूरी नहीं है, ताकि प्रोड्यूसर के लिए सेवा अटैचमेंट में उपभोक्ता के पीएससी ट्रैफ़िक पर नज़र रखी जा सके

gcloud compute --project=$consumerproject firewall-rules create vpc-consumer-psc --direction=EGRESS --priority=1000 --network=vpc-demo-consumer --action=ALLOW --rules=all --destination-ranges=10.0.60.0/24 --enable-logging

Cloud NAT इंस्टेंस बनाएं

Cloud NAT, PSC के लिए इस्तेमाल होने वाला NAT नहीं है. Cloud NAT का इस्तेमाल खास तौर पर इंटरनेट ऐक्सेस के लिए, ऐप्लिकेशन पैकेज डाउनलोड करने के लिए किया जाता है

क्लाउड राऊटर बनाना

Cloud Shell से

gcloud compute routers create crnatconsumer --network vpc-demo-consumer --region us-west2

Cloud NAT बनाना

Cloud Shell से

gcloud compute routers nats create cloudnatconsumer --router=crnatconsumer --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --enable-logging --region us-west2

14. टेस्ट इंस्टेंस वीएम बनाएं

Cloud Shell से

gcloud compute instances create test-instance-1 \
    --zone=us-west2-a \
    --image-family=debian-9 \
    --image-project=debian-cloud \
    --subnet=consumer-subnet --no-address \
    --metadata=startup-script='#! /bin/bash
apt-get update
apt-get install iperf3 -y
apt-get install tcpdump -y'

15. टीसीपी सेवा अटैचमेंट बनाएं

Cloud Shell से

gcloud compute forwarding-rules create vpc-consumer-psc-fr-tcp --region=us-west2 --network=vpc-demo-consumer --address=vpc-consumer-psc-tcp --target-service-attachment=projects/$prodproject/regions/us-west2/serviceAttachments/vpc-demo-psc-west2-tcp

16. पुष्टि

हम CURL, टीसीपीडीयूएमपी और उपभोक्ता और प्रोड्यूसर कम्यूनिकेशन की पुष्टि करने के लिए, फ़ायरवॉल लॉग.

उपभोक्ता के प्रोजेक्ट में, स्टैटिक आईपी पतों का इस्तेमाल, प्रोड्यूसर से संपर्क करने के लिए किया जाता है. स्टैटिक आईपी पते की मदद से, उपभोक्ता फ़ॉरवर्ड करने के नियम के साथ मैपिंग की पुष्टि करने के लिए, यहां दिया गया सिंटैक्स इस्तेमाल करें.

ध्यान दें: नीचे दिए गए सेक्शन में, उस प्रोजेक्ट के कॉन्फ़िगरेशन अपडेट लागू करें जिसमें आपकी उपभोक्ता सेवा शामिल है

Consumer VPCs Cloud Shell से, टीसीपी फ़ॉरवर्ड करने के नियम और स्टैटिक आईपी की पहचान की जाती है

gcloud compute forwarding-rules describe vpc-consumer-psc-fr-tcp --region us-west2

आउटपुट:

IPAddress: 10.0.60.100
IPProtocol: TCP
creationTimestamp: '2021-07-14T13:34:23.359-07:00'
id: '2768158450402915488'
kind: compute#forwardingRule
labelFingerprint: 42WmSpB8rSM=
name: vpc-consumer-psc-fr-tcp
<snip>

17. टीसीपी की पुष्टि करना

ध्यान दें: नीचे दिए गए सेक्शन में, उस प्रोजेक्ट के कॉन्फ़िगरेशन अपडेट लागू करें जिसमें आपकी प्रोड्यूसर सेवा शामिल है

प्रोड्यूसर प्रोजेक्ट से, "www-01" की पहचान करें &amp; "www-02" और हर इंस्टेंस से एक एसएसएच सेशन लॉन्च करें.

6d0bb8c5cb115876.png

"www-01" से NAT को मॉनिटर करने के लिए टीसीपीडीयूएमपी चलाएं

sudo tcpdump -i any net 192.168.0.0/16 -n

"www-02" से NAT को मॉनिटर करने के लिए टीसीपीडीयूएमपी चलाएं

sudo tcpdump -i any net 192.168.0.0/16 -n

ध्यान दें: नीचे दिए गए सेक्शन में, उस प्रोजेक्ट के कॉन्फ़िगरेशन अपडेट लागू करें जिसमें आपकी उपभोक्ता सेवा शामिल है

कंज़्यूमर प्रोजेक्ट से, "test-instance-1" को पहचानें और दो सेशन लॉन्च करना.

"test-इंस्टेंस-1" से उपभोक्ता को मॉनिटर करने के लिए, पहले सेशन के लिए TLSDUMP का इस्तेमाल करें

sudo tcpdump -i any host 10.0.60.100 -n

"test-इंस्टेंस-1" से दूसरा सेशन, टीसीपी की पुष्टि करता है

curl -v 10.0.60.100 

18. टिप्पणियां - उपभोक्ता

"test-इंस्टेंस-1" से दूसरा सेशन CURL पूरा होता है और नतीजे 200 ओके देते हैं.

@test-instance-1:~$ curl -v 10.0.60.100 
* Rebuilt URL to: 10.0.60.100/
*   Trying 10.0.60.100...
* TCP_NODELAY set
* Connected to 10.0.60.100 (10.0.60.100) port 80 (#0)
> GET / HTTP/1.1
> Host: 10.0.60.100
> User-Agent: curl/7.52.1
> Accept: */*
> 
< HTTP/1.1 200 OK
< Date: Wed, 14 Jul 2021 21:20:22 GMT
< Server: Apache/2.4.25 (Debian)
< Last-Modified: Wed, 14 Jul 2021 20:09:09 GMT
< ETag: "1d-5c71aed5edabd"
< Accept-Ranges: bytes
< Content-Length: 29
< Content-Type: text/html
< 
Page on www-01 in us-west2-a
* Curl_http_done: called premature == 0
* Connection #0 to host 10.0.60.100 left intact

"test-इंस्टेंस-1" से पहले सेशन के लिए टीसीपीडीयूएमपी, वीएम इंस्टेंस की पहचान करता है → टीसीपी स्टैटिक आईपी कम्यूनिकेशन और रिस्पॉन्स

21:20:22.572052 IP 10.0.60.2.59432 > 10.0.60.100.80: Flags [P.], seq 1:76, ack 1, win 222, options [nop,nop,TS val 634554 ecr 998739], length 75: HTTP: GET / HTTP/1.1

21:20:22.572688 IP 10.0.60.100.80 > 10.0.60.2.59432: Flags [P.], seq 1:257, ack 76, win 220, options [nop,nop,TS val 998739 ecr 634554], length 256: HTTP: HTTP/1.1 200 OK

फ़ायरवॉल को लॉग करना

Logs Explorer का इस्तेमाल करके फ़ायरवॉल नियम "vpc-consumner-psc" की पुष्टि करें वीएम इंस्टेंस और स्टैटिक आईपी के बीच के फ़्लो को कैप्चर कर रहा हो

  1. Cloud Console से, कार्रवाइयों का लॉगिंग पता लगाएं → लॉग एक्सप्लोरर
  2. क्वेरी फ़ील्ड में, नीचे दी गई एंट्री को yourconsumerproject पर अपडेट करें और "क्वेरी चलाएं" को चुनें

LogName:(projects/yourconsumerproject/logs/compute.googleapis.com%2Ffirewall) AND jsonPayload.Rule_details.reference:("network:vpc-demo-consumer/firewall:vpc-consumer-psc")

  1. क्वेरी के नतीजों में दिए गए हर स्क्रीनशॉट के लिए यह जानकारी मिलती है

b573c878a8d6d01f.png

  1. लॉग को बड़ा करें और नीचे दिए गए आउटपुट की पहचान करें. dest_ip पर ध्यान दें: 10.0.60.100, स्टैटआईसी टीसीपी आईपी है और src_ip: 10.0.60.2 वीएम इंस्टेंस आईपी पता है

1b4f46b3e61f6f12.png

19. टिप्पणियां - निर्माता

बैकएंड इंस्टेंस "www-01" से या "www-02" टीसीपी एनएटी सबनेट और टीसीपी आईएलबी के बीच यह कम्यूनिकेशन देखा गया है.

21:20:22.572186 IP 192.168.0.2.1024 > 10.0.2.10.80: Flags [P.], seq 1:76, ack 1, win 222, options [nop,nop,TS val 634554 ecr 998739], length 75: HTTP: GET / HTTP/1.1

21:20:22.572679 IP 10.0.2.10.80 > 192.168.0.2.1024: Flags [P.], seq 1:257, ack 76, win 220, options [nop,nop,TS val 998739 ecr 634554], length 256: HTTP: HTTP/1.1 200 OK

20. फ़ायरवॉल को लॉग करना

Logs Explorer का इस्तेमाल करके फ़ायरवॉल नियम "vpc-demo-allowpsc-tcp" की पुष्टि करें और टीसीपी एनएटी (NAT) को कैप्चर कर रहा है और टीसीपी आईएलबी फ़्लो के लिए, यह तरीका अपनाएं:

  1. Cloud Console में, कार्रवाइयों का लॉगिंग पता लगाएं → लॉग एक्सप्लोरर
  2. क्वेरी फ़ील्ड में अपनेprodproject के साथ नीचे दी गई प्रविष्टि अपडेट करें और "क्वेरी चलाएं" चुनें

LogName:(projects/yourprodproject/logs/compute.googleapis.com%2Ffirewall) AND jsonPayload.Rule_details.reference:("network:vpc-demo-प्रोड्यूसर/firewall:vpc-demo-allowpsc-tcp")

  1. क्वेरी के नतीजों में दिए गए हर स्क्रीनशॉट के लिए यह जानकारी मिलती है

8ce6b0d17d76ad6d.png

  1. लॉग को बड़ा करें और नीचे दिए गए आउटपुट की पहचान करें. टीसीपी ILB dest_ip: 10.0.2.10 और NAT टीसीपी source_range (192.168.0.0/24) और संबंधित src_ip: 192.168.0.2.

e157a7af8cb667e.png

21. प्रॉक्सी प्रोटोकॉल चालू करें

डिफ़ॉल्ट रूप से, Private Service Connect, उपभोक्ता के सोर्स आईपी पते को, सेवा प्रोड्यूसर के VPC नेटवर्क में मौजूद Private Service Connect सबनेट में से किसी एक सबनेट के पते में बदल देता है. इसके बजाय, अगर आपको उपभोक्ता के ओरिजनल सोर्स आईपी पते को देखना है, तो PROXY प्रोटोकॉल को चालू किया जा सकता है. अगर PROXY प्रोटोकॉल चालू है, तो PROXY प्रोटोकॉल हेडर से उपभोक्ता का सोर्स आईपी पता और PSC कनेक्शन आईडी मिल सकता है

e9d1c49971b10ed0.png

दस्तावेज़ का रेफ़रंस

प्रोड्यूसर की पब्लिश की गई सेवाएं मिटाएं

ध्यान दें: नीचे दिए गए सेक्शन में, उस प्रोजेक्ट के कॉन्फ़िगरेशन अपडेट लागू करें जिसमें आपकी प्रोड्यूसर सेवा शामिल है

क्लाउड शेल से टीसीपी सेवा के अटैचमेंट मिटाएं

gcloud compute service-attachments delete vpc-demo-psc-west2-tcp --region=us-west2 --quiet

क्लाउड शेल से पुष्टि करने वाली सेवा के अटैचमेंट मिटा दिए गए हैं (0 आइटम सूची में शामिल किए गए हैं)

gcloud compute service-attachments list

प्रॉक्सी प्रोटोकॉल चालू करके, टीसीपी सेवा अटैचमेंट बनाएं

gcloud compute service-attachments create vpc-demo-psc-west2-tcp --region=us-west2 \
--producer-forwarding-rule=vpc-demo-www-ilb-tcp \
--connection-preference=ACCEPT_AUTOMATIC \
--nat-subnets=vpc-demo-us-west2-psc-tcp \
--enable-proxy-protocol

क्लाउड शेल से पुष्टि करें कि प्रॉक्सी प्रोटोकॉल चालू होने पर, सेवा अटैचमेंट बनाए गए हैं (सही)

gcloud compute service-attachments describe vpc-demo-psc-west2-tcp --region=us-west2 | grep -i enableProxyProtocol:

ध्यान दें: नीचे दिए गए सेक्शन में, उस प्रोजेक्ट के कॉन्फ़िगरेशन अपडेट लागू करें जिसमें आपकी उपभोक्ता सेवा शामिल है

Cloud Shell से टीसीपी फ़ॉरवर्ड करने के नियम मिटाएं

gcloud compute forwarding-rules delete vpc-consumer-psc-fr-tcp --region=us-west2 --quiet

पहले बनाए गए (प्रोड्यूसर) सेवा अटैचमेंट के साथ जोड़ने के लिए, टीसीपी फ़ॉरवर्ड करने के नियम फिर से बनाएं

क्लाउड शेल से टीसीपी फ़ॉरवर्ड करने का नियम बनाएं

gcloud compute forwarding-rules create vpc-consumer-psc-fr-tcp \
--region=us-west2 --network=vpc-demo-consumer \
--address=vpc-consumer-psc-tcp \
--target-service-attachment=projects/$prodproject/regions/us-west2/serviceAttachments/vpc-demo-psc-west2-tcp

प्रॉक्सी प्रोटोकॉल की पुष्टि करना

ध्यान दें: नीचे दिए गए सेक्शन में, उस प्रोजेक्ट के कॉन्फ़िगरेशन अपडेट लागू करें जिसमें आपकी प्रोड्यूसर सेवा शामिल है

प्रोड्यूसर प्रोजेक्ट से, "www-01" की पहचान करें &amp; "www-02" और हर बार एक सेशन लॉन्च करें.

6d0bb8c5cb115876.png

"www-01" से NAT को मॉनिटर करने के लिए टीसीपीडीयूएमपी चलाएं

sudo tcpdump -nnvvXSs 1514 net 192.168.0.0/16

"www-02" से NAT को मॉनिटर करने के लिए टीसीपीडीयूएमपी चलाएं

sudo tcpdump -nnvvXSs 1514 net 192.168.0.0/16

ध्यान दें: नीचे दिए गए सेक्शन में, उस प्रोजेक्ट के कॉन्फ़िगरेशन अपडेट लागू करें जिसमें आपकी उपभोक्ता सेवा शामिल है

कंज़्यूमर प्रोजेक्ट से, "test-instance-1" को पहचानें एक सेशन शुरू करने के बाद,

"test-इंस्टेंस-1" से कर्लिंग करते हुए सेशन

curl 10.0.60.100 

टिप्पणियां - उपभोक्ता

ध्यान दें कि यदि PROXY प्रोटोकॉल v2 सक्षम किया गया है लेकिन एप्लिकेशन का समर्थन करने के लिए कॉन्फ़िगर नहीं किया गया है, तो नीचे दिए गए उदाहरण के अनुसार क्लाइंट से कनेक्ट होने पर एक त्रुटि संदेश दिखाई देगा. अतिरिक्त प्रॉक्सी v2 हेडर और इसे कोडलैब में शामिल नहीं किया गया है.

"test-इंस्टेंस-1" से सेशन का CURL अनुमानित 400 खराब अनुरोध जनरेट करेगा. हालांकि, बैकएंड क्वेरी सफल रही.

@test-instance-1:~$ curl 10.0.60.100 
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
</p>
<hr>
<address>Apache/2.4.25 (Debian) Server at www-02.c.deepakmichaelprod.internal Port 80</address>

टिप्पणियां - उपभोक्ता

बैकएंड इंस्टेंस "www-01" से या "www-02" कैप्चर में एम्बेड किए गए प्रॉक्सी प्रोटोकॉल के साथ, टीसीपी एनएटी सबनेट और टीसीपी आईएलबी के बीच नीचे बताए गए कम्यूनिकेशन को देखा जाता है.

ज़्यादातर मामलों में, tcpdump के तीसरे पैकेट में प्रॉक्सी प्रोटोकॉल की जानकारी वाले एलिमेंट (IE) शामिल होते हैं. इसके अलावा, पैकेट की 39 बाइट वाले उस पैकेट की पहचान करें जिसमें प्रॉक्सी प्रोटोकॉल IE शामिल हो.

192.168.0.3.1025 > 10.0.2.10.80: Flags [P.], cksum 0xb617 (correct), seq 2729454396:2729454435, ack 1311105819, win 28160, length 39: HTTP
        0x0000:  4500 004f 0000 4000 4006 6df4 c0a8 0003  E..O..@.@.m.....
        0x0010:  0a00 020a 0401 0050 a2b0 2b3c 4e25 e31b  .......P..+<N%..
        0x0020:  5018 6e00 b617 0000 0d0a 0d0a 000d 0a51  P.n............Q
        0x0030:  5549 540a 2111 0017 0a00 3c02 0a00 3c64  UIT.!.....<...<d
        0x0040:  8138 0050 e000 0800 9b34 d70a 003c 64    .8.P.....4...<d

पैकेट कैप्चर में मौजूद PROXY प्रोटोकॉल सिग्नेचर की पहचान करें: 0d0a0d0a000d0a515549540a

PROXY प्रोटोकॉल सिग्नेचर की पहचान करके, इसे अलग-अलग किया जा सकता है और फ़ील्ड को डिकोड किया जा सकता है. इसके लिए, नीचे दिया गया तरीका अपनाएं:

PROXY प्रोटोकॉल हस्ताक्षर: 0d0a0d0a000d0a515549540a

अन्य PROXY प्रोटोकॉल फ़ील्ड: 21 11 00 17

IP और पोर्ट: 0a003c02 0a003c64 8138 0050

TLV टाइप: e0

TLV लंबाई: 00 08

pscConnection आईडी: 009b34d70a003c64

हेक्स

दशमलव / आईपी

PROXY प्रोटोकॉल सिग्नेचर

0d0a0d0a000d0a515549540a

वर्शन, प्रोटोकॉल, अवधि

21 11 0017

Src आईपी

0a003c02

10.0.60.2

डीएसटी आईपी

0a003c64

10.0.60.100

एसआरसी पोर्ट

8138

33080

डीएसटी पोर्ट

0050

80

TLV टाइप (PP2_TYPE_GCP)

e0

टीएलवी की लंबाई

0008

pscConnectionId

00004dde290a003c64

43686719580552292

pscConnectionId की पुष्टि करने के लिए, नीचे बताए गए तरीके से उपभोक्ता फ़ॉरवर्ड करने के नियम के बारे में बताएं और पक्का करें कि यह नियम इनसे मेल खाता हो:

ध्यान दें: नीचे दिए गए सेक्शन में, उस प्रोजेक्ट के कॉन्फ़िगरेशन अपडेट लागू करें जिसमें आपकी उपभोक्ता सेवा शामिल है

Cloud Shell से टीसीपी को फ़ॉरवर्ड करने के नियमों के बारे में बताएं

gcloud compute forwarding-rules describe vpc-consumer-psc-fr-tcp --region=us-west2

pscConnectionID की जानकारी देने वाला आउटपुट

$ gcloud compute forwarding-rules describe vpc-consumer-psc-fr-tcp --region=us-west2
IPAddress: 10.0.60.100
IPProtocol: TCP
creationTimestamp: '2021-07-14T16:50:31.766-07:00'
id: '4443494505307621032'
kind: compute#forwardingRule
labelFingerprint: 42WmSpB8rSM=
name: vpc-consumer-psc-fr-tcp
network: https://www.googleapis.com/compute/v1/projects/deepakmichaeldev/global/networks/vpc-demo-consumer
networkTier: PREMIUM
pscConnectionId: '43686719580552292'
pscConnectionStatus: ACCEPTED

22. कनेक्शन नीति

पब्लिश की गई सेवा के लिए, प्रोजेक्ट को अपने-आप स्वीकार करने और साफ़ तौर पर किसी प्रोजेक्ट को स्वीकार करने के विकल्प के बीच स्विच किया जा सकता है.

अपने-आप स्वीकार करने की सुविधा से साफ़ तौर पर दिखाए जाने वाले सुझावों में बदलने से, इस बदलाव से पहले सेवा से कनेक्ट होने वाले उपभोक्ता एंडपॉइंट पर कोई असर नहीं पड़ता. मौजूदा उपभोक्ता एंडपॉइंट तब तक पब्लिश की गई सेवा से कनेक्ट कर सकते हैं, जब तक सेवा अटैचमेंट को मिटाया नहीं जाता. सेवा से कनेक्ट करने से पहले, उपभोक्ता के नए एंडपॉइंट को स्वीकार करना ज़रूरी है. ज़्यादा जानकारी के लिए, पब्लिश की गई सेवा के ऐक्सेस के अनुरोध मैनेज करना देखें.

लैब के इस सेक्शन में, आपको उपभोक्ता के सेवा अटैचमेंट को साफ़ तौर पर मंज़ूरी देने के लिए, प्रोड्यूसर की कनेक्शन नीति में बदलाव करना होगा.

ध्यान दें: नीचे दिए गए सेक्शन में, उस प्रोजेक्ट के कॉन्फ़िगरेशन अपडेट लागू करें जिसमें आपकी प्रोड्यूसर सेवा शामिल है

प्रोड्यूसर के सर्विस क्लाउड शेल की तरफ़ से कनेक्शन-प्राथमिकता नीति को अपने-आप स्वीकार करें से मैन्युअल तौर पर स्वीकार करें पर अपडेट करें

gcloud compute service-attachments update vpc-demo-psc-west2-tcp --region=us-west2 --connection-preference ACCEPT_MANUAL

Network Services → Private Service Connect → पब्लिश की गई सेवाएं → vpc-demo-psc-west2-tcp → कनेक्ट किए गए प्रोजेक्ट पर जाकर, एंडपॉइंट की स्थिति का पता लगाएं

e1d90d1563e10731.png

सूचना, उपभोक्ता प्रोजेक्ट की स्थिति "मंज़ूरी बाकी है" के तौर पर सेट हो गई है की स्थिति, 'कनेक्ट किए गए प्रोजेक्ट' में दी गई है.

क्लाउड शेल में निम्नलिखित को एक्ज़ीक्यूट करके उपभोक्ताओं के प्रोजेक्ट को स्वीकार करें और प्रोजेक्ट के सही नाम के साथ अपडेट करना न भूलें

gcloud compute service-attachments update vpc-demo-psc-west2-tcp --region=us-west2 --consumer-accept-list $consumerproject=20

Network Services → Private Service Connect → पब्लिश की गई सेवाएं → vpc-demo-psc-west2-tcp → कनेक्ट किए गए प्रोजेक्ट पर जाकर, एंडपॉइंट की स्थिति का पता लगाएं

35cba9ac640594a2.png

सूचना, उपभोक्ता प्रोजेक्ट का स्टेटस "स्वीकार किया गया" हो गया है की स्थिति, 'कनेक्ट किए गए प्रोजेक्ट' में दी गई है.

23. क्लीनअप का तरीका

प्रोड्यूसर नेटवर्क को क्लीनअप करने का तरीका

ध्यान दें: नीचे दिए गए सेक्शन में, उस प्रोजेक्ट के कॉन्फ़िगरेशन अपडेट लागू करें जिसमें आपकी प्रोड्यूसर सेवा शामिल है

प्रोड्यूसर प्रोजेक्ट टर्मिनल के एक क्लाउड शेल से लैब के कॉम्पोनेंट मिटाएं

gcloud compute routers nats delete cloudnatprod --router=crnatprod --region=us-west2 --quiet

gcloud compute routers delete crnatprod --region=us-west2 --quiet

gcloud compute instances delete www-01 --zone=us-west2-a --quiet

gcloud compute instances delete www-02 --zone=us-west2-a --quiet

gcloud compute service-attachments delete vpc-demo-psc-west2-tcp --region=us-west2 --quiet

gcloud compute forwarding-rules delete vpc-demo-www-ilb-tcp --region=us-west2 --quiet

gcloud compute backend-services delete vpc-demo-www-be-tcp --region=us-west2 --quiet

gcloud compute instance-groups unmanaged delete vpc-demo-ig-www --zone=us-west2-a --quiet

gcloud compute health-checks delete hc-http-80 --quiet

gcloud compute firewall-rules delete vpc-demo-allowpsc-tcp --quiet

gcloud compute firewall-rules delete vpc-demo-health-checks --quiet

gcloud compute firewall-rules delete psclab-iap-prod --quiet

gcloud compute networks subnets delete vpc-demo-us-west2 --region=us-west2 --quiet

gcloud compute networks subnets delete vpc-demo-us-west2-psc-tcp --region=us-west2 --quiet

gcloud compute networks delete vpc-demo-producer --quiet

ध्यान दें: नीचे दिए गए सेक्शन में, उस प्रोजेक्ट के कॉन्फ़िगरेशन अपडेट लागू करें जिसमें आपकी उपभोक्ता सेवा शामिल है

उपभोक्ता नेटवर्क को हटाने का तरीका

प्रोड्यूसर प्रोजेक्ट टर्मिनल के एक क्लाउड शेल से लैब के कॉम्पोनेंट मिटाएं

gcloud compute routers nats delete cloudnatconsumer --router=crnatconsumer --region=us-west2 --quiet

gcloud compute routers delete crnatconsumer --region=us-west2 --quiet

gcloud compute instances delete test-instance-1 --zone=us-west2-a --quiet

gcloud compute forwarding-rules delete vpc-consumer-psc-fr-tcp --region=us-west2 --quiet

gcloud compute addresses delete vpc-consumer-psc-tcp --region=us-west2 --quiet

gcloud compute firewall-rules delete psclab-iap-consumer --quiet

gcloud compute networks subnets delete consumer-subnet --region=us-west2 --quiet

gcloud compute firewall-rules delete vpc-consumer-psc --quiet

gcloud compute networks delete vpc-demo-consumer --quiet

24. बधाई हो!

कोडलैब पूरा करने के लिए बधाई.

इसमें हमने इन विषयों के बारे में बताया

  • निजी सेवा कनेक्ट के फ़ायदे
  • सेवा उपभोक्ताओं के लिए मुख्य सिद्धांत
  • सर्विस प्रोड्यूसर के लिए खास कॉन्सेप्ट
  • प्रोड्यूसर एनवायरमेंट बनाना
  • सेवा अटैचमेंट की मदद से सेवा (प्रोड्यूसर एनवायरमेंट) दिखाएं
  • उपभोक्ता के लिए एनवायरमेंट बनाना
  • उपभोक्ता नेटवर्क में फ़ॉरवर्ड करने का नियम बनाना
  • टीसीपी के उपभोक्ता ऐक्सेस की पुष्टि करें
  • सक्षम करें और प्रॉक्सी प्रोटोकॉल की पुष्टि करें
  • नीति का ऐक्सेस कंट्रोल चालू करें