1. परिचय
Private Service Connect की मदद से, संगठन Google Cloud के नेटवर्क में सेवाओं का इस्तेमाल बेहतर तरीके से कर सकते हैं. साथ ही, यह IPv4 के साथ-साथ IPv6 पते के लिए भी पूरी सहायता उपलब्ध कराता है. इसमें बेहतर सुरक्षा, आसान कनेक्टिविटी, बेहतर परफ़ॉर्मेंस, और एक ही जगह से मैनेज करने की सुविधा मिलती है. इसलिए, यह उन कारोबारों के लिए सबसे सही विकल्प है जो भरोसेमंद, बेहतर, और असरदार सेवा का इस्तेमाल करने के लिए मॉडल खोज रहे हैं. यह मॉडल, आने वाले समय में नेटवर्किंग के लिए तैयार है. चाहे आपको कोई हाइब्रिड क्लाउड बनाना हो, अपने संगठन में सेवाएं शेयर करनी हों या तीसरे पक्ष की सेवाएं ऐक्सेस करनी हों, पीएससी आपको Google Cloud की पूरी क्षमता का इस्तेमाल करने के लिए, आसान और सुरक्षित तरीका उपलब्ध कराता है. साथ ही, IPv6 के फ़ायदे भी मिलते हैं.
आपको क्या सीखने को मिलेगा
- PSC 64 के मुख्य फ़ायदे
- Private Service Connect 64 के साथ काम करने वाला अनुवाद
- ड्यूअल स्टैक यूएलए के बारे में खास जानकारी
- नेटवर्क की ज़रूरी शर्तें
- Private Service Connect प्रोड्यूसर सेवा बनाना
- Private Service Connect का एंडपॉइंट बनाना
- IPv4 वीएम से Private Service Connect एंडपॉइंट से कनेक्ट करना
- ड्यूअल-स्टैक वीएम से Private Service Connect एंडपॉइंट से कनेक्ट करना
आपको इन चीज़ों की ज़रूरत होगी
- मालिक की अनुमतियों वाला Google Cloud प्रोजेक्ट
2. आपको क्या बनाना है
आपको Private Service Connect (पीएससी) की मदद से, पब्लिश की गई सेवा के तौर पर Apache वेब सर्वर को डिप्लॉय करने के लिए, एक प्रोड्यूसर नेटवर्क बनाना होगा. पब्लिश करने के बाद, आपको Producer सेवा के ऐक्सेस की पुष्टि करने के लिए ये कार्रवाइयां करनी होंगी:
- कंज्यूमर VPC, IPv4 GCE इंस्टेंस से, IPv4 PSC एंडपॉइंट को टारगेट करें, ताकि प्रोड्यूसर सेवा तक पहुंचा जा सके.
- कंज्यूमर VPC के ड्यूअल-स्टैक GCE इंस्टेंस से, प्रोड्यूसर सेवा तक पहुंचने के लिए आईपीवी6 पीएससी एंडपॉइंट को टारगेट करें.
PSC 64 के मुख्य फ़ायदे
- आसान इंटिग्रेशन: पीएससी, IPv6 के लिए कॉन्फ़िगर किए गए VPC नेटवर्क के साथ आसानी से इंटिग्रेट हो जाता है. इससे, आपको अपनी सेवा के कनेक्शन के लिए IPv6 पते के फ़ायदों का फ़ायदा मिलता है.
- ड्यूअल-स्टैक के साथ काम करना: PSC, ड्यूअल-स्टैक कॉन्फ़िगरेशन के साथ काम करता है. इससे एक ही VPC में IPv4 और IPv6 का एक साथ इस्तेमाल किया जा सकता है. साथ ही, आपके नेटवर्क को आने वाले समय के लिए तैयार किया जा सकता है.
- आसान ट्रांज़िशन: पीएससी, IPv6 पर ट्रांज़िशन को आसान बनाता है. इससे, आपको अपने मौजूदा IPv4 इन्फ़्रास्ट्रक्चर के साथ-साथ, धीरे-धीरे IPv6 को अपनाने की सुविधा मिलती है.
- प्रोड्यूसर के लिए सहायता: प्रोड्यूसर को ड्यूअल-स्टैक का इस्तेमाल करने की ज़रूरत नहीं है. इसके बजाय, कंज्यूमर के पास आईपीवी4 या आईपीवी6 पीएससी एंडपॉइंट को डिप्लॉय करने का विकल्प होता है.
3. Private Service Connect 64 और 66 के साथ काम करने वाला अनुवाद
उपभोक्ता के लिए ध्यान देने वाली बातें
एंडपॉइंट का आईपी वर्शन, IPv4 या IPv6 में से कोई एक हो सकता है, लेकिन दोनों नहीं. अगर पते का सबनेट सिंगल-स्टैक है, तो उपभोक्ता आईपीवी4 पते का इस्तेमाल कर सकते हैं. अगर पते का सबनेट ड्यूअल-स्टैक है, तो उपभोक्ता IPv4 या IPv6 पते का इस्तेमाल कर सकते हैं. उपभोक्ता, एक ही सेवा अटैचमेंट से 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 सेवा अटैचमेंट से कनेक्ट करने की सुविधा नहीं देता. इस मामले में, एंडपॉइंट बनाने की प्रोसेस पूरी नहीं हो पाती और गड़बड़ी का यह मैसेज दिखता है:
आईपीवी4 पते वाले निजी सेवा कनेक्शन के फ़ॉरवर्डिंग नियम से, आईपीवी6 सेवा अटैचमेंट को टारगेट नहीं किया जा सकता.
4. ड्यूअल स्टैक यूएलए के बारे में खास जानकारी
Google Cloud, यूएलए प्राइवेट आईपीवी6 सबनेट और वीएम बनाने की सुविधा देता है. आरएफ़सी 4193, लोकल कम्यूनिकेशन के लिए आईपीवी6 पते की स्कीम तय करता है. यह स्कीम, VPC के अंदर होने वाले कम्यूनिकेशन के लिए सबसे सही है. यूएलए पतों को दुनिया भर में रूट नहीं किया जा सकता. इसलिए, आपके वीएम इंटरनेट से पूरी तरह से अलग होते हैं. ये वीएम, आईपीवी6 का इस्तेमाल करके RFC-1918 की तरह काम करते हैं. Google Cloud, /48 VPC नेटवर्क ULA प्रीफ़िक्स बनाने की अनुमति देता है, ताकि आपके सभी /64 IPv6 ULA सबनेट उस VPC नेटवर्क रेंज से असाइन किए जाएं.
Google Cloud पर काम करने वाले, दुनिया भर में यूनीक बाहरी IPv6 पतों की तरह ही, हर ULA IPv6 चालू सबनेट को /48 VPC नेटवर्क ULA रेंज से /64 सबनेट मिलेगा. साथ ही, हर VM को उस सबनेट से /96 पता असाइन किया जाएगा.
RFC4193 में, fc00::/7 की रेंज में IPv6 पते का स्पेस तय किया गया है. यूएलए पतों को निजी नेटवर्क/साइटों में आसानी से असाइन और इस्तेमाल किया जा सकता है. Google Cloud, fd20::/20 रेंज से सभी यूएलए पते असाइन करता है. ये पते सिर्फ़ वीपीसी के दायरे में ही रूट किए जा सकते हैं. इन्हें ग्लोबल आईपीवी6 इंटरनेट में रूट नहीं किया जा सकता.
Google Cloud से असाइन किए गए यूएलए पते, सभी वीपीएन नेटवर्क में यूनीक होते हैं. Google Cloud यह पक्का करता है कि किसी भी दो VPC नेटवर्क को एक ही यूएलए प्रीफ़िक्स असाइन न किया गया हो. इससे, VPC नेटवर्क में ओवरलैप होने वाली रेंज की समस्या हल हो जाती है.
आपके पास Google Cloud को अपने नेटवर्क के लिए /48 को अपने-आप असाइन करने की अनुमति देने का विकल्प है. इसके अलावा, आपके पास कोई खास /48 आईपीवी6 प्रीफ़िक्स चुनने का विकल्प भी है. अगर आपका चुना गया IPv6 प्रीफ़िक्स, पहले से ही किसी दूसरे VPC या आपकी कंपनी की इमारत में मौजूद नेटवर्क पर असाइन किया गया है, तो कोई दूसरी रेंज चुनी जा सकती है.
5. नेटवर्क की ज़रूरी शर्तें
यहां उपभोक्ता और प्रोड्यूसर नेटवर्क के लिए, नेटवर्क से जुड़ी ज़रूरी शर्तों के बारे में बताया गया है:
Consumer Network (us-central1 में डिप्लॉय किए गए सभी कॉम्पोनेंट)
घटक | ब्यौरा |
VPC | ड्यूअल-स्टैक नेटवर्किंग के लिए, ULA की सुविधा चालू किए गए कस्टम मोड वाले VPC की ज़रूरत होती है |
पीएससी एंडपॉइंट |
|
सबनेट | IPv4 और ड्यूअल-स्टैक |
GCE (जीसीई) | IPv4 और ड्यूअल-स्टैक |
प्रोड्यूसर नेटवर्क(us-central1 में डिप्लॉय किए गए सभी कॉम्पोनेंट)
घटक | ब्यौरा |
VPC | कस्टम मोड VPC, ULA चालू नहीं है |
पीएससी एनएटी सबनेट | IPv4. उपभोक्ता के VPC नेटवर्क के पैकेट, सोर्स NAT (SNAT) का इस्तेमाल करके ट्रांसलेट किए जाते हैं, ताकि उनके ओरिजनल सोर्स आईपी पते, प्रोड्यूसर के VPC नेटवर्क में NAT सबनेट के सोर्स आईपी पतों में बदल जाएं. |
पीएससी के लिए कॉल फ़ॉरवर्ड करने का नियम | |
ऐप्लिकेशन की परफ़ॉर्मेंस की जाँच करें | लोड बैलेंस किए जा रहे इंस्टेंस पर लागू होने वाला इन्ग्रेस नियम. इससे Google Cloud के हेल्थ चेकिंग सिस्टम (130.211.0.0/22 और 35.191.0.0/16) से ट्रैफ़िक आने की अनुमति मिलती है. |
बैकएंड सेवा | बैकएंड सेवा, आपके लोड बैलेंसर और बैकएंड संसाधनों के बीच ब्रिज के तौर पर काम करती है. ट्यूटोरियल में, बैकएंड सेवा को मैनेज नहीं किए जा सकने वाले इंस्टेंस ग्रुप से जोड़ा गया है. |
मैनेज नहीं किया जा रहा इंस्टेंस ग्रुप | ऐसे वीएम के साथ काम करता है जिनके लिए अलग से कॉन्फ़िगरेशन या ट्यूनिंग की ज़रूरत होती है. अपने-आप स्केल होने की सुविधा काम नहीं करती. |
6. कोडलैब की टोपोलॉजी
7. सेटअप और ज़रूरी शर्तें
अपने हिसाब से एनवायरमेंट सेट अप करना
- Google Cloud Console में साइन इन करें और नया प्रोजेक्ट बनाएं या किसी मौजूदा प्रोजेक्ट का फिर से इस्तेमाल करें. अगर आपके पास पहले से कोई Gmail या Google Workspace खाता नहीं है, तो आपको एक खाता बनाना होगा.
- प्रोजेक्ट का नाम, इस प्रोजेक्ट में हिस्सा लेने वाले लोगों के लिए डिसप्ले नेम होता है. यह एक वर्ण स्ट्रिंग है, जिसका इस्तेमाल Google API नहीं करते. इसे कभी भी अपडेट किया जा सकता है.
- प्रोजेक्ट आईडी, Google Cloud के सभी प्रोजेक्ट के लिए यूनीक होता है. साथ ही, इसे सेट करने के बाद बदला नहीं जा सकता. Cloud Console, अपने-आप एक यूनीक स्ट्रिंग जनरेट करता है. आम तौर पर, आपको यह जानने की ज़रूरत नहीं होती कि यह स्ट्रिंग क्या है. ज़्यादातर कोडलैब में, आपको अपने प्रोजेक्ट आईडी का रेफ़रंस देना होगा. आम तौर पर, इसे
PROJECT_ID
के तौर पर पहचाना जाता है. अगर आपको जनरेट किया गया आईडी पसंद नहीं आता है, तो कोई दूसरा आईडी जनरेट किया जा सकता है. इसके अलावा, आपके पास खुद का कोई दूसरा नाम चुनने का विकल्प भी है. इस चरण के बाद, इसे बदला नहीं जा सकता. यह प्रोजेक्ट के दौरान बना रहता है. - आपकी जानकारी के लिए बता दें कि तीसरी वैल्यू, प्रोजेक्ट नंबर होती है. इसका इस्तेमाल कुछ एपीआई करते हैं. दस्तावेज़ में इन तीनों वैल्यू के बारे में ज़्यादा जानें.
- इसके बाद, आपको Cloud के संसाधनों/एपीआई का इस्तेमाल करने के लिए, Cloud Console में बिलिंग की सुविधा चालू करनी होगी. इस कोडलैब को चलाने के लिए, आपसे कोई शुल्क नहीं लिया जाएगा. इस ट्यूटोरियल के बाद बिलिंग से बचने के लिए, बनाए गए संसाधनों को बंद किया जा सकता है या प्रोजेक्ट को मिटाया जा सकता है. Google Cloud के नए उपयोगकर्ता, 300 डॉलर के मुफ़्त ट्रायल वाले कार्यक्रम में शामिल हो सकते हैं.
Cloud Shell शुरू करना
Google Cloud को आपके लैपटॉप से रिमोट तौर पर इस्तेमाल किया जा सकता है. हालांकि, इस कोडलैब में आपको Google Cloud Shell का इस्तेमाल करना होगा. यह Cloud में चलने वाला कमांड-लाइन एनवायरमेंट है.
Google Cloud Console में, सबसे ऊपर दाएं टूलबार में मौजूद Cloud Shell आइकॉन पर क्लिक करें:
एनवायरमेंट से कनेक्ट होने और उसे प्रोवाइड करने में सिर्फ़ कुछ मिनट लगेंगे. इसके पूरा होने पर, आपको कुछ ऐसा दिखेगा:
इस वर्चुअल मशीन में, डेवलपमेंट के लिए ज़रूरी सभी टूल लोड होते हैं. यह 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
सबनेट बनाना
नेटवर्क पता बदलने के मकसद से, पीएससी सबनेट को पीएससी सेवा अटैचमेंट से जोड़ा जाएगा. प्रोडक्शन के इस्तेमाल के उदाहरणों के लिए, इस सबनेट का साइज़ सही होना चाहिए, ताकि अटैच किए गए सभी पीएससी एंडपॉइंट से आने वाले ट्रैफ़िक को मैनेज किया जा सके. ज़्यादा जानकारी के लिए, पीएससी एनएटी सबनेट साइज़िंग दस्तावेज़ देखें.
Cloud Shell में, पीएससी NAT सबनेट बनाएं:
gcloud compute networks subnets create producer-psc-nat-subnet --network producer-vpc --range 172.16.10.0/28 --region $region --purpose=PRIVATE_SERVICE_CONNECT
Cloud Shell में, प्रोड्यूसर फ़ॉरवर्डिंग नियम सबनेट बनाएं:
gcloud compute networks subnets create producer-psc-fr-subnet --network producer-vpc --range 172.16.20.0/28 --region $region --enable-private-ip-google-access
Cloud Shell में, प्रोड्यूसर VM सबनेट बनाएं:
gcloud compute networks subnets create producer-psc-vm-subnet --network producer-vpc --range 172.16.30.0/28 --region $region --enable-private-ip-google-access
सार्वजनिक NAT गेटवे बनाना
Apache डाउनलोड करने के लिए, प्रोड्यूसर-वीएम को इंटरनेट ऐक्सेस की ज़रूरत होती है. हालांकि, GCE इंस्टेंस में कोई बाहरी आईपी नहीं होता. इसलिए, पैकेज डाउनलोड करने के लिए, Cloud NAT इंटरनेट एक्सग्रेस देगा.
Cloud Shell में, क्लाउड राउटर बनाएं:
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 130.211.0.0/22,35.191.0.0/16 --layer4-configs tcp:80 --global-firewall-policy
नीचे दिया गया फ़ायरवॉल नियम, पीएससी एनएटी सबनेट की रेंज से नेटवर्क के सभी इंस्टेंस तक ट्रैफ़िक को अनुमति देता है. प्रोडक्शन एनवायरमेंट में, यह फ़ायरवॉल नियम सिर्फ़ उस प्रोड्यूसर सेवा से जुड़े इंस्टेंस तक ही सीमित होना चाहिए.
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 172.16.10.0/28 --global-firewall-policy --layer4-configs=tcp
प्रोड्यूसर वीएम बनाना
Cloud Shell में, प्रोड्यूसर-वीएम 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-psc-vm-subnet \ --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 में, बिना मैनेज किए जाने वाला इंस्टेंस ग्रुप बनाएं. इसमें, प्रोड्यूसर-वीएम इंस्टेंस और परफ़ॉर्मेंस की जांच शामिल करें:
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
नीचे दिए गए सिंटैक्स में, बैकएंड सेवा, producer-backend-svc से जुड़े पहले से तय किए गए आईपी पते 172.16.2.3 के साथ, फ़ॉरवर्ड करने का नियम (इंटरनल नेटवर्क लोड बैलेंसर) बनाएं
Cloud Shell में, ये काम करें:
gcloud compute forwarding-rules create producer-fr --region=us-central1 --load-balancing-scheme=internal --network=producer-vpc --subnet=producer-psc-fr-subnet --address=172.16.20.3 --ip-protocol=TCP --ports=all --backend-service=producer-backend-svc --backend-service-region=us-central1
सेवा से जुड़ा अटैचमेंट बनाना
Cloud Shell में, सेवा अटैचमेंट बनाएं:
gcloud compute service-attachments create ipv4-producer-svc-attachment --region=$region --producer-forwarding-rule=producer-fr --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=producer-psc-nat-subnet
इसके बाद, selfLink यूआरआई में प्रोजेक्ट से शुरू होने वाले सेवा अटैचमेंट को ढूंढें और नोट करें. ऐसा इसलिए करना है, ताकि उपभोक्ता के एनवायरमेंट में पीएससी एंडपॉइंट को कॉन्फ़िगर किया जा सके.
selfLink: projects/<your-project-id>/regions/us-central1/serviceAttachments/ipv4-producer-svc-attachment
Cloud Shell में, ये काम करें:
gcloud compute service-attachments describe ipv4-producer-svc-attachment --region=$region
अनुमानित आउटपुट का उदाहरण
user@cloudshell:~ (projectid)$ gcloud compute service-attachments describe ipv4-producer-svc-attachment --region=$region connectionPreference: ACCEPT_AUTOMATIC creationTimestamp: '2024-08-26T07:08:01.625-07:00' description: '' enableProxyProtocol: false fingerprint: USOMy1eQKyM= id: '1401660514263708334' kind: compute#serviceAttachment name: ipv4-producer-svc-attachment natSubnets: - https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/subnetworks/producer-psc-nat-subnet pscServiceAttachmentId: high: '85245007652455400' low: '1401660514263708334' 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/ipv4-producer-svc-attachment targetService: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/forwardingRules/producer-fr
Cloud Console में, यहां जाएं:
नेटवर्क सेवाएं → Private Service Connect → पब्लिश की गई सेवाएं
11. उपभोक्ता के लिए वीपीसी नेटवर्क बनाना
VPC नेटवर्क
Cloud Shell में, आईपीवी6 यूएलए की सुविधा चालू करके कंज्यूमर वीपीसी बनाएं:
gcloud compute networks create consumer-vpc \ --subnet-mode=custom \ --enable-ula-internal-ipv6
Google, उपभोक्ता VPC को दुनिया भर में यूनीक /48 सबनेट असाइन करता है. असाइनमेंट देखने के लिए, यह तरीका अपनाएं:
Cloud Console में, यहां जाएं:
वीपीसी नेटवर्क
सबनेट बनाना
Cloud Shell में, IPv4 GCE सबनेट बनाएं:
gcloud compute networks subnets create consumer-v4-subnet --network consumer-vpc --range=192.168.10.0/28 --region $region --enable-private-ip-google-access
Cloud Shell में, IPv4 पीएससी एंडपॉइंट सबनेट बनाएं:
gcloud compute networks subnets create psc-ipv4-endpoint-subnet --network consumer-vpc --range=192.168.11.0/28 --region $region --enable-private-ip-google-access
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 में, ड्यूअल-स्टैक PSC एंडपॉइंट सबनेट बनाएं:
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. वीएम, पीएससी एंडपॉइंट बनाएं, और आईपीवी4 कनेक्टिविटी की जांच करें
टेस्ट VM बनाना
Cloud Shell में, IPv4 सबनेट में IPv4 GCE इंस्टेंस बनाएं:
gcloud compute instances create consumer-vm-ipv4 --zone=us-central1-a --subnet=consumer-v4-subnet --no-address
पीएससी एंडपॉइंट का स्टैटिक आईपी बनाना
Cloud Shell में, PSC एंडपॉइंट के लिए स्टैटिक आईपी पता बनाएं.
gcloud compute addresses create psc-ipv4-endpoint-ip --region=$region --subnet=psc-ipv4-endpoint-subnet --addresses 192.168.11.13
IPv4 पीएससी एंडपॉइंट बनाना
Cloud Shell में, सेवा अटैचमेंट बनाते समय कैप्चर किए गए यूआरआई की मदद से, सेवा अटैचमेंट के यूआरआई को अपडेट करके, PSC एंडपॉइंट बनाएं.
gcloud compute forwarding-rules create psc-ipv4-endpoint --region=$region --network=consumer-vpc --address=psc-ipv4-endpoint-ip --target-service-attachment=[SERVICE ATTACHMENT URI]
PSC एंडपॉइंट की पुष्टि करना
आइए, यह पुष्टि करें कि प्रोड्यूसर ने PSC एंडपॉइंट स्वीकार कर लिया है. Cloud Console में, यहां जाएं:
नेटवर्क सेवाएं → Private Service Connect → कनेक्ट किए गए एंडपॉइंट
कनेक्टिविटी की जांच करना
Cloud Shell में, GCE इंस्टेंस, consumer-vm-ipv4 में ssh करें.
gcloud compute ssh --zone us-central1-a "consumer-vm-ipv4" --tunnel-through-iap --project $project
GCE इंस्टेंस में लॉग इन करने के बाद, psc एंडपॉइंट, psc-ipv4-endpoint 192.168.11.13 पर कर्ल करें
consumer-vm-ipv4 GCE इंस्टेंस में, curl का इस्तेमाल करके यह देखें कि क्या यह काम करता है:
curl 192.168.11.13
अनुमानित आउटपुट:
user@consumer-vm-ipv4:~$ curl 192.168.11.13 Welcome to Producer-VM !!
consumer-vm-ipv4 GCE इंस्टेंस में, 'बाहर निकलें' विकल्प का इस्तेमाल करके इंस्टेंस से लॉग आउट करें. इससे, आपको वापस Cloud Shell पर भेज दिया जाएगा.
exit
अनुमानित आउटपुट:
user@consumer-vm-ipv4:~$ exit logout Connection to compute.6833450446005281720 closed.
13. वीएम, पीएससी एंडपॉइंट बनाना और ड्यूअल-स्टैक कनेक्टिविटी की जांच करना
टेस्ट के लिए ड्यूअल-स्टैक VM बनाना
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 में, PSC एंडपॉइंट के लिए स्टैटिक IPv6 पता बनाएं:
gcloud compute addresses create psc-ipv6-endpoint-ip --region=$region --subnet=psc-dual-stack-endpoint-subnet --ip-version=IPV6
पीएससी एंडपॉइंट का स्टैटिक IPv6 पता पाना
Cloud Shell में, PSC का वह आईपीवी6 पता पाएं जिसका इस्तेमाल आपको प्रोड्यूसर सेवा तक पहुंचने के लिए करना है:
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:2eb:7252:2::'
IPv6 PSC एंडपॉइंट बनाना
Cloud Shell में, सेवा अटैचमेंट बनाते समय कैप्चर किए गए यूआरआई की मदद से, सेवा अटैचमेंट के यूआरआई को अपडेट करके, PSC एंडपॉइंट बनाएं.
gcloud compute forwarding-rules create psc-ipv6-endpoint --region=$region --network=consumer-vpc --address=psc-ipv6-endpoint-ip --target-service-attachment=[SERVICE ATTACHMENT URI]
PSC एंडपॉइंट की पुष्टि करना
आइए, यह पुष्टि करें कि प्रोड्यूसर ने PSC एंडपॉइंट स्वीकार कर लिया है. Cloud Console में, यहां जाएं:
नेटवर्क सेवाएं → Private Service Connect → कनेक्ट किए गए एंडपॉइंट
कनेक्टिविटी की जांच करना
Cloud Shell में, ड्यूअल-स्टैक GCE इंस्टेंस, consumer-vm-ipv4-ipv6 में ssh करें. साथ ही, प्रोड्यूसर सेवा के ऐक्सेस की पुष्टि करने के लिए, PSC के आईपीवी6 उपभोक्ता एंडपॉइंट, psc-ipv6-endpoint पर कर्ल करें.
gcloud compute ssh --zone us-central1-a "consumer-vm-ipv4-ipv6" --tunnel-through-iap --project $project
अब आपने ड्यूअल-स्टैक GCE इंस्टेंस में लॉग इन कर लिया है. इसलिए, पिछले चरण में पहचाने गए आईपीवी6 पतों का इस्तेमाल करके, psc-एंडपॉइंट, psc-dual-stack-एंडपॉइंट पर कर्ल करें.
consumer-vm-ipv4-ipv6 GCE इंस्टेंस में, पीएससी एंडपॉइंट का स्टैटिक IPv6 पता पाने के चरण में पहचाने गए IPv6 पीएससी एंडपॉइंट पर कर्ल करें.
curl -6 http://[insert-your-ipv6-psc-endpoint]
अनुमानित आउटपुट:
user@consumer-vm-ipv4-ipv6$ curl -6 http://[fd20:2eb:7252:2::] Welcome to Producer-VM !!
consumer-vm-ipv4-ipv6 GCE इंस्टेंस में, 'बाहर निकलें' विकल्प का इस्तेमाल करके इंस्टेंस से लॉग आउट करें. इससे, आपको Cloud Shell पर वापस ले जाया जाएगा.
exit
अनुमानित आउटपुट:
user@consumer-vm-ipv4-ipv6:~$ exit logout Connection to compute.6162185519072639197 closed.
14. क्लीनअप करने का तरीका
Cloud Shell के किसी एक टर्मिनल से, लैब के कॉम्पोनेंट मिटाना
gcloud compute service-attachments delete ipv4-producer-svc-attachment --region=us-central1 -q gcloud compute forwarding-rules delete psc-ipv6-endpoint psc-ipv4-endpoint --region=us-central1 -q gcloud compute instances delete consumer-vm-ipv4 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-ipv4-endpoint-ip psc-ipv6-endpoint-ip --region=us-central1 -q gcloud compute networks subnets delete consumer-v4-subnet psc-ipv4-endpoint-subnet consumer-dual-stack-subnet psc-dual-stack-endpoint-subnet --region=us-central1 -q gcloud compute networks delete consumer-vpc -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 networks subnets delete producer-psc-fr-subnet producer-psc-vm-subnet producer-psc-nat-subnet --region=us-central1 -q gcloud compute networks delete producer-vpc -q
15. बधाई हो
बधाई हो, आपने Private Service Connect 64 को कॉन्फ़िगर कर लिया है और उसकी पुष्टि कर ली है.
आपने प्रोड्यूसर इन्फ़्रास्ट्रक्चर बनाया और उपभोक्ता वीपीएन नेटवर्क में आईपीवी4 और आईपीवी6 उपभोक्ता एंडपॉइंट बनाने का तरीका जाना. इससे, प्रोड्यूसर सेवा से कनेक्ट किया जा सकता है.
Cosmopup को लगता है कि कोडलैब शानदार हैं!!
आगे क्या करना है?
इन कोडलैब को देखें...
- GKE की मदद से सेवाओं को पब्लिश और इस्तेमाल करने के लिए, Private Service Connect का इस्तेमाल करना
- सेवाओं को पब्लिश और इस्तेमाल करने के लिए, Private Service Connect का इस्तेमाल करना
- Private Service Connect और किसी इंटरनल टीसीपी प्रॉक्सी लोड बैलेंसर का इस्तेमाल करके, हाइब्रिड नेटवर्किंग की मदद से ऑन-प्रीमिस सेवाओं से कनेक्ट करना
- पब्लिश किए गए सभी Private Service Connect कोडलैब का ऐक्सेस