লুকার পিএসসি সাউথবাউন্ড HTTPS ইন্টারনেট এনইজি, লুকার পিএসসি সাউথবাউন্ড HTTPS ইন্টারনেট এনইজি, লুকার পিএসসি সাউথবাউন্ড HTTPS ইন্টারনেট এনইজি, লুকার পিএসসি সাউথবাউন্ড HTTPS ইন্টারনেট এনইজি

1. ভূমিকা

এই কোডল্যাবে আপনি একটি অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার ব্যবহার করে GitHub-এর সাথে একটি সাউথবাউন্ড HTTPS সংযোগ সঞ্চালন করবেন এবং একটি পরিষেবা গ্রাহক হিসাবে Looker PSC থেকে আমন্ত্রিত ইন্টারনেট নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপ (NEG) ব্যবহার করবেন।

প্রাইভেট সার্ভিস কানেক্ট হল Google ক্লাউড নেটওয়ার্কিং এর একটি ক্ষমতা যা গ্রাহকদের তাদের VPC নেটওয়ার্কের ভিতর থেকে ব্যক্তিগতভাবে পরিচালিত পরিষেবাগুলি অ্যাক্সেস করতে দেয়। একইভাবে, এটি পরিচালিত পরিষেবা প্রযোজকদের তাদের নিজস্ব আলাদা ভিপিসি নেটওয়ার্কে এই পরিষেবাগুলি হোস্ট করতে এবং তাদের গ্রাহকদের একটি ব্যক্তিগত সংযোগ অফার করার অনুমতি দেয়। উদাহরণ স্বরূপ, আপনি যখন লুকার অ্যাক্সেস করতে প্রাইভেট সার্ভিস কানেক্ট ব্যবহার করেন, তখন আপনিই পরিষেবার ভোক্তা এবং Google হল পরিষেবা প্রযোজক, যেমন চিত্র 1-এ হাইলাইট করা হয়েছে৷

চিত্র 1।

145ea4672c3a3b14.png

সাউথবাউন্ড অ্যাক্সেস, রিভার্স পিএসসি নামেও পরিচিত, গ্রাহককে প্রযোজক হিসাবে একটি প্রকাশিত পরিষেবা তৈরি করতে সক্ষম করে যাতে ভিপিসি-তে, প্রাঙ্গনে, পরিচালিত পরিষেবা এবং ইন্টারনেটে লুকার অ্যাক্সেসের অনুমতি দেওয়া যায়। সাউথবাউন্ড সংযোগগুলি যে কোনও অঞ্চলে স্থাপন করা যেতে পারে, যেখানে লুকার পিএসসি মোতায়েন করা হয়েছে তা নির্বিশেষে, চিত্র 2-এ হাইলাইট করা হয়েছে৷

চিত্র 2।

259493afd914f68b.png

আপনি কি শিখবেন

  • নেটওয়ার্ক প্রয়োজনীয়তা
  • একটি ব্যক্তিগত পরিষেবা সংযোগ প্রযোজক পরিষেবা তৈরি করুন৷
  • লুকারে একটি প্রাইভেট সার্ভিস কানেক্ট এন্ডপয়েন্ট তৈরি করুন
  • একটি টেস্ট সংযোগ ব্যবহার করে লুকার থেকে গিটহাবের সাথে সংযোগ স্থাপন করুন

আপনি কি প্রয়োজন হবে

def88091b42bfe4d.png

2. আপনি কি তৈরি করবেন

অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার এবং Private Service Connect (PSC) এর মাধ্যমে একটি পরিষেবা হিসাবে প্রকাশিত ইন্টারনেট NEG স্থাপন করতে আপনি একটি প্রযোজক নেটওয়ার্ক, looker-psc-demo প্রতিষ্ঠা করবেন। একবার প্রকাশিত হলে, আপনি প্রযোজক পরিষেবাতে বৈধতা অ্যাক্সেসের জন্য নিম্নলিখিত ক্রিয়াগুলি সম্পাদন করবেন:

  • প্রডিউসার সার্ভিস অ্যাটাচমেন্টের সাথে যুক্ত লুকারে একটি PSC এন্ডপয়েন্ট তৈরি করুন
  • একটি নতুন প্রকল্প তৈরি করতে এবং GitHub.com-এ HTTPS সংযোগ পরীক্ষা করতে Looker Console ব্যবহার করুন

3. নেটওয়ার্ক প্রয়োজনীয়তা

নীচে প্রযোজক নেটওয়ার্কের জন্য নেটওয়ার্ক প্রয়োজনীয়তাগুলির ভাঙ্গন রয়েছে, এই কোডল্যাবের ভোক্তা হল লুকার পিএসসি উদাহরণ৷

উপাদান

বর্ণনা

ভিপিসি (লুকার-পিএসসি-ডেমো)

কাস্টম মোড ভিপিসি

PSC NAT সাবনেট

ভোক্তা ভিপিসি নেটওয়ার্কের প্যাকেটগুলি উৎস NAT (SNAT) ব্যবহার করে অনুবাদ করা হয় যাতে তাদের মূল উৎস আইপি ঠিকানাগুলি প্রযোজকের ভিপিসি নেটওয়ার্কে NAT সাবনেট থেকে উৎস IP ঠিকানায় রূপান্তরিত হয়।

পিএসসি ফরওয়ার্ডিং নিয়ম সাবনেট

আঞ্চলিক অভ্যন্তরীণ TCP প্রক্সি লোড ব্যালেন্সারের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয়

PSC NEG সাবনেট

নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয়

প্রক্সি শুধুমাত্র সাবনেট

লোড ব্যালেন্সারের প্রতিটি প্রক্সিকে একটি অভ্যন্তরীণ IP ঠিকানা বরাদ্দ করা হয়। একটি প্রক্সি থেকে ব্যাকএন্ড VM বা এন্ডপয়েন্টে পাঠানো প্যাকেটগুলিতে শুধুমাত্র প্রক্সি সাবনেট থেকে একটি উৎস আইপি ঠিকানা থাকে।

ইন্টারনেট NEG

লোড ব্যালেন্সারের জন্য একটি বহিরাগত ব্যাকএন্ড সংজ্ঞায়িত করতে ব্যবহৃত একটি সংস্থান। শুধুমাত্র ক্লাউড ভিপিএন বা ক্লাউড ইন্টারকানেক্টের মাধ্যমে এন্ডপয়েন্টে পৌঁছানো যাবে না।

ব্যাকএন্ড পরিষেবা

একটি ব্যাকএন্ড পরিষেবা আপনার লোড ব্যালেন্সার এবং আপনার ব্যাকএন্ড সংস্থানগুলির মধ্যে একটি সেতু হিসাবে কাজ করে। টিউটোরিয়ালে, ব্যাকএন্ড পরিষেবাটি ইন্টারনেট NEG-এর সাথে যুক্ত।

ক্লাউড রাউটার

ক্লাউড এনএটি ক্লাউড রাউটারের উপর নির্ভর করে প্লেন নিয়ন্ত্রণের ক্ষমতার জন্য, কিন্তু বিজিপি সেশন পরিচালনার জন্য নয়।

মেঘ NAT

আঞ্চলিক ইন্টারনেট NEG ইন্টারনেট প্রস্থানের জন্য ক্লাউড NAT ব্যবহার করে।

4. কোডল্যাব টপোলজি

4e7ac0fd4a61ed9b.png

5. সেটআপ এবং প্রয়োজনীয়তা

স্ব-গতিসম্পন্ন পরিবেশ সেটআপ

  1. Google ক্লাউড কনসোলে সাইন-ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ আপনার যদি ইতিমধ্যেই একটি Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে।

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • প্রকল্পের নাম এই প্রকল্পের অংশগ্রহণকারীদের জন্য প্রদর্শনের নাম। এটি একটি অক্ষর স্ট্রিং যা Google API দ্বারা ব্যবহৃত হয় না। আপনি সবসময় এটি আপডেট করতে পারেন.
  • প্রোজেক্ট আইডি সমস্ত Google ক্লাউড প্রোজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (সেট করার পরে পরিবর্তন করা যাবে না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত আপনি এটা কি যত্ন না. বেশিরভাগ কোডল্যাবে, আপনাকে আপনার প্রকল্প আইডি উল্লেখ করতে হবে (সাধারণত PROJECT_ID হিসাবে চিহ্নিত)। আপনি যদি জেনারেট করা আইডি পছন্দ না করেন, তাহলে আপনি অন্য একটি এলোমেলো আইডি তৈরি করতে পারেন। বিকল্পভাবে, আপনি নিজের চেষ্টা করতে পারেন, এবং এটি উপলব্ধ কিনা দেখতে পারেন। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রকল্পের সময়কালের জন্য থাকে।
  • আপনার তথ্যের জন্য, একটি তৃতীয় মান আছে, একটি প্রকল্প নম্বর , যা কিছু API ব্যবহার করে। ডকুমেন্টেশনে এই তিনটি মান সম্পর্কে আরও জানুন।
  1. এরপরে, ক্লাউড রিসোর্স/এপিআই ব্যবহার করতে আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে। এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ হবে না, যদি কিছু হয়। এই টিউটোরিয়ালের বাইরে বিলিং এড়াতে সংস্থানগুলি বন্ধ করতে, আপনি আপনার তৈরি করা সংস্থানগুলি মুছতে বা প্রকল্প মুছতে পারেন। নতুন Google ক্লাউড ব্যবহারকারীরা $300 USD বিনামূল্যের ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷

ক্লাউড শেল শুরু করুন

যদিও Google ক্লাউড আপনার ল্যাপটপ থেকে দূরবর্তীভাবে পরিচালিত হতে পারে, এই কোডল্যাবে আপনি Google ক্লাউড শেল ব্যবহার করবেন, একটি কমান্ড লাইন পরিবেশ যা ক্লাউডে চলছে।

Google ক্লাউড কনসোল থেকে, উপরের ডানদিকে টুলবারে ক্লাউড শেল আইকনে ক্লিক করুন:

55efc1aaa7a4d3ad.png

পরিবেশের ব্যবস্থা করতে এবং সংযোগ করতে এটি শুধুমাত্র কয়েক মুহূর্ত নিতে হবে। এটি সমাপ্ত হলে, আপনি এই মত কিছু দেখতে হবে:

7ffe5cbb04455448.png

এই ভার্চুয়াল মেশিনটি আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুল দিয়ে লোড করা হয়েছে। এটি একটি ক্রমাগত 5GB হোম ডিরেক্টরি অফার করে এবং Google ক্লাউডে চলে, যা নেটওয়ার্ক কর্মক্ষমতা এবং প্রমাণীকরণকে ব্যাপকভাবে উন্নত করে। এই কোডল্যাবে আপনার সমস্ত কাজ একটি ব্রাউজারে করা যেতে পারে। আপনার কিছু ইন্সটল করার দরকার নেই।

6. আপনি শুরু করার আগে

এপিআই সক্ষম করুন

ক্লাউড শেলের ভিতরে, নিশ্চিত করুন যে আপনার প্রকল্প আইডি সেট আপ করা আছে:

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. প্রযোজক VPC নেটওয়ার্ক তৈরি করুন

ভিপিসি নেটওয়ার্ক

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

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

সাবনেট তৈরি করুন

নেটওয়ার্ক ঠিকানা অনুবাদের উদ্দেশ্যে PSC সাবনেট PSC পরিষেবা সংযুক্তির সাথে যুক্ত হবে।

ক্লাউড শেলের ভিতরে, PSC NAT সাবনেট তৈরি করুন:

gcloud compute networks subnets create producer-psc-nat-subnet --network looker-psc-demo --range 172.16.10.0/28 --region $region --purpose=PRIVATE_SERVICE_CONNECT

ক্লাউড শেলের ভিতরে, প্রযোজক ফরওয়ার্ডিং নিয়ম সাবনেট তৈরি করুন:

gcloud compute networks subnets create producer-psc-fr-subnet --network looker-psc-demo --range 172.16.20.0/28 --region $region --enable-private-ip-google-access

ক্লাউড শেলের ভিতরে, প্রযোজক আঞ্চলিক প্রক্সি শুধুমাত্র সাবনেট তৈরি করুন:

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

পাবলিক NAT গেটওয়ে তৈরি করুন

NAT গেটওয়ে আঞ্চলিক অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার দ্বারা কনফিগারেশন বিকল্পের সাথে ইন্টারনেট বহির্গমনের জন্য ব্যবহৃত হয়, -endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB, তাই একই NATGW GCE/GKE ইন্টারনেট প্রস্থান সমর্থন করবে না। GCE/GKE ইন্টারনেট এগ্রেসের জন্য –endpoint-types=ENDPOINT_TYPE_VM সহ একটি অতিরিক্ত NAT GW স্থাপন করুন।

ক্লাউড শেলের ভিতরে, ক্লাউড রাউটার তৈরি করুন:

gcloud compute routers create looker-psc-demo-cloud-router --network looker-psc-demo --region $region

ক্লাউড শেলের ভিতরে, tcp প্রক্সি লোড ব্যালেন্সারের জন্য ইন্টারনেট এগ্রেস সক্ষম করে ক্লাউড NAT গেটওয়ে তৈরি করুন:

gcloud compute routers nats create looker-psc-demo-natgw \
  --router=looker-psc-demo-cloud-router \
  --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \
  --nat-custom-subnet-ip-ranges=$region-proxy-only-subnet \
  --auto-allocate-nat-external-ips \
  --region=$region

লোড ব্যালেন্সারের আইপি ঠিকানা সংরক্ষণ করুন

ক্লাউড শেলের ভিতরে, লোড ব্যালেন্সারের জন্য একটি অভ্যন্তরীণ আইপি ঠিকানা সংরক্ষণ করুন:

gcloud compute addresses create internet-neg-lb-ip \
  --region=$region \
  --subnet=producer-psc-fr-subnet

ক্লাউড শেলের ভিতরে, সংরক্ষিত আইপি ঠিকানা দেখুন।

gcloud compute addresses describe internet-neg-lb-ip \
  --region=$region | grep -i address:

উদাহরণ আউটপুট:

user@cloudshell$ gcloud compute addresses describe internet-neg-lb-ip   --region=$region | grep -i address:
address: 172.16.20.2

ইন্টারনেট NEG সেট আপ করুন

একটি ইন্টারনেট NEG তৈরি করুন, এবং –নেটওয়ার্ক-এন্ডপয়েন্ট-টাইপকে ইন্টারনেট-fqdn-পোর্টে সেট করুন (হোস্টনাম এবং পোর্ট যেখানে আপনার বাহ্যিক ব্যাকএন্ডে পৌঁছানো যেতে পারে)।

ক্লাউড শেলের ভিতরে, github.com এর জন্য ব্যবহৃত একটি ইন্টারনেট NEG তৈরি করুন

gcloud compute network-endpoint-groups create github-internet-neg \
    --network-endpoint-type=INTERNET_FQDN_PORT \
    --network=looker-psc-demo \
    --region=$region

ক্লাউড শেলের ভিতরে, FQDN github.com এবং পোর্ট 443 দিয়ে ইন্টারনেট NEG github-internet-neg আপডেট করুন

gcloud compute network-endpoint-groups update github-internet-neg \
    --add-endpoint="fqdn=github.com,port=443" \
    --region=$region

নেটওয়ার্ক ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়ম তৈরি করুন

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute network-firewall-policies create looker-psc-demo-policy --global

gcloud compute network-firewall-policies associations create --firewall-policy looker-psc-demo-policy --network looker-psc-demo --name looker-psc-demo --global-firewall-policy

নিম্নলিখিত ফায়ারওয়াল নিয়মটি PSC NAT সাবনেট পরিসর থেকে নেটওয়ার্কের সমস্ত দৃষ্টান্তে ট্র্যাফিকের অনুমতি দেয়।

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute network-firewall-policies rules create 2001 --action ALLOW --firewall-policy looker-psc-demo-policy --description "allow traffic from PSC NAT subnet" --direction INGRESS --src-ip-ranges 172.16.10.0/28 --global-firewall-policy --layer4-configs=tcp

8. প্রযোজক পরিষেবা তৈরি করুন

লোড ব্যালেন্সার উপাদান তৈরি করুন

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute backend-services create producer-backend-svc  --protocol=tcp --region=$region --load-balancing-scheme=INTERNAL_MANAGED

gcloud compute backend-services add-backend producer-backend-svc --network-endpoint-group=github-internet-neg --network-endpoint-group-region=$region --region=$region

ক্লাউড শেল-এ, আপনার ব্যাকএন্ড পরিষেবাতে রুট অনুরোধের জন্য একটি লক্ষ্য TCP প্রক্সি তৈরি করুন:

gcloud compute target-tcp-proxies create producer-lb-tcp-proxy \
      --backend-service=producer-backend-svc  \
      --region=$region

নিম্নলিখিত সিনট্যাক্সে, একটি ফরওয়ার্ডিং নিয়ম তৈরি করুন (অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার)।

ক্লাউড শেলে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute forwarding-rules create producer-github-fr \
     --load-balancing-scheme=INTERNAL_MANAGED \
     --network-tier=PREMIUM \
     --network=looker-psc-demo \
     --subnet=producer-psc-fr-subnet \
     --address=internet-neg-lb-ip \
     --target-tcp-proxy=producer-lb-tcp-proxy \
     --target-tcp-proxy-region=$region \
     --region=$region \
     --ports=443

সার্ভিস অ্যাটাচমেন্ট তৈরি করুন

ক্লাউড শেলের ভিতরে, পরিষেবা সংযুক্তি তৈরি করুন, github-svc-attachment-https:

gcloud compute service-attachments create github-svc-attachment-https --region=$region --producer-forwarding-rule=producer-github-fr --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=producer-psc-nat-subnet

এরপরে, লুকারে PSC এন্ডপয়েন্ট কনফিগার করার জন্য প্রোজেক্ট দিয়ে শুরু করে সেল্ফলিঙ্ক URI-তে তালিকাভুক্ত পরিষেবা সংযুক্তিটি পান এবং নোট করুন।

সেলফলিঙ্ক: প্রকল্প/<your-project-id>/regions/<your-region>/serviceAttachments/github-svc-attachment-https

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute service-attachments describe github-svc-attachment-https --region=$region

উদাহরণ:

connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-08-30T09:44:03.883-07:00'
description: ''
enableProxyProtocol: false
fingerprint: RfKh3blWZE0=
id: '2897904404386302012'
kind: compute#serviceAttachment
name: github-svc-attachment-https
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$project/regions/$region/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
  high: '19348441121424360'
  low: '2897904404386302012'
reconcileConnections: false
region: https://www.googleapis.com/compute/v1/projects/$project/regions/$region
selfLink: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/serviceAttachments/github-svc-attachment-https
targetService: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-github-fr

ক্লাউড কনসোলে, নেভিগেট করুন:

নেটওয়ার্ক পরিষেবা → ব্যক্তিগত পরিষেবা সংযোগ → প্রকাশিত পরিষেবা৷

a8cae886441d9c25.png

84a906b3bedabeee.png

9. লুকারে একটি PSC এন্ডপয়েন্ট সংযোগ স্থাপন করুন

নিম্নলিখিত বিভাগে, আপনি একটি একক ডোমেনের জন্য ক্লাউড শেল-এ –psc-সার্ভিস-অ্যাটাচমেন্ট পতাকা ব্যবহারের মাধ্যমে লুকার কোর PSC-এর সাথে প্রযোজক পরিষেবা সংযুক্তি সংযুক্ত করবেন৷

ক্লাউড শেলের ভিতরে, আপনার পরিবেশের সাথে মেলে নিম্নলিখিত পরামিতিগুলি আপডেট করে psc অ্যাসোসিয়েশন তৈরি করুন:

  • INSTANCE_NAME: আপনার লুকারের নাম (Google ক্লাউড কোর) উদাহরণ।
  • DOMAIN_1: github.com
  • SERVICE_ATTACHMENT_1: পরিষেবা সংযুক্তি, github-svc-attachment-https বর্ণনা করার সময় URI ক্যাপচার করা হয়েছে৷
  • অঞ্চল: যে অঞ্চলে আপনার লুকার (গুগল ক্লাউড কোর) উদাহরণ হোস্ট করা হয়েছে৷

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

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=github.com,attachment=projects/$project/regions/$region/serviceAttachments/github-svc-attachment-https \
--region=$region

ক্লাউড শেলের ভিতরে, সার্ভিস অ্যাটাচমেন্ট সংযোগের স্ট্যাটাস "স্বীকৃত" যাচাই করুন, আপনার লুকার PSC INSTANCE_NAME এর সাথে আপডেট করুন

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

উদাহরণ:

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

উদাহরণ:

{
  "adminSettings": {},
  "createTime": "2024-08-23T00:00:45.339063195Z",
  "customDomain": {
    "domain": "cosmopup.com",
    "state": "AVAILABLE"
  },
  "encryptionConfig": {},
  "lookerVersion": "24.12.28",
  "name": "projects/$project/locations/$region/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/$region/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183",
    "serviceAttachments": [
      {
        "connectionStatus": "ACCEPTED",
        "localFqdn": "github.com",
        "targetServiceAttachmentUri": "projects/$project/regions/$region/serviceAttachments/github-svc-attachment-https"
      }
    ]
  },
  "pscEnabled": true,
  "state": "ACTIVE",
  "updateTime": "2024-08-30T17:47:33.440271635Z"
}

ক্লাউড কনসোলে PSC এন্ডপয়েন্ট যাচাই করুন

ক্লাউড কনসোল থেকে আপনি পিএসসি সংযোগ যাচাই করতে পারেন

ক্লাউড কনসোলে, নেভিগেট করুন:

লুকার → লুকার ইনস্ট্যান্স → বিশদ বিবরণ৷

2d4684d722d31e4b.png

ef907280833bcad.png

10. GitHub-এ কানেক্টিভিটি পরীক্ষা করুন

নিম্নলিখিত ধাপে, আপনি github.com-এ HTTPS সংযোগ যাচাই করার জন্য একটি প্রকল্প তৈরি করতে Looker Console ব্যবহার করবেন।

11. একটি নতুন প্রকল্প তৈরি করুন

বিকাশ মোড সক্ষম করুন

লুকার কনসোলে, নেভিগেট করুন:

ডেভেলপমেন্ট মোড সক্ষম করুন (নীচে বাম পৃষ্ঠা), একবার নির্বাচিত ব্যানার 'আপনি উন্নয়ন মোডে' প্রদর্শিত হবে।

70c9ded749decfbe.png

একটি নতুন প্রকল্প তৈরি করুন

ক্লাউড কনসোলে, নেভিগেট করুন:

উন্নয়ন → প্রকল্প

e8ae11e0392a776d.png

নতুন লুকএমএল প্রকল্প নির্বাচন করুন

65a3c2573e97e1e9.png

একটি প্রকল্পের নাম প্রদান করুন, ফাঁকা প্রকল্প নির্বাচন করুন তারপর প্রকল্প তৈরি করুন।

9185808e001fa540.png

কনফিগার গিট নির্বাচন করুন

42f5e51ce70642ad.png

গিট কনফিগার করুন

আপনার HTTPS গিথুবের বিবরণ সহ সংগ্রহস্থলের URL আপডেট করুন, .git এর সাথে URL যুক্ত করা নিশ্চিত করুন তারপর চালিয়ে যান নির্বাচন করুন।

f5c448f6659b8fc1.png

উদাহরণ:

4065ab1d196589f.png

আপনার GitHub ব্যবহারকারীর নাম এবং ব্যক্তিগত অ্যাক্সেস টোকেন (ক্লাসিক) দিয়ে নির্বাচন আপডেট করুন, তারপর পরীক্ষা করুন এবং সেটআপ চূড়ান্ত করুন।

1dc44d63c555a9ae.png

গিট অ্যাকশন নির্বাচন করুন

b5903668a50a99ca.png

টেস্ট গিট সংযোগ নির্বাচন করুন

51b722e84f2df38c.png

গিট সংযোগ পরীক্ষা যাচাই করুন

a33584380b788b6d.png

পরিষ্কার করুন

একটি একক ক্লাউড শেল টার্মিনাল থেকে ল্যাব উপাদান মুছে দিন

gcloud compute service-attachments delete github-svc-attachment-https --region=$region -q

gcloud compute forwarding-rules delete producer-github-fr --region=$region -q

gcloud compute target-tcp-proxies delete producer-lb-tcp-proxy --region=$region -q

gcloud compute backend-services delete producer-backend-svc --region=$region -q

gcloud compute network-firewall-policies rules delete 2001 --firewall-policy looker-psc-demo-policy --global-firewall-policy -q

gcloud compute network-firewall-policies associations delete --firewall-policy=looker-psc-demo-policy  --name=looker-psc-demo --global-firewall-policy -q

gcloud compute network-firewall-policies delete looker-psc-demo-policy --global -q

gcloud compute routers nats delete looker-psc-demo-natgw --router=looker-psc-demo-cloud-router --router-region=$region -q

gcloud compute routers delete looker-psc-demo-cloud-router --region=$region -q

gcloud compute network-endpoint-groups delete github-internet-neg --region=$region -q

gcloud compute addresses delete internet-neg-lb-ip --region=$region -q

gcloud compute networks subnets delete producer-psc-fr-subnet producer-psc-nat-subnet $region-proxy-only-subnet --region=$region -q

gcloud compute networks delete looker-psc-demo -q

12. অভিনন্দন

অভিনন্দন, আপনি প্রাইভেট সার্ভিস কানেক্ট দ্বারা চালিত লুকার কনসোল ব্যবহার করে গিটহাবের সাথে সফলভাবে সংযোগ কনফিগার এবং যাচাই করেছেন।

আপনি প্রযোজক পরিকাঠামো তৈরি করেছেন, কীভাবে একটি ইন্টারনেট NEG, প্রযোজক পরিষেবা এবং লুকার PSC এন্ডপয়েন্ট তৈরি করতে হয় তা শিখেছেন যা প্রযোজক পরিষেবার সাথে সংযোগের অনুমতি দেয়৷

Cosmopup মনে করে কোডল্যাবগুলি দুর্দান্ত!!

c911c127bffdee57.jpeg

এরপর কি?

এই কোডল্যাবগুলির কিছু পরীক্ষা করে দেখুন...

আরও পড়া এবং ভিডিও

রেফারেন্স ডক্স

,

1. ভূমিকা

এই কোডল্যাবে আপনি একটি অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার ব্যবহার করে GitHub-এর সাথে একটি সাউথবাউন্ড HTTPS সংযোগ সঞ্চালন করবেন এবং একটি পরিষেবা গ্রাহক হিসাবে Looker PSC থেকে আমন্ত্রিত ইন্টারনেট নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপ (NEG) ব্যবহার করবেন।

প্রাইভেট সার্ভিস কানেক্ট হল Google ক্লাউড নেটওয়ার্কিং এর একটি ক্ষমতা যা গ্রাহকদের তাদের VPC নেটওয়ার্কের ভিতর থেকে ব্যক্তিগতভাবে পরিচালিত পরিষেবাগুলি অ্যাক্সেস করতে দেয়। একইভাবে, এটি পরিচালিত পরিষেবা প্রযোজকদের তাদের নিজস্ব আলাদা ভিপিসি নেটওয়ার্কে এই পরিষেবাগুলি হোস্ট করতে এবং তাদের গ্রাহকদের একটি ব্যক্তিগত সংযোগ অফার করার অনুমতি দেয়। উদাহরণ স্বরূপ, আপনি যখন লুকার অ্যাক্সেস করতে প্রাইভেট সার্ভিস কানেক্ট ব্যবহার করেন, তখন আপনিই পরিষেবার ভোক্তা এবং Google হল পরিষেবা প্রযোজক, যেমন চিত্র 1-এ হাইলাইট করা হয়েছে৷

চিত্র 1।

145ea4672c3a3b14.png

সাউথবাউন্ড অ্যাক্সেস, রিভার্স পিএসসি নামেও পরিচিত, গ্রাহককে প্রযোজক হিসাবে একটি প্রকাশিত পরিষেবা তৈরি করতে সক্ষম করে যাতে ভিপিসি-তে, প্রাঙ্গনে, পরিচালিত পরিষেবা এবং ইন্টারনেটে লুকার অ্যাক্সেসের অনুমতি দেওয়া যায়। সাউথবাউন্ড সংযোগগুলি যে কোনও অঞ্চলে স্থাপন করা যেতে পারে, যেখানে লুকার পিএসসি মোতায়েন করা হয়েছে তা নির্বিশেষে, চিত্র 2-এ হাইলাইট করা হয়েছে৷

চিত্র 2।

259493afd914f68b.png

আপনি কি শিখবেন

  • নেটওয়ার্ক প্রয়োজনীয়তা
  • একটি ব্যক্তিগত পরিষেবা সংযোগ প্রযোজক পরিষেবা তৈরি করুন৷
  • লুকারে একটি প্রাইভেট সার্ভিস কানেক্ট এন্ডপয়েন্ট তৈরি করুন
  • একটি টেস্ট সংযোগ ব্যবহার করে লুকার থেকে গিটহাবের সাথে সংযোগ স্থাপন করুন

আপনি কি প্রয়োজন হবে

def88091b42bfe4d.png

2. আপনি কি তৈরি করবেন

অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার এবং Private Service Connect (PSC) এর মাধ্যমে একটি পরিষেবা হিসাবে প্রকাশিত ইন্টারনেট NEG স্থাপন করতে আপনি একটি প্রযোজক নেটওয়ার্ক, looker-psc-demo প্রতিষ্ঠা করবেন। একবার প্রকাশিত হলে, আপনি প্রযোজক পরিষেবাতে বৈধতা অ্যাক্সেসের জন্য নিম্নলিখিত ক্রিয়াগুলি সম্পাদন করবেন:

  • প্রডিউসার সার্ভিস অ্যাটাচমেন্টের সাথে যুক্ত লুকারে একটি PSC এন্ডপয়েন্ট তৈরি করুন
  • একটি নতুন প্রকল্প তৈরি করতে এবং GitHub.com-এ HTTPS সংযোগ পরীক্ষা করতে Looker Console ব্যবহার করুন

3. নেটওয়ার্ক প্রয়োজনীয়তা

নীচে প্রযোজক নেটওয়ার্কের জন্য নেটওয়ার্ক প্রয়োজনীয়তাগুলির ভাঙ্গন রয়েছে, এই কোডল্যাবের ভোক্তা হল লুকার পিএসসি উদাহরণ৷

উপাদান

বর্ণনা

ভিপিসি (লুকার-পিএসসি-ডেমো)

কাস্টম মোড ভিপিসি

PSC NAT সাবনেট

ভোক্তা ভিপিসি নেটওয়ার্কের প্যাকেটগুলি উৎস NAT (SNAT) ব্যবহার করে অনুবাদ করা হয় যাতে তাদের মূল উৎস আইপি ঠিকানাগুলি প্রযোজকের ভিপিসি নেটওয়ার্কে NAT সাবনেট থেকে উৎস IP ঠিকানায় রূপান্তরিত হয়।

পিএসসি ফরওয়ার্ডিং নিয়ম সাবনেট

আঞ্চলিক অভ্যন্তরীণ TCP প্রক্সি লোড ব্যালেন্সারের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয়

PSC NEG সাবনেট

নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয়

প্রক্সি শুধুমাত্র সাবনেট

লোড ব্যালেন্সারের প্রতিটি প্রক্সিকে একটি অভ্যন্তরীণ IP ঠিকানা বরাদ্দ করা হয়। একটি প্রক্সি থেকে ব্যাকএন্ড VM বা এন্ডপয়েন্টে পাঠানো প্যাকেটগুলিতে শুধুমাত্র প্রক্সি সাবনেট থেকে একটি উৎস আইপি ঠিকানা থাকে।

ইন্টারনেট NEG

লোড ব্যালেন্সারের জন্য একটি বহিরাগত ব্যাকএন্ড সংজ্ঞায়িত করতে ব্যবহৃত একটি সংস্থান। শুধুমাত্র ক্লাউড ভিপিএন বা ক্লাউড ইন্টারকানেক্টের মাধ্যমে এন্ডপয়েন্টে পৌঁছানো যাবে না।

ব্যাকএন্ড পরিষেবা

একটি ব্যাকএন্ড পরিষেবা আপনার লোড ব্যালেন্সার এবং আপনার ব্যাকএন্ড সংস্থানগুলির মধ্যে একটি সেতু হিসাবে কাজ করে। টিউটোরিয়ালে, ব্যাকএন্ড পরিষেবাটি ইন্টারনেট NEG-এর সাথে যুক্ত।

ক্লাউড রাউটার

ক্লাউড এনএটি ক্লাউড রাউটারের উপর নির্ভর করে প্লেন নিয়ন্ত্রণের ক্ষমতার জন্য, কিন্তু বিজিপি সেশন পরিচালনার জন্য নয়।

মেঘ NAT

আঞ্চলিক ইন্টারনেট NEG ইন্টারনেট প্রস্থানের জন্য ক্লাউড NAT ব্যবহার করে।

4. কোডল্যাব টপোলজি

4e7ac0fd4a61ed9b.png

5. সেটআপ এবং প্রয়োজনীয়তা

স্ব-গতিসম্পন্ন পরিবেশ সেটআপ

  1. Google ক্লাউড কনসোলে সাইন-ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ আপনার যদি ইতিমধ্যেই একটি Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে।

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • প্রকল্পের নাম এই প্রকল্পের অংশগ্রহণকারীদের জন্য প্রদর্শনের নাম। এটি একটি অক্ষর স্ট্রিং যা Google API দ্বারা ব্যবহৃত হয় না। আপনি সবসময় এটি আপডেট করতে পারেন.
  • প্রোজেক্ট আইডি সমস্ত Google ক্লাউড প্রোজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (সেট করার পরে পরিবর্তন করা যাবে না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত আপনি এটা কি যত্ন না. বেশিরভাগ কোডল্যাবে, আপনাকে আপনার প্রকল্প আইডি উল্লেখ করতে হবে (সাধারণত PROJECT_ID হিসাবে চিহ্নিত)। আপনি যদি জেনারেট করা আইডি পছন্দ না করেন, তাহলে আপনি অন্য একটি এলোমেলো আইডি তৈরি করতে পারেন। বিকল্পভাবে, আপনি নিজের চেষ্টা করতে পারেন, এবং এটি উপলব্ধ কিনা দেখতে পারেন। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রকল্পের সময়কালের জন্য থাকে।
  • আপনার তথ্যের জন্য, একটি তৃতীয় মান আছে, একটি প্রকল্প নম্বর , যা কিছু API ব্যবহার করে। ডকুমেন্টেশনে এই তিনটি মান সম্পর্কে আরও জানুন।
  1. এরপরে, ক্লাউড রিসোর্স/এপিআই ব্যবহার করতে আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে। এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ হবে না, যদি কিছু হয়। এই টিউটোরিয়ালের বাইরে বিলিং এড়াতে সংস্থানগুলি বন্ধ করতে, আপনি আপনার তৈরি করা সংস্থানগুলি মুছতে বা প্রকল্প মুছতে পারেন। নতুন Google ক্লাউড ব্যবহারকারীরা $300 USD বিনামূল্যের ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷

ক্লাউড শেল শুরু করুন

যদিও Google ক্লাউড আপনার ল্যাপটপ থেকে দূরবর্তীভাবে পরিচালিত হতে পারে, এই কোডল্যাবে আপনি Google ক্লাউড শেল ব্যবহার করবেন, একটি কমান্ড লাইন পরিবেশ যা ক্লাউডে চলছে।

Google ক্লাউড কনসোল থেকে, উপরের ডানদিকে টুলবারে ক্লাউড শেল আইকনে ক্লিক করুন:

55efc1aaa7a4d3ad.png

পরিবেশের ব্যবস্থা করতে এবং সংযোগ করতে এটি শুধুমাত্র কয়েক মুহূর্ত নিতে হবে। এটি সমাপ্ত হলে, আপনি এই মত কিছু দেখতে হবে:

7ffe5cbb04455448.png

এই ভার্চুয়াল মেশিনটি আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুল দিয়ে লোড করা হয়েছে। এটি একটি ক্রমাগত 5GB হোম ডিরেক্টরি অফার করে এবং Google ক্লাউডে চলে, যা নেটওয়ার্ক কর্মক্ষমতা এবং প্রমাণীকরণকে ব্যাপকভাবে উন্নত করে। এই কোডল্যাবে আপনার সমস্ত কাজ একটি ব্রাউজারে করা যেতে পারে। আপনার কিছু ইন্সটল করার দরকার নেই।

6. আপনি শুরু করার আগে

এপিআই সক্ষম করুন

ক্লাউড শেলের ভিতরে, নিশ্চিত করুন যে আপনার প্রকল্প আইডি সেট আপ করা আছে:

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. প্রযোজক VPC নেটওয়ার্ক তৈরি করুন

ভিপিসি নেটওয়ার্ক

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

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

সাবনেট তৈরি করুন

নেটওয়ার্ক ঠিকানা অনুবাদের উদ্দেশ্যে PSC সাবনেট PSC পরিষেবা সংযুক্তির সাথে যুক্ত হবে।

ক্লাউড শেলের ভিতরে, PSC NAT সাবনেট তৈরি করুন:

gcloud compute networks subnets create producer-psc-nat-subnet --network looker-psc-demo --range 172.16.10.0/28 --region $region --purpose=PRIVATE_SERVICE_CONNECT

ক্লাউড শেলের ভিতরে, প্রযোজক ফরওয়ার্ডিং নিয়ম সাবনেট তৈরি করুন:

gcloud compute networks subnets create producer-psc-fr-subnet --network looker-psc-demo --range 172.16.20.0/28 --region $region --enable-private-ip-google-access

ক্লাউড শেলের ভিতরে, প্রযোজক আঞ্চলিক প্রক্সি শুধুমাত্র সাবনেট তৈরি করুন:

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

পাবলিক NAT গেটওয়ে তৈরি করুন

NAT গেটওয়ে আঞ্চলিক অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার দ্বারা কনফিগারেশন বিকল্পের সাথে ইন্টারনেট বহির্গমনের জন্য ব্যবহৃত হয়, -endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB, তাই একই NATGW GCE/GKE ইন্টারনেট প্রস্থান সমর্থন করবে না। GCE/GKE ইন্টারনেট এগ্রেসের জন্য –endpoint-types=ENDPOINT_TYPE_VM সহ একটি অতিরিক্ত NAT GW স্থাপন করুন।

ক্লাউড শেলের ভিতরে, ক্লাউড রাউটার তৈরি করুন:

gcloud compute routers create looker-psc-demo-cloud-router --network looker-psc-demo --region $region

ক্লাউড শেলের ভিতরে, tcp প্রক্সি লোড ব্যালেন্সারের জন্য ইন্টারনেট এগ্রেস সক্ষম করে ক্লাউড NAT গেটওয়ে তৈরি করুন:

gcloud compute routers nats create looker-psc-demo-natgw \
  --router=looker-psc-demo-cloud-router \
  --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \
  --nat-custom-subnet-ip-ranges=$region-proxy-only-subnet \
  --auto-allocate-nat-external-ips \
  --region=$region

লোড ব্যালেন্সারের আইপি ঠিকানা সংরক্ষণ করুন

ক্লাউড শেলের ভিতরে, লোড ব্যালেন্সারের জন্য একটি অভ্যন্তরীণ আইপি ঠিকানা সংরক্ষণ করুন:

gcloud compute addresses create internet-neg-lb-ip \
  --region=$region \
  --subnet=producer-psc-fr-subnet

ক্লাউড শেলের ভিতরে, সংরক্ষিত আইপি ঠিকানা দেখুন।

gcloud compute addresses describe internet-neg-lb-ip \
  --region=$region | grep -i address:

উদাহরণ আউটপুট:

user@cloudshell$ gcloud compute addresses describe internet-neg-lb-ip   --region=$region | grep -i address:
address: 172.16.20.2

ইন্টারনেট NEG সেট আপ করুন

একটি ইন্টারনেট NEG তৈরি করুন, এবং –নেটওয়ার্ক-এন্ডপয়েন্ট-টাইপকে ইন্টারনেট-fqdn-পোর্টে সেট করুন (হোস্টনাম এবং পোর্ট যেখানে আপনার বাহ্যিক ব্যাকএন্ডে পৌঁছানো যেতে পারে)।

ক্লাউড শেলের ভিতরে, github.com এর জন্য ব্যবহৃত একটি ইন্টারনেট NEG তৈরি করুন

gcloud compute network-endpoint-groups create github-internet-neg \
    --network-endpoint-type=INTERNET_FQDN_PORT \
    --network=looker-psc-demo \
    --region=$region

ক্লাউড শেলের ভিতরে, FQDN github.com এবং পোর্ট 443 দিয়ে ইন্টারনেট NEG github-internet-neg আপডেট করুন

gcloud compute network-endpoint-groups update github-internet-neg \
    --add-endpoint="fqdn=github.com,port=443" \
    --region=$region

নেটওয়ার্ক ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়ম তৈরি করুন

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute network-firewall-policies create looker-psc-demo-policy --global

gcloud compute network-firewall-policies associations create --firewall-policy looker-psc-demo-policy --network looker-psc-demo --name looker-psc-demo --global-firewall-policy

নিম্নলিখিত ফায়ারওয়াল নিয়মটি PSC NAT সাবনেট পরিসর থেকে নেটওয়ার্কের সমস্ত দৃষ্টান্তে ট্র্যাফিকের অনুমতি দেয়।

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute network-firewall-policies rules create 2001 --action ALLOW --firewall-policy looker-psc-demo-policy --description "allow traffic from PSC NAT subnet" --direction INGRESS --src-ip-ranges 172.16.10.0/28 --global-firewall-policy --layer4-configs=tcp

8. প্রযোজক পরিষেবা তৈরি করুন

লোড ব্যালেন্সার উপাদান তৈরি করুন

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute backend-services create producer-backend-svc  --protocol=tcp --region=$region --load-balancing-scheme=INTERNAL_MANAGED

gcloud compute backend-services add-backend producer-backend-svc --network-endpoint-group=github-internet-neg --network-endpoint-group-region=$region --region=$region

ক্লাউড শেল-এ, আপনার ব্যাকএন্ড পরিষেবাতে রুট অনুরোধের জন্য একটি লক্ষ্য TCP প্রক্সি তৈরি করুন:

gcloud compute target-tcp-proxies create producer-lb-tcp-proxy \
      --backend-service=producer-backend-svc  \
      --region=$region

নিম্নলিখিত সিনট্যাক্সে, একটি ফরওয়ার্ডিং নিয়ম তৈরি করুন (অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার)।

ক্লাউড শেলে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute forwarding-rules create producer-github-fr \
     --load-balancing-scheme=INTERNAL_MANAGED \
     --network-tier=PREMIUM \
     --network=looker-psc-demo \
     --subnet=producer-psc-fr-subnet \
     --address=internet-neg-lb-ip \
     --target-tcp-proxy=producer-lb-tcp-proxy \
     --target-tcp-proxy-region=$region \
     --region=$region \
     --ports=443

সার্ভিস অ্যাটাচমেন্ট তৈরি করুন

ক্লাউড শেলের ভিতরে, পরিষেবা সংযুক্তি তৈরি করুন, github-svc-attachment-https:

gcloud compute service-attachments create github-svc-attachment-https --region=$region --producer-forwarding-rule=producer-github-fr --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=producer-psc-nat-subnet

এরপরে, লুকারে PSC এন্ডপয়েন্ট কনফিগার করার জন্য প্রোজেক্ট দিয়ে শুরু করে সেল্ফলিঙ্ক URI-তে তালিকাভুক্ত পরিষেবা সংযুক্তিটি পান এবং নোট করুন।

সেলফলিঙ্ক: প্রকল্প/<your-project-id>/regions/<your-region>/serviceAttachments/github-svc-attachment-https

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute service-attachments describe github-svc-attachment-https --region=$region

উদাহরণ:

connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-08-30T09:44:03.883-07:00'
description: ''
enableProxyProtocol: false
fingerprint: RfKh3blWZE0=
id: '2897904404386302012'
kind: compute#serviceAttachment
name: github-svc-attachment-https
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$project/regions/$region/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
  high: '19348441121424360'
  low: '2897904404386302012'
reconcileConnections: false
region: https://www.googleapis.com/compute/v1/projects/$project/regions/$region
selfLink: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/serviceAttachments/github-svc-attachment-https
targetService: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-github-fr

ক্লাউড কনসোলে, নেভিগেট করুন:

নেটওয়ার্ক পরিষেবা → ব্যক্তিগত পরিষেবা সংযোগ → প্রকাশিত পরিষেবা৷

a8cae886441d9c25.png

84a906b3bedabeee.png

9. লুকারে একটি PSC এন্ডপয়েন্ট সংযোগ স্থাপন করুন

নিম্নলিখিত বিভাগে, আপনি একটি একক ডোমেনের জন্য ক্লাউড শেল-এ –psc-সার্ভিস-অ্যাটাচমেন্ট পতাকা ব্যবহারের মাধ্যমে লুকার কোর PSC-এর সাথে প্রযোজক পরিষেবা সংযুক্তি সংযুক্ত করবেন৷

ক্লাউড শেলের ভিতরে, আপনার পরিবেশের সাথে মেলে নিম্নলিখিত পরামিতিগুলি আপডেট করে psc অ্যাসোসিয়েশন তৈরি করুন:

  • INSTANCE_NAME: আপনার লুকারের নাম (Google ক্লাউড কোর) উদাহরণ।
  • DOMAIN_1: github.com
  • SERVICE_ATTACHMENT_1: পরিষেবা সংযুক্তি, github-svc-attachment-https বর্ণনা করার সময় URI ক্যাপচার করা হয়েছে৷
  • অঞ্চল: যে অঞ্চলে আপনার লুকার (গুগল ক্লাউড কোর) উদাহরণ হোস্ট করা হয়েছে৷

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

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=github.com,attachment=projects/$project/regions/$region/serviceAttachments/github-svc-attachment-https \
--region=$region

ক্লাউড শেলের ভিতরে, সার্ভিস অ্যাটাচমেন্ট সংযোগের স্ট্যাটাস "স্বীকৃত" যাচাই করুন, আপনার লুকার PSC INSTANCE_NAME এর সাথে আপডেট করুন

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

উদাহরণ:

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

উদাহরণ:

{
  "adminSettings": {},
  "createTime": "2024-08-23T00:00:45.339063195Z",
  "customDomain": {
    "domain": "cosmopup.com",
    "state": "AVAILABLE"
  },
  "encryptionConfig": {},
  "lookerVersion": "24.12.28",
  "name": "projects/$project/locations/$region/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/$region/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183",
    "serviceAttachments": [
      {
        "connectionStatus": "ACCEPTED",
        "localFqdn": "github.com",
        "targetServiceAttachmentUri": "projects/$project/regions/$region/serviceAttachments/github-svc-attachment-https"
      }
    ]
  },
  "pscEnabled": true,
  "state": "ACTIVE",
  "updateTime": "2024-08-30T17:47:33.440271635Z"
}

ক্লাউড কনসোলে PSC এন্ডপয়েন্ট যাচাই করুন

ক্লাউড কনসোল থেকে আপনি পিএসসি সংযোগ যাচাই করতে পারেন

ক্লাউড কনসোলে, নেভিগেট করুন:

লুকার → লুকার ইনস্ট্যান্স → বিশদ বিবরণ৷

2d4684d722d31e4b.png

ef907280833bcad.png

10. GitHub-এ কানেক্টিভিটি পরীক্ষা করুন

নিম্নলিখিত ধাপে, আপনি github.com-এ HTTPS সংযোগ যাচাই করার জন্য একটি প্রকল্প তৈরি করতে Looker Console ব্যবহার করবেন।

11. একটি নতুন প্রকল্প তৈরি করুন

বিকাশ মোড সক্ষম করুন

লুকার কনসোলে, নেভিগেট করুন:

ডেভেলপমেন্ট মোড সক্ষম করুন (নীচে বাম পৃষ্ঠা), একবার নির্বাচিত ব্যানার 'আপনি উন্নয়ন মোডে' প্রদর্শিত হবে।

70c9ded749decfbe.png

একটি নতুন প্রকল্প তৈরি করুন

ক্লাউড কনসোলে, নেভিগেট করুন:

উন্নয়ন → প্রকল্প

e8ae11e0392a776d.png

নতুন লুকএমএল প্রকল্প নির্বাচন করুন

65a3c2573e97e1e9.png

একটি প্রকল্পের নাম প্রদান করুন, ফাঁকা প্রকল্প নির্বাচন করুন তারপর প্রকল্প তৈরি করুন।

9185808e001fa540.png

কনফিগার গিট নির্বাচন করুন

42f5e51ce70642ad.png

গিট কনফিগার করুন

আপনার HTTPS গিথুবের বিবরণ সহ সংগ্রহস্থলের URL আপডেট করুন, .git এর সাথে URL যুক্ত করা নিশ্চিত করুন তারপর চালিয়ে যান নির্বাচন করুন।

f5c448f6659b8fc1.png

উদাহরণ:

4065ab1d196589f.png

আপনার GitHub ব্যবহারকারীর নাম এবং ব্যক্তিগত অ্যাক্সেস টোকেন (ক্লাসিক) দিয়ে নির্বাচন আপডেট করুন, তারপর পরীক্ষা করুন এবং সেটআপ চূড়ান্ত করুন।

1dc44d63c555a9ae.png

গিট অ্যাকশন নির্বাচন করুন

b5903668a50a99ca.png

টেস্ট গিট সংযোগ নির্বাচন করুন

51b722e84f2df38c.png

গিট সংযোগ পরীক্ষা যাচাই করুন

a33584380b788b6d.png

পরিষ্কার করুন

একটি একক ক্লাউড শেল টার্মিনাল থেকে ল্যাব উপাদান মুছে দিন

gcloud compute service-attachments delete github-svc-attachment-https --region=$region -q

gcloud compute forwarding-rules delete producer-github-fr --region=$region -q

gcloud compute target-tcp-proxies delete producer-lb-tcp-proxy --region=$region -q

gcloud compute backend-services delete producer-backend-svc --region=$region -q

gcloud compute network-firewall-policies rules delete 2001 --firewall-policy looker-psc-demo-policy --global-firewall-policy -q

gcloud compute network-firewall-policies associations delete --firewall-policy=looker-psc-demo-policy  --name=looker-psc-demo --global-firewall-policy -q

gcloud compute network-firewall-policies delete looker-psc-demo-policy --global -q

gcloud compute routers nats delete looker-psc-demo-natgw --router=looker-psc-demo-cloud-router --router-region=$region -q

gcloud compute routers delete looker-psc-demo-cloud-router --region=$region -q

gcloud compute network-endpoint-groups delete github-internet-neg --region=$region -q

gcloud compute addresses delete internet-neg-lb-ip --region=$region -q

gcloud compute networks subnets delete producer-psc-fr-subnet producer-psc-nat-subnet $region-proxy-only-subnet --region=$region -q

gcloud compute networks delete looker-psc-demo -q

12. অভিনন্দন

অভিনন্দন, আপনি প্রাইভেট সার্ভিস কানেক্ট দ্বারা চালিত লুকার কনসোল ব্যবহার করে গিটহাবের সাথে সফলভাবে সংযোগ কনফিগার এবং যাচাই করেছেন।

আপনি প্রযোজক পরিকাঠামো তৈরি করেছেন, কীভাবে একটি ইন্টারনেট NEG, প্রযোজক পরিষেবা এবং লুকার PSC এন্ডপয়েন্ট তৈরি করতে হয় তা শিখেছেন যা প্রযোজক পরিষেবার সাথে সংযোগের অনুমতি দেয়৷

Cosmopup মনে করে কোডল্যাবগুলি দুর্দান্ত!!

c911c127bffdee57.jpeg

এরপর কি?

এই কোডল্যাবগুলির কিছু পরীক্ষা করে দেখুন...

আরও পড়া এবং ভিডিও

রেফারেন্স ডক্স

,

1. ভূমিকা

এই কোডল্যাবে আপনি একটি অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার ব্যবহার করে GitHub-এর সাথে একটি সাউথবাউন্ড HTTPS সংযোগ সঞ্চালন করবেন এবং একটি পরিষেবা গ্রাহক হিসাবে Looker PSC থেকে আমন্ত্রিত ইন্টারনেট নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপ (NEG) ব্যবহার করবেন।

প্রাইভেট সার্ভিস কানেক্ট হল Google ক্লাউড নেটওয়ার্কিং এর একটি ক্ষমতা যা গ্রাহকদের তাদের VPC নেটওয়ার্কের ভিতর থেকে ব্যক্তিগতভাবে পরিচালিত পরিষেবাগুলি অ্যাক্সেস করতে দেয়। একইভাবে, এটি পরিচালিত পরিষেবা প্রযোজকদের তাদের নিজস্ব আলাদা ভিপিসি নেটওয়ার্কে এই পরিষেবাগুলি হোস্ট করতে এবং তাদের গ্রাহকদের একটি ব্যক্তিগত সংযোগ অফার করার অনুমতি দেয়। উদাহরণ স্বরূপ, আপনি যখন লুকার অ্যাক্সেস করতে প্রাইভেট সার্ভিস কানেক্ট ব্যবহার করেন, তখন আপনিই পরিষেবার ভোক্তা এবং Google হল পরিষেবা প্রযোজক, যেমন চিত্র 1-এ হাইলাইট করা হয়েছে৷

চিত্র 1।

145ea4672c3a3b14.png

সাউথবাউন্ড অ্যাক্সেস, রিভার্স পিএসসি নামেও পরিচিত, গ্রাহককে প্রযোজক হিসাবে একটি প্রকাশিত পরিষেবা তৈরি করতে সক্ষম করে যাতে ভিপিসি-তে, প্রাঙ্গনে, পরিচালিত পরিষেবা এবং ইন্টারনেটে লুকার অ্যাক্সেসের অনুমতি দেওয়া যায়। সাউথবাউন্ড সংযোগগুলি যে কোনও অঞ্চলে স্থাপন করা যেতে পারে, যেখানে লুকার পিএসসি মোতায়েন করা হয়েছে তা নির্বিশেষে, চিত্র 2-এ হাইলাইট করা হয়েছে৷

চিত্র 2।

259493afd914f68b.png

আপনি কি শিখবেন

  • নেটওয়ার্ক প্রয়োজনীয়তা
  • একটি ব্যক্তিগত পরিষেবা সংযোগ প্রযোজক পরিষেবা তৈরি করুন৷
  • লুকারে একটি প্রাইভেট সার্ভিস কানেক্ট এন্ডপয়েন্ট তৈরি করুন
  • একটি টেস্ট সংযোগ ব্যবহার করে লুকার থেকে গিটহাবের সাথে সংযোগ স্থাপন করুন

আপনি কি প্রয়োজন হবে

def88091b42bfe4d.png

2. আপনি কি তৈরি করবেন

অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার এবং Private Service Connect (PSC) এর মাধ্যমে একটি পরিষেবা হিসাবে প্রকাশিত ইন্টারনেট NEG স্থাপন করতে আপনি একটি প্রযোজক নেটওয়ার্ক, looker-psc-demo প্রতিষ্ঠা করবেন। একবার প্রকাশিত হলে, আপনি প্রযোজক পরিষেবাতে বৈধতা অ্যাক্সেসের জন্য নিম্নলিখিত ক্রিয়াগুলি সম্পাদন করবেন:

  • প্রডিউসার সার্ভিস অ্যাটাচমেন্টের সাথে যুক্ত লুকারে একটি PSC এন্ডপয়েন্ট তৈরি করুন
  • একটি নতুন প্রকল্প তৈরি করতে এবং GitHub.com-এ HTTPS সংযোগ পরীক্ষা করতে Looker Console ব্যবহার করুন

3. নেটওয়ার্ক প্রয়োজনীয়তা

নীচে প্রযোজক নেটওয়ার্কের জন্য নেটওয়ার্ক প্রয়োজনীয়তাগুলির ভাঙ্গন রয়েছে, এই কোডল্যাবের ভোক্তা হল লুকার পিএসসি উদাহরণ৷

উপাদান

বর্ণনা

ভিপিসি (লুকার-পিএসসি-ডেমো)

কাস্টম মোড ভিপিসি

PSC NAT সাবনেট

ভোক্তা ভিপিসি নেটওয়ার্কের প্যাকেটগুলি উৎস NAT (SNAT) ব্যবহার করে অনুবাদ করা হয় যাতে তাদের মূল উৎস আইপি ঠিকানাগুলি প্রযোজকের ভিপিসি নেটওয়ার্কে NAT সাবনেট থেকে উৎস IP ঠিকানায় রূপান্তরিত হয়।

পিএসসি ফরওয়ার্ডিং নিয়ম সাবনেট

আঞ্চলিক অভ্যন্তরীণ TCP প্রক্সি লোড ব্যালেন্সারের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয়

PSC NEG সাবনেট

নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয়

প্রক্সি শুধুমাত্র সাবনেট

লোড ব্যালেন্সারের প্রতিটি প্রক্সিকে একটি অভ্যন্তরীণ IP ঠিকানা বরাদ্দ করা হয়। একটি প্রক্সি থেকে ব্যাকএন্ড VM বা এন্ডপয়েন্টে পাঠানো প্যাকেটগুলিতে শুধুমাত্র প্রক্সি সাবনেট থেকে একটি উৎস আইপি ঠিকানা থাকে।

ইন্টারনেট NEG

লোড ব্যালেন্সারের জন্য একটি বহিরাগত ব্যাকএন্ড সংজ্ঞায়িত করতে ব্যবহৃত একটি সংস্থান। শুধুমাত্র ক্লাউড ভিপিএন বা ক্লাউড ইন্টারকানেক্টের মাধ্যমে এন্ডপয়েন্টে পৌঁছানো যাবে না।

ব্যাকএন্ড পরিষেবা

একটি ব্যাকএন্ড পরিষেবা আপনার লোড ব্যালেন্সার এবং আপনার ব্যাকএন্ড সংস্থানগুলির মধ্যে একটি সেতু হিসাবে কাজ করে। টিউটোরিয়ালে, ব্যাকএন্ড পরিষেবাটি ইন্টারনেট NEG-এর সাথে যুক্ত।

ক্লাউড রাউটার

ক্লাউড এনএটি ক্লাউড রাউটারের উপর নির্ভর করে প্লেন নিয়ন্ত্রণের ক্ষমতার জন্য, কিন্তু বিজিপি সেশন পরিচালনার জন্য নয়।

মেঘ NAT

আঞ্চলিক ইন্টারনেট NEG ইন্টারনেট প্রস্থানের জন্য ক্লাউড NAT ব্যবহার করে।

4. কোডল্যাব টপোলজি

4e7ac0fd4a61ed9b.png

5. সেটআপ এবং প্রয়োজনীয়তা

স্ব-গতিসম্পন্ন পরিবেশ সেটআপ

  1. Google ক্লাউড কনসোলে সাইন-ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ আপনার যদি ইতিমধ্যেই একটি Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে।

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • প্রকল্পের নাম এই প্রকল্পের অংশগ্রহণকারীদের জন্য প্রদর্শনের নাম। এটি একটি অক্ষর স্ট্রিং যা Google API দ্বারা ব্যবহৃত হয় না। আপনি সবসময় এটি আপডেট করতে পারেন.
  • প্রোজেক্ট আইডি সমস্ত Google ক্লাউড প্রোজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (সেট করার পরে পরিবর্তন করা যাবে না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত আপনি এটা কি যত্ন না. বেশিরভাগ কোডল্যাবে, আপনাকে আপনার প্রকল্প আইডি উল্লেখ করতে হবে (সাধারণত PROJECT_ID হিসাবে চিহ্নিত)। আপনি যদি জেনারেট করা আইডি পছন্দ না করেন, তাহলে আপনি অন্য একটি এলোমেলো আইডি তৈরি করতে পারেন। বিকল্পভাবে, আপনি নিজের চেষ্টা করতে পারেন, এবং এটি উপলব্ধ কিনা দেখতে পারেন। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রকল্পের সময়কালের জন্য থাকে।
  • আপনার তথ্যের জন্য, একটি তৃতীয় মান আছে, একটি প্রকল্প নম্বর , যা কিছু API ব্যবহার করে। ডকুমেন্টেশনে এই তিনটি মান সম্পর্কে আরও জানুন।
  1. এরপরে, ক্লাউড রিসোর্স/এপিআই ব্যবহার করতে আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে। এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ হবে না, যদি কিছু হয়। এই টিউটোরিয়ালের বাইরে বিলিং এড়াতে সংস্থানগুলি বন্ধ করতে, আপনি আপনার তৈরি করা সংস্থানগুলি মুছতে বা প্রকল্প মুছতে পারেন। নতুন Google ক্লাউড ব্যবহারকারীরা $300 USD বিনামূল্যের ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷

ক্লাউড শেল শুরু করুন

যদিও Google ক্লাউড আপনার ল্যাপটপ থেকে দূরবর্তীভাবে পরিচালিত হতে পারে, এই কোডল্যাবে আপনি Google ক্লাউড শেল ব্যবহার করবেন, একটি কমান্ড লাইন পরিবেশ যা ক্লাউডে চলছে।

Google ক্লাউড কনসোল থেকে, উপরের ডানদিকে টুলবারে ক্লাউড শেল আইকনে ক্লিক করুন:

55efc1aaa7a4d3ad.png

পরিবেশের ব্যবস্থা করতে এবং সংযোগ করতে এটি শুধুমাত্র কয়েক মুহূর্ত নিতে হবে। এটি সমাপ্ত হলে, আপনি এই মত কিছু দেখতে হবে:

7ffe5cbb04455448.png

এই ভার্চুয়াল মেশিনটি আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুল দিয়ে লোড করা হয়েছে। এটি একটি ক্রমাগত 5GB হোম ডিরেক্টরি অফার করে এবং Google ক্লাউডে চলে, যা নেটওয়ার্ক কর্মক্ষমতা এবং প্রমাণীকরণকে ব্যাপকভাবে উন্নত করে। এই কোডল্যাবে আপনার সমস্ত কাজ একটি ব্রাউজারে করা যেতে পারে। আপনার কিছু ইন্সটল করার দরকার নেই।

6. আপনি শুরু করার আগে

এপিআই সক্ষম করুন

ক্লাউড শেলের ভিতরে, নিশ্চিত করুন যে আপনার প্রকল্প আইডি সেট আপ করা আছে:

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. প্রযোজক VPC নেটওয়ার্ক তৈরি করুন

ভিপিসি নেটওয়ার্ক

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

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

সাবনেট তৈরি করুন

নেটওয়ার্ক ঠিকানা অনুবাদের উদ্দেশ্যে PSC সাবনেট PSC পরিষেবা সংযুক্তির সাথে যুক্ত হবে।

ক্লাউড শেলের ভিতরে, PSC NAT সাবনেট তৈরি করুন:

gcloud compute networks subnets create producer-psc-nat-subnet --network looker-psc-demo --range 172.16.10.0/28 --region $region --purpose=PRIVATE_SERVICE_CONNECT

ক্লাউড শেলের ভিতরে, প্রযোজক ফরওয়ার্ডিং নিয়ম সাবনেট তৈরি করুন:

gcloud compute networks subnets create producer-psc-fr-subnet --network looker-psc-demo --range 172.16.20.0/28 --region $region --enable-private-ip-google-access

ক্লাউড শেলের ভিতরে, প্রযোজক আঞ্চলিক প্রক্সি শুধুমাত্র সাবনেট তৈরি করুন:

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

পাবলিক NAT গেটওয়ে তৈরি করুন

NAT গেটওয়ে আঞ্চলিক অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার দ্বারা কনফিগারেশন বিকল্পের সাথে ইন্টারনেট বহির্গমনের জন্য ব্যবহৃত হয়, -endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB, তাই একই NATGW GCE/GKE ইন্টারনেট প্রস্থান সমর্থন করবে না। GCE/GKE ইন্টারনেট এগ্রেসের জন্য –endpoint-types=ENDPOINT_TYPE_VM সহ একটি অতিরিক্ত NAT GW স্থাপন করুন।

ক্লাউড শেলের ভিতরে, ক্লাউড রাউটার তৈরি করুন:

gcloud compute routers create looker-psc-demo-cloud-router --network looker-psc-demo --region $region

ক্লাউড শেলের ভিতরে, tcp প্রক্সি লোড ব্যালেন্সারের জন্য ইন্টারনেট এগ্রেস সক্ষম করে ক্লাউড NAT গেটওয়ে তৈরি করুন:

gcloud compute routers nats create looker-psc-demo-natgw \
  --router=looker-psc-demo-cloud-router \
  --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \
  --nat-custom-subnet-ip-ranges=$region-proxy-only-subnet \
  --auto-allocate-nat-external-ips \
  --region=$region

লোড ব্যালেন্সারের আইপি ঠিকানা সংরক্ষণ করুন

ক্লাউড শেলের ভিতরে, লোড ব্যালেন্সারের জন্য একটি অভ্যন্তরীণ আইপি ঠিকানা সংরক্ষণ করুন:

gcloud compute addresses create internet-neg-lb-ip \
  --region=$region \
  --subnet=producer-psc-fr-subnet

ক্লাউড শেলের ভিতরে, সংরক্ষিত আইপি ঠিকানা দেখুন।

gcloud compute addresses describe internet-neg-lb-ip \
  --region=$region | grep -i address:

উদাহরণ আউটপুট:

user@cloudshell$ gcloud compute addresses describe internet-neg-lb-ip   --region=$region | grep -i address:
address: 172.16.20.2

ইন্টারনেট NEG সেট আপ করুন

একটি ইন্টারনেট NEG তৈরি করুন, এবং –নেটওয়ার্ক-এন্ডপয়েন্ট-টাইপকে ইন্টারনেট-fqdn-পোর্টে সেট করুন (হোস্টনাম এবং পোর্ট যেখানে আপনার বাহ্যিক ব্যাকএন্ডে পৌঁছানো যেতে পারে)।

ক্লাউড শেলের ভিতরে, github.com এর জন্য ব্যবহৃত একটি ইন্টারনেট NEG তৈরি করুন

gcloud compute network-endpoint-groups create github-internet-neg \
    --network-endpoint-type=INTERNET_FQDN_PORT \
    --network=looker-psc-demo \
    --region=$region

ক্লাউড শেলের ভিতরে, FQDN github.com এবং পোর্ট 443 দিয়ে ইন্টারনেট NEG github-internet-neg আপডেট করুন

gcloud compute network-endpoint-groups update github-internet-neg \
    --add-endpoint="fqdn=github.com,port=443" \
    --region=$region

নেটওয়ার্ক ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়ম তৈরি করুন

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute network-firewall-policies create looker-psc-demo-policy --global

gcloud compute network-firewall-policies associations create --firewall-policy looker-psc-demo-policy --network looker-psc-demo --name looker-psc-demo --global-firewall-policy

নিম্নলিখিত ফায়ারওয়াল নিয়মটি PSC NAT সাবনেট পরিসর থেকে নেটওয়ার্কের সমস্ত দৃষ্টান্তে ট্র্যাফিকের অনুমতি দেয়।

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute network-firewall-policies rules create 2001 --action ALLOW --firewall-policy looker-psc-demo-policy --description "allow traffic from PSC NAT subnet" --direction INGRESS --src-ip-ranges 172.16.10.0/28 --global-firewall-policy --layer4-configs=tcp

8. প্রযোজক পরিষেবা তৈরি করুন

লোড ব্যালেন্সার উপাদান তৈরি করুন

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute backend-services create producer-backend-svc  --protocol=tcp --region=$region --load-balancing-scheme=INTERNAL_MANAGED

gcloud compute backend-services add-backend producer-backend-svc --network-endpoint-group=github-internet-neg --network-endpoint-group-region=$region --region=$region

ক্লাউড শেল-এ, আপনার ব্যাকএন্ড পরিষেবাতে রুট অনুরোধের জন্য একটি লক্ষ্য TCP প্রক্সি তৈরি করুন:

gcloud compute target-tcp-proxies create producer-lb-tcp-proxy \
      --backend-service=producer-backend-svc  \
      --region=$region

নিম্নলিখিত সিনট্যাক্সে, একটি ফরওয়ার্ডিং নিয়ম তৈরি করুন (অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার)।

ক্লাউড শেলে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute forwarding-rules create producer-github-fr \
     --load-balancing-scheme=INTERNAL_MANAGED \
     --network-tier=PREMIUM \
     --network=looker-psc-demo \
     --subnet=producer-psc-fr-subnet \
     --address=internet-neg-lb-ip \
     --target-tcp-proxy=producer-lb-tcp-proxy \
     --target-tcp-proxy-region=$region \
     --region=$region \
     --ports=443

সার্ভিস অ্যাটাচমেন্ট তৈরি করুন

ক্লাউড শেলের ভিতরে, পরিষেবা সংযুক্তি তৈরি করুন, github-svc-attachment-https:

gcloud compute service-attachments create github-svc-attachment-https --region=$region --producer-forwarding-rule=producer-github-fr --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=producer-psc-nat-subnet

এরপরে, লুকারে PSC এন্ডপয়েন্ট কনফিগার করার জন্য প্রোজেক্ট দিয়ে শুরু করে সেল্ফলিঙ্ক URI-তে তালিকাভুক্ত পরিষেবা সংযুক্তিটি পান এবং নোট করুন।

সেলফলিঙ্ক: প্রকল্প/<your-project-id>/regions/<your-region>/serviceAttachments/github-svc-attachment-https

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute service-attachments describe github-svc-attachment-https --region=$region

উদাহরণ:

connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-08-30T09:44:03.883-07:00'
description: ''
enableProxyProtocol: false
fingerprint: RfKh3blWZE0=
id: '2897904404386302012'
kind: compute#serviceAttachment
name: github-svc-attachment-https
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$project/regions/$region/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
  high: '19348441121424360'
  low: '2897904404386302012'
reconcileConnections: false
region: https://www.googleapis.com/compute/v1/projects/$project/regions/$region
selfLink: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/serviceAttachments/github-svc-attachment-https
targetService: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-github-fr

ক্লাউড কনসোলে, নেভিগেট করুন:

নেটওয়ার্ক পরিষেবা → ব্যক্তিগত পরিষেবা সংযোগ → প্রকাশিত পরিষেবা৷

a8cae886441d9c25.png

84a906b3bedabeee.png

9. লুকারে একটি PSC এন্ডপয়েন্ট সংযোগ স্থাপন করুন

নিম্নলিখিত বিভাগে, আপনি একটি একক ডোমেনের জন্য ক্লাউড শেল-এ –psc-সার্ভিস-অ্যাটাচমেন্ট পতাকা ব্যবহারের মাধ্যমে লুকার কোর PSC-এর সাথে প্রযোজক পরিষেবা সংযুক্তি সংযুক্ত করবেন৷

ক্লাউড শেলের ভিতরে, আপনার পরিবেশের সাথে মেলে নিম্নলিখিত পরামিতিগুলি আপডেট করে psc অ্যাসোসিয়েশন তৈরি করুন:

  • INSTANCE_NAME: আপনার লুকারের নাম (Google ক্লাউড কোর) উদাহরণ।
  • DOMAIN_1: github.com
  • SERVICE_ATTACHMENT_1: পরিষেবা সংযুক্তি, github-svc-attachment-https বর্ণনা করার সময় URI ক্যাপচার করা হয়েছে৷
  • অঞ্চল: যে অঞ্চলে আপনার লুকার (গুগল ক্লাউড কোর) উদাহরণ হোস্ট করা হয়েছে৷

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

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=github.com,attachment=projects/$project/regions/$region/serviceAttachments/github-svc-attachment-https \
--region=$region

ক্লাউড শেলের ভিতরে, সার্ভিস অ্যাটাচমেন্ট সংযোগের স্ট্যাটাস "স্বীকৃত" যাচাই করুন, আপনার লুকার PSC INSTANCE_NAME এর সাথে আপডেট করুন

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

উদাহরণ:

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

উদাহরণ:

{
  "adminSettings": {},
  "createTime": "2024-08-23T00:00:45.339063195Z",
  "customDomain": {
    "domain": "cosmopup.com",
    "state": "AVAILABLE"
  },
  "encryptionConfig": {},
  "lookerVersion": "24.12.28",
  "name": "projects/$project/locations/$region/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/$region/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183",
    "serviceAttachments": [
      {
        "connectionStatus": "ACCEPTED",
        "localFqdn": "github.com",
        "targetServiceAttachmentUri": "projects/$project/regions/$region/serviceAttachments/github-svc-attachment-https"
      }
    ]
  },
  "pscEnabled": true,
  "state": "ACTIVE",
  "updateTime": "2024-08-30T17:47:33.440271635Z"
}

ক্লাউড কনসোলে PSC এন্ডপয়েন্ট যাচাই করুন

ক্লাউড কনসোল থেকে আপনি পিএসসি সংযোগ যাচাই করতে পারেন

ক্লাউড কনসোলে, নেভিগেট করুন:

লুকার → লুকার ইনস্ট্যান্স → বিশদ বিবরণ৷

2d4684d722d31e4b.png

ef907280833bcad.png

10. GitHub-এ কানেক্টিভিটি পরীক্ষা করুন

নিম্নলিখিত ধাপে, আপনি github.com-এ HTTPS সংযোগ যাচাই করার জন্য একটি প্রকল্প তৈরি করতে Looker Console ব্যবহার করবেন।

11. একটি নতুন প্রকল্প তৈরি করুন

বিকাশ মোড সক্ষম করুন

লুকার কনসোলে, নেভিগেট করুন:

ডেভেলপমেন্ট মোড সক্ষম করুন (নীচে বাম পৃষ্ঠা), একবার নির্বাচিত ব্যানার 'আপনি উন্নয়ন মোডে' প্রদর্শিত হবে।

70c9ded749decfbe.png

একটি নতুন প্রকল্প তৈরি করুন

ক্লাউড কনসোলে, নেভিগেট করুন:

উন্নয়ন → প্রকল্প

e8ae11e0392a776d.png

নতুন লুকএমএল প্রকল্প নির্বাচন করুন

65a3c2573e97e1e9.png

একটি প্রকল্পের নাম প্রদান করুন, ফাঁকা প্রকল্প নির্বাচন করুন তারপর প্রকল্প তৈরি করুন।

9185808e001fa540.png

কনফিগার গিট নির্বাচন করুন

42f5e51ce70642ad.png

গিট কনফিগার করুন

আপনার HTTPS গিথুবের বিবরণ সহ সংগ্রহস্থলের URL আপডেট করুন, .git এর সাথে URL যুক্ত করা নিশ্চিত করুন তারপর চালিয়ে যান নির্বাচন করুন।

f5c448f6659b8fc1.png

উদাহরণ:

4065ab1d196589f.png

আপনার GitHub ব্যবহারকারীর নাম এবং ব্যক্তিগত অ্যাক্সেস টোকেন (ক্লাসিক) দিয়ে নির্বাচন আপডেট করুন, তারপর পরীক্ষা করুন এবং সেটআপ চূড়ান্ত করুন।

1dc44d63c555a9ae.png

গিট অ্যাকশন নির্বাচন করুন

b5903668a50a99ca.png

টেস্ট গিট সংযোগ নির্বাচন করুন

51b722e84f2df38c.png

গিট সংযোগ পরীক্ষা যাচাই করুন

a33584380b788b6d.png

পরিষ্কার করুন

একটি একক ক্লাউড শেল টার্মিনাল থেকে ল্যাব উপাদান মুছে দিন

gcloud compute service-attachments delete github-svc-attachment-https --region=$region -q

gcloud compute forwarding-rules delete producer-github-fr --region=$region -q

gcloud compute target-tcp-proxies delete producer-lb-tcp-proxy --region=$region -q

gcloud compute backend-services delete producer-backend-svc --region=$region -q

gcloud compute network-firewall-policies rules delete 2001 --firewall-policy looker-psc-demo-policy --global-firewall-policy -q

gcloud compute network-firewall-policies associations delete --firewall-policy=looker-psc-demo-policy  --name=looker-psc-demo --global-firewall-policy -q

gcloud compute network-firewall-policies delete looker-psc-demo-policy --global -q

gcloud compute routers nats delete looker-psc-demo-natgw --router=looker-psc-demo-cloud-router --router-region=$region -q

gcloud compute routers delete looker-psc-demo-cloud-router --region=$region -q

gcloud compute network-endpoint-groups delete github-internet-neg --region=$region -q

gcloud compute addresses delete internet-neg-lb-ip --region=$region -q

gcloud compute networks subnets delete producer-psc-fr-subnet producer-psc-nat-subnet $region-proxy-only-subnet --region=$region -q

gcloud compute networks delete looker-psc-demo -q

12. অভিনন্দন

অভিনন্দন, আপনি প্রাইভেট সার্ভিস কানেক্ট দ্বারা চালিত লুকার কনসোল ব্যবহার করে গিটহাবের সাথে সফলভাবে সংযোগ কনফিগার এবং যাচাই করেছেন।

আপনি প্রযোজক পরিকাঠামো তৈরি করেছেন, কীভাবে একটি ইন্টারনেট NEG, প্রযোজক পরিষেবা এবং লুকার PSC এন্ডপয়েন্ট তৈরি করতে হয় তা শিখেছেন যা প্রযোজক পরিষেবার সাথে সংযোগের অনুমতি দেয়৷

Cosmopup মনে করে কোডল্যাবগুলি দুর্দান্ত!!

c911c127bffdee57.jpeg

এরপর কি?

এই কোডল্যাবগুলির কিছু পরীক্ষা করে দেখুন...

আরও পড়া এবং ভিডিও

রেফারেন্স ডক্স

,

1. ভূমিকা

এই কোডল্যাবে আপনি একটি অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার ব্যবহার করে GitHub-এর সাথে একটি সাউথবাউন্ড HTTPS সংযোগ সঞ্চালন করবেন এবং একটি পরিষেবা গ্রাহক হিসাবে Looker PSC থেকে আমন্ত্রিত ইন্টারনেট নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপ (NEG) ব্যবহার করবেন।

প্রাইভেট সার্ভিস কানেক্ট হল Google ক্লাউড নেটওয়ার্কিং এর একটি ক্ষমতা যা গ্রাহকদের তাদের VPC নেটওয়ার্কের ভিতর থেকে ব্যক্তিগতভাবে পরিচালিত পরিষেবাগুলি অ্যাক্সেস করতে দেয়। একইভাবে, এটি পরিচালিত পরিষেবা প্রযোজকদের তাদের নিজস্ব আলাদা ভিপিসি নেটওয়ার্কে এই পরিষেবাগুলি হোস্ট করতে এবং তাদের গ্রাহকদের একটি ব্যক্তিগত সংযোগ অফার করার অনুমতি দেয়। উদাহরণ স্বরূপ, আপনি যখন লুকার অ্যাক্সেস করতে প্রাইভেট সার্ভিস কানেক্ট ব্যবহার করেন, তখন আপনিই পরিষেবার ভোক্তা এবং Google হল পরিষেবা প্রযোজক, যেমন চিত্র 1-এ হাইলাইট করা হয়েছে৷

চিত্র 1।

145ea4672c3a3b14.png

সাউথবাউন্ড অ্যাক্সেস, রিভার্স পিএসসি নামেও পরিচিত, গ্রাহককে প্রযোজক হিসাবে একটি প্রকাশিত পরিষেবা তৈরি করতে সক্ষম করে যাতে ভিপিসি-তে, প্রাঙ্গনে, পরিচালিত পরিষেবা এবং ইন্টারনেটে লুকার অ্যাক্সেসের অনুমতি দেওয়া যায়। সাউথবাউন্ড সংযোগগুলি যে কোনও অঞ্চলে স্থাপন করা যেতে পারে, যেখানে লুকার পিএসসি মোতায়েন করা হয়েছে তা নির্বিশেষে, চিত্র 2-এ হাইলাইট করা হয়েছে৷

চিত্র 2।

259493afd914f68b.png

আপনি কি শিখবেন

  • নেটওয়ার্ক প্রয়োজনীয়তা
  • একটি ব্যক্তিগত পরিষেবা সংযোগ প্রযোজক পরিষেবা তৈরি করুন৷
  • লুকারে একটি প্রাইভেট সার্ভিস কানেক্ট এন্ডপয়েন্ট তৈরি করুন
  • একটি টেস্ট সংযোগ ব্যবহার করে লুকার থেকে গিটহাবের সাথে সংযোগ স্থাপন করুন

আপনি কি প্রয়োজন হবে

def88091b42bfe4d.png

2. আপনি কি তৈরি করবেন

অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার এবং Private Service Connect (PSC) এর মাধ্যমে একটি পরিষেবা হিসাবে প্রকাশিত ইন্টারনেট NEG স্থাপন করতে আপনি একটি প্রযোজক নেটওয়ার্ক, looker-psc-demo প্রতিষ্ঠা করবেন। একবার প্রকাশিত হলে, আপনি প্রযোজক পরিষেবাতে বৈধতা অ্যাক্সেসের জন্য নিম্নলিখিত ক্রিয়াগুলি সম্পাদন করবেন:

  • প্রডিউসার সার্ভিস অ্যাটাচমেন্টের সাথে যুক্ত লুকারে একটি PSC এন্ডপয়েন্ট তৈরি করুন
  • একটি নতুন প্রকল্প তৈরি করতে এবং GitHub.com-এ HTTPS সংযোগ পরীক্ষা করতে Looker Console ব্যবহার করুন

3. নেটওয়ার্ক প্রয়োজনীয়তা

নীচে প্রযোজক নেটওয়ার্কের জন্য নেটওয়ার্ক প্রয়োজনীয়তাগুলির ভাঙ্গন রয়েছে, এই কোডল্যাবের ভোক্তা হল লুকার পিএসসি উদাহরণ৷

উপাদান

বর্ণনা

ভিপিসি (লুকার-পিএসসি-ডেমো)

কাস্টম মোড ভিপিসি

PSC NAT সাবনেট

ভোক্তা ভিপিসি নেটওয়ার্কের প্যাকেটগুলি উৎস NAT (SNAT) ব্যবহার করে অনুবাদ করা হয় যাতে তাদের মূল উৎস আইপি ঠিকানাগুলি প্রযোজকের ভিপিসি নেটওয়ার্কে NAT সাবনেট থেকে উৎস IP ঠিকানায় রূপান্তরিত হয়।

পিএসসি ফরওয়ার্ডিং নিয়ম সাবনেট

আঞ্চলিক অভ্যন্তরীণ TCP প্রক্সি লোড ব্যালেন্সারের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয়

PSC NEG সাবনেট

নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয়

প্রক্সি শুধুমাত্র সাবনেট

লোড ব্যালেন্সারের প্রতিটি প্রক্সিকে একটি অভ্যন্তরীণ IP ঠিকানা বরাদ্দ করা হয়। একটি প্রক্সি থেকে ব্যাকএন্ড VM বা এন্ডপয়েন্টে পাঠানো প্যাকেটগুলিতে শুধুমাত্র প্রক্সি সাবনেট থেকে একটি উৎস আইপি ঠিকানা থাকে।

ইন্টারনেট NEG

লোড ব্যালেন্সারের জন্য একটি বহিরাগত ব্যাকএন্ড সংজ্ঞায়িত করতে ব্যবহৃত একটি সংস্থান। শুধুমাত্র ক্লাউড ভিপিএন বা ক্লাউড ইন্টারকানেক্টের মাধ্যমে এন্ডপয়েন্টে পৌঁছানো যাবে না।

ব্যাকএন্ড পরিষেবা

একটি ব্যাকএন্ড পরিষেবা আপনার লোড ব্যালেন্সার এবং আপনার ব্যাকএন্ড সংস্থানগুলির মধ্যে একটি সেতু হিসাবে কাজ করে। টিউটোরিয়ালে, ব্যাকএন্ড পরিষেবাটি ইন্টারনেট NEG-এর সাথে যুক্ত।

ক্লাউড রাউটার

ক্লাউড এনএটি ক্লাউড রাউটারের উপর নির্ভর করে প্লেন নিয়ন্ত্রণের ক্ষমতার জন্য, কিন্তু বিজিপি সেশন পরিচালনার জন্য নয়।

মেঘ NAT

আঞ্চলিক ইন্টারনেট NEG ইন্টারনেট প্রস্থানের জন্য ক্লাউড NAT ব্যবহার করে।

4. কোডল্যাব টপোলজি

4e7ac0fd4a61ed9b.png

5. সেটআপ এবং প্রয়োজনীয়তা

স্ব-গতিসম্পন্ন পরিবেশ সেটআপ

  1. Google ক্লাউড কনসোলে সাইন-ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ আপনার যদি ইতিমধ্যেই একটি Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে।

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • প্রকল্পের নাম এই প্রকল্পের অংশগ্রহণকারীদের জন্য প্রদর্শনের নাম। এটি একটি অক্ষর স্ট্রিং যা Google API দ্বারা ব্যবহৃত হয় না। আপনি সবসময় এটি আপডেট করতে পারেন.
  • প্রোজেক্ট আইডি সমস্ত Google ক্লাউড প্রোজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (সেট করার পরে পরিবর্তন করা যাবে না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত আপনি এটা কি যত্ন না. বেশিরভাগ কোডল্যাবে, আপনাকে আপনার প্রকল্প আইডি উল্লেখ করতে হবে (সাধারণত PROJECT_ID হিসাবে চিহ্নিত)। আপনি যদি জেনারেট করা আইডি পছন্দ না করেন, তাহলে আপনি অন্য একটি এলোমেলো আইডি তৈরি করতে পারেন। বিকল্পভাবে, আপনি নিজের চেষ্টা করতে পারেন, এবং এটি উপলব্ধ কিনা দেখতে পারেন। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রকল্পের সময়কালের জন্য থাকে।
  • আপনার তথ্যের জন্য, একটি তৃতীয় মান আছে, একটি প্রকল্প নম্বর , যা কিছু API ব্যবহার করে। ডকুমেন্টেশনে এই তিনটি মান সম্পর্কে আরও জানুন।
  1. এরপরে, ক্লাউড রিসোর্স/এপিআই ব্যবহার করতে আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে। এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ হবে না, যদি কিছু হয়। এই টিউটোরিয়ালের বাইরে বিলিং এড়াতে সংস্থানগুলি বন্ধ করতে, আপনি আপনার তৈরি করা সংস্থানগুলি মুছতে বা প্রকল্প মুছতে পারেন। নতুন Google ক্লাউড ব্যবহারকারীরা $300 USD বিনামূল্যের ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷

ক্লাউড শেল শুরু করুন

যদিও Google ক্লাউড আপনার ল্যাপটপ থেকে দূরবর্তীভাবে পরিচালিত হতে পারে, এই কোডল্যাবে আপনি Google ক্লাউড শেল ব্যবহার করবেন, একটি কমান্ড লাইন পরিবেশ যা ক্লাউডে চলছে।

Google ক্লাউড কনসোল থেকে, উপরের ডানদিকে টুলবারে ক্লাউড শেল আইকনে ক্লিক করুন:

55efc1aaa7a4d3ad.png

পরিবেশের ব্যবস্থা করতে এবং সংযোগ করতে এটি শুধুমাত্র কয়েক মুহূর্ত নিতে হবে। এটি সমাপ্ত হলে, আপনি এই মত কিছু দেখতে হবে:

7ffe5cbb04455448.png

এই ভার্চুয়াল মেশিনটি আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুল দিয়ে লোড করা হয়েছে। এটি একটি ক্রমাগত 5GB হোম ডিরেক্টরি অফার করে এবং Google ক্লাউডে চলে, যা নেটওয়ার্ক কর্মক্ষমতা এবং প্রমাণীকরণকে ব্যাপকভাবে উন্নত করে। এই কোডল্যাবে আপনার সমস্ত কাজ একটি ব্রাউজারে করা যেতে পারে। আপনার কিছু ইন্সটল করার দরকার নেই।

6. আপনি শুরু করার আগে

এপিআই সক্ষম করুন

ক্লাউড শেলের ভিতরে, নিশ্চিত করুন যে আপনার প্রকল্প আইডি সেট আপ করা আছে:

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. প্রযোজক VPC নেটওয়ার্ক তৈরি করুন

ভিপিসি নেটওয়ার্ক

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

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

সাবনেট তৈরি করুন

নেটওয়ার্ক ঠিকানা অনুবাদের উদ্দেশ্যে PSC সাবনেট PSC পরিষেবা সংযুক্তির সাথে যুক্ত হবে।

ক্লাউড শেলের ভিতরে, PSC NAT সাবনেট তৈরি করুন:

gcloud compute networks subnets create producer-psc-nat-subnet --network looker-psc-demo --range 172.16.10.0/28 --region $region --purpose=PRIVATE_SERVICE_CONNECT

ক্লাউড শেলের ভিতরে, প্রযোজক ফরওয়ার্ডিং নিয়ম সাবনেট তৈরি করুন:

gcloud compute networks subnets create producer-psc-fr-subnet --network looker-psc-demo --range 172.16.20.0/28 --region $region --enable-private-ip-google-access

ক্লাউড শেলের ভিতরে, প্রযোজক আঞ্চলিক প্রক্সি শুধুমাত্র সাবনেট তৈরি করুন:

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

পাবলিক NAT গেটওয়ে তৈরি করুন

NAT গেটওয়ে আঞ্চলিক অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার দ্বারা কনফিগারেশন বিকল্পের সাথে ইন্টারনেট বহির্গমনের জন্য ব্যবহৃত হয়, -endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB, তাই একই NATGW GCE/GKE ইন্টারনেট প্রস্থান সমর্থন করবে না। GCE/GKE ইন্টারনেট এগ্রেসের জন্য –endpoint-types=ENDPOINT_TYPE_VM সহ একটি অতিরিক্ত NAT GW স্থাপন করুন।

ক্লাউড শেলের ভিতরে, ক্লাউড রাউটার তৈরি করুন:

gcloud compute routers create looker-psc-demo-cloud-router --network looker-psc-demo --region $region

ক্লাউড শেলের ভিতরে, tcp প্রক্সি লোড ব্যালেন্সারের জন্য ইন্টারনেট এগ্রেস সক্ষম করে ক্লাউড NAT গেটওয়ে তৈরি করুন:

gcloud compute routers nats create looker-psc-demo-natgw \
  --router=looker-psc-demo-cloud-router \
  --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \
  --nat-custom-subnet-ip-ranges=$region-proxy-only-subnet \
  --auto-allocate-nat-external-ips \
  --region=$region

লোড ব্যালেন্সারের আইপি ঠিকানা সংরক্ষণ করুন

ক্লাউড শেলের ভিতরে, লোড ব্যালেন্সারের জন্য একটি অভ্যন্তরীণ আইপি ঠিকানা সংরক্ষণ করুন:

gcloud compute addresses create internet-neg-lb-ip \
  --region=$region \
  --subnet=producer-psc-fr-subnet

ক্লাউড শেলের ভিতরে, সংরক্ষিত আইপি ঠিকানা দেখুন।

gcloud compute addresses describe internet-neg-lb-ip \
  --region=$region | grep -i address:

উদাহরণ আউটপুট:

user@cloudshell$ gcloud compute addresses describe internet-neg-lb-ip   --region=$region | grep -i address:
address: 172.16.20.2

ইন্টারনেট NEG সেট আপ করুন

একটি ইন্টারনেট NEG তৈরি করুন, এবং –নেটওয়ার্ক-এন্ডপয়েন্ট-টাইপকে ইন্টারনেট-fqdn-পোর্টে সেট করুন (হোস্টনাম এবং পোর্ট যেখানে আপনার বাহ্যিক ব্যাকএন্ডে পৌঁছানো যেতে পারে)।

ক্লাউড শেলের ভিতরে, github.com এর জন্য ব্যবহৃত একটি ইন্টারনেট NEG তৈরি করুন

gcloud compute network-endpoint-groups create github-internet-neg \
    --network-endpoint-type=INTERNET_FQDN_PORT \
    --network=looker-psc-demo \
    --region=$region

ক্লাউড শেলের ভিতরে, FQDN github.com এবং পোর্ট 443 দিয়ে ইন্টারনেট NEG github-internet-neg আপডেট করুন

gcloud compute network-endpoint-groups update github-internet-neg \
    --add-endpoint="fqdn=github.com,port=443" \
    --region=$region

নেটওয়ার্ক ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়ম তৈরি করুন

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute network-firewall-policies create looker-psc-demo-policy --global

gcloud compute network-firewall-policies associations create --firewall-policy looker-psc-demo-policy --network looker-psc-demo --name looker-psc-demo --global-firewall-policy

নিম্নলিখিত ফায়ারওয়াল নিয়মটি PSC NAT সাবনেট পরিসর থেকে নেটওয়ার্কের সমস্ত দৃষ্টান্তে ট্র্যাফিকের অনুমতি দেয়।

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute network-firewall-policies rules create 2001 --action ALLOW --firewall-policy looker-psc-demo-policy --description "allow traffic from PSC NAT subnet" --direction INGRESS --src-ip-ranges 172.16.10.0/28 --global-firewall-policy --layer4-configs=tcp

8. প্রযোজক পরিষেবা তৈরি করুন

লোড ব্যালেন্সার উপাদান তৈরি করুন

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute backend-services create producer-backend-svc  --protocol=tcp --region=$region --load-balancing-scheme=INTERNAL_MANAGED

gcloud compute backend-services add-backend producer-backend-svc --network-endpoint-group=github-internet-neg --network-endpoint-group-region=$region --region=$region

ক্লাউড শেল-এ, আপনার ব্যাকএন্ড পরিষেবাতে রুট অনুরোধের জন্য একটি লক্ষ্য TCP প্রক্সি তৈরি করুন:

gcloud compute target-tcp-proxies create producer-lb-tcp-proxy \
      --backend-service=producer-backend-svc  \
      --region=$region

নিম্নলিখিত সিনট্যাক্সে, একটি ফরওয়ার্ডিং নিয়ম তৈরি করুন (অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার)।

ক্লাউড শেলে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute forwarding-rules create producer-github-fr \
     --load-balancing-scheme=INTERNAL_MANAGED \
     --network-tier=PREMIUM \
     --network=looker-psc-demo \
     --subnet=producer-psc-fr-subnet \
     --address=internet-neg-lb-ip \
     --target-tcp-proxy=producer-lb-tcp-proxy \
     --target-tcp-proxy-region=$region \
     --region=$region \
     --ports=443

সার্ভিস অ্যাটাচমেন্ট তৈরি করুন

ক্লাউড শেলের ভিতরে, পরিষেবা সংযুক্তি তৈরি করুন, github-svc-attachment-https:

gcloud compute service-attachments create github-svc-attachment-https --region=$region --producer-forwarding-rule=producer-github-fr --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=producer-psc-nat-subnet

এরপরে, লুকারে PSC এন্ডপয়েন্ট কনফিগার করার জন্য প্রোজেক্ট দিয়ে শুরু করে সেল্ফলিঙ্ক URI-তে তালিকাভুক্ত পরিষেবা সংযুক্তিটি পান এবং নোট করুন।

সেলফলিঙ্ক: প্রকল্প/<your-project-id>/regions/<your-region>/serviceAttachments/github-svc-attachment-https

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

gcloud compute service-attachments describe github-svc-attachment-https --region=$region

উদাহরণ:

connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-08-30T09:44:03.883-07:00'
description: ''
enableProxyProtocol: false
fingerprint: RfKh3blWZE0=
id: '2897904404386302012'
kind: compute#serviceAttachment
name: github-svc-attachment-https
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$project/regions/$region/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
  high: '19348441121424360'
  low: '2897904404386302012'
reconcileConnections: false
region: https://www.googleapis.com/compute/v1/projects/$project/regions/$region
selfLink: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/serviceAttachments/github-svc-attachment-https
targetService: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-github-fr

ক্লাউড কনসোলে, নেভিগেট করুন:

নেটওয়ার্ক পরিষেবা → ব্যক্তিগত পরিষেবা সংযোগ → প্রকাশিত পরিষেবা৷

a8cae886441d9c25.png

84a906b3bedabeee.png

9. লুকারে একটি PSC এন্ডপয়েন্ট সংযোগ স্থাপন করুন

নিম্নলিখিত বিভাগে, আপনি একটি একক ডোমেনের জন্য ক্লাউড শেল-এ –psc-সার্ভিস-অ্যাটাচমেন্ট পতাকা ব্যবহারের মাধ্যমে লুকার কোর PSC-এর সাথে প্রযোজক পরিষেবা সংযুক্তি সংযুক্ত করবেন৷

ক্লাউড শেলের ভিতরে, আপনার পরিবেশের সাথে মেলে নিম্নলিখিত পরামিতিগুলি আপডেট করে psc অ্যাসোসিয়েশন তৈরি করুন:

  • INSTANCE_NAME: আপনার লুকারের নাম (Google ক্লাউড কোর) উদাহরণ।
  • DOMAIN_1: github.com
  • SERVICE_ATTACHMENT_1: পরিষেবা সংযুক্তি, github-svc-attachment-https বর্ণনা করার সময় URI ক্যাপচার করা হয়েছে৷
  • অঞ্চল: যে অঞ্চলে আপনার লুকার (গুগল ক্লাউড কোর) উদাহরণ হোস্ট করা হয়েছে৷

ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:

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=github.com,attachment=projects/$project/regions/$region/serviceAttachments/github-svc-attachment-https \
--region=$region

ক্লাউড শেলের ভিতরে, সার্ভিস অ্যাটাচমেন্ট সংযোগের স্ট্যাটাস "স্বীকৃত" যাচাই করুন, আপনার লুকার PSC INSTANCE_NAME এর সাথে আপডেট করুন

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

উদাহরণ:

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

উদাহরণ:

{
  "adminSettings": {},
  "createTime": "2024-08-23T00:00:45.339063195Z",
  "customDomain": {
    "domain": "cosmopup.com",
    "state": "AVAILABLE"
  },
  "encryptionConfig": {},
  "lookerVersion": "24.12.28",
  "name": "projects/$project/locations/$region/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/$region/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183",
    "serviceAttachments": [
      {
        "connectionStatus": "ACCEPTED",
        "localFqdn": "github.com",
        "targetServiceAttachmentUri": "projects/$project/regions/$region/serviceAttachments/github-svc-attachment-https"
      }
    ]
  },
  "pscEnabled": true,
  "state": "ACTIVE",
  "updateTime": "2024-08-30T17:47:33.440271635Z"
}

ক্লাউড কনসোলে PSC এন্ডপয়েন্ট যাচাই করুন

ক্লাউড কনসোল থেকে আপনি পিএসসি সংযোগ যাচাই করতে পারেন

ক্লাউড কনসোলে, নেভিগেট করুন:

লুকার → লুকার ইনস্ট্যান্স → বিশদ বিবরণ৷

2d4684d722d31e4b.png

ef907280833bcad.png

10. GitHub-এ কানেক্টিভিটি পরীক্ষা করুন

নিম্নলিখিত ধাপে, আপনি github.com-এ HTTPS সংযোগ যাচাই করার জন্য একটি প্রকল্প তৈরি করতে Looker Console ব্যবহার করবেন।

11. একটি নতুন প্রকল্প তৈরি করুন

বিকাশ মোড সক্ষম করুন

লুকার কনসোলে, নেভিগেট করুন:

ডেভেলপমেন্ট মোড সক্ষম করুন (নীচে বাম পৃষ্ঠা), একবার নির্বাচিত ব্যানার 'আপনি উন্নয়ন মোডে' প্রদর্শিত হবে।

70c9ded749decfbe.png

একটি নতুন প্রকল্প তৈরি করুন

ক্লাউড কনসোলে, নেভিগেট করুন:

উন্নয়ন → প্রকল্প

e8ae11e0392a776d.png

নতুন লুকএমএল প্রকল্প নির্বাচন করুন

65a3c2573e97e1e9.png

একটি প্রকল্পের নাম প্রদান করুন, ফাঁকা প্রকল্প নির্বাচন করুন তারপর প্রকল্প তৈরি করুন।

9185808e001fa540.png

কনফিগার গিট নির্বাচন করুন

42f5e51ce70642ad.png

গিট কনফিগার করুন

আপনার HTTPS গিথুবের বিবরণ সহ সংগ্রহস্থলের URL আপডেট করুন, .git এর সাথে URL যুক্ত করা নিশ্চিত করুন তারপর চালিয়ে যান নির্বাচন করুন।

f5c448f6659b8fc1.png

উদাহরণ:

4065ab1d196589f.png

আপনার GitHub ব্যবহারকারীর নাম এবং ব্যক্তিগত অ্যাক্সেস টোকেন (ক্লাসিক) দিয়ে নির্বাচন আপডেট করুন, তারপর পরীক্ষা করুন এবং সেটআপ চূড়ান্ত করুন।

1dc44d63c555a9ae.png

গিট অ্যাকশন নির্বাচন করুন

b5903668a50a99ca.png

টেস্ট গিট সংযোগ নির্বাচন করুন

51b722e84f2df38c.png

গিট সংযোগ পরীক্ষা যাচাই করুন

a33584380b788b6d.png

পরিষ্কার করুন

একটি একক ক্লাউড শেল টার্মিনাল থেকে ল্যাব উপাদান মুছে দিন

gcloud compute service-attachments delete github-svc-attachment-https --region=$region -q

gcloud compute forwarding-rules delete producer-github-fr --region=$region -q

gcloud compute target-tcp-proxies delete producer-lb-tcp-proxy --region=$region -q

gcloud compute backend-services delete producer-backend-svc --region=$region -q

gcloud compute network-firewall-policies rules delete 2001 --firewall-policy looker-psc-demo-policy --global-firewall-policy -q

gcloud compute network-firewall-policies associations delete --firewall-policy=looker-psc-demo-policy  --name=looker-psc-demo --global-firewall-policy -q

gcloud compute network-firewall-policies delete looker-psc-demo-policy --global -q

gcloud compute routers nats delete looker-psc-demo-natgw --router=looker-psc-demo-cloud-router --router-region=$region -q

gcloud compute routers delete looker-psc-demo-cloud-router --region=$region -q

gcloud compute network-endpoint-groups delete github-internet-neg --region=$region -q

gcloud compute addresses delete internet-neg-lb-ip --region=$region -q

gcloud compute networks subnets delete producer-psc-fr-subnet producer-psc-nat-subnet $region-proxy-only-subnet --region=$region -q

gcloud compute networks delete looker-psc-demo -q

12. অভিনন্দন

অভিনন্দন, আপনি প্রাইভেট সার্ভিস কানেক্ট দ্বারা চালিত লুকার কনসোল ব্যবহার করে গিটহাবের সাথে সফলভাবে সংযোগ কনফিগার এবং যাচাই করেছেন।

আপনি প্রযোজক পরিকাঠামো তৈরি করেছেন, কীভাবে একটি ইন্টারনেট NEG, প্রযোজক পরিষেবা এবং লুকার PSC এন্ডপয়েন্ট তৈরি করতে হয় তা শিখেছেন যা প্রযোজক পরিষেবার সাথে সংযোগের অনুমতি দেয়৷

Cosmopup মনে করে কোডল্যাবগুলি দুর্দান্ত!!

c911c127bffdee57.jpeg

এরপর কি?

এই কোডল্যাবগুলির কিছু পরীক্ষা করে দেখুন...

আরও পড়া এবং ভিডিও

রেফারেন্স ডক্স