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

1. ভূমিকা

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

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

চিত্র 1।

145ea4672c3a3b14.png

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

চিত্র 2।

259493afd914f68b.png

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

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

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

def88091b42bfe4d.png

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

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

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

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

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

প্রযোজক নেটওয়ার্ক

উপাদান

বর্ণনা

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

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

PSC NAT সাবনেট

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

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

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

PSC NEG সাবনেট

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

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

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

ইন্টারনেট NEG

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

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

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

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

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

মেঘ NAT

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

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

dfa4dd1d681a66da.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-ssh \
    --network-endpoint-type=INTERNET_FQDN_PORT \
    --network=looker-psc-demo \
    --region=$region

ক্লাউড শেলের ভিতরে, FQDN github.com এবং পোর্ট 22 এর সাথে ইন্টারনেট NEG github-internet-neg-ssh আপডেট করুন

gcloud compute network-endpoint-groups update github-internet-neg-ssh \
    --add-endpoint="fqdn=github.com,port=22" \
    --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-ssh --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=22

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

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

gcloud compute service-attachments create github-svc-attachment-ssh --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-ssh

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

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

প্রত্যাশিত আউটপুটের উদাহরণ

connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-08-31T13:43:07.078-07:00'
description: ''
enableProxyProtocol: false
fingerprint: O5OtqHR33v4=
id: '7557641709467614900'
kind: compute#serviceAttachment
name: github-svc-attachment-ssh
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$project/regions/$region/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
  high: '19348441121424360'
  low: '7557641709467614900'
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-ssh
targetService: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-github-fr

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

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

30b1a280966b1f06.png

4eafe698193f5f44.png

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

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

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

  • INSTANCE_NAME: আপনার লুকারের নাম (Google ক্লাউড কোর) উদাহরণ।
  • DOMAIN_1: githubssh.com
  • SERVICE_ATTACHMENT_1: পরিষেবা সংযুক্তি, github-svc-attachment-ssh বর্ণনা করার সময় 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=githubssh.com,attachment=projects/$project/regions/$region/serviceAttachments/github-svc-attachment-ssh \
--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.14.18",
  "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": "githubssh.com",
        "targetServiceAttachmentUri": "projects/$project/regions/$region/serviceAttachments/github-svc-attachment-ssh"
      }
    ]
  },
  "pscEnabled": true,
  "state": "ACTIVE",
  "updateTime": "2024-08-31T20:53:04.824018122Z"
}

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

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

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

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

2d4684d722d31e4b.png

db670bb008ea3fc4.png

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

নিম্নলিখিত ধাপে, আপনি Looker UI-তে github.com ডোমেন githubssh.com-এ আপডেট করে GitHub.com-এ SSH সংযোগ যাচাই করার জন্য একটি প্রকল্প তৈরি করতে Looker Console ব্যবহার করবেন। এই ক্রিয়াটি শুধুমাত্র GitHub-এ SSH সংযোগের জন্য প্রয়োজন।

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

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

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

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

70c9ded749decfbe.png

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

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

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

e8ae11e0392a776d.png

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

65a3c2573e97e1e9.png

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

dbb890960291aa84.png

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

42f5e51ce70642ad.png

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

3962a1fe7ac8da77.png

একবার আপনি চালিয়ে যান নির্বাচন করলে, আপনাকে রিপোজিটরি URL এবং গিট হোস্টিং পরিষেবা যাচাই করার জন্য উন্নীত করা হবে।

743e5d963cfe6f82.png

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

4894e0af6421802e.png

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

e87931dbf7e265f3.png

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

73d90adf267120af.png

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

f69bc63b9c595aa1.png

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

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

gcloud compute service-attachments delete github-svc-attachment-ssh --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 addresses delete internet-neg-lb-ip --region=$region -q

gcloud compute network-endpoint-groups delete github-internet-neg-ssh --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

13. অভিনন্দন

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

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

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

c911c127bffdee57.jpeg

এরপর কি?

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

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

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

,

1. ভূমিকা

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

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

চিত্র 1।

145ea4672c3a3b14.png

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

চিত্র 2।

259493afd914f68b.png

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

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

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

def88091b42bfe4d.png

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

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

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

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

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

প্রযোজক নেটওয়ার্ক

উপাদান

বর্ণনা

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

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

PSC NAT সাবনেট

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

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

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

PSC NEG সাবনেট

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

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

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

ইন্টারনেট NEG

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

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

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

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

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

মেঘ NAT

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

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

dfa4dd1d681a66da.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-ssh \
    --network-endpoint-type=INTERNET_FQDN_PORT \
    --network=looker-psc-demo \
    --region=$region

ক্লাউড শেলের ভিতরে, FQDN github.com এবং পোর্ট 22 এর সাথে ইন্টারনেট NEG github-internet-neg-ssh আপডেট করুন

gcloud compute network-endpoint-groups update github-internet-neg-ssh \
    --add-endpoint="fqdn=github.com,port=22" \
    --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-ssh --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=22

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

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

gcloud compute service-attachments create github-svc-attachment-ssh --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-ssh

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

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

প্রত্যাশিত আউটপুটের উদাহরণ

connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-08-31T13:43:07.078-07:00'
description: ''
enableProxyProtocol: false
fingerprint: O5OtqHR33v4=
id: '7557641709467614900'
kind: compute#serviceAttachment
name: github-svc-attachment-ssh
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$project/regions/$region/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
  high: '19348441121424360'
  low: '7557641709467614900'
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-ssh
targetService: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-github-fr

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

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

30b1a280966b1f06.png

4eafe698193f5f44.png

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

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

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

  • INSTANCE_NAME: আপনার লুকারের নাম (Google ক্লাউড কোর) উদাহরণ।
  • DOMAIN_1: githubssh.com
  • SERVICE_ATTACHMENT_1: পরিষেবা সংযুক্তি, github-svc-attachment-ssh বর্ণনা করার সময় 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=githubssh.com,attachment=projects/$project/regions/$region/serviceAttachments/github-svc-attachment-ssh \
--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.14.18",
  "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": "githubssh.com",
        "targetServiceAttachmentUri": "projects/$project/regions/$region/serviceAttachments/github-svc-attachment-ssh"
      }
    ]
  },
  "pscEnabled": true,
  "state": "ACTIVE",
  "updateTime": "2024-08-31T20:53:04.824018122Z"
}

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

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

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

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

2d4684d722d31e4b.png

db670bb008ea3fc4.png

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

নিম্নলিখিত ধাপে, আপনি Looker UI-তে github.com ডোমেন githubssh.com-এ আপডেট করে GitHub.com-এ SSH সংযোগ যাচাই করার জন্য একটি প্রকল্প তৈরি করতে Looker Console ব্যবহার করবেন। এই ক্রিয়াটি শুধুমাত্র GitHub-এ SSH সংযোগের জন্য প্রয়োজন।

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

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

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

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

70c9ded749decfbe.png

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

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

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

e8ae11e0392a776d.png

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

65a3c2573e97e1e9.png

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

dbb890960291aa84.png

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

42f5e51ce70642ad.png

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

3962a1fe7ac8da77.png

একবার আপনি চালিয়ে যান নির্বাচন করলে, আপনাকে রিপোজিটরি URL এবং গিট হোস্টিং পরিষেবা যাচাই করার জন্য উন্নীত করা হবে।

743e5d963cfe6f82.png

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

4894e0af6421802e.png

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

e87931dbf7e265f3.png

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

73d90adf267120af.png

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

f69bc63b9c595aa1.png

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

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

gcloud compute service-attachments delete github-svc-attachment-ssh --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 addresses delete internet-neg-lb-ip --region=$region -q

gcloud compute network-endpoint-groups delete github-internet-neg-ssh --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

13. অভিনন্দন

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

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

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

c911c127bffdee57.jpeg

এরপর কি?

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

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

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

,

1. ভূমিকা

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

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

চিত্র 1।

145ea4672c3a3b14.png

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

চিত্র 2।

259493afd914f68b.png

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

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

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

def88091b42bfe4d.png

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

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

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

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

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

প্রযোজক নেটওয়ার্ক

উপাদান

বর্ণনা

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

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

PSC NAT সাবনেট

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

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

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

PSC NEG সাবনেট

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

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

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

ইন্টারনেট NEG

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

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

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

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

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

মেঘ NAT

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

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

dfa4dd1d681a66da.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 গেটওয়েটি কনফিগারেশন বিকল্পের সাথে ইন্টারনেট এড্রেসের জন্য আঞ্চলিক অভ্যন্তরীণ টিসিপি প্রক্সি লোড ব্যালেন্সার দ্বারা ব্যবহৃত হয়, end জিসিই/Gke ইন্টারনেট এগ্র্রেসের জন্য endendPoint- টাইপস = এন্ডপয়েন্ট_ টাইপ_ভিএম সহ একটি অতিরিক্ত নাট জিডব্লিউ স্থাপন করুন।

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

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

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

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

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

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

ক্লাউড শেলের ভিতরে, গিথুব ডটকমের জন্য ব্যবহৃত একটি ইন্টারনেট নেগ তৈরি করুন

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

ক্লাউড শেলের অভ্যন্তরে, এফকিউডিএন গিটহাব ডটকম এবং 22 পোর্ট সহ ইন্টারনেট নেগ গিথুব-ইন্টারনেট-নেগ-এসএসএইচ আপডেট করুন

gcloud compute network-endpoint-groups update github-internet-neg-ssh \
    --add-endpoint="fqdn=github.com,port=22" \
    --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

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

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

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-ssh --network-endpoint-group-region=$region --region=$region

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

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

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

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

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=22

পরিষেবা সংযুক্তি তৈরি করুন

ক্লাউড শেলের ভিতরে, পরিষেবা সংযুক্তি তৈরি করুন, গিটহাব-এসভিসি-সংযুক্তি-এসএসএস:

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

এরপরে, লুকায় পিএসসি এন্ডপয়েন্টটি কনফিগার করতে প্রকল্পগুলি দিয়ে শুরু করে সেলফলিংক ইউআরআইতে তালিকাভুক্ত পরিষেবা সংযুক্তিটি অর্জন করুন এবং নোট করুন।

সেলফিলিংক: প্রকল্পগুলি/<আপনার প্রকল্প-আইডি>/অঞ্চল/<আপনার-অঞ্চল>/সার্ভিসেটট্যাচমেন্টস/গিটহাব-এসভিসি-সংযুক্তি-এসএসএসএইচ

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

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

প্রত্যাশিত আউটপুট উদাহরণ

connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-08-31T13:43:07.078-07:00'
description: ''
enableProxyProtocol: false
fingerprint: O5OtqHR33v4=
id: '7557641709467614900'
kind: compute#serviceAttachment
name: github-svc-attachment-ssh
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$project/regions/$region/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
  high: '19348441121424360'
  low: '7557641709467614900'
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-ssh
targetService: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-github-fr

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

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

30B1A280966B1F06.png

4 ইএফই 698193f5f44.png

9। লুকারে একটি পিএসসি শেষ পয়েন্ট সংযোগ স্থাপন করুন

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

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

  • উদাহরণ_নাম: আপনার দর্শকের নাম (গুগল ক্লাউড কোর) উদাহরণ।
  • ডোমেন_1: githubssh.com
  • পরিষেবা_আটচমেন্ট_1: পরিষেবা সংযুক্তি, গিটহাব-এসভিসি-সংযুক্তি-এসএসএইচ বর্ণনা করার সময় ইউআরআই ক্যাপচার করেছে।
  • অঞ্চল: যে অঞ্চলে আপনার লুকার (গুগল ক্লাউড কোর) উদাহরণটি হোস্ট করা হয়েছে।

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

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

ক্লাউড শেলের অভ্যন্তরে, সার্ভিসিয়েটসেন্টস সংযোগস্ট্যাটাসকে যাচাই করুন "স্বীকৃত"। আপনার লুকার পিএসসি উদাহরণ_নাম দিয়ে আপডেট করুন।

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.14.18",
  "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": "githubssh.com",
        "targetServiceAttachmentUri": "projects/$project/regions/$region/serviceAttachments/github-svc-attachment-ssh"
      }
    ]
  },
  "pscEnabled": true,
  "state": "ACTIVE",
  "updateTime": "2024-08-31T20:53:04.824018122Z"
}

ক্লাউড কনসোলে পিএসসি শেষ পয়েন্টটি বৈধ করুন

ক্লাউড কনসোল থেকে আপনি পিএসসি সংযোগটি বৈধ করতে পারেন

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

লুকার → লুকার উদাহরণ → বিশদ

2d4684d722d31e4b.png

db670bb008ea3fc4.png

10। গিটহাবের সাথে সংযোগ পরীক্ষা করুন

নিম্নলিখিত পদক্ষেপগুলিতে, আপনি গিটহাব ডটকমকে গিটহাব ডটকমকে গিটহুবস ডটকমকে গিটহাবস ডটকমকে আপডেট করে গিটহাব ডটকমের এসএসএইচ সংযোগকে বৈধতা দেওয়ার জন্য একটি প্রকল্প তৈরি করতে লুকার কনসোল ব্যবহার করবেন। এই ক্রিয়াটি কেবল গিটহাবের সাথে এসএসএইচ সংযোগের জন্য প্রয়োজনীয়।

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

উন্নয়ন মোড সক্ষম করুন

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

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

70c9ed749decfbe.png

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

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

→ প্রকল্পগুলি বিকাশ করুন

E8AE11E0392A776D.PNG

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

65A3C2573E97E1E9E9.PNG

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

dbb890960291aa84.png

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

42F5E51CE70642AD.PNG

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

3962A1FE7AC8DA77.PNG

একবার আপনি চালিয়ে যাওয়ার পরে, আপনাকে সংগ্রহস্থল ইউআরএল এবং গিট হোস্টিং পরিষেবাটি বৈধ করার জন্য প্রচার করা হবে।

743e5d963cfe6f82.png

আপনার গিটহাব সংগ্রহস্থলে স্থাপনার কী যুক্ত করুন। লেখার অ্যাক্সেসের অনুমতি নিশ্চিত করুন। একবার আপডেট করা পরীক্ষা করুন এবং সেটআপ চূড়ান্ত করুন।

4894e0af6421802e.png

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

E87931DBF7E265F3.png

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

73D90ADF267120AF.PNG

গিট সংযোগ পরীক্ষা বৈধ করুন

F69BC63B9C595AA1.png

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

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

gcloud compute service-attachments delete github-svc-attachment-ssh --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 addresses delete internet-neg-lb-ip --region=$region -q

gcloud compute network-endpoint-groups delete github-internet-neg-ssh --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

13। অভিনন্দন

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

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

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

C911C127BFFDEE57.jpeg

এরপর কি?

এই কোডেল্যাবগুলির কয়েকটি দেখুন ...

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

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