স্বয়ংক্রিয় DNS কনফিগারেশনের সাথে ব্যক্তিগত পরিষেবা সংযোগ করুন

1. ভূমিকা

স্বয়ংক্রিয় DNS কনফিগারেশনের সাথে ব্যক্তিগত পরিষেবা সংযোগ স্বয়ংক্রিয়ভাবে DNS রেকর্ড তৈরি করতে পরিষেবা ডিরেক্টরি এবং ক্লাউড DNS ব্যবহার করে যা গ্রাহকের ব্যক্তিগত পরিষেবা সংযোগের শেষ পয়েন্ট আইপি ঠিকানাগুলির সাথে প্রোগ্রাম করা হয়।

আপনি কি নির্মাণ করবেন

এই কোডল্যাবে, আপনি একটি ব্যাপক প্রাইভেট সার্ভিস কানেক্ট আর্কিটেকচার তৈরি করতে যাচ্ছেন যা চিত্র 1-এ চিত্রিত হিসাবে স্বয়ংক্রিয় DNS-এর ব্যবহারকে ব্যাখ্যা করে।

স্বয়ংক্রিয় DNS নিম্নলিখিত দ্বারা সম্ভব হয়েছে:

  1. প্রাইভেট সার্ভিস কানেক্ট সার্ভিস অ্যাটাচমেন্ট তৈরি করার সময় প্রোডিউসার সার্ভিস অ্যাটাচমেন্ট '–ডোমেন-নেম' পতাকা সহ একটি মালিকানাধীন পাবলিক ডোমেন সরবরাহ করে স্বয়ংক্রিয় DNS উৎপন্ন করে।
  2. ভোক্তা একটি শেষ পয়েন্ট নাম সংজ্ঞায়িত করে।
  3. স্বয়ংক্রিয় DNS একটি DNS জোন goog-psc-default-us-central1 এবং DNS নাম cosmopup.net উভয়ই তৈরি করে, ভোক্তার শেষ পয়েন্টের নাম সমন্বিত একটি পরিষেবা ডিরেক্টরি এন্ট্রি ছাড়াও।

স্বয়ংক্রিয় DNS এর সুবিধা (4) এ চিত্রিত করা হয়েছে যেখানে একজন শেষ ব্যবহারকারী DNS, FQDN stargazer.cosmopup.net এর মাধ্যমে ভোক্তা শেষ পয়েন্টের সাথে যোগাযোগ করতে পারে।

চিত্র 1

5e26a358454d1336.png

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

  • কিভাবে একটি অভ্যন্তরীণ HTTP(S) লোড ব্যালেন্সার তৈরি করবেন
  • কিভাবে স্বয়ংক্রিয় DNS দিয়ে একটি পরিষেবা সংযুক্তি তৈরি করবেন
  • কিভাবে একটি প্রাইভেট সার্ভিস কানেক্ট প্রডিউসার সার্ভিস প্রতিষ্ঠা করবেন
  • কিভাবে স্বয়ংক্রিয় DNS ব্যবহার করে একটি ভোক্তা এন্ডপয়েন্ট অ্যাক্সেস করতে হয়

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

  • গুগল ক্লাউড প্রকল্প
  • আপনার মালিকানাধীন একটি সর্বজনীন ডোমেইন

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

কোডল্যাবকে সমর্থন করার জন্য প্রকল্পটি আপডেট করুন

এই কোডল্যাব ক্লাউড শেল-এ gcloud কনফিগারেশন বাস্তবায়নে সাহায্য করার জন্য $ভেরিয়েবল ব্যবহার করে।

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

gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectname=YOUR-PROJECT-NAME
echo $projectname

3. প্রযোজক সেটআপ

প্রযোজক ভিপিসি তৈরি করুন

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

gcloud compute networks create producer-vpc --project=$projectname --subnet-mode=custom

প্রযোজক সাবনেট তৈরি করুন

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

gcloud compute networks subnets create gce-subnet --project=$projectname --range=172.16.20.0/28 --network=producer-vpc --region=us-central1

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

gcloud compute networks subnets create load-balancer-subnet --project=$projectname --range=172.16.10.0/28 --network=producer-vpc --region=us-central1

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

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

gcloud compute addresses create lb-ip \
    --region=us-central1 \
    --subnet=load-balancer-subnet \
    --purpose=GCE_ENDPOINT

বরাদ্দকৃত আইপি ঠিকানা দেখুন

বরাদ্দকৃত আইপি ঠিকানা দেখতে গণনা ঠিকানা বর্ণনা কমান্ড ব্যবহার করুন

gcloud compute addresses describe lb-ip  --region=us-central1 | grep address:

আঞ্চলিক প্রক্সি সাবনেট তৈরি করুন

প্রক্সি বরাদ্দ VPC নেটওয়ার্ক স্তরে, লোড ব্যালেন্সার স্তরে নয়৷ একটি ভার্চুয়াল নেটওয়ার্ক (VPC) এর প্রতিটি অঞ্চলে আপনাকে অবশ্যই একটি প্রক্সি-শুধু সাবনেট তৈরি করতে হবে যেখানে আপনি এনভয়-ভিত্তিক লোড ব্যালেন্সার ব্যবহার করেন। আপনি যদি একই অঞ্চলে এবং একই VPC নেটওয়ার্কে একাধিক লোড ব্যালেন্সার স্থাপন করেন, তাহলে তারা লোড ব্যালেন্সিংয়ের জন্য একই প্রক্সি-অনলি সাবনেট ভাগ করে।

  1. একজন ক্লায়েন্ট লোড ব্যালেন্সারের ফরওয়ার্ডিং নিয়মের আইপি ঠিকানা এবং পোর্টের সাথে একটি সংযোগ তৈরি করে।
  2. প্রতিটি প্রক্সি সংশ্লিষ্ট লোড ব্যালেন্সারের ফরওয়ার্ডিং নিয়ম দ্বারা নির্দিষ্ট করা IP ঠিকানা এবং পোর্টে শোনে। প্রক্সিগুলির মধ্যে একটি ক্লায়েন্টের নেটওয়ার্ক সংযোগ গ্রহণ করে এবং বন্ধ করে দেয়।
  3. প্রক্সি লোড ব্যালেন্সারের URL ম্যাপ এবং ব্যাকএন্ড পরিষেবা দ্বারা নির্ধারিত উপযুক্ত ব্যাকএন্ড VM-এর সাথে একটি সংযোগ স্থাপন করে।

আপনার VPC নেটওয়ার্ক স্বয়ংক্রিয় মোড বা কাস্টম মোড যাই হোক না কেন আপনাকে অবশ্যই প্রক্সি-শুধু সাবনেট তৈরি করতে হবে। একটি প্রক্সি-শুধু সাবনেট অবশ্যই 64 বা তার বেশি IP ঠিকানা প্রদান করতে হবে। এটি একটি উপসর্গের দৈর্ঘ্য /26 বা তার চেয়ে কম। প্রস্তাবিত সাবনেট আকার হল /23 (512 শুধুমাত্র প্রক্সি ঠিকানা)।

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

gcloud compute networks subnets create proxy-subnet-us-central \
  --purpose=REGIONAL_MANAGED_PROXY \
  --role=ACTIVE \
  --region=us-central1 \
  --network=producer-vpc \
  --range=172.16.0.0/23

প্রাইভেট সার্ভিস কানেক্ট NAT সাবনেট তৈরি করুন

প্রাইভেট সার্ভিস কানেক্টের সাথে ব্যবহার করার জন্য এক বা একাধিক ডেডিকেটেড সাবনেট তৈরি করুন । আপনি যদি একটি পরিষেবা প্রকাশ করতে Google ক্লাউড কনসোল ব্যবহার করেন, আপনি সেই প্রক্রিয়া চলাকালীন সাবনেট তৈরি করতে পারেন৷ পরিষেবার লোড ব্যালেন্সারের মতো একই অঞ্চলে সাবনেট তৈরি করুন৷ আপনি একটি নিয়মিত সাবনেটকে একটি ব্যক্তিগত পরিষেবা সংযোগ সাবনেটে রূপান্তর করতে পারবেন না৷

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

gcloud compute networks subnets create psc-nat-subnet \
    --project $projectname \
    --network producer-vpc \
    --region us-central1 \
    --range 100.100.10.0/24 \
    --purpose PRIVATE_SERVICE_CONNECT

প্রযোজক ফায়ারওয়াল নিয়ম তৈরি করুন

প্রাইভেট সার্ভিস কানেক্ট NAT সাবনেট এবং ILB প্রক্সি শুধুমাত্র সাবনেটের মধ্যে ট্র্যাফিকের অনুমতি দেওয়ার জন্য ফায়ারওয়াল নিয়মগুলি কনফিগার করুন৷

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

gcloud compute --project=$projectname firewall-rules create allow-to-ingress-nat-subnet --direction=INGRESS --priority=1000 --network=producer-vpc --action=ALLOW --rules=all --source-ranges=100.100.10.0/24

ক্লাউড শেলের ভিতরে, TCP পোর্ট 80-এ Google ক্লাউড স্বাস্থ্য পরীক্ষাগুলি প্রযোজক পরিষেবা (ব্যাকএন্ড পরিষেবা) পৌঁছানোর অনুমতি দেওয়ার জন্য fw-allow-health-check ফায়ারওয়াল নিয়ম তৈরি করুন৷

gcloud compute firewall-rules create fw-allow-health-check \
    --network=producer-vpc \
    --action=allow \
    --direction=ingress \
    --source-ranges=130.211.0.0/22,35.191.0.0/16 \
    --rules=tcp:80

লোড ব্যালেন্সারকে TCP পোর্ট 80-এ ব্যাকএন্ড দৃষ্টান্তের সাথে যোগাযোগ করার অনুমতি দেওয়ার জন্য প্রক্সি-অনলি সাবনেটের জন্য ফায়ারওয়ালের অনুমতি দেওয়ার নিয়ম তৈরি করুন।

gcloud compute firewall-rules create fw-allow-proxy-only-subnet \
    --network=producer-vpc \
    --action=allow \
    --direction=ingress \
    --source-ranges=172.16.0.0/23 \
    --rules=tcp:80

ক্লাউড রাউটার এবং NAT কনফিগারেশন

ক্লাউড NAT সফ্টওয়্যার প্যাকেজ ইনস্টলেশনের জন্য কোডল্যাবে ব্যবহার করা হয় যেহেতু VM উদাহরণের একটি বাহ্যিক IP ঠিকানা নেই।

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

gcloud compute routers create cloud-router-for-nat --network producer-vpc --region us-central1

ক্লাউড শেলের ভিতরে, NAT গেটওয়ে তৈরি করুন।

gcloud compute routers nats create cloud-nat-us-central1 --router=cloud-router-for-nat --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region us-central1

ইনস্ট্যান্স গ্রুপ কনফিগারেশন

নিম্নলিখিত বিভাগে, আপনি কম্পিউট ইঞ্জিন ইনস্ট্যান্স এবং অম্যানেজড ইনস্ট্যান্স গ্রুপ তৈরি করবেন। পরবর্তী ধাপে ইনস্ট্যান্স গ্রুপটি লোড ব্যালেন্সার ব্যাকএন্ড পরিষেবা হিসাবে ব্যবহার করা হবে।

ক্লাউড শেলের ভিতরে, প্রযোজক পরিষেবাতে পাস করা আঞ্চলিক স্বাস্থ্য-পরীক্ষা তৈরি করুন।

gcloud compute instances create app-server-1 \
    --project=$projectname \
    --machine-type=e2-micro \
    --image-family debian-10 \
    --no-address \
    --image-project debian-cloud \
    --zone us-central1-a \
    --subnet=gce-subnet \
    --metadata startup-script="#! /bin/bash
      sudo apt-get update
      sudo apt-get install apache2 -y
      sudo service apache2 restart
      echo 'Welcome to App-Server-1 !!' | tee /var/www/html/index.html
      EOF"

ক্লাউড শেলের ভিতরে, অব্যবস্থাপিত উদাহরণ গোষ্ঠী তৈরি করুন।

gcloud compute instance-groups unmanaged create psc-instance-group --zone=us-central1-a

gcloud compute instance-groups unmanaged set-named-ports psc-instance-group --project=$projectname --zone=us-central1-a --named-ports=http:80

gcloud compute instance-groups unmanaged add-instances psc-instance-group --zone=us-central1-a --instances=app-server-1

লোড ব্যালেন্সার কনফিগার করুন

নিম্নলিখিত ধাপে আপনি অভ্যন্তরীণ HTTP লোড ব্যালেন্সার কনফিগার করবেন যা পরবর্তী ধাপে একটি পরিষেবা সংযুক্তি হিসাবে প্রকাশিত হবে

ক্লাউড শেলের ভিতরে, আঞ্চলিক স্বাস্থ্য-পরীক্ষা তৈরি করুন।

gcloud compute health-checks create http http-health-check \
    --region=us-central1 \
    --use-serving-port

ক্লাউড শেলের ভিতরে, ব্যাকএন্ড পরিষেবা তৈরি করুন।

 gcloud compute backend-services create l7-ilb-backend-service \
      --load-balancing-scheme=INTERNAL_MANAGED \
      --protocol=HTTP \
      --health-checks=http-health-check \
      --health-checks-region=us-central1 \
      --region=us-central1

ক্লাউড শেলের ভিতরে, ব্যাকএন্ড পরিষেবাতে ব্যাকএন্ড যোগ করুন।

gcloud compute backend-services add-backend l7-ilb-backend-service \
  --balancing-mode=UTILIZATION \
  --instance-group=psc-instance-group \
  --instance-group-zone=us-central1-a \
  --region=us-central1

ক্লাউড শেলের ভিতরে, ব্যাকএন্ড পরিষেবাতে আগত অনুরোধগুলি রুট করতে URL মানচিত্র তৈরি করুন।

gcloud compute url-maps create l7-ilb-map \
    --default-service l7-ilb-backend-service \
    --region=us-central1

HTTP টার্গেট প্রক্সি তৈরি করুন।

gcloud compute target-http-proxies create l7-ilb-proxy\
    --url-map=l7-ilb-map \
    --url-map-region=us-central1 \
    --region=us-central1

প্রক্সিতে আগত অনুরোধগুলিকে রুট করার জন্য একটি ফরওয়ার্ডিং নিয়ম তৈরি করুন৷ ফরওয়ার্ডিং নিয়ম তৈরি করতে প্রক্সি-শুধু সাবনেট ব্যবহার করবেন না।

 gcloud compute forwarding-rules create l7-ilb-forwarding-rule \
      --load-balancing-scheme=INTERNAL_MANAGED \
      --network=producer-vpc \
      --subnet=load-balancer-subnet \
      --address=lb-ip \
      --ports=80 \
      --region=us-central1 \
      --target-http-proxy=l7-ilb-proxy \
      --target-http-proxy-region=us-central1

4. লোড ব্যালেন্সার যাচাই করুন

ক্লাউড কনসোল থেকে নেটওয়ার্ক পরিষেবাগুলিতে নেভিগেট করুন → লোড ব্যালেন্সিং → লোড ব্যালেন্সার ৷ ব্যাকএন্ড পরিষেবাতে সফল স্বাস্থ্য পরীক্ষা নোট করুন

881567cc11627009.png

'l7-ilb-map' নির্বাচন করলে ফ্রন্টএন্ড আইপি অ্যাড্রেস পাওয়া যায়, যা আগের ধাপে আপনি যে আইপি অ্যাড্রেসটি ধরেছিলেন তার সাথে মেলে এবং ব্যাকএন্ড সার্ভিস শনাক্ত করে।

bab89b0a7b4f95e9.png

5. ব্যক্তিগত পরিষেবা সংযোগ পরিষেবা সংযুক্তি তৈরি করুন৷

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

ক্লাউড শেলের ভিতরে, পরিষেবা সংযুক্তি তৈরি করুন। '.' যোগ করতে ভুলবেন না। ডোমেইন নামের শেষে।

gcloud compute service-attachments create published-service --region=us-central1 --producer-forwarding-rule=l7-ilb-forwarding-rule --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=psc-nat-subnet --domain-names=cosmopup.net.

ঐচ্ছিক: শেয়ার্ড ভিপিসি ব্যবহার করলে, সার্ভিস প্রোজেক্টে সার্ভিস অ্যাটাচমেন্ট তৈরি করুন।

gcloud compute service-attachments create published-service --region=us-central1 --producer-forwarding-rule=l7-ilb-forwarding-rule --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=projects/<hostproject>/regions/us-central1/subnetworks/psc-nat-subnet --domain-names=cosmopup.net.

নতুন প্রতিষ্ঠিত পরিষেবা সংযুক্তি দেখতে নেটওয়ার্ক পরিষেবাগুলিতে নেভিগেট করুন → ব্যক্তিগত পরিষেবা সংযোগ করুন৷

d27fee9073dbbe2.png

প্রকাশিত-পরিষেবা নির্বাচন করা একটি ব্যক্তিগত পরিষেবা সংযোগ এবং ডোমেন নাম স্থাপন করতে গ্রাহকের দ্বারা ব্যবহৃত পরিষেবা সংযুক্তি URI সহ আরও বিশদ প্রদান করে।

503df63730c62df2.png

পরিষেবা সংযুক্তি বিবরণ:

প্রকল্প/<project name>/regions/us-central1/serviceAttachments/published-service

6. ভোক্তা সেটআপ

ভোক্তা API সক্রিয় করুন

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

gcloud services enable dns.googleapis.com
gcloud services enable servicedirectory.googleapis.com

ভোক্তা ভিপিসি নেটওয়ার্ক তৈরি করুন

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

gcloud compute networks create consumer-vpc --project=$projectname --subnet-mode=custom

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

ক্লাউড শেলের ভিতরে, পরীক্ষার উদাহরণের জন্য সাবনেট তৈরি করুন।

gcloud compute networks subnets create db1-subnet --project=$projectname --range=10.20.0.0/28 --network=consumer-vpc --region=us-central1

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

gcloud compute networks subnets create consumer-ep-subnet --project=$projectname --range=10.10.0.0/28 --network=consumer-vpc --region=us-central1

ভোক্তা এন্ডপয়েন্ট তৈরি করুন (ফরওয়ার্ড করার নিয়ম)

ক্লাউড শেলের ভিতরে, স্ট্যাটিক আইপি ঠিকানা তৈরি করুন যা ভোক্তার শেষ পয়েন্টের জন্য ব্যবহার করা হবে।

gcloud compute addresses create psc-consumer-ip-1 --region=us-central1 --subnet=consumer-ep-subnet --addresses 10.10.0.10

আমরা ভোক্তা এন্ডপয়েন্ট তৈরি করতে পূর্বে তৈরি করা পরিষেবা সংযুক্তি URI ব্যবহার করি।

ক্লাউড শেলের ভিতরে, ভোক্তা শেষ পয়েন্ট তৈরি করুন।

gcloud compute forwarding-rules create stargazer --region=us-central1 --network=consumer-vpc --address=psc-consumer-ip-1 --target-service-attachment=projects/$projectname/regions/us-central1/serviceAttachments/published-service

7. গ্রাহকের ভিপিসি নেটওয়ার্কে সংযোগ যাচাই করুন৷

ভোক্তা VPC নেটওয়ার্ক থেকে, নেটওয়ার্ক পরিষেবা → প্রাইভেট সার্ভিস কানেক্ট → সংযুক্ত এন্ডপয়েন্টে নেভিগেট করে একটি সফল ব্যক্তিগত পরিষেবা সংযোগ যাচাই করুন৷ আমরা পূর্বে তৈরি করা স্টারগেজার সংযোগ এবং সংশ্লিষ্ট আইপি ঠিকানাটি নোট করুন।

c60812433c3e1676.png

psc-consumer-1 নির্বাচন করার সময় পরিষেবা সংযুক্তি URI সহ বিশদ প্রদান করা হয়

14d3e3b1e0aee3c2.png

8. প্রযোজকের ভিপিসি নেটওয়ার্কে সংযোগটি যাচাই করুন৷

প্রযোজকের ভিপিসি নেটওয়ার্ক থেকে নেটওয়ার্ক সার্ভিস → প্রাইভেট সার্ভিস কানেক্ট→ প্রকাশিত পরিষেবাতে নেভিগেট করে একটি সফল ব্যক্তিগত পরিষেবা সংযোগ যাচাই করুন৷ নোট করুন প্রকাশিত পরিষেবা সংযোগ এখন 1 ফরওয়ার্ডিং নিয়ম নির্দেশ করে (সংযোগ শেষ পয়েন্ট)।

911dbd7421bcfd3a.png

9. স্বয়ংক্রিয় DNS কনফিগারেশন যাচাই করুন

আসুন ডিএনএস এবং সার্ভিস ডিরেক্টরি কনফিগারেশন মূল্যায়ন করি।

ক্লাউড ডিএনএস কনফিগারেশন

নেটওয়ার্ক পরিষেবা → ক্লাউড ডিএনএস → জোনে নেভিগেট করুন। জোন goog-psc-default-us-central & DNS নাম cosmopup.net। স্বয়ংক্রিয়ভাবে তৈরি হয়।

4395e7b33fc42faa.png

DNS এবং পরিষেবা ডিরেক্টরি কনফিগারেশন দেখুন

জোনের নাম নির্বাচন করা আমাদের দেখতে দেয় কিভাবে সার্ভিস ডিরেক্টরি ক্লাউড ডিএনএস-এর সাথে একত্রিত হয়।

e4fe44d945b20451.png

পরিষেবা ডিরেক্টরি কনফিগারেশন

নেটওয়ার্ক পরিষেবা → পরিষেবা ডিরেক্টরিতে নেভিগেট করুন

ভোক্তা শেষ বিন্দু নাম ' stargazer ' মনে রাখবেন? এটি পরিষেবা ডিরেক্টরিতে স্বয়ংক্রিয়ভাবে প্রোগ্রাম করা হয়েছে যা আমাদেরকে FQDN stargazer.goog-psc-default–us-central1 ব্যবহার করে ভোক্তার শেষ পয়েন্টে পৌঁছানোর অনুমতি দেয়

602deab65b5ac315.png

10. প্রযোজক পরিষেবাতে ভোক্তাদের অ্যাক্সেস যাচাই করুন৷

ভোক্তার ভিপিসি নেটওয়ার্ক থেকে, আমরা গ্রাহক এন্ডপয়েন্ট stargazer.cosmopup.net অ্যাক্সেস করে প্রকাশিত পরিষেবার সংযোগ পরীক্ষা করার জন্য একটি VM তৈরি করব

ক্লাউড শেলের ভিতরে ভোক্তা ভিপিসিতে পরীক্ষার উদাহরণ তৈরি করে।

gcloud compute instances create db1 \
    --zone=us-central1-a \
    --image-family=debian-10 \
    --image-project=debian-cloud \
    --subnet=db1-subnet \
    --no-address

IAP কে আপনার VM দৃষ্টান্তের সাথে সংযোগ করার অনুমতি দিতে, একটি ফায়ারওয়াল নিয়ম তৈরি করুন যা:

  • আপনি IAP ব্যবহার করে অ্যাক্সেসযোগ্য হতে চান এমন সমস্ত VM দৃষ্টান্তগুলিতে প্রযোজ্য।
  • IP পরিসর 35.235.240.0/20 থেকে ট্র্যাফিক প্রবেশের অনুমতি দেয়। এই পরিসরে সমস্ত আইপি ঠিকানা রয়েছে যা IAP TCP ফরওয়ার্ডিংয়ের জন্য ব্যবহার করে।

ক্লাউড শেলের ভিতরে, IAP ফায়ারওয়াল নিয়ম তৈরি করুন।

gcloud compute firewall-rules create ssh-iap-consumer \
    --network consumer-vpc \
    --allow tcp:22 \
    --source-ranges=35.235.240.0/20

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

gcloud compute ssh db1 --project=$projectname --zone=us-central1-a --tunnel-through-iap

প্রযোজক পরিষেবাতে একটি কার্ল যাচাইকরণ সংযোগ সম্পাদন করুন৷ ক্লাউড শেল প্রম্পটে ফিরে আসা VM থেকে একবার বৈধ হওয়া প্রস্থান

ক্লাউড শেলের ভিতরে আপনার কাস্টম ডোমেনের বিরুদ্ধে একটি কার্ল সঞ্চালন করুন, উদাহরণ স্টারগেজার।[custom-domain.com]। নীচের আউটপুটে, একটি কার্ল stargazer.cosmopup.net এর বিরুদ্ধে সঞ্চালিত হয়

user@db1:~$ curl -v stargazer.cosmopup.net
*   Trying 10.10.0.10...
* TCP_NODELAY set
* Expire in 200 ms for 4 (transfer 0x55d3aa8190f0)
* Connected to stargazer.cosmopup.net (10.10.0.10) port 80 (#0)
> GET / HTTP/1.1
> Host: stargazer.cosmopup.net
> User-Agent: curl/7.64.0
> Accept: */*
> 
< HTTP/1.1 200 OK
< date: Thu, 22 Dec 2022 00:16:25 GMT
< server: Apache/2.4.38 (Debian)
< last-modified: Wed, 21 Dec 2022 20:26:32 GMT
< etag: "1b-5f05c5e43a083"
< accept-ranges: bytes
< content-length: 27
< content-type: text/html
< via: 1.1 google
< 
Welcome to App-Server-1 !!

পরিষ্কার করার কাজগুলি শুরু করতে ক্লাউড শেল প্রম্পটে ফিরে আসা VM থেকে প্রস্থান করুন

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

ক্লাউড শেল থেকে, কোডল্যাব উপাদানগুলি মুছুন।

gcloud compute forwarding-rules delete stargazer --region=us-central1 --quiet

gcloud compute instances delete db1 --zone=us-central1-a --quiet 

gcloud compute addresses delete psc-consumer-ip-1 --region=us-central1 --quiet 

gcloud compute networks subnets delete consumer-ep-subnet db1-subnet --region=us-central1 --quiet 

gcloud compute firewall-rules delete ssh-iap-consumer --quiet 

gcloud compute networks delete consumer-vpc --quiet 

gcloud compute service-attachments delete published-service --region=us-central1 --quiet 

gcloud compute forwarding-rules delete l7-ilb-forwarding-rule --region=us-central1 --quiet 

gcloud compute target-http-proxies delete l7-ilb-proxy --region=us-central1 --quiet 
 
gcloud compute url-maps delete l7-ilb-map --region=us-central1 --quiet 
 
gcloud compute backend-services delete l7-ilb-backend-service --region=us-central1 --quiet
 
gcloud compute instance-groups unmanaged delete psc-instance-group --zone=us-central1-a --quiet
 
gcloud compute instances delete app-server-1 --zone=us-central1-a --quiet 
 
gcloud compute firewall-rules delete allow-to-ingress-nat-subnet fw-allow-health-check fw-allow-proxy-only-subnet --quiet 
 
gcloud compute addresses delete lb-ip --region=us-central1 --quiet 
 
gcloud compute networks subnets delete gce-subnet load-balancer-subnet psc-nat-subnet proxy-subnet-us-central --region=us-central1 --quiet 
 
gcloud compute routers delete cloud-router-for-nat --region=us-central1 --quiet 
 
gcloud compute networks delete producer-vpc --quiet 

12. অভিনন্দন

অভিনন্দন, আপনি সফলভাবে স্বয়ংক্রিয় DNS কনফিগারেশন সহ একটি ব্যক্তিগত পরিষেবা সংযোগ এন্ডপয়েন্ট কনফিগার এবং যাচাই করেছেন৷

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

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

8c2a10eb841f7b01.jpeg

এরপর কি?

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

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

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