Looker PSC नॉर्थबाउंड रीजनल इंटरनल L7 ALB

1. परिचय

इस कोडलैब में, Looker को नॉर्थबाउंड ऐक्सेस देने के लिए, L7 रीजनल इंटरनल ऐप्लिकेशन लोड बैलेंसर और Private Service Connect बैकएंड बनाया जाएगा. Looker को Northbound के ज़रिए ऐक्सेस करने के लिए, यह ज़रूरी है कि उपभोक्ता वीपीसी को Looker PSC इंस्टेंस के लिए अनुमति वाली सूची में शामिल किया गया हो.

Private Service Connect, Google Cloud नेटवर्किंग की एक सुविधा है. इससे उपभोक्ता, अपने वीपीसी नेटवर्क में मैनेज की गई सेवाओं को निजी तौर पर ऐक्सेस कर सकते हैं. इसी तरह, मैनेज की जा रही सेवा देने वाली कंपनियां इन सेवाओं को अपने अलग-अलग वीपीसी नेटवर्क में होस्ट कर सकती हैं. साथ ही, अपने ग्राहकों को निजी कनेक्शन उपलब्ध करा सकती हैं. उदाहरण के लिए, Looker को ऐक्सेस करने के लिए Private Service Connect का इस्तेमाल करने पर, आप सेवा का इस्तेमाल करने वाले व्यक्ति या कंपनी होते हैं. वहीं, Google सेवा देने वाली कंपनी होती है. इस बारे में, पहले फ़िगर में हाइलाइट किया गया है.

इमेज 1.

145ea4672c3a3b14.png

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

इमेज 2.

3edfcc67e195d082.png

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

  • नेटवर्क की ज़रूरी शर्तें
  • नॉर्थबाउंड ऐक्सेस के लिए, Looker की अनुमति वाली सूची को अपडेट करना
  • उपयोगकर्ता के वीपीसी में Private Service Connect बैकएंड बनाएं
  • Google के सर्टिफ़िकेट बनाम खुद हस्ताक्षर किए गए सर्टिफ़िकेट

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

def88091b42bfe4d.png

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

आपको अनुमति वाली सूची में शामिल Consumer नेटवर्क, looker-psc-demo को सेट अप करना होगा. इससे, L7 लेयर वाला इंटरनल ऐप्लिकेशन लोड बैलेंसर और पीएससी बैकएंड एनईजी को डिप्लॉय किया जा सकेगा. इसके लिए, Google या खुद से मैनेज किया गया सर्टिफ़िकेट ज़रूरी है. ज़्यादा जानकारी के लिए, लोड बैलेंसर और सर्टिफ़िकेट की खास जानकारी वाला पेज देखें.

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

नेटवर्क से जुड़ी ज़रूरी शर्तों के बारे में यहां बताया गया है:

घटक

ब्यौरा

VPC (looker-psc-demo)

कस्टम मोड वीपीसी

पीएससी एनईजी सबनेट

इस कुकी का इस्तेमाल, नेटवर्क एंडपॉइंट ग्रुप के लिए आईपी पता असाइन करने के लिए किया जाता है

सिर्फ़ प्रॉक्सी सबनेट

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

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

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

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

2f6bb87ef0e139b2.png

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

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

  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 पर काम करता है. इससे नेटवर्क की परफ़ॉर्मेंस और पुष्टि करने की प्रोसेस बेहतर होती है. इस कोडलैब में मौजूद सभी टास्क, ब्राउज़र में किए जा सकते हैं. आपको कुछ भी इंस्टॉल करने की ज़रूरत नहीं है.

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

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

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

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

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

gcloud services enable compute.googleapis.com

7. उपयोगकर्ता का नेटवर्क

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

VPC नेटवर्क

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

gcloud compute networks create looker-psc-demo --subnet-mode custom

सबनेट बनाना

Cloud Shell में, उपभोक्ता नेटवर्क एंडपॉइंट ग्रुप सबनेट बनाएं:

gcloud compute networks subnets create consumer-psc-neg-subnet --network looker-psc-demo --range 172.16.30.0/28 --region $region --enable-private-ip-google-access

Cloud Shell में, इंटरनल ऐप्लिकेशन लोड बैलेंसर सबनेट बनाएं:

gcloud compute networks subnets create consumer-ilb-subnet --network looker-psc-demo --range 172.16.40.0/28 --region $region --enable-private-ip-google-access

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

gcloud compute networks subnets create $region-proxy-only-subnet \
  --purpose=REGIONAL_MANAGED_PROXY \
  --role=ACTIVE \
  --region=$region \
  --network=looker-psc-demo \
  --range=10.10.10.0/24

8. कस्टम डोमेन बनाना

कस्टम डोमेन सेट अप करने के लिए, यह तरीका अपनाएं:

यहां दिए गए उदाहरण में, looker.cosmopup.com कस्टम डोमेन है

5424ce99136d5b3a.png

OAuth का उदाहरण

यहां looker.cosmopup.com सबडोमेन के लिए, अनुमति वाले ऑरिजिन और कॉलबैक के OAuth क्रेडेंशियल का उदाहरण दिया गया है.

c7e5b8c7d2cc6a01.png

9. प्रमाणपत्र

Compute Engine या Certificate Manager के सर्टिफ़िकेट बनाए जा सकते हैं. सर्टिफ़िकेट मैनेजर का इस्तेमाल करके सर्टिफ़िकेट बनाने के लिए, इनमें से कोई भी तरीका अपनाएं:

10. Looker के लिए वीपीसी की अनुमति वाली सूची

अनुमति वाले वीपीसी देखें

इस सेक्शन में, Looker के लिए अनुमति वाले वीपीसी की सूची देखने के लिए, Cloud Console के यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल किया जाएगा.

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

Looker → Looker इंस्टेंस → जानकारी

यहां दिए गए उदाहरण में, अनुमति वाले वीपीसी की सूची में कोई एंट्री नहीं है:

ad33177a2d721ea7.png

अनुमति वाले वीपीसी अपडेट करें

Looker इंस्टेंस को अपडेट करें, ताकि वह नॉर्थबाउंड ऐक्सेस की सुविधा के साथ काम कर सके. इसके लिए, looker-psc-demo को अनुमति वाले वीपीसी के तौर पर जोड़ें.

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

Looker → Looker इंस्टेंस → बदलाव करें

cbbc069688890b82.png

कनेक्शन → अनुमति वाले वीपीसी

पक्का करें कि आपने उस प्रोजेक्ट को चुना हो जहां looker-psc-demo को डिप्लॉय किया गया है. इसके बाद, VPC looker-psc-demo और फिर जारी रखें को चुनें.

dc931643e1b220a.png3e26d16d83cceae9.png

अनुमति वाले वीपीसी की पुष्टि करना

अनुमति वाले वीपीसी की अपडेट की गई सूची देखना

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

Looker → Looker इंस्टेंस → जानकारी

e34664c867929c66.png

11. पीएसडी बैकएंड बनाना

Looker PSC, सर्विस प्रोड्यूसर के तौर पर एक सर्विस अटैचमेंट यूआरआई जनरेट करता है. इसका इस्तेमाल सर्विस कंज्यूमर, एंडपॉइंट और बैकएंड को डिप्लॉय करने के लिए करते हैं. इससे उन्हें Looker का नॉर्थबाउंड ऐक्सेस मिलता है. अगले चरण में, आपको Looker पीएससी सेवा अटैचमेंट यूआरआई की पहचान करनी होगी. इसके बाद, उपभोक्ता वीपीसी में Private Service Connect Network Endpoint Group (NEG) बैकएंड बनाना होगा.

Looker PSC सर्विस अटैचमेंट की पहचान करना

Cloud Console में, सेवा अटैचमेंट यूआरआई पर जाएं और उसे कॉपी करें:

Looker → Looker इंस्टेंस → जानकारी

a253f94e946a1eef.png

पीएससी नेटवर्क एंडपॉइंट ग्रुप बनाना

Cloud Shell में, यह तरीका अपनाएं. साथ ही, पक्का करें कि आपने psc-target-service को अपडेट कर दिया हो:

gcloud compute network-endpoint-groups create looker-northbound-neg \
    --network-endpoint-type=private-service-connect \
    --psc-target-service=[UPDATE WITH YOU LOOKER SERVICE ATTACHMENT URI] \
    --region=$region \
    --network=looker-psc-demo \
    --subnet=consumer-psc-neg-subnet

उदाहरण:

gcloud compute network-endpoint-groups create looker-northbound-neg \
    --network-endpoint-type=private-service-connect \
 --psc-target-service=projects/t7ec792caf2a609d1-tp/regions/us-central1/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183 \
    --region=$region \
    --network=looker-psc-demo \
    --subnet=consumer-psc-neg-subnet

पीएसएसी नेटवर्क एंड ग्रुप बनाने की पुष्टि करना

Cloud Shell में, यह तरीका अपनाएं. इससे यह पक्का किया जा सकेगा कि pscConnectionStatus स्वीकार किया गया है:

gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus:

उदाहरण:

user@cloudshell$ gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus: 
  pscConnectionStatus: ACCEPTED

रीजनल इंटरनल ऐप्लिकेशन लोड बैलेंसर बनाना

यहां दिए गए चरणों में, Cloud Console का इस्तेमाल करके, रीजनल इंटरनल ऐप्लिकेशन लोड बैलेंसर बनाया जाएगा. साथ ही, जनरेट किए गए सर्टिफ़िकेट को फ़्रंट एंड कॉन्फ़िगरेशन से जोड़ा जाएगा.

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

नेटवर्क सेवाएं → लोड बैलेंसिंग → लोड बैलेंसर बनाएं

e3474ca153d7c55a.png

ये विकल्प चुनें:

c80afa6a28b6d922.png

बैकएंड कॉन्फ़िगरेशन बनाना

यहां दिए गए विकल्प चुनें और अपने डिप्लॉयमेंट के हिसाब से एनवायरमेंट को पसंद के मुताबिक बनाएं:

  • नेटवर्क इन्फ़्रास्ट्रक्चर को डिप्लॉय करने के लिए इस्तेमाल किया गया क्षेत्र
  • नेटवर्क: looker-psc-demo
  • आपके इलाके और नेटवर्क के आधार पर, प्रॉक्सी-ओनली सबनेट अपने-आप भर जाता है

115627dc54d7a582.pngb3eaa88dd02a95c1.pngcf519145f0259061.png530527bc9273e002.png

रूटिंग के नियम

किसी कॉन्फ़िगरेशन की ज़रूरत नहीं है

53a80d74b3c7dd56.png

फ़्रंटएंड कॉन्फ़िगरेशन

29faa25397025fb4.png538da2b4930d243b.pngbbc13e921681dd65.png

पक्का करें कि लोड बैलेंसर चालू हो और आईपी पता हासिल करें.

Cloud Console → Network Services → Load Balancing → looker-ilb-alb में जाएं

abc7d02b4c951c73.png

12. डीएनएस रिज़ॉल्यूशन

कस्टम डोमेन के लिए डीएनएस रिज़ॉल्यूशन, ऑन-प्रिमाइसेस या Cloud DNS पर आधिकारिक हो सकता है. इस ट्यूटोरियल में, हम Looker के कस्टम डोमेन के लिए Cloud DNS को आधिकारिक सर्वर के तौर पर सेट करेंगे. GCP के डीएनएस रिज़ॉल्यूशन के लिए, ऑन-प्रिमाइसेस को चालू करने के लिए, इनबाउंड सर्वर की नीतियां चालू करना ज़रूरी है. इनबाउंड सर्वर नीति बनाने पर, Cloud DNS उस वीपीसी नेटवर्क में इनबाउंड सर्वर नीति के एंट्री पॉइंट बनाता है जिस पर सर्वर नीति लागू की जाती है. इनबाउंड सर्वर नीति के एंट्री पॉइंट, इंटरनल IPv4 पते होते हैं. ये पते, लागू होने वाले वीपीसी नेटवर्क के हर सबनेट की प्राइमरी IPv4 पते की रेंज से लिए जाते हैं. हालांकि, सिर्फ़ प्रॉक्सी वाले सबनेट से ये पते नहीं लिए जाते.

यहां दिए गए सेक्शन में, Looker कस्टम डोमेन (looker.cosmopup.com) के लिए एक निजी डीएनएस ज़ोन और लोड बैलेंसर के आईपी पते वाला A रिकॉर्ड बनाया गया है.

13. निजी डीएनएस ज़ोन बनाना

Cloud Shell में, Cloud DNS Private Zone बनाएं.

gcloud dns --project=$projectid managed-zones create looker-cosmopup-dns --description="" --dns-name="looker.cosmopup.com." --visibility="private" --networks="https://compute.googleapis.com/compute/v1/projects/$projectid/global/networks/looker-psc-demo"

Cloud Shell में, लोड बैलेंसर के आईपी पते वाला ए रिकॉर्ड बनाएं. यह आईपी पता आपको पिछले चरण में मिला था.

gcloud dns --project=$projectid record-sets create looker.cosmopup.com. --zone="looker-cosmopup-dns" --type="A" --ttl="300" --rrdatas="<insert-your-ip>"

उदाहरण:

gcloud dns --project=$projectid record-sets create looker.cosmopup.com. --zone="looker-cosmopup-dns" --type="A" --ttl="300" --rrdatas="172.16.20.7"

इसके बाद, कनेक्टिविटी चालू करने के लिए, looker-psc-demo वीपीसी और कंपनी की इमारत में मौजूद नेटवर्क के बीच हाइब्रिड नेटवर्किंग (जैसे, इंटरकनेक्ट, एचए-वीपीएन) को कॉन्फ़िगर करना होगा.

हाइब्रिड NEG कनेक्टिविटी को ऑन-प्रिमाइसेस से कनेक्ट करने के लिए, यहां दिया गया तरीका अपनाएं:

  • नेटवर्क कनेक्टिविटी प्रॉडक्ट चुनना | Google Cloud
  • VPC पीयरिंग वाले हब और स्पोक आर्किटेक्चर में, हाइब्रिड एनईजी को Cloud Router के साथ एक ही वीपीसी (हब) में डिप्लॉय किया जाता है
  • पक्का करें कि कंपनी की इमारत में मौजूद फ़ायरवॉल को अपडेट किया गया हो, ताकि प्रॉक्सी-ओनली सबनेट रेंज को शामिल किया जा सके. ऐसा इसलिए, क्योंकि यह सबनेट, कंपनी की इमारत में मौजूद वर्कलोड के साथ कम्यूनिकेट करने के लिए सोर्स आईपी पते के तौर पर काम करता है
  • Looker.cosomopup.com के लिए, डीएनएस रिज़ॉल्वर के तौर पर इनबाउंड फ़ॉरवर्डिंग आईपी पते का इस्तेमाल करके, ऑन-प्रिमाइसेस डीएनएस को अपडेट करें

Looker के यूज़र इंटरफ़ेस (यूआई) को ऐक्सेस करना

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

यहां Looker के कस्टम डोमेन looker.cosmopup.com को ऐक्सेस करने का एक उदाहरण दिया गया है. यह Looker यूज़र इंटरफ़ेस को नॉर्थबाउंड ऐक्सेस देता है. यह एक ऐसा सर्टिफ़िकेट है जिस पर भरोसा नहीं किया जा सकता:

ae43d0d0d7136044.png

14. व्यवस्थित करें

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

gcloud compute forwarding-rules delete regional-internal-alb-fr --region=$region -q

gcloud compute target-https-proxies delete regional-internal-alb-target-proxy --region=$region -q

gcloud compute url-maps delete regional-internal-alb --region=$region -q

gcloud compute backend-services delete looker-psc-neg-backend-svc --region=$region -q

gcloud compute addresses delete regional-alb-static-ip --region=$region -q

gcloud compute network-endpoint-groups delete looker-northbound-neg --region=$region -q

gcloud compute networks delete looker-psc-demo -q

15. बधाई हो

बधाई हो, आपने ग्राहक के डोमेन और रीजनल इंटरनल ऐप्लिकेशन लोड बैलेंसर का इस्तेमाल करके, Looker के साथ नॉर्थबाउंड कनेक्टिविटी को कॉन्फ़िगर और पुष्टि कर लिया है.

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

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

c911c127bffdee57.jpeg

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

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

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

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