Looker PSC का Cloud SQL PSC के लिए साउथबाउंड ऐक्सेस

1. परिचय

इस कोडलैब में, आपको सेवा देने वाले के तौर पर Private Service Connect के साथ डिप्लॉय किए गए Cloud SQL से साउथबाउंड कनेक्शन बनाने का तरीका बताया जाएगा.

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

145ea4672c3a3b14.png

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

259493afd914f68b.png

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

  • Private Service Connect Cloud SQL इंस्टेंस की प्रोड्यूसर सेवा बनाएं
  • सेवा के उपभोक्ता के तौर पर, Looker में Private Service Connect एंडपॉइंट बनाना

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

def88091b42bfe4d.png

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

आपको सेवा देने वाली कंपनी के तौर पर डिप्लॉय किया गया Cloud SQL पीएससी इंस्टेंस बनाना होगा. यह Looker पीएससी से सेवा लेने वाले के तौर पर जुड़ा होगा.

नीचे दी गई कार्रवाइयों से, Producer सेवा के ऐक्सेस की पुष्टि की जाती है:

  • Looker में, प्रोड्यूसर सेवा अटैचमेंट से जुड़ा PSC एंडपॉइंट बनाना
  • Cloud SQL पीएससी से डेटाबेस कनेक्शन बनाने के लिए, Looker Console का इस्तेमाल करना
  • पहले से तय की गई स्कीम की पुष्टि करके और उसे ऐक्सेस करके, Cloud SQL PSC से कनेक्टिविटी की जांच करना

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

1e7035ea608d7d23.png

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

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

  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 का इस्तेमाल करना होगा. यह Cloud में चलने वाला कमांड-लाइन एनवायरमेंट है.

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

55efc1aaa7a4d3ad.png

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

7ffe5cbb04455448.png

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

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

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

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

6. Looker PSC प्रोजेक्ट की पहचान करना

Cloud SQL PSC इंस्टेंस बनाने के लिए, अनुमति वाले PSC प्रोजेक्ट की पहचान करना ज़रूरी है. इसलिए, Cloud SQL इंस्टेंस बनाने के समय Looker PSC टेंंट प्रोजेक्ट की जानकारी देनी होगी या किसी मौजूदा इंस्टेंस का इस्तेमाल करने पर उसे अपडेट करना होगा.

gcloud का इस्तेमाल करके, Looker PSC प्रोजेक्ट तय करना

Cloud Shell में, Looker PSC प्रोजेक्ट आईडी पाने के लिए, [INSTANCE_NAME] को अपने Looker PSC इंस्टेंस के नाम से अपडेट करें:

gcloud looker instances describe [INSTANCE_NAME] --region=$region --format=json | grep -i lookerServiceAttachmentUri

उदाहरण के आउटपुट में,t7ec792caf2a609d1-tp, Looker PSC प्रोजेक्ट है:

gcloud looker instances describe looker-psc-instance --region=us-central1 --format=json | grep -i lookerServiceAttachmentUri
    "lookerServiceAttachmentUri": "projects/t7ec792caf2a609d1-tp/regions/us-central1/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183",

Cloud Console का इस्तेमाल करके, Looker PSC प्रोजेक्ट तय करना

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

Looker → Looker PSC इंस्टेंस

1367ec0136aa5ad6.png

7. प्रोड्यूसर के लिए Cloud SQL इंस्टेंस बनाना

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

Cloud SQL पीएससी बनाना

Cloud Shell में, कोई इंस्टेंस बनाएं और Private Service Connect चालू करें. इसके बाद, [INSTANCE_PROJECT] को अपने Looker PSC प्रोजेक्ट आईडी से अपडेट करें.

gcloud sql instances create cloud-sql-psc-demo \
--project=$project \
--region=$region \
--enable-private-service-connect \
--allowed-psc-projects=[INSTANCE_PROJECT] \
--availability-type=regional \
--no-assign-ip \
--cpu=2 --memory=4GB \
--database-version=MYSQL_8_0 \
--enable-bin-log \
--root-password=password123

उदाहरण:

gcloud sql instances create cloud-sql-psc-demo \
--project=$project \
--region=$region \
--enable-private-service-connect \
--allowed-psc-projects=t7ec792caf2a609d1-tp \
--availability-type=regional \
--no-assign-ip \
--cpu=2 --memory=4GB \
--database-version=MYSQL_8_0 \
--enable-bin-log \
--root-password=password123

Cloud SQL सेवा का अटैचमेंट पाना

Private Service Connect की सुविधा चालू करके Cloud SQL इंस्टेंस बनाने के बाद, सेवा अटैचमेंट का यूआरआई पाएं. इसका इस्तेमाल, Looker में Private Service Connect एंडपॉइंट बनाने के लिए, अगले चरण में किया जाएगा.

Cloud Shell में, ये काम करें:

gcloud sql instances describe [INSTANCE_NAME] --project=$project | grep -i pscServiceAttachmentLink

उदाहरण के तौर पर, आउटपुट में सेवा के अटैचमेंट का यूआरआई दिखता है:

projects/o6222fa10e2a50865p-tp/regions/us-central1/serviceAttachments/a-39d809aaecae-psc-service-attachment-127fc34733744155

gcloud sql instances describe cloud-sql-psc-demo --project=$project | grep -i pscServiceAttachmentLink:
pscServiceAttachmentLink: projects/o6222fa10e2a50865p-tp/regions/us-central1/serviceAttachments/a-39d809aaecae-psc-service-attachment-127fc34733744155

Cloud Console से, Cloud SQL PSC सेवा अटैचमेंट पाया जा सकता है:

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

SQL → SQL इंस्टेंस → कनेक्शन

18940483f646ed15.png

8. Looker में पीएससी एंडपॉइंट कनेक्शन सेट अप करना

नीचे दिए गए सेक्शन में, आपको किसी एक डोमेन के लिए Cloud Shell में –psc-service-attachment फ़्लैग का इस्तेमाल करके, Cloud SQL प्रोड्यूसर सर्विस अटैचमेंट को Looker Core पीएससी से जोड़ना होगा.

Cloud Shell में, अपने एनवायरमेंट के हिसाब से इन पैरामीटर को अपडेट करके, psc असोसिएशन बनाएं:

  • INSTANCE_NAME: आपके Looker (Google Cloud core) इंस्टेंस का नाम.
  • DOMAIN_1: sql.database1.com
  • SERVICE_ATTACHMENT_1: Cloud SQL PSC इंस्टेंस के बारे में बताते समय कैप्चर किया गया यूआरआई
  • REGION: वह क्षेत्र जहां आपका Looker (Google Cloud Core) इंस्टेंस होस्ट किया गया है

Cloud Shell में, ये काम करें:

gcloud looker instances update INSTANCE_NAME \
--psc-service-attachment  domain=DOMAIN_1,attachment=SERVICE_ATTACHMENT_URI_1 \
--region=REGION

उदाहरण:

gcloud looker instances update looker-psc-instance \
--psc-service-attachment  domain=sql.database1.com,attachment=projects/o6222fa10e2a50865p-tp/regions/us-central1/serviceAttachments/a-39d809aaecae-psc-service-attachment-127fc34733744155 \
--region=us-central1

Cloud Shell में, पुष्टि करें कि serviceAttachments connectionStatus "ACCEPTED" है. अपने Looker PSC INSTANCE_NAME के साथ अपडेट करना न भूलें:

gcloud looker instances describe [INSTANCE_NAME] --region=$region --format=json

उदाहरण:

gcloud looker instances describe looker-psc-instance --region=$region --format=json

उदाहरण:

user@cloudshell$ gcloud looker instances describe looker-psc-instance --region=$region --format=json
{
  "adminSettings": {},
  "createTime": "2024-08-23T00:00:45.339063195Z",
  "customDomain": {
    "domain": "looker.cosmopup.com",
    "state": "AVAILABLE"
  },
  "encryptionConfig": {},
  "lookerVersion": "24.14.18",
  "name": "projects/project/locations/us-central1/instances/looker-psc-instance",
  "platformEdition": "LOOKER_CORE_ENTERPRISE_ANNUAL",
  "pscConfig": {
    "allowedVpcs": [
      "projects/project/global/networks/looker-psc-demo",
      "projects/project/global/networks/looker-shared-vpc"
    ],
    "lookerServiceAttachmentUri": "projects/t7ec792caf2a609d1-tp/regions/us-central1/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183",
    "serviceAttachments": [
      {
        "connectionStatus": "ACCEPTED",
        "localFqdn": "sql.database1.com",
        "targetServiceAttachmentUri": "projects/o6222fa10e2a50865p-tp/regions/us-central1/serviceAttachments/a-39d809aaecae-psc-service-attachment-127fc34733744155"
      }
    ]
  },
  "pscEnabled": true,
  "state": "ACTIVE",
  "updateTime": "2024-09-04T14:40:05.613026012Z"
}

Cloud Console में PSC एंडपॉइंट की पुष्टि करना

Cloud Console से, PSC कनेक्शन की पुष्टि की जा सकती है

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

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

2d4684d722d31e4b.png

9fa909f826dec963.png

9. Looker PSC को Cloud SQL PSC के साथ इंटिग्रेट करना

नीचे दिए गए सेक्शन में, Cloud SQL पीएससी इंस्टेंस से डेटाबेस कनेक्शन बनाने के लिए, Looker Console का इस्तेमाल किया जाएगा.

एडमिन पेज → डेटाबेस → कनेक्शन → कनेक्शन जोड़ें को चुनें

नीचे दिए गए स्क्रीनशॉट के मुताबिक, कनेक्शन की जानकारी भरें और कनेक्ट करें को चुनें

eb3ef74d3ae71f1a.png

कनेक्शन अब कॉन्फ़िगर हो गया है

29017202470ad81f.png

10. Looker की कनेक्टिविटी की पुष्टि करना

नीचे दिए गए सेक्शन में, आपको Looker के 'जांच करें' ऐक्शन का इस्तेमाल करके, Cloud SQL PSC इंस्टेंस से Looker की कनेक्टिविटी की पुष्टि करने का तरीका पता चलेगा.

डेटा कनेक्शन एडमिन → डेटाबेस → कनेक्शन → cloud-sql-psc-demo → टेस्ट पर जाएं

टेस्ट चुनने के बाद, Looker postgres-database से कनेक्ट हो जाएगा, जैसा कि यहां दिखाया गया है:

d9729caf9a61bfc2.png

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

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

gcloud sql instances delete cloud-sql-psc-demo -q

11. बधाई हो

बधाई हो, आपने Private Service Connect की मदद से Looker Console का इस्तेमाल करके, Cloud SQL PSC से कनेक्टिविटी को कॉन्फ़िगर और पुष्टि कर ली है.

आपने Cloud SQL PSC इंस्टेंस को प्रोड्यूसर सेवा और Looker PSC एंडपॉइंट के तौर पर बनाया है, ताकि प्रोड्यूसर सेवा से कनेक्ट किया जा सके.

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

c911c127bffdee57.jpeg

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

इन कोडलैब को देखें...

ज़्यादा पढ़ने और वीडियो के लिए

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