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

1. परिचय

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

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

चित्र 1.

145ea4672c3a3b14.png

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

चित्र 2.

259493afd914f68b.png

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

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

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

def88091b42bfe4d.png

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

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

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

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

घटक

ब्यौरा

VPC (looker-psc-demo)

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

पब्लिक सर्विसेज़ कार्ड (पीएससी) वाला NEG सबनेट

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

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

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

बैकएंड सेवा

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

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

7f06f9b9876f76c4.png

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

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

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

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

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

Cloud Shell शुरू करना

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

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

55efc1aaa7a4d3ad.png

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

7ffe5cbb04455448.png

इस वर्चुअल मशीन में ऐसे सभी डेवलपमेंट टूल मौजूद हैं जिनकी आपको ज़रूरत पड़ेगी. यह पांच जीबी की स्थायी होम डायरेक्ट्री उपलब्ध कराता है और 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 की अनुमति वाली सूची में अपडेट किया जाएगा.

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 $region-proxy-only-subnet \
  --purpose=REGIONAL_MANAGED_PROXY \
  --role=ACTIVE \
  --region=$region \
  --network=looker-psc-demo \
  --range=10.10.10.0/24

लोड बैलेंसर का आईपी पता बुक करें

Cloud Shell में, लोड बैलेंसर के लिए कोई एक्सटर्नल आईपी पता रिज़र्व करें:

gcloud compute addresses create regional-alb-static-ip  \
   --region=$region \
   --network-tier=STANDARD

Cloud Shell में, रिज़र्व किया गया आईपी पता देखें:

gcloud compute addresses describe regional-alb-static-ip --region=us-central1 | grep -i address:

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

user@cloudshell$ gcloud compute addresses describe regional-alb-static-ip --region=us-central1 | grep -i address: 
address: 35.208.202.244

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

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

कस्टम डोमेन का उदाहरण

कस्टम डोमेन Looker.cosmopup.com, एक सार्वजनिक डीएनएस सबडोमेन के तौर पर मौजूद है. यह पहले तय किए गए स्टैटिक आईपी पतों (Region-alb-static-ip) के A रिकॉर्ड से जुड़ा होता है. डीएनएस लुकअप की पुष्टि करने वाले टर्मिनल से लिया गया स्क्रीनशॉट देखें.

6be44a9b2536e3f4.png

इसके बाद, looker.cosmopup.com सबडोमेन का इस्तेमाल करके ग्राहक डोमेन बनाएं

5424ce99136d5b3a.png

OAuth का उदाहरण

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

c7e5b8c7d2cc6a01.png

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

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

10. Looker VPC को अनुमति देने की सुविधा

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

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

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

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

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

ad33177a2d721ea7.png

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

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

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

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

cbbc069688890b82.png

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

पक्का करें कि आपने वह प्रोजेक्ट चुना हो जहां Looker-psc-demo डिप्लॉय किया गया है, फिर VPC Looker-psc-demo, और फिर 'जारी रखें' चुनें.

dc931643e1b220a.png

3e26d16d83cceae9.png

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

अपडेट किए गए उन VPC की सूची देखें जिन्हें अनुमति मिली है

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

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

e34664c867929c66.png

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

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

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

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

63c2e656953444f2.png

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

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

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

a1c24bd4650b27d3.png

प्रमाणपत्र का चयन करके, मौजूदा या नए प्रमाणपत्र का उपयोग करने के विकल्प को ड्रॉप-डाउन कर दिया जाता है:

aac196a6fa1ee3d5.png

अपना सर्टिफ़िकेट और निजी पासकोड अपलोड करें. इसके बाद, बनाएं को चुनें:

64a390bda0c9c3f1.png

फ़्रंटएंड कॉन्फ़िगरेशन पूरा करने के लिए 'हो गया' चुनें:

758a1921e3020854.png

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

नीचे दिए गए विकल्पों को चुनें:

e9bf17b1277bd597.png

af3b4a59864b15bc.png

6c784cc0169c892b.png

ba3bf9fa7d3497a5.png

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

ये विकल्प चुनें (डिफ़ॉल्ट विकल्प):

8884421f10a50ce0.png

समीक्षा करना और फ़ाइनल करना

कॉन्फ़िगरेशन की पुष्टि करें और 'बनाएं' को चुनें:

bdf5793ba8f46bb9.png

लोड बैलेंसर अब चालू है:

61adc0509f07ab15.png

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

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

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

ae43d0d0d7136044.png

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

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

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

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

gcloud compute url-maps delete regional-external-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

13. बधाई हो

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

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

Cosmopup को लगता है कि कोडलैब शानदार हैं!!

c911c127bffdee57.jpeg

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

इनमें से कुछ कोडलैब देखें...

आगे पढ़ें और वीडियो

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