Private Service Connect 66

1. परिचय

Private Service Connect, Google Cloud के ईकोसिस्टम में संगठनों के लिए सेवाओं को इस्तेमाल करने के तरीके में बड़ा बदलाव लाता है. यह IPv4 के साथ-साथ IPv6 पतों के साथ काम करने की सुविधा देता है. इसमें बेहतर सुरक्षा, आसान कनेक्टिविटी, बेहतर परफ़ॉर्मेंस, और एक जगह से मैनेज करने की सुविधा मिलती है. इसलिए, यह उन कारोबारों के लिए सबसे अच्छा विकल्प है जो एक मज़बूत, भरोसेमंद, और असरदार सेवा इस्तेमाल करने का मॉडल चाहते हैं. साथ ही, यह नेटवर्किंग के आने वाले समय के लिए तैयार है. चाहे आपको हाइब्रिड क्लाउड बनाना हो, अपने संगठन में सेवाएं शेयर करनी हों या तीसरे पक्ष की सेवाओं को ऐक्सेस करना हो, पीएससी आपको Google Cloud की पूरी क्षमता का इस्तेमाल करने के लिए एक आसान और सुरक्षित तरीका उपलब्ध कराता है. साथ ही, IPv6 के फ़ायदों का इस्तेमाल करने की सुविधा भी देता है.

आपको क्या सीखने को मिलेगा

  • पीएसए 66 के मुख्य फ़ायदे
  • Private Service Connect 66 के साथ काम करने वाली अनुवाद की सुविधा
  • ड्यूल स्टैक यूएलए के बारे में खास जानकारी
  • नेटवर्क की ज़रूरी शर्तें
  • Private Service Connect की प्रोड्यूसर सेवा बनाना
  • Private Service Connect एंडपॉइंट बनाना
  • डूअल-स्टैक वीएम से Private Service Connect एंडपॉइंट तक कनेक्टिविटी सेट अप करना

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

  • मालिक की अनुमतियों वाला Google Cloud प्रोजेक्ट

2. आपको क्या बनाना है

आपको Private Service Connect (PSC) के ज़रिए पब्लिश की गई सेवा के तौर पर, Apache वेब सर्वर को डिप्लॉय करने के लिए, प्रोड्यूसर नेटवर्क बनाना होगा. पब्लिश करने के बाद, Producer सेवा को पुष्टि करने की अनुमति देने के लिए, ये कार्रवाइयां करें:

  • कंज्यूमर वीपीसी से, ड्यूअल-स्टैक GCE इंस्टेंस का इस्तेमाल करके, प्रोड्यूसर सेवा तक पहुंचने के लिए IPv6 पीएससी एंडपॉइंट को टारगेट करें.

PSC 66 के मुख्य फ़ायदे

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

3. Private Service Connect 64 और 66 के लिए, अनुवाद की सुविधा काम करती है

उपभोक्ता से जुड़ी बातें

एंडपॉइंट का आईपी वर्शन, IPv4 या IPv6 में से कोई एक हो सकता है. हालांकि, दोनों नहीं हो सकते. अगर पते का सबनेट सिंगल-स्टैक है, तो उपभोक्ता आईपीवी4 पते का इस्तेमाल कर सकते हैं. अगर पते का सबनेट ड्यूअल-स्टैक है, तो उपभोक्ता आईपीवी4 या आईपीवी6 पते का इस्तेमाल कर सकते हैं. उपयोगकर्ता, IPv4 और IPv6, दोनों एंडपॉइंट को एक ही सेवा अटैचमेंट से कनेक्ट कर सकते हैं. इससे सेवाओं को IPv6 पर माइग्रेट करने में मदद मिल सकती है.

क्रिएटिव बनाते समय इन बातों का ध्यान रखें

प्रोड्यूसर के आगे बढ़ाने के नियम का आईपी वर्शन, सेवा अटैचमेंट और सेवा अटैचमेंट से बाहर निकलने वाले ट्रैफ़िक का आईपी वर्शन तय करता है. सेवा अटैचमेंट का आईपी वर्शन, IPv4 या IPv6 में से कोई एक हो सकता है. हालांकि, दोनों नहीं हो सकते. अगर पते का सबनेट सिंगल-स्टैक है, तो प्रोड्यूसर आईपीवी4 पते का इस्तेमाल कर सकते हैं. अगर पते का सबनेट ड्यूअल-स्टैक है, तो प्रोड्यूसर IPv4 या IPv6 पते का इस्तेमाल कर सकते हैं.

प्रोड्यूसर फ़ॉरवर्डिंग नियम के आईपी पते का आईपी वर्शन, सेवा अटैचमेंट के NAT सबनेट के स्टैक टाइप के साथ काम करना चाहिए.

  • अगर प्रोड्यूसर फ़ॉरवर्डिंग का नियम IPv4 है, तो NAT सबनेट सिंगल-स्टैक या ड्यूअल-स्टैक हो सकता है.
  • अगर प्रोड्यूसर का आगे बढ़ाने का नियम IPv6 है, तो एनएटी (NAT) सबनेट ड्यूअल-स्टैक होना चाहिए.

काम करने वाले कॉन्फ़िगरेशन के लिए, ये कॉम्बिनेशन इस्तेमाल किए जा सकते हैं:

  • IPv4 एंडपॉइंट से IPv4 सेवा अटैचमेंट
  • IPv6 एंडपॉइंट से IPv6 सेवा अटैचमेंट
  • IPv6 एंडपॉइंट से IPv4 सेवा अटैचमेंट इस कॉन्फ़िगरेशन में, Private Service Connect दोनों आईपी वर्शन के बीच अपने-आप अनुवाद करता है.

ये सुविधाएं काम नहीं करतीं:

Private Service Connect, IPv4 एंडपॉइंट को IPv6 सेवा अटैचमेंट से कनेक्ट करने की सुविधा नहीं देता. इस मामले में, एंडपॉइंट नहीं बन पाता और गड़बड़ी का यह मैसेज दिखता है:

IPv4 पते वाला Private Service Connect फ़ॉरवर्डिंग नियम, IPv6 सेवा अटैचमेंट को टारगेट नहीं कर सकता.

4. ड्यूल स्टैक यूएलए के बारे में खास जानकारी

Google Cloud, यूएलए प्राइवेट IPv6 सबनेट और वीएम बनाने की सुविधा देता है. RFC 4193 में, लोकल कम्यूनिकेशन के लिए IPv6 एड्रेसिंग स्कीम के बारे में बताया गया है. यह वीपीसी के अंदर कम्यूनिकेशन के लिए सबसे सही है. यूएलए पतों को दुनिया भर में रूट नहीं किया जा सकता. इसलिए, आपके वीएम पूरी तरह से इंटरनेट से अलग होते हैं. ये IPv6 का इस्तेमाल करके, RFC-1918 की तरह काम करते हैं. Google Cloud, /48 वीपीसी नेटवर्क यूएलए प्रीफ़िक्स बनाने की अनुमति देता है, ताकि आपके सभी /64 IPv6 यूएलए सबनेट, उस वीपीसी नेटवर्क रेंज से असाइन किए जा सकें.

Google Cloud के साथ काम करने वाले ग्लोबल यूनीक बाहरी IPv6 पतों की तरह ही, IPv6 की सुविधा वाले हर यूएलए सबनेट को /48 वीपीसी नेटवर्क यूएलए रेंज से /64 सबनेट मिलेगा. साथ ही, हर वीएम को उस सबनेट से /96 पता असाइन किया जाएगा.

RFC4193, fc00::/7 की रेंज में IPv6 पते के स्पेस को तय करता है. यूएलए पतों को निजी नेटवर्क/साइटों में स्वतंत्र रूप से असाइन और इस्तेमाल किया जा सकता है. Google Cloud, fd20::/20 रेंज से सभी यूएलए पते असाइन करता है. इन पतों को सिर्फ़ वीपीसी के दायरे में रूट किया जा सकता है. इन्हें ग्लोबल आईपीवी6 इंटरनेट में रूट नहीं किया जा सकता.

Google Cloud की ओर से असाइन किए गए यूएलए पते, सभी वीपीसी नेटवर्क में यूनीक होते हैं. Google Cloud यह पक्का करता है कि किसी भी दो वीपीसी नेटवर्क को एक जैसा यूएलए प्रीफ़िक्स असाइन न किया जाए. इससे वीपीसी नेटवर्क में रेंज के ओवरलैप होने की समस्या दूर हो जाती है.

आपके पास यह विकल्प होता है कि Google Cloud आपके नेटवर्क को /48 अपने-आप असाइन करे या आपके पास कोई खास /48 IPv6 प्रीफ़िक्स चुनने का विकल्प होता है. अगर आपने जो IPv6 प्रीफ़िक्स डाला है वह पहले से ही किसी दूसरे वीपीसी या आपके कंपनी की इमारत में नेटवर्क को असाइन किया गया है, तो आपके पास कोई दूसरी रेंज चुनने का विकल्प है.

5. नेटवर्क की ज़रूरी शर्तें

यहां Consumer और Producer नेटवर्क के लिए, नेटवर्क से जुड़ी ज़रूरी शर्तों के बारे में बताया गया है:

उपयोगकर्ता नेटवर्क (us-central1 में डिप्लॉय किए गए सभी कॉम्पोनेंट)

घटक

ब्यौरा

VPC

ड्यूल-स्टैक नेटवर्किंग के लिए, यूएलए की सुविधा चालू करके कस्टम मोड वीपीसी का इस्तेमाल करना ज़रूरी है

पीएससी एंडपॉइंट

IPV6 पीएससी एंडपॉइंट का इस्तेमाल, प्रोड्यूसर की सेवा को ऐक्सेस करने के लिए किया जाता है

सबनेट

ड्युअल-स्टैक

GCE

ड्युअल-स्टैक

Producer Network(us-central1 में डिप्लॉय किए गए सभी कॉम्पोनेंट)

घटक

ब्यौरा

VPC

ड्यूल-स्टैक नेटवर्किंग के लिए, यूएलए की सुविधा चालू करके कस्टम मोड वीपीसी का इस्तेमाल करना ज़रूरी है

पीएससी NAT सबनेट

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

पीएससी आगे बढ़ाने का नियम

ड्युअल-स्टैक. इंटरनल पासथ्रू नेटवर्क लोड बैलेंसर

सेहत की जांच

लोड बैलेंस किए जा रहे इंस्टेंस पर लागू होने वाला इन्ग्रेस नियम. इससे Google Cloud के हेल्थ चेकिंग सिस्टम (2600:2d00:1:b029::/64) से ट्रैफ़िक को अनुमति मिलती है.

बैकएंड सर्विस

बैकएंड सेवा, आपके लोड बैलेंसर और बैकएंड संसाधनों के बीच एक पुल की तरह काम करती है. ट्यूटोरियल में, बैकएंड सेवा को अनमैनेज्ड इंस्टेंस ग्रुप से जोड़ा गया है.

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

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

6. कोडलैब टोपोलॉजी

11a36b2a52d60fe7.png

7. सेटअप और ज़रूरी शर्तें

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

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

fbef9caa1602edd0.pnga99b7ace416376c4.png5e3ff691252acf41.png

  • प्रोजेक्ट का नाम, इस प्रोजेक्ट में हिस्सा लेने वाले लोगों के लिए डिसप्ले नेम होता है. यह एक वर्ण स्ट्रिंग है, जिसका इस्तेमाल Google API नहीं करते हैं. इसे कभी भी अपडेट किया जा सकता है.
  • प्रोजेक्ट आईडी, सभी Google Cloud प्रोजेक्ट के लिए यूनीक होता है. साथ ही, इसे बदला नहीं जा सकता. Cloud Console, अपने-आप एक यूनीक स्ट्रिंग जनरेट करता है. आम तौर पर, आपको इससे कोई फ़र्क़ नहीं पड़ता कि यह क्या है. ज़्यादातर कोडलैब में, आपको अपने प्रोजेक्ट आईडी (आम तौर पर PROJECT_ID के तौर पर पहचाना जाता है) का रेफ़रंस देना होगा. अगर आपको जनरेट किया गया आईडी पसंद नहीं है, तो आपके पास कोई दूसरा रैंडम आईडी जनरेट करने का विकल्प होता है. इसके अलावा, आपके पास अपना नाम आज़माने का विकल्प भी है. इससे आपको पता चलेगा कि वह नाम उपलब्ध है या नहीं. इस चरण के बाद, इसे बदला नहीं जा सकता. यह प्रोजेक्ट की अवधि तक बना रहता है.
  • आपकी जानकारी के लिए बता दें कि एक तीसरी वैल्यू भी होती है, जिसे प्रोजेक्ट नंबर कहते हैं. इसका इस्तेमाल कुछ एपीआई करते हैं. इन तीनों वैल्यू के बारे में ज़्यादा जानने के लिए, दस्तावेज़ देखें.
  1. इसके बाद, आपको Cloud Console में बिलिंग की सुविधा चालू करनी होगी, ताकि Cloud संसाधनों/एपीआई का इस्तेमाल किया जा सके. इस कोडलैब को पूरा करने में ज़्यादा खर्च नहीं आएगा. इस ट्यूटोरियल के बाद बिलिंग से बचने के लिए, संसाधनों को शट डाउन करें. इसके लिए, बनाए गए संसाधनों को मिटाएं या प्रोजेक्ट को मिटाएं. Google Cloud के नए उपयोगकर्ताओं को, 300 डॉलर का क्रेडिट मुफ़्त में आज़माने का प्रोग्राम मिलता है.

Cloud Shell शुरू करें

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

Google Cloud Console में, सबसे ऊपर दाएं कोने में मौजूद टूलबार पर, Cloud Shell आइकॉन पर क्लिक करें:

55efc1aaa7a4d3ad.png

इसे चालू करने और एनवायरमेंट से कनेक्ट करने में सिर्फ़ कुछ सेकंड लगते हैं. यह प्रोसेस पूरी होने के बाद, आपको कुछ ऐसा दिखेगा:

7ffe5cbb04455448.png

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

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

एपीआई चालू करें

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

gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=us-central1
echo $project
echo $region

ज़रूरी सभी सेवाएं चालू करें:

gcloud services enable compute.googleapis.com

9. प्रोड्यूसर वीपीसी नेटवर्क बनाना

VPC नेटवर्क

Cloud Shell में, यह तरीका अपनाएं:

gcloud compute networks create producer-vpc --subnet-mode custom --enable-ula-internal-ipv6

Google, Consumer VPC को दुनिया भर में यूनीक /48 सबनेट असाइन करता है. असाइन किया गया सबनेट देखने के लिए, यह तरीका अपनाएं:

Cloud Console में, यहां जाएं:

वीपीसी नेटवर्क

130648bcdb9266b1.png

सबनेट बनाना

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

Cloud Shell में, पीएससी NAT सबनेट बनाएं:

gcloud compute networks subnets create producer-nat-dual-stack-subnet --network producer-vpc --range 172.16.10.0/28 --region $region --purpose=PRIVATE_SERVICE_CONNECT --stack-type=IPV4_IPV6 --ipv6-access-type=INTERNAL

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

Cloud Shell में, PSC NAT IPv6 सबनेट पाएं.

gcloud compute networks subnets describe producer-nat-dual-stack-subnet --region=us-central1 | grep -i internalIpv6Prefix:

अनुमानित नतीजा:

user@cloudshell$ gcloud compute networks subnets describe producer-nat-dual-stack-subnet --region=us-central1 | grep -i internalIpv6Prefix:
internalIpv6Prefix: fd20:b4a:ea9f:2:0:0:0:0/64

Cloud Shell में, प्रोड्यूसर के फ़ॉरवर्डिंग नियम के लिए सबनेट बनाएं:

gcloud compute networks subnets create producer-dual-stack-fr-subnet --network producer-vpc --range 172.16.20.0/28 --region $region --enable-private-ip-google-access --stack-type=IPV4_IPV6 --ipv6-access-type=INTERNAL

Cloud Shell में, प्रोड्यूसर वीएम सबनेट बनाएं:

gcloud compute networks subnets create producer-dual-stack-vm-subnet --network producer-vpc --range 172.16.30.0/28 --region $region --enable-private-ip-google-access --stack-type=IPV4_IPV6 --ipv6-access-type=INTERNAL

पब्लिक NAT गेटवे बनाना

apache को डाउनलोड करने के लिए, producer-vm को इंटरनेट का ऐक्सेस करने की ज़रूरत होती है. हालांकि, GCE इंस्टेंस के पास कोई बाहरी आईपी नहीं होता. इसलिए, Cloud NAT पैकेज डाउनलोड करने के लिए इंटरनेट इग्रेस डेटा ट्रैफ़िक उपलब्ध कराएगा.

Cloud Shell में जाकर, Cloud Router बनाएं:

gcloud compute routers create producer-cloud-router --network producer-vpc --region us-central1

Cloud Shell में, इंटरनेट इग्रेस की सुविधा चालू करने वाला Cloud NAT गेटवे बनाएं:

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

नेटवर्क फ़ायरवॉल की नीति और फ़ायरवॉल के नियम बनाना

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 producer-vpc --global-firewall-policy

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

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

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

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

Cloud Shell में, यह तरीका अपनाएं:

gcloud compute network-firewall-policies rules create 2000 --action ALLOW --firewall-policy producer-vpc-policy --description "allow traffic from health check probe range" --direction INGRESS --src-ip-ranges 2600:2d00:1:b029::/64 --layer4-configs tcp:80 --global-firewall-policy

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

फ़ायरवॉल के नियम <insert-your-psc-nat-ipv6-subnet> को अपडेट करें. इसके लिए, कोडलैब में पहले मिला IPv6 पीएससी NAT सबनेट इस्तेमाल करें.

Cloud Shell में, यह तरीका अपनाएं:

gcloud compute network-firewall-policies rules create 2001 --action ALLOW --firewall-policy producer-vpc-policy --description "allow traffic from PSC NAT subnet" --direction INGRESS --src-ip-ranges <insert-your-psc-nat-ipv6-subnet> --global-firewall-policy --layer4-configs=tcp

प्रोड्यूसर वीएम बनाना

Cloud Shell में, producer-vm apache वेब सर्वर बनाएं:

gcloud compute instances create producer-vm \
    --project=$project \
    --machine-type=e2-micro \
    --image-family debian-12 \
    --no-address \
    --image-project debian-cloud \
    --zone us-central1-a \
    --subnet=producer-dual-stack-vm-subnet \
    --stack-type=IPV4_IPV6 \
    --metadata startup-script="#! /bin/bash
      sudo apt-get update
      sudo apt-get install apache2 -y
      sudo service apache2 restart
      echo 'Welcome to Producer-VM !!' | tee /var/www/html/index.html
      EOF"

Cloud Shell में, बिना मैनेज किया गया इंस्टेंस ग्रुप बनाएं. इसमें producer-vm इंस्टेंस और हेल्थ चेक शामिल हों:

gcloud compute instance-groups unmanaged create producer-instance-group --zone=us-central1-a

gcloud compute instance-groups unmanaged add-instances producer-instance-group  --zone=us-central1-a --instances=producer-vm

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

10. प्रोड्यूसर सेवा बनाना

लोड बैलेंसर कॉम्पोनेंट बनाना

Cloud Shell में, यह तरीका अपनाएं:

gcloud compute backend-services create producer-backend-svc --load-balancing-scheme=internal --protocol=tcp --region=us-central1 --health-checks=hc-http-80

gcloud compute backend-services add-backend producer-backend-svc --region=us-central1 --instance-group=producer-instance-group --instance-group-zone=us-central1-a

प्रोड्यूसर के फ़ॉरवर्डिंग नियम (इंटरनल नेटवर्क लोड बैलेंसर) के लिए IPv6 पता असाइन किया गया है.

Cloud Shell में, यह तरीका अपनाएं:

gcloud compute addresses create producer-fr-ipv6-address \
    --region=us-central1 \
    --subnet=producer-dual-stack-fr-subnet \
    --ip-version=IPV6

नीचे दिए गए सिंटैक्स में, पहले से तय किए गए IPv6 पते producer-fr-ipv6-address के साथ, फ़ॉरवर्ड करने का नियम (इंटरनल नेटवर्क लोड बैलेंसर) बनाएं. यह पता, बैकएंड सेवा, producer-backend-svc से जुड़ा है

Cloud Shell में, यह तरीका अपनाएं:

gcloud compute forwarding-rules create producer-fr --region=us-central1 --load-balancing-scheme=internal --network=producer-vpc --subnet=producer-dual-stack-fr-subnet --address=producer-fr-ipv6-address --ip-protocol=TCP --ports=all --backend-service=producer-backend-svc --backend-service-region=us-central1 --ip-version=IPV6

सर्विस अटैचमेंट बनाएं

Cloud Shell में, सेवा अटैचमेंट बनाएं:

gcloud compute service-attachments create ipv6-producer-svc-attachment --region=$region --producer-forwarding-rule=producer-fr --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=producer-nat-dual-stack-subnet

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

selfLink: projects/<your-project-id>/regions/us-central1/serviceAttachments/ipv4-producer-svc-attachment

Cloud Shell में, यह तरीका अपनाएं:

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

अनुमानित आउटपुट का उदाहरण

connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-08-27T05:59:17.188-07:00'
description: ''
enableProxyProtocol: false
fingerprint: EaultrFOzc4=
id: '8752850315312657226'
kind: compute#serviceAttachment
name: ipv6-producer-svc-attachment
natSubnets:
- https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/subnetworks/producer-nat-dual-stack-subnet
pscServiceAttachmentId:
  high: '1053877600257000'
  low: '8752850315312657226'
reconcileConnections: false
region: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1
selfLink: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/serviceAttachments/ipv6-producer-svc-attachment
targetService: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/forwardingRules/producer-fr

Cloud Console में, यहां जाएं:

नेटवर्क सेवाएं → Private Service Connect → पब्लिश की गई सेवाएं

4356b8ab4a385eb6.png312795be39b21f62.png

11. उपयोगकर्ता वीपीसी नेटवर्क बनाना

VPC नेटवर्क

Cloud Shell में, IPv6 ULA चालू करके कंज्यूमर वीपीसी बनाएं:

gcloud compute networks create consumer-vpc \
    --subnet-mode=custom \
    --enable-ula-internal-ipv6

Google, Consumer VPC को दुनिया भर में यूनीक /48 सबनेट असाइन करता है. असाइन किया गया सबनेट देखने के लिए, यह तरीका अपनाएं:

Cloud Console में, यहां जाएं:

वीपीसी नेटवर्क

f0cb0565e4af4c72.png

सबनेट बनाएं

Cloud Shell में, ड्यूअल-स्टैक वाला GCE सबनेट बनाएं:

gcloud compute networks subnets create consumer-dual-stack-subnet --network consumer-vpc --range=192.168.20.0/28 --stack-type=IPV4_IPV6 --ipv6-access-type=INTERNAL --region $region --enable-private-ip-google-access

Cloud Shell में, डुअल-स्टैक पीएससी एंडपॉइंट सबनेट बनाएं:

gcloud compute networks subnets create psc-dual-stack-endpoint-subnet --network consumer-vpc --range=192.168.21.0/28 --stack-type=IPV4_IPV6 --ipv6-access-type=INTERNAL --region $region --enable-private-ip-google-access

नेटवर्क फ़ायरवॉल की नीति और फ़ायरवॉल के नियम बनाना

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 consumer-vpc --global-firewall-policy

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

उपभोक्ता नेटवर्क के लिए, सिर्फ़ आईएपी ऐक्सेस से एसएसएच की ज़रूरत होती है.

12. वीएम और पीएससी एंडपॉइंट बनाना और डूअल-स्टैक कनेक्टिविटी की जांच करना

डुअल-स्टैक वीएम की जांच करें बनाएं

Cloud Shell में, ड्यूअल-स्टैक सबनेट में ड्यूअल-स्टैक GCE इंस्टेंस बनाएं:

gcloud compute instances create consumer-vm-ipv4-ipv6 --zone=us-central1-a --subnet=consumer-dual-stack-subnet --no-address --stack-type=IPV4_IPV6

पीएससी एंडपॉइंट का स्टैटिक IPv6 पता बनाएं

Cloud Shell में, पीएससी एंडपॉइंट के लिए स्टैटिक IPv6 पता बनाएं:

gcloud compute addresses create psc-ipv6-endpoint-ip --region=$region --subnet=psc-dual-stack-endpoint-subnet --ip-version=IPV6

पीएससी एंडपॉइंट का स्टैटिक IPv6 पता पाना

Cloud Shell में, पीएससी का वह IPv6 पता पाएं जिसका इस्तेमाल करके, आपको प्रोड्यूसर सेवा तक पहुंचना है:

gcloud compute addresses describe psc-ipv6-endpoint-ip --region=us-central1 | grep -i address:

आउटपुट का उदाहरण:

user@cloudshell$ gcloud compute addresses describe psc-ipv6-endpoint-ip --region=us-central1 | grep -i address:
address: 'fd20:799:4ea3:1::'

IPv6 PSC एंडपॉइंट बनाएं

Cloud Shell में, पीएससी एंडपॉइंट बनाएं. इसके लिए, SERVICE ATTACHMENT URI को उस यूआरआई से अपडेट करें जिसे आपने Service Attachment बनाते समय कैप्चर किया था.

gcloud compute forwarding-rules create psc-ipv6-endpoint --region=$region --network=consumer-vpc --address=psc-ipv6-endpoint-ip --target-service-attachment=[SERVICE ATTACHMENT URI]

पीएसटी एंडपॉइंट की पुष्टि करना

आइए, पुष्टि करें कि प्रोड्यूसर ने पीएससी एंडपॉइंट स्वीकार कर लिया है. Cloud Console में, यहां जाएं:

नेटवर्क सेवाएं → Private Service Connect → कनेक्ट किए गए एंडपॉइंट

1ee60ea44c5027dd.png

कनेक्टिविटी की जांच करें

Cloud Shell में, ssh का इस्तेमाल करके ड्यूअल-स्टैक GCE इंस्टेंस consumer-vm-ipv4-ipv6 में लॉग इन करें.

gcloud compute ssh --zone us-central1-a "consumer-vm-ipv4-ipv6" --tunnel-through-iap --project $project

अब जब आपने ड्यूअल-स्टैक GCE इंस्टेंस में लॉग इन कर लिया है, तो पिछले चरण में पहचाने गए IPv6 पतों का इस्तेमाल करके, psc एंडपॉइंट और psc-ipv6-एंडपॉइंट पर कर्ल करें.

curl -6 http://[insert-your-ipv6-psc-endpoint]

अनुमानित आउटपुट:

user@consumer-vm-ipv4-ipv6$ curl -6 http://[fd20:799:4ea3:1::]
Welcome to Producer-VM !!

consumer-vm-ipv4-ipv6 GCE इंस्टेंस में, इंस्टेंस से लॉग आउट करें. इसके लिए, बाहर निकलें और Cloud Shell पर वापस जाएं.

exit

अनुमानित आउटपुट:

user@consumer-vm-ipv4-ipv6:~$ exit
logout
Connection to compute.715101668351438678 closed.

13. क्लीनअप करने का तरीका

किसी एक Cloud Shell टर्मिनल से लैब कॉम्पोनेंट मिटाएं

gcloud compute forwarding-rules delete psc-ipv6-endpoint --region=us-central1 -q

gcloud compute instances delete consumer-vm-ipv4-ipv6 --zone=us-central1-a -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=consumer-vpc --global-firewall-policy -q

gcloud compute network-firewall-policies delete consumer-vpc-policy --global -q

gcloud compute addresses delete psc-ipv6-endpoint-ip --region=us-central1 -q

gcloud compute networks subnets delete consumer-dual-stack-subnet psc-dual-stack-endpoint-subnet --region=us-central1 -q

gcloud compute networks delete consumer-vpc -q

gcloud compute service-attachments delete ipv6-producer-svc-attachment --region=us-central1 -q

gcloud compute forwarding-rules delete producer-fr --region=us-central1 -q

gcloud compute backend-services delete producer-backend-svc --region=us-central1 -q

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

gcloud compute network-firewall-policies rules delete 2001 --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=producer-vpc --global-firewall-policy -q

gcloud compute network-firewall-policies delete producer-vpc-policy --global -q

gcloud compute instance-groups unmanaged delete producer-instance-group --zone=us-central1-a -q

gcloud compute instances delete producer-vm --zone=us-central1-a -q

gcloud compute routers nats delete producer-nat-gw --router=producer-cloud-router --router-region=us-central1 -q

gcloud compute routers delete producer-cloud-router --region=us-central1 -q

gcloud compute addresses delete producer-fr-ipv6-address --region=us-central1 -q

gcloud compute networks subnets delete producer-dual-stack-fr-subnet  producer-dual-stack-vm-subnet producer-nat-dual-stack-subnet --region=us-central1 -q

gcloud compute networks delete producer-vpc -q

14. बधाई हो

बधाई हो, आपने Private Service Connect 64 को कॉन्फ़िगर कर लिया है और इसकी पुष्टि कर ली है.

आपने प्रोड्यूसर इन्फ़्रास्ट्रक्चर बनाया और कंज्यूमर वीपीसी नेटवर्क में IPv6 कंज्यूमर एंडपॉइंट बनाने का तरीका सीखा. इससे IPv6 प्रोड्यूसर सेवा से कनेक्ट किया जा सकता है.

Cosmopup को कोडलैब बहुत पसंद हैं!!

c911c127bffdee57.jpeg

आगे क्या करना है?

इन कोडलैब को आज़माएं...

ज़्यादा जानकारी और वीडियो

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