1. परिचय
इस कोडलैब में, L7 रीजनल ऐप्लिकेशन लोड बैलेंसर और Looker का नॉर्थबाउंड ऐक्सेस पाने के लिए, Private Service Connect बैकएंड का इस्तेमाल करें. Looker के नॉर्थबाउंड ऐक्सेस के लिए, यह ज़रूरी है कि उपभोक्ता के VPC को Looker PSC इंस्टेंस की अनुमति वाली सूची में शामिल किया गया हो.
Private Service Connect, Google Cloud नेटवर्किंग की एक सुविधा है. इसकी मदद से, उपभोक्ता अपने VPC नेटवर्क से मैनेज की जा रही सेवाओं को निजी तौर पर ऐक्सेस कर सकते हैं. इसी तरह, मैनेज की जाने वाली सेवाओं के प्रोड्यूसर, इन सेवाओं को अपने अलग वीपीएन नेटवर्क में होस्ट कर सकते हैं. साथ ही, अपने उपभोक्ताओं को निजी कनेक्शन भी दे सकते हैं. उदाहरण के लिए, Looker को ऐक्सेस करने के लिए Private Service Connect का इस्तेमाल करने पर, आप सेवा का उपभोक्ता होते हैं और Google सेवा देने वाला होता है. इसकी जानकारी, पहले चित्र में हाइलाइट की गई है.
चित्र 1.
साउथबाउंड ऐक्सेस को रिवर्स पीएससी भी कहा जाता है. इसकी मदद से उपभोक्ता, प्रोड्यूसर के तौर पर पब्लिश की गई सेवा बना सकता है. इससे कंपनी, कंपनी की इमारत में Looker को ऐक्सेस कर सकती है. यह अनुमति, मैनेज की जा रही सेवाओं और इंटरनेट के लिए, VPC में मौजूद एंडपॉइंट के पास होती है. साउथबाउंड कनेक्शन किसी भी क्षेत्र में डिप्लॉय किए जा सकते हैं. भले ही, Looker PSC को किसी भी जगह पर डिप्लॉय किया गया हो, जैसा कि दूसरे चित्र में हाइलाइट किया गया है.
चित्र 2.
आपको इनके बारे में जानकारी मिलेगी
- नेटवर्क से जुड़ी ज़रूरी शर्तें
- नॉर्थबाउंड ऐक्सेस के लिए, Looker की अनुमति वाली सूची अपडेट करना
- उपभोक्ता वीपीसी में Private Service Connect बैकएंड बनाना
- Google के सर्टिफ़िकेट बनाम खुद के हस्ताक्षर वाले सर्टिफ़िकेट
आपको इन चीज़ों की ज़रूरत होगी
- मालिक वाली अनुमतियों के साथ Google Cloud प्रोजेक्ट
- रजिस्टर किया गया डोमेन
- मौजूदा Looker PSC इंस्टेंस
2. आपको क्या बनाना होगा
आपको एक रीजनल एक्सटर्नल L7 ऐप्लिकेशन लोड बैलेंसर और PSC बैकएंड NEG डिप्लॉय करने के लिए, अनुमति पा चुके उपभोक्ता नेटवर्क का नाम बनाना होगा. इसके लिए, आपके पास Google या खुद हस्ताक्षर किया हुआ सर्टिफ़िकेट होना चाहिए. इनमें से किसी भी तरीके में, रजिस्टर किया गया डोमेन होना ज़रूरी है जो Looker में तय किए गए कस्टम डोमेन से मेल खाता हो.
3. नेटवर्क से जुड़ी ज़रूरी शर्तें
नेटवर्क से जुड़ी ज़रूरी शर्तों के बारे में यहां बताया गया है:
घटक | ब्यौरा |
VPC (looker-psc-demo) | कस्टम मोड वीपीसी |
पब्लिक सर्विसेज़ कार्ड (पीएससी) वाला NEG सबनेट | इसका इस्तेमाल, नेटवर्क एंडपॉइंट ग्रुप के लिए कोई आईपी पता असाइन करने के लिए किया जाता है |
सिर्फ़ प्रॉक्सी सबनेट | लोड बैलेंसर की हर प्रॉक्सी को एक इंटरनल आईपी पता असाइन किया जाता है. किसी प्रॉक्सी से बैकएंड VM या एंडपॉइंट पर भेजे गए पैकेट में, सिर्फ़ प्रॉक्सी सबनेट का सोर्स आईपी पता होता है. |
बैकएंड सेवा | बैकएंड सेवा, आपके लोड बैलेंसर और बैकएंड संसाधनों को जोड़ने का काम करती है. ट्यूटोरियल में, बैकएंड सेवा को PSC NEG से जोड़ा गया है. |
4. कोडलैब की टोपोलॉजी
5. सेटअप और ज़रूरी शर्तें
अपने हिसाब से एनवायरमेंट सेट अप करना
- 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 का इस्तेमाल किया जा रहा है. यह क्लाउड में चलने वाला कमांड लाइन एनवायरमेंट है.
Google Cloud Console में, सबसे ऊपर दाएं टूलबार में मौजूद Cloud Shell आइकॉन पर क्लिक करें:
प्रावधान करने और एनवायरमेंट से कनेक्ट होने में कुछ ही समय लगेगा. उसके पूरा हो जाने पर, आपको कुछ ऐसा दिखाई देगा:
इस वर्चुअल मशीन में ऐसे सभी डेवलपमेंट टूल मौजूद हैं जिनकी आपको ज़रूरत पड़ेगी. यह पांच जीबी की स्थायी होम डायरेक्ट्री उपलब्ध कराता है और 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 रिकॉर्ड से जुड़ा होता है. डीएनएस लुकअप की पुष्टि करने वाले टर्मिनल से लिया गया स्क्रीनशॉट देखें.
इसके बाद, looker.cosmopup.com सबडोमेन का इस्तेमाल करके ग्राहक डोमेन बनाएं
OAuth का उदाहरण
यहां सबडोमेन Looker.cosmopup.com के लिए, अनुमति वाले ऑरिजिन और कॉलबैक के लिए OAuth क्रेडेंशियल का एक उदाहरण दिया गया है.
9. प्रमाणपत्र
आपके पास Compute Engine या सर्टिफ़िकेट मैनेजर के सर्टिफ़िकेट बनाने का विकल्प होता है. सर्टिफ़िकेट मैनेजर का इस्तेमाल करके सर्टिफ़िकेट बनाने के लिए, इनमें से कोई एक तरीका अपनाएं:
- क्षेत्र के हिसाब से, खुद मैनेज किए जाने वाले सर्टिफ़िकेट. क्षेत्रीय सेल्फ़-मैनेजमेंट सर्टिफ़िकेट बनाने और इस्तेमाल करने के बारे में जानकारी के लिए, रीजनल सेल्फ़-मैनेजमेंट सर्टिफ़िकेट डिप्लॉय करना देखें. सर्टिफ़िकेट वाले मैप का इस्तेमाल नहीं किया जा सकता.
- Google की तरफ़ से मैनेज किए जाने वाले रीजनल सर्टिफ़िकेट. सर्टिफ़िकेट वाले मैप का इस्तेमाल नहीं किया जा सकता. Certificate Manager में, Google की तरफ़ से मैनेज किए जाने वाले क्षेत्रीय सर्टिफ़िकेट के ये टाइप काम करते हैं:
- हर प्रोजेक्ट के लिए डीएनएस की अनुमति वाले ऐसे रीजनल सर्टिफ़िकेट जिन्हें Google मैनेज करता है. ज़्यादा जानकारी के लिए, Google की ओर से मैनेज किया जाने वाला क्षेत्रीय सर्टिफ़िकेट डिप्लॉय करना देखें.
- सर्टिफ़िकेट देने वाली संस्था की सेवा के साथ, Google की तरफ़ से मैनेज किए जाने वाले क्षेत्रीय (निजी) सर्टिफ़िकेट. ज़्यादा जानकारी के लिए, CA सेवा के साथ Google की ओर से मैनेज किया जाने वाला क्षेत्रीय सर्टिफ़िकेट डिप्लॉय करना लेख पढ़ें.
10. Looker VPC को अनुमति देने की सुविधा
अनुमति वाले वीपीसी देखना
नीचे दिए गए सेक्शन में, आपको Cloud Console के यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करके, Looker के साथ काम करने वाले वीपीसी की सूची देखनी होगी.
Cloud Console में, यहां जाएं:
Looker → Looker इंस्टेंस → जानकारी
उदाहरण के लिए, यहां दिए गए उदाहरण में, अनुमति वाले वीपीसी की सूची में कोई एंट्री नहीं है:
अनुमति वाले VPC अपडेट करें
नॉर्थबाउंड ऐक्सेस की सुविधा देने के लिए, Looker-psc-demo को अनुमति वाले VPC के तौर पर जोड़कर, अपने Looker इंस्टेंस को अपडेट करें.
Cloud Console में, यहां जाएं:
Looker → Looker इंस्टेंस → बदलाव करें
कनेक्शन → अनुमति वाले वीपीसी
पक्का करें कि आपने वह प्रोजेक्ट चुना हो जहां Looker-psc-demo डिप्लॉय किया गया है, फिर VPC Looker-psc-demo, और फिर 'जारी रखें' चुनें.
अनुमति वाले VPC की पुष्टि करना
अपडेट किए गए उन VPC की सूची देखें जिन्हें अनुमति मिली है
Cloud Console में, यहां जाएं:
Looker → Looker इंस्टेंस → जानकारी
11. पीएससी बैकएंड बनाना
सेवा प्रोड्यूसर के तौर पर Looker PSC, सेवा अटैचमेंट यूआरआई जनरेट करता है. इस यूआरआई का इस्तेमाल सेवा उपभोक्ता, एंडपॉइंट और बैकएंड को डिप्लॉय करने के लिए करते हैं, ताकि वे Looker का नॉर्थबाउंड ऐक्सेस पा सकें. अगले चरण में, आपको Looker PSC सेवा अटैचमेंट यूआरआई की पहचान करनी होगी. इसके बाद, उपभोक्ता VPC में Private Service Connect नेटवर्क एंडपॉइंट ग्रुप (एनईजी) बैकएंड बनाना होगा.
Looker PSC सेवा अटैचमेंट की पहचान करना
Cloud Console में, सेवा अटैचमेंट यूआरआई पर जाएं और उसे कॉपी करें:
Looker → Looker इंस्टेंस → जानकारी
पीएससी नेटवर्क एंडपॉइंट ग्रुप बनाना
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 में, यहां जाएं:
नेटवर्क सेवाएं → लोड बैलेंसिंग → लोड बैलेंसर बनाएं
ये विकल्प चुनें:
फ़्रंटएंड कॉन्फ़िगरेशन बनाना
यहां दिए गए विकल्प चुनें और अपने डेप्लॉयमेंट के हिसाब से एनवायरमेंट को पसंद के मुताबिक बनाएं:
- नेटवर्क इन्फ़्रास्ट्रक्चर को डिप्लॉय करने के लिए इस्तेमाल किया गया क्षेत्र
- आपके देश या इलाके के हिसाब से, प्रॉक्सी-ओनली सबनेट अपने-आप भर जाता है
- आपके चुने गए इलाके के आधार पर, पहले से तय किया गया स्टैटिक आईपी उपलब्ध है
प्रमाणपत्र का चयन करके, मौजूदा या नए प्रमाणपत्र का उपयोग करने के विकल्प को ड्रॉप-डाउन कर दिया जाता है:
अपना सर्टिफ़िकेट और निजी पासकोड अपलोड करें. इसके बाद, बनाएं को चुनें:
फ़्रंटएंड कॉन्फ़िगरेशन पूरा करने के लिए 'हो गया' चुनें:
बैकएंड कॉन्फ़िगरेशन बनाना
नीचे दिए गए विकल्पों को चुनें:
रूटिंग के नियम बनाना
ये विकल्प चुनें (डिफ़ॉल्ट विकल्प):
समीक्षा करना और फ़ाइनल करना
कॉन्फ़िगरेशन की पुष्टि करें और 'बनाएं' को चुनें:
लोड बैलेंसर अब चालू है:
Looker यूज़र इंटरफ़ेस (यूआई) को ऐक्सेस करना
लोड बैलेंसर चालू होने के बाद, वेब ब्राउज़र से अपने कस्टम Looker डोमेन को ऐक्सेस किया जा सकता है. यह ध्यान रखना ज़रूरी है कि इस्तेमाल किए जा रहे सर्टिफ़िकेट के आधार पर आपको चेतावनी दिख सकती है. उदाहरण के लिए, गैर-भरोसेमंद सर्टिफ़िकेट बनाम भरोसेमंद.
यहां Looker के कस्टम डोमेन looker.cosmopup.com को ऐक्सेस करने का उदाहरण (भरोसेमंद सर्टिफ़िकेट नहीं) दिया गया है. इससे Looker यूज़र इंटरफ़ेस का नॉर्थबाउंड ऐक्सेस मिलता है:
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 को लगता है कि कोडलैब शानदार हैं!!
आगे क्या करना है?
इनमें से कुछ कोडलैब देखें...
- सेवाओं को पब्लिश और इस्तेमाल करने के लिए, Private Service Connect का इस्तेमाल करना
- प्राइवेट सर्विस कनेक्ट और इंटरनल टीसीपी प्रॉक्सी लोड बैलेंसर का इस्तेमाल करके, हाइब्रिड नेटवर्किंग की मदद से कंपनी की ऑन-प्रेम सेवाओं से कनेक्ट करें
- पब्लिश किए गए सभी Private Service Connect कोडलैब का ऐक्सेस
आगे पढ़ें और वीडियो
रेफ़रंस दस्तावेज़
- खुद से मैनेज किए जाने वाले एसएसएल सर्टिफ़िकेट इस्तेमाल करें | लोड बैलेंसिंग | Google क्लाउड
- क्षेत्र के हिसाब से, Google की ओर से मैनेज किया जाने वाला सर्टिफ़िकेट डिप्लॉय करना
- Private Service Connect बैकएंड बनाना | VPC | Google Cloud
- Private Service Connect बैकएंड बनाना | VPC | Google Cloud
- Looker (Google Cloud Core) का निजी Service Connect इंस्टेंस बनाना
- Private Service Connect का इस्तेमाल करके, सेवा को पब्लिश करने का तरीका