১. ভূমিকা
ওয়েটেড লোড ব্যালান্সিং ব্যবহার করে, আপনি একটি HTTP হেলথ চেক দ্বারা রিপোর্ট করা ওয়েটের উপর ভিত্তি করে লোড ব্যালান্সারের ব্যাকএন্ড ইনস্ট্যান্সগুলোর মধ্যে ট্র্যাফিক বন্টন করার জন্য একটি নেটওয়ার্ক লোড ব্যালান্সার কনফিগার করতে পারেন।
ওয়েটেড লোড ব্যালান্সিং-এর জন্য আপনাকে নিম্নলিখিত দুটি বিষয়ই কনফিগার করতে হবে:
- আপনাকে অবশ্যই ব্যাকএন্ড সার্ভিসের লোকালিটি লোড ব্যালেন্সার পলিসি (localityLbPolicy) WEIGHTED_MAGLEV-এ সেট করতে হবে।
- আপনাকে অবশ্যই একটি HTTP/HTTP2/HTTPS হেলথ চেক সহ ব্যাকএন্ড পরিষেবাটি কনফিগার করতে হবে। প্রতিটি ব্যাকএন্ড ইনস্ট্যান্সের জন্য দশমিক উপস্থাপনায় ০ থেকে ১০০০ পর্যন্ত পূর্ণসংখ্যার মান সহ ওয়েট নির্দিষ্ট করতে, HTTP হেলথ চেক রেসপন্সগুলিতে অবশ্যই X-Load-Balancing-Endpoint-Weight নামক একটি কাস্টম HTTP রেসপন্স হেডার ফিল্ড থাকতে হবে।
আপনি যদি ওয়েটেড লোড ব্যালান্সিং ব্যবহার করে একাধিক ব্যাকএন্ড সার্ভিস-ভিত্তিক নেটওয়ার্ক লোড ব্যালান্সারের জন্য একই ইনস্ট্যান্স গ্রুপকে ব্যাকএন্ড হিসেবে ব্যবহার করেন, তাহলে ব্যাকএন্ড সার্ভিসের প্রতিটি হেলথ চেকের জন্য একটি অনন্য রিকোয়েস্ট-পাথ ব্যবহার করার পরামর্শ দেওয়া হয়। আরও তথ্যের জন্য, HTTP, HTTPS, এবং HTTP/2 হেলথ চেকের সফলতার মানদণ্ড দেখুন।
হেলথ-চেক পাস করতে এবং ব্যাকএন্ড ইনস্ট্যান্সটিকে সুস্থ হিসেবে গণ্য করার জন্য, HTTP হেলথ চেকের একটি HTTP 200 (OK) রেসপন্স রিটার্ন করা উচিত। এমন পরিস্থিতিতে যেখানে সমস্ত ব্যাকএন্ড ইনস্ট্যান্স তাদের হেলথ চেক পাস করে এবং X-Load-Balancing-Endpoint-Weight-এর ওয়েট শূন্য রিটার্ন করে, সেখানে লোড ব্যালেন্সার নতুন কানেকশনগুলোকে সুস্থ ব্যাকএন্ডগুলোর মধ্যে সমান ওয়েট দিয়ে বণ্টন করে। লোড ব্যালেন্সার অসুস্থ ব্যাকএন্ডগুলোর মধ্যেও নতুন কানেকশন বণ্টন করতে পারে। আরও তথ্যের জন্য, ট্র্যাফিক ডিস্ট্রিবিউশন দেখুন।
ওয়েটেড লোড ব্যালান্সিং-এর উদাহরণের জন্য, ব্যাকএন্ড নির্বাচন এবং সংযোগ ট্র্যাকিং দেখুন।
ওয়েটেড লোড ব্যালান্সিং নিম্নলিখিত পরিস্থিতিগুলিতে ব্যবহার করা যেতে পারে:
- যদি কিছু কানেকশন অন্যগুলোর চেয়ে বেশি ডেটা প্রসেস করে, অথবা কিছু কানেকশন অন্যগুলোর চেয়ে বেশি সময় ধরে চালু থাকে, তাহলে ব্যাকএন্ডের লোড বণ্টন অসম হয়ে যেতে পারে। প্রতি-ইনস্ট্যান্স ওয়েট কমিয়ে সংকেত দেওয়ার মাধ্যমে, উচ্চ লোডযুক্ত একটি ইনস্ট্যান্স নতুন কানেকশনের ক্ষেত্রে তার অংশ কমিয়ে আনতে পারে, এবং একই সাথে বিদ্যমান কানেকশনগুলোকে পরিষেবা দেওয়া চালিয়ে যেতে পারে।
- যদি কোনো ব্যাকএন্ড ওভারলোডেড হয়ে যায় এবং আরও কানেকশন বরাদ্দ করলে বিদ্যমান কানেকশনগুলো ভেঙে যাওয়ার আশঙ্কা থাকে, তবে সেই ব্যাকএন্ডগুলো নিজেদেরকে শূন্য ওয়েট (zero weight) প্রদান করে। শূন্য ওয়েট সংকেত দেওয়ার মাধ্যমে, একটি ব্যাকএন্ড ইনস্ট্যান্স নতুন কানেকশনগুলোকে পরিষেবা দেওয়া বন্ধ করে দেয়, কিন্তু বিদ্যমান কানেকশনগুলোকে পরিষেবা দেওয়া চালিয়ে যায়।
- যদি কোনো ব্যাকএন্ড রক্ষণাবেক্ষণের আগে বিদ্যমান সংযোগগুলো নিষ্ক্রিয় করে দেয়, তবে এটি নিজেকে শূন্য ওয়েট প্রদান করে। শূন্য ওয়েট সংকেত দেওয়ার মাধ্যমে, ব্যাকএন্ড ইনস্ট্যান্সটি নতুন সংযোগে পরিষেবা দেওয়া বন্ধ করে দেয়, কিন্তু বিদ্যমান সংযোগগুলোতে পরিষেবা দেওয়া অব্যাহত রাখে।
আপনি যা শিখবেন
- ওয়েটেড লোড ব্যালান্সিং ব্যবহার করে, একটি HTTP হেলথ চেক দ্বারা রিপোর্ট করা ওয়েটের উপর ভিত্তি করে লোড ব্যালান্সারের ব্যাকএন্ড ইনস্ট্যান্সগুলোর মধ্যে ট্র্যাফিক বন্টন করার জন্য কীভাবে একটি নেটওয়ার্ক লোড ব্যালান্সার কনফিগার করতে হয়।
স্ব-গতিতে পরিবেশ সেটআপ
- Google Cloud Console- এ সাইন-ইন করুন এবং একটি নতুন প্রজেক্ট তৈরি করুন অথবা বিদ্যমান কোনো প্রজেক্ট পুনরায় ব্যবহার করুন। যদি আপনার আগে থেকে Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তবে আপনাকে অবশ্যই একটি তৈরি করতে হবে।



- প্রজেক্টের নামটি হলো এই প্রজেক্টের অংশগ্রহণকারীদের প্রদর্শিত নাম। এটি একটি ক্যারেক্টার স্ট্রিং যা গুগল এপিআই ব্যবহার করে না। আপনি যেকোনো সময় এটি আপডেট করতে পারেন।
- প্রজেক্ট আইডি সমস্ত গুগল ক্লাউড প্রজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (একবার সেট করার পর এটি পরিবর্তন করা যায় না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত এটি কী তা নিয়ে আপনার মাথা ঘামানোর প্রয়োজন হয় না। বেশিরভাগ কোডল্যাবে, আপনাকে প্রজেক্ট আইডি উল্লেখ করতে হবে (এটি সাধারণত
PROJECT_IDহিসাবে চিহ্নিত করা হয়)। তৈরি করা আইডিটি আপনার পছন্দ না হলে, আপনি এলোমেলোভাবে আরেকটি তৈরি করতে পারেন। বিকল্পভাবে, আপনি নিজের আইডি দিয়ে চেষ্টা করে দেখতে পারেন যে সেটি উপলব্ধ আছে কিনা। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রজেক্টের পুরো সময়কাল জুড়ে এটি অপরিবর্তিত থাকবে। - আপনার অবগতির জন্য জানাচ্ছি যে, তৃতীয় একটি ভ্যালু রয়েছে, যা হলো প্রজেক্ট নাম্বার এবং কিছু এপিআই এটি ব্যবহার করে। ডকুমেন্টেশনে এই তিনটি ভ্যালু সম্পর্কে আরও বিস্তারিত জানুন।
- এরপর, ক্লাউড রিসোর্স/এপিআই ব্যবহার করার জন্য আপনাকে ক্লাউড কনসোলে বিলিং চালু করতে হবে। এই কোডল্যাবটি সম্পন্ন করতে খুব বেশি খরচ হওয়ার কথা নয়, এমনকি আদৌ কোনো খরচ নাও হতে পারে। এই টিউটোরিয়ালের পর যাতে কোনো বিলিং না হয়, সেজন্য রিসোর্সগুলো বন্ধ করতে আপনি আপনার তৈরি করা রিসোর্সগুলো অথবা পুরো প্রজেক্টটিই ডিলিট করে দিতে পারেন। গুগল ক্লাউডের নতুন ব্যবহারকারীরা ৩০০ মার্কিন ডলারের ফ্রি ট্রায়াল প্রোগ্রামের জন্য যোগ্য।
ক্লাউড শেল শুরু করুন
যদিও গুগল ক্লাউড আপনার ল্যাপটপ থেকে দূরবর্তীভাবে পরিচালনা করা যায়, এই কোডল্যাবে আপনি গুগল ক্লাউড শেল ব্যবহার করবেন, যা ক্লাউডে চলমান একটি কমান্ড লাইন পরিবেশ।
গুগল ক্লাউড কনসোল থেকে, উপরের ডানদিকের টুলবারে থাকা ক্লাউড শেল আইকনটিতে ক্লিক করুন:

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

এই ভার্চুয়াল মেশিনটিতে আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুলস লোড করা আছে। এটি একটি স্থায়ী ৫ জিবি হোম ডিরেক্টরি প্রদান করে এবং গুগল ক্লাউডে চলে, যা নেটওয়ার্ক পারফরম্যান্স ও অথেনটিকেশনকে ব্যাপকভাবে উন্নত করে। এই কোডল্যাবে আপনার সমস্ত কাজ একটি ব্রাউজারের মধ্যেই করা যাবে। আপনাকে কিছুই ইনস্টল করতে হবে না।
২. কনফিগারেশন শুরু করুন
কোডল্যাবে একটিমাত্র প্রজেক্ট প্রয়োজন।
এই টিউটোরিয়ালে, আপনি তিনটি ভিএম ইনস্ট্যান্স নিয়ে একটি ইনস্ট্যান্স গ্রুপ তৈরি করবেন এবং প্রতিটি ইনস্ট্যান্সের জন্য ওয়েট নির্ধারণ করবেন। ব্যাকএন্ড ইনস্ট্যান্সের ওয়েট রিপোর্ট করার জন্য আপনি একটি HTTP হেলথ চেক তৈরি করবেন। ব্যাকএন্ড সার্ভিসে ওয়েটেড নেটওয়ার্ক লোড ব্যালেন্সার সক্রিয় করা হয়েছে এবং লোকালিটি লোড ব্যালেন্সার পলিসি হিসেবে WEIGHTED_MAGLEV সেট করা আছে।
শুরু করার আগে
- ব্যাকএন্ড পরিষেবা-ভিত্তিক বাহ্যিক নেটওয়ার্ক লোড ব্যালান্সিং-এর সংক্ষিপ্ত বিবরণটি পড়ুন।
- Google Cloud CLI ইনস্টল করুন। টুলটির একটি সম্পূর্ণ বিবরণের জন্য, gcloud CLI overview দেখুন। আপনি API এবং gcloud CLI reference- এ লোড ব্যালেন্সিং সম্পর্কিত কমান্ডগুলি খুঁজে পেতে পারেন। আপনি যদি আগে Google Cloud CLI না চালিয়ে থাকেন, তাহলে প্রথমে প্রমাণীকরণের জন্য gcloud init চালান।
- কম্পিউট এপিআই সক্রিয় করুন।
gcloud services enable compute.googleapis.com
দ্রষ্টব্য: আপনি গুগল ক্লাউড কনসোল ব্যবহার করে লোকালিটি লোড ব্যালেন্সার পলিসি কনফিগার করতে এবং ভিএম ইনস্ট্যান্সগুলোতে ওয়েট নির্ধারণ করতে পারবেন না। এর পরিবর্তে গুগল ক্লাউড সিএলআই (CLI) ব্যবহার করুন।
VPC নেটওয়ার্ক, সাবনেট এবং ফায়ারওয়াল নিয়ম তৈরি করুন
আপনার লোড ব্যালান্সারের ব্যাকএন্ড ভিএমগুলিতে সংযোগের অনুমতি দেওয়ার জন্য একটি ভিপিসি নেটওয়ার্ক, সাবনেট এবং ইনগ্রেস অ্যালাউ ফায়ারওয়াল নিয়ম তৈরি করুন।
- একটি VPC নেটওয়ার্ক এবং সাবনেট তৈরি করুন। ক. VPC নেটওয়ার্ক তৈরি করতে, `
gcloud compute networks createকমান্ডটি চালান:
gcloud compute networks create NETWORK_NAME --subnet-mode custom
খ. এই উদাহরণে, সাবনেটটির প্রাথমিক IPv4 অ্যাড্রেস রেঞ্জ হলো 10.10.0.0/24 ।
সাবনেট তৈরি করতে, gcloud compute networks subnets create কমান্ডটি চালান:
gcloud compute networks subnets create SUBNET_NAME \ --network=NETWORK_NAME \ --range=10.10.0.0/24 \ --region=us-central1
নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
NETWORK_NAME: যে VPC নেটওয়ার্কটি তৈরি করতে হবে তার নাম। -
SUBNET_NAME: যে সাবনেটওয়ার্কটি তৈরি করতে হবে তার নাম।
- ডেস্টিনেশন TCP পোর্ট ৮০ এবং ৪৪৩-এ পাঠানো প্যাকেটগুলিকে ব্যাকএন্ড VM-গুলিতে ডেলিভার করার অনুমতি দিতে একটি ইনগ্রেস অ্যালাউ ফায়ারওয়াল রুল তৈরি করুন। এই উদাহরণে, ফায়ারওয়াল রুলটি যেকোনো সোর্স আইপি অ্যাড্রেস থেকে কানেকশনের অনুমতি দেয়। ফায়ারওয়াল রুলটি
network-lb-tagনেটওয়ার্ক ট্যাগযুক্ত VM-গুলির জন্য প্রযোজ্য। ফায়ারওয়াল রুলটি তৈরি করতে,gcloud compute firewall-rules createকমান্ডটি চালান:
gcloud compute firewall-rules create FIREWALL_RULE_NAME \ --direction=INGRESS \ --priority=1000 \ --network=NETWORK_NAME \ --action=ALLOW \ --rules=tcp:80,tcp:443 \ --source-ranges=0.0.0.0/0 \ --target-tags=network-lb-tag
যে ফায়ারওয়াল রুলটি তৈরি করতে চান, তার নাম দিয়ে FIREWALL_RULE_NAME প্রতিস্থাপন করুন।
ভিএম ইনস্ট্যান্স তৈরি করুন এবং ওয়েট নির্ধারণ করুন
তিনটি ভিএম ইনস্ট্যান্স তৈরি করুন এবং ওয়েট নির্ধারণ করুন:
- HTTP রেসপন্সের সাথে X-Load-Balancing-Endpoint-Weight হেডারে ওয়েটগুলো রিটার্ন করার জন্য তিনটি ব্যাকএন্ড VM ইনস্ট্যান্স কনফিগার করুন। এই টিউটোরিয়ালের জন্য, আপনি একটি ব্যাকএন্ড ইনস্ট্যান্সকে শূন্য ওয়েট, দ্বিতীয়টিকে ১০০ ওয়েট এবং তৃতীয়টিকে ৯০০ ওয়েট রিপোর্ট করার জন্য কনফিগার করবেন। ইনস্ট্যান্সগুলো তৈরি করতে,
gcloud compute instances createকমান্ডটি চালান:
gcloud compute instances create instance-0 \ --zone=us-central1-a \ --tags=network-lb-tag \ --image-family=debian-10 \ --image-project=debian-cloud \ --subnet= SUBNET_NAME \ --metadata=load-balancing-weight=0,startup-script='#! /bin/bash apt-get update apt-get install apache2 -y ln -sr /etc/apache2/mods-available/headers.load /etc/apache2/mods-enabled/headers.load vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://169.254.169.254/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html lb_weight="$(curl -H "Metadata-Flavor:Google" \ http://169.254.169.254/computeMetadata/v1/instance/attributes/load-balancing-weight)" echo "Header set X-Load-Balancing-Endpoint-Weight \"$lb_weight\"" | \ tee /etc/apache2/conf-enabled/headers.conf systemctl restart apache2'
gcloud compute instances create instance-100 \ --zone=us-central1-a \ --tags=network-lb-tag \ --image-family=debian-10 \ --image-project=debian-cloud \ --subnet=SUBNET_NAME \ --metadata=load-balancing-weight=100,startup-script='#! /bin/bash apt-get update apt-get install apache2 -y ln -sr /etc/apache2/mods-available/headers.load /etc/apache2/mods-enabled/headers.load vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://169.254.169.254/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html lb_weight="$(curl -H "Metadata-Flavor:Google" \ http://169.254.169.254/computeMetadata/v1/instance/attributes/load-balancing-weight)" echo "Header set X-Load-Balancing-Endpoint-Weight \"$lb_weight\"" | \ tee /etc/apache2/conf-enabled/headers.conf systemctl restart apache2'
gcloud compute instances create instance-900 \
--zone=us-central1-a \
--tags=network-lb-tag \
--image-family=debian-10 \
--image-project=debian-cloud \
--subnet=
SUBNET_NAME
\
--metadata=load-balancing-weight=900,startup-script='#! /bin/bash
apt-get update
apt-get install apache2 -y
ln -sr /etc/apache2/mods-available/headers.load /etc/apache2/mods-enabled/headers.load
vm_hostname="$(curl -H "Metadata-Flavor:Google" \
http://169.254.169.254/computeMetadata/v1/instance/name)"
echo "Page served from: $vm_hostname" | \
tee /var/www/html/index.html
lb_weight="$(curl -H "Metadata-Flavor:Google" \
http://169.254.169.254/computeMetadata/v1/instance/attributes/load-balancing-weight)"
echo "Header set X-Load-Balancing-Endpoint-Weight \"$lb_weight\"" | \
tee /etc/apache2/conf-enabled/headers.conf
systemctl restart apache2'
একটি ইনস্ট্যান্স গ্রুপ তৈরি করুন
এই টিউটোরিয়ালে, তিনটি ভিএম ইনস্ট্যান্স ( instance-0, instance-100, and instance-900 ) সম্বলিত একটি আনম্যানেজড ইনস্ট্যান্স গ্রুপ তৈরি করার নির্দেশনা দেওয়া হয়েছে।
- ইনস্ট্যান্স গ্রুপ তৈরি করতে,
gcloud compute instance-groups unmanaged createকমান্ডটি চালান:
gcloud compute instance-groups unmanaged create INSTANCE_GROUP --zone=us-central1-a
gcloud compute instance-groups unmanaged add-instances INSTANCE_GROUP \ --zone=us-central1-a \ --instances=instance-0,instance-100,instance-900
যে ইনস্ট্যান্স গ্রুপটি তৈরি করতে চান, তার নাম দিয়ে INSTANCE_GROUP প্রতিস্থাপন করুন।
একটি HTTP স্বাস্থ্য পরীক্ষা তৈরি করুন
এই টিউটোরিয়ালে, ব্যাকএন্ড ভিএম-এর ওয়েট ধারণকারী HTTP রেসপন্সটি পড়ার জন্য একটি HTTP হেলথ চেক তৈরি করার নির্দেশনা দেওয়া হয়েছে।
- HTTP হেলথ চেক তৈরি করতে,
gcloud compute health-checks createকমান্ডটি চালান:
gcloud compute health-checks create http HTTP_HEALTH_CHECK_NAME \ --region=us-central1
যে HTTP হেলথ চেকটি তৈরি করতে চান, তার নাম দিয়ে HTTP_HEALTH_CHECK_NAME প্রতিস্থাপন করুন।
একটি ব্যাকএন্ড পরিষেবা তৈরি করুন
নিম্নলিখিত উদাহরণটি ওয়েটেড লোড ব্যালান্সিং ব্যবহার করার জন্য কনফিগার করা একটি আঞ্চলিক এক্সটার্নাল ব্যাকএন্ড সার্ভিস তৈরি করার নির্দেশাবলী প্রদান করে।
- HTTP হেলথ চেক সহ একটি ব্যাকএন্ড সার্ভিস তৈরি করুন এবং লোকালিটি লোড ব্যালেন্সার পলিসি WEIGHTED_MAGLEV-এ সেট করুন।
- ব্যাকএন্ড সার্ভিস তৈরি করতে,
gcloud compute backend-services createকমান্ডটি চালান:
gcloud compute backend-services create BACKEND_SERVICE_NAME \ --load-balancing-scheme=external \ --protocol=tcp \ --region=us-central1 \ --health-checks=HTTP_HEALTH_CHECK_NAME \ --health-checks-region=us-central1 \ --locality-lb-policy=WEIGHTED_MAGLEV
- যে ব্যাকএন্ড সার্ভিসটি তৈরি করতে চান, তার নাম দিয়ে
BACKEND_SERVICE_NAMEপ্রতিস্থাপন করুন।
- ইনস্ট্যান্স গ্রুপটিকে ব্যাকএন্ড সার্ভিসে যুক্ত করুন।
- ইনস্ট্যান্স গ্রুপ যোগ করতে,
gcloud compute backend-services add-backendকমান্ডটি চালান:
gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \ --instance-group=INSTANCE_GROUP \ --instance-group-zone=us-central1-a \ --region=us-central1
- লোড ব্যালান্সারের জন্য একটি আঞ্চলিক এক্সটার্নাল আইপি অ্যাড্রেস সংরক্ষণ করুন।
- এক বা একাধিক আইপি অ্যাড্রেস রিজার্ভ করতে,
gcloud compute addresses createকমান্ডটি চালান:
gcloud compute addresses create ADDRESS_NAME \ --region us-central1
যে আইপি অ্যাড্রেসটি তৈরি করতে চান, তার নাম দিয়ে ADDRESS_NAME প্রতিস্থাপন করুন। ফলাফল দেখতে compute addresses describe কমান্ডটি ব্যবহার করুন। সংরক্ষিত স্ট্যাটিক এক্সটার্নাল আইপি অ্যাড্রেসটি (' IP_ADDRESS' ) লক্ষ্য করুন।
gcloud compute addresses describe ADDRESS_NAME
- সংরক্ষিত আঞ্চলিক এক্সটার্নাল আইপি অ্যাড্রেস 'IP_ADDRESS' ব্যবহার করে একটি ফরওয়ার্ডিং রুল তৈরি করুন। ফরওয়ার্ডিং রুলটিকে ব্যাকএন্ড সার্ভিসের সাথে সংযুক্ত করুন।
- ফরওয়ার্ডিং রুল তৈরি করতে,
gcloud compute forwarding-rules createকমান্ডটি চালান:
gcloud compute forwarding-rules create FORWARDING_RULE \ --region=us-central1 \ --ports=80 \ --address=IP_ADDRESS \ --backend-service=BACKEND_SERVICE_NAME
- নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
FORWARDING_RULE: যে ফরওয়ার্ডিং রুলটি তৈরি করতে হবে তার নাম।IP_ADDRESS:ইনস্ট্যান্সটিতে বরাদ্দ করার জন্য আইপি অ্যাড্রেস। সংরক্ষিত স্ট্যাটিক এক্সটার্নাল আইপি অ্যাড্রেসটি ব্যবহার করুন, অ্যাড্রেসের নামটি নয়।
ব্যাকএন্ড সার্ভিস এপিআই ব্যবহার করে ব্যাকএন্ড ওয়েট যাচাই করুন
নিশ্চিত করুন যে ব্যাকএন্ড ওয়েটগুলো HTTP হেলথ চেকে সঠিকভাবে রিপোর্ট করা হচ্ছে।
- কোনো ব্যাকএন্ড সার্ভিস থেকে ব্যাকএন্ড ওয়েট (হেলথ স্ট্যাটাস সহ) পেতে,
gcloud compute backend-services get-healthকমান্ডটি চালান:
gcloud compute backend-services get-health HTTP_HEALTH_CHECK_NAME \ --region=us-central1
আউটপুটটি নিম্নলিখিতের মতো হওয়া উচিত:
backend: https://www.googleapis.com/compute/projects/project-name/{project}/zones/us-central1-a/instanceGroups/{instance-group-name}
status:
healthStatus:
- forwardingRule: https://www.googleapis.com/compute/projects/{project}/regions/us-central1/forwardingRules/{firewall-rule-name}
forwardingRuleIp: 34.135.46.66
healthState: HEALTHY
instance: https://www.googleapis.com/compute/projects/{project}/zones/us-central1-a/instances/instance-0
ipAddress: 10.10.0.5
port: 80
weight: '0'
- forwardingRule: https://www.googleapis.com/compute/projects/{project}/regions/us-central1/forwardingRules/{firewall-rule-name}
forwardingRuleIp: 34.135.46.66
healthState: HEALTHY
instance: https://www.googleapis.com/compute/projects/{project}/zones/us-central1-a/instances/instance-100
ipAddress: 10.10.0.6
port: 80
weight: '100'
- forwardingRule: https://www.googleapis.com/compute/projects/{project}/regions/us-central1/forwardingRules/{firewall-rule-name}
forwardingRuleIp: 34.135.46.66
healthState: HEALTHY
instance: https://www.googleapis.com/compute/projects/{project}/zones/us-central1-a/instances/instance-900
ipAddress: 10.10.0.7
port: 80
weight: '900'
kind: compute#backendServiceGroupHealth