1. ভূমিকা
এই কোডল্যাবে আপনি একটি অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার ব্যবহার করে H-VPN এর উপর একটি অন-প্রিমিসেস পোস্টগ্রেস ডাটাবেসের সাথে একটি দক্ষিণমুখী সংযোগ সম্পাদন করবেন এবং একটি পরিষেবা গ্রাহক হিসাবে Looker PSC থেকে আহ্বান করা হাইব্রিড নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপ।
প্রাইভেট সার্ভিস কানেক্ট হল Google ক্লাউড নেটওয়ার্কিং এর একটি ক্ষমতা যা গ্রাহকদের তাদের VPC নেটওয়ার্কের ভিতর থেকে ব্যক্তিগতভাবে পরিচালিত পরিষেবাগুলি অ্যাক্সেস করতে দেয়। একইভাবে, এটি পরিচালিত পরিষেবা প্রযোজকদের তাদের নিজস্ব আলাদা ভিপিসি নেটওয়ার্কে এই পরিষেবাগুলি হোস্ট করতে এবং তাদের গ্রাহকদের একটি ব্যক্তিগত সংযোগ অফার করার অনুমতি দেয়। উদাহরণ স্বরূপ, আপনি যখন লুকার অ্যাক্সেস করতে প্রাইভেট সার্ভিস কানেক্ট ব্যবহার করেন, তখন আপনিই পরিষেবার ভোক্তা এবং Google হল পরিষেবা প্রযোজক, যেমন চিত্র 1-এ হাইলাইট করা হয়েছে৷
চিত্র 1।
সাউথবাউন্ড অ্যাক্সেস, রিভার্স পিএসসি নামেও পরিচিত, ভোক্তাকে প্রযোজক হিসাবে একটি প্রকাশিত পরিষেবা তৈরি করতে সক্ষম করে যাতে ভিপিসি-তে, ম্যানেজড পরিষেবা এবং হাইব্রিডগুলিতে লুকার অ্যাক্সেসের অনুমতি দেওয়া যায়৷ সাউথবাউন্ড সংযোগগুলি যে কোনও অঞ্চলে স্থাপন করা যেতে পারে, যেখানে লুকার পিএসসি মোতায়েন করা হয়েছে তা নির্বিশেষে, চিত্র 2-এ হাইলাইট করা হয়েছে৷
চিত্র 2।
আপনি কি শিখবেন
- নেটওয়ার্ক প্রয়োজনীয়তা
- একটি ব্যক্তিগত পরিষেবা সংযোগ প্রযোজক পরিষেবা তৈরি করুন৷
- লুকারে একটি প্রাইভেট সার্ভিস কানেক্ট এন্ডপয়েন্ট তৈরি করুন
- একটি টেস্ট সংযোগ ব্যবহার করে লুকার থেকে অন-প্রিমিসেস পোস্টগ্রেস ডাটাবেসের সাথে সংযোগ স্থাপন করুন
আপনি কি প্রয়োজন হবে
- মালিকের অনুমতি সহ Google ক্লাউড প্রকল্প
- বিদ্যমান লুকার পিএসসি উদাহরণ
2. আপনি কি তৈরি করবেন
অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার এবং Private Service Connect (PSC) এর মাধ্যমে একটি পরিষেবা হিসাবে প্রকাশিত হাইব্রিড NEG স্থাপন করতে আপনি একটি প্রযোজক নেটওয়ার্ক, looker-psc-demo প্রতিষ্ঠা করবেন। একটি অন-প্রিমিস ডাটাবেস প্রদর্শন করতে, আপনি HA-VPN ব্যবহার করে looker-psc-demo VPC এর সাথে সংযুক্ত একটি অন-প্রিম-ডেমো ভিপিসি স্থাপন করবেন।
আপনি প্রযোজক পরিষেবাতে বৈধতা অ্যাক্সেসের জন্য নিম্নলিখিত ক্রিয়াগুলি সম্পাদন করবেন:
- প্রডিউসার সার্ভিস অ্যাটাচমেন্টের সাথে যুক্ত লুকারে একটি PSC এন্ডপয়েন্ট তৈরি করুন
- অন-প্রিমিসেস পোস্টগ্রেস ডাটাবেসের সাথে সংযোগ বৈধতা সম্পাদন করতে লুকার কনসোল ব্যবহার করুন
3. নেটওয়ার্ক প্রয়োজনীয়তা
নীচে প্রযোজক নেটওয়ার্কের জন্য নেটওয়ার্ক প্রয়োজনীয়তাগুলির ভাঙ্গন রয়েছে, এই কোডল্যাবের ভোক্তা হল লুকার পিএসসি উদাহরণ৷
উপাদান | বর্ণনা |
ভিপিসি (লুকার-পিএসসি-ডেমো) | কাস্টম মোড ভিপিসি |
ভিপিসি (অন-প্রিম-ডেমো) | কাস্টম মোড ভিপিসি |
PSC NAT সাবনেট | ভোক্তা ভিপিসি নেটওয়ার্কের প্যাকেটগুলি উৎস NAT (SNAT) ব্যবহার করে অনুবাদ করা হয় যাতে তাদের মূল উৎস আইপি ঠিকানাগুলি প্রযোজকের ভিপিসি নেটওয়ার্কে NAT সাবনেট থেকে উৎস IP ঠিকানায় রূপান্তরিত হয়। |
পিএসসি ফরওয়ার্ডিং নিয়ম সাবনেট | আঞ্চলিক অভ্যন্তরীণ TCP প্রক্সি লোড ব্যালেন্সারের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয় |
PSC NEG সাবনেট | নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয় |
প্রক্সি শুধুমাত্র সাবনেট | লোড ব্যালেন্সারের প্রতিটি প্রক্সিকে একটি অভ্যন্তরীণ IP ঠিকানা বরাদ্দ করা হয়। একটি প্রক্সি থেকে ব্যাকএন্ড VM বা এন্ডপয়েন্টে পাঠানো প্যাকেটগুলিতে শুধুমাত্র প্রক্সি সাবনেট থেকে একটি উৎস আইপি ঠিকানা থাকে। |
হাইব্রিড NEG | অন-প্রিমিসেস এবং অন্যান্য ক্লাউড পরিষেবাগুলি অন্য যে কোনও ক্লাউড লোড ব্যালেন্সিং ব্যাকএন্ডের মতোই বিবেচিত হয়। মূল পার্থক্য হল আপনি এই ব্যাকএন্ডগুলির শেষ পয়েন্টগুলি কনফিগার করতে একটি হাইব্রিড সংযোগ NEG ব্যবহার করেন৷ শেষ পয়েন্টগুলি অবশ্যই বৈধ আইপি:পোর্ট সমন্বয় হতে হবে যেখানে আপনার লোড ব্যালেন্সার হাইব্রিড সংযোগ পণ্য যেমন ক্লাউড ভিপিএন বা ক্লাউড ইন্টারকানেক্ট ব্যবহার করে পৌঁছাতে পারে। |
ব্যাকএন্ড পরিষেবা | একটি ব্যাকএন্ড পরিষেবা আপনার লোড ব্যালেন্সার এবং আপনার ব্যাকএন্ড সংস্থানগুলির মধ্যে একটি সেতু হিসাবে কাজ করে। টিউটোরিয়ালে, ব্যাকএন্ড পরিষেবা হাইব্রিড এনইজি-র সাথে যুক্ত। |
ক্লাউড রাউটার |
|
HA-VPN | গুগল ক্লাউড ভিপিসি নেটওয়ার্কের মধ্যে HA VPN । এই টপোলজিতে, আপনি প্রতিটি নেটওয়ার্কে একটি HA VPN গেটওয়ে ব্যবহার করে দুটি Google ক্লাউড VPC নেটওয়ার্ক সংযোগ করতে পারেন। ভিপিসি নেটওয়ার্ক একই অঞ্চলে বা একাধিক অঞ্চলে হতে পারে। |
মেঘ NAT | ইন্টারনেট বহির্গমনের জন্য অন-প্রিম-ডেমো ভিপিসি দ্বারা ব্যবহৃত |
4. কোডল্যাব টপোলজি
5. সেটআপ এবং প্রয়োজনীয়তা
স্ব-গতিসম্পন্ন পরিবেশ সেটআপ
- Google ক্লাউড কনসোলে সাইন-ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ আপনার যদি ইতিমধ্যেই একটি Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে।
- প্রকল্পের নাম এই প্রকল্পের অংশগ্রহণকারীদের জন্য প্রদর্শনের নাম। এটি একটি অক্ষর স্ট্রিং যা Google API দ্বারা ব্যবহৃত হয় না। আপনি সবসময় এটি আপডেট করতে পারেন.
- প্রোজেক্ট আইডি সমস্ত Google ক্লাউড প্রোজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (সেট করার পরে পরিবর্তন করা যাবে না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত আপনি এটা কি যত্ন না. বেশিরভাগ কোডল্যাবে, আপনাকে আপনার প্রকল্প আইডি উল্লেখ করতে হবে (সাধারণত
PROJECT_ID
হিসাবে চিহ্নিত)। আপনি যদি জেনারেট করা আইডি পছন্দ না করেন, তাহলে আপনি অন্য একটি এলোমেলো আইডি তৈরি করতে পারেন। বিকল্পভাবে, আপনি নিজের চেষ্টা করতে পারেন, এবং এটি উপলব্ধ কিনা দেখতে পারেন। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রকল্পের সময়কালের জন্য থাকে। - আপনার তথ্যের জন্য, একটি তৃতীয় মান আছে, একটি প্রকল্প নম্বর , যা কিছু API ব্যবহার করে। ডকুমেন্টেশনে এই তিনটি মান সম্পর্কে আরও জানুন।
- এরপরে, ক্লাউড রিসোর্স/এপিআই ব্যবহার করতে আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে। এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ হবে না, যদি কিছু হয়। এই টিউটোরিয়ালের বাইরে বিলিং এড়াতে সংস্থানগুলি বন্ধ করতে, আপনি আপনার তৈরি করা সংস্থানগুলি মুছতে বা প্রকল্প মুছতে পারেন। নতুন Google ক্লাউড ব্যবহারকারীরা $300 USD বিনামূল্যের ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷
ক্লাউড শেল শুরু করুন
যদিও Google ক্লাউড আপনার ল্যাপটপ থেকে দূরবর্তীভাবে পরিচালিত হতে পারে, এই কোডল্যাবে আপনি Google ক্লাউড শেল ব্যবহার করবেন, একটি কমান্ড লাইন পরিবেশ যা ক্লাউডে চলছে।
Google ক্লাউড কনসোল থেকে, উপরের ডানদিকে টুলবারে ক্লাউড শেল আইকনে ক্লিক করুন:
পরিবেশের ব্যবস্থা করতে এবং সংযোগ করতে এটি শুধুমাত্র কয়েক মুহূর্ত নিতে হবে। এটি সমাপ্ত হলে, আপনি এই মত কিছু দেখতে হবে:
এই ভার্চুয়াল মেশিনটি আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুল দিয়ে লোড করা হয়েছে। এটি একটি ক্রমাগত 5GB হোম ডিরেক্টরি অফার করে এবং Google ক্লাউডে চলে, যা নেটওয়ার্ক কর্মক্ষমতা এবং প্রমাণীকরণকে ব্যাপকভাবে উন্নত করে। এই কোডল্যাবে আপনার সমস্ত কাজ একটি ব্রাউজারে করা যেতে পারে। আপনার কিছু ইন্সটল করার দরকার নেই।
6. আপনি শুরু করার আগে
এপিআই সক্ষম করুন
ক্লাউড শেলের ভিতরে, নিশ্চিত করুন যে আপনার প্রকল্প আইডি সেট আপ করা আছে:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
zone=[YOUR-ZONE]
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
লোড ব্যালেন্সারের আইপি ঠিকানা সংরক্ষণ করুন
ক্লাউড শেলের ভিতরে, লোড ব্যালেন্সারের জন্য একটি অভ্যন্তরীণ আইপি ঠিকানা সংরক্ষণ করুন:
gcloud compute addresses create hybrid-neg-lb-ip \
--region=$region \
--subnet=producer-psc-fr-subnet
ক্লাউড শেলের ভিতরে, সংরক্ষিত আইপি ঠিকানা দেখুন।
gcloud compute addresses describe hybrid-neg-lb-ip \
--region=$region | grep -i address:
উদাহরণ আউটপুট:
gcloud compute addresses describe hybrid-neg-lb-ip --region=$region | grep -i address:
address: 172.16.20.2
হাইব্রিড NEG সেট আপ করুন
একটি হাইব্রিড NEG তৈরি করুন এবং –নেটওয়ার্ক-এন্ডপয়েন্ট-টাইপ NON_GCP_PRIVATE_IP_PORT-এ সেট করুন
ক্লাউড শেলের ভিতরে, অন-প্রিম ডাটাবেস অ্যাক্সেস করতে ব্যবহৃত একটি হাইব্রিড NEG তৈরি করুন:
gcloud compute network-endpoint-groups create on-prem-hybrid-neg \
--network-endpoint-type=NON_GCP_PRIVATE_IP_PORT \
--network=looker-psc-demo \
--zone=$zone
ক্লাউড শেলের ভিতরে, আইপি দিয়ে হাইব্রিড NEG আপডেট করুন: অন-প্রিম ডাটাবেসের পোর্ট, 192.168.10.4 এবং পোর্ট 5432, টিউটোরিয়ালের পরবর্তী ধাপে তৈরি করা হয়েছে:
gcloud compute network-endpoint-groups update on-prem-hybrid-neg \
--add-endpoint=ip=192.168.10.4,port=5432 \
--zone=$zone
একটি আঞ্চলিক স্বাস্থ্য পরীক্ষা তৈরি করুন
ক্লাউড শেলের ভিতরে, একটি স্বাস্থ্য-পরীক্ষা তৈরি করুন যা অন-প্রিম ডাটাবেস পোর্ট, 5432 অনুসন্ধান করে:
gcloud compute health-checks create tcp on-prem-5432-healthcheck \
--region=$region \
--port=5432
নেটওয়ার্ক ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়ম তৈরি করুন
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
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 --region=$region --load-balancing-scheme=INTERNAL_MANAGED --protocol=TCP --region=$region --health-checks=on-prem-5432-healthcheck --health-checks-region=$region
ক্লাউড শেলের ভিতরে, ব্যাকএন্ড পরিষেবাতে হাইব্রিড NEG ব্যাকএন্ড যোগ করুন:
gcloud compute backend-services add-backend producer-backend-svc --network-endpoint-group=on-prem-hybrid-neg --network-endpoint-group-zone=$zone --balancing-mode=CONNECTION --max-connections=100 --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-hybrid-neg-fr \
--load-balancing-scheme=INTERNAL_MANAGED \
--network-tier=PREMIUM \
--network=looker-psc-demo \
--subnet=producer-psc-fr-subnet \
--address=hybrid-neg-lb-ip \
--target-tcp-proxy=producer-lb-tcp-proxy \
--target-tcp-proxy-region=$region \
--region=$region \
--ports=5432
সার্ভিস অ্যাটাচমেন্ট তৈরি করুন
ক্লাউড শেলের ভিতরে, পরিষেবা সংযুক্তি তৈরি করুন, onpremdatabase1-svc-attachment:
gcloud compute service-attachments create onpremdatabase1-svc-attachment --region=$region --producer-forwarding-rule=producer-hybrid-neg-fr --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=producer-psc-nat-subnet
এরপরে, লুকারে PSC এন্ডপয়েন্ট কনফিগার করার জন্য প্রোজেক্ট দিয়ে শুরু করে সেল্ফলিঙ্ক URI-তে তালিকাভুক্ত পরিষেবা সংযুক্তিটি পান এবং নোট করুন।
সেলফলিঙ্ক: প্রকল্প/<your-project-id>/regions/<your-region>/serviceAttachments/onpremdatabase1-svc-attachment
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute service-attachments describe onpremdatabase1-svc-attachment --region=$region
প্রত্যাশিত আউটপুট উদাহরণ:
connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-09-01T16:07:51.600-07:00'
description: ''
enableProxyProtocol: false
fingerprint: cFt9rERR1iE=
id: '2549689544315850024'
kind: compute#serviceAttachment
name: onpremdatabase1-svc-attachment
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$project/regions/$region/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
high: '19348441121424360'
low: '2549689544315850024'
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/onpremdatabase1-svc-attachment
targetService: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-hybrid-neg-fr
ক্লাউড কনসোলে, নেভিগেট করুন:
নেটওয়ার্ক পরিষেবা → ব্যক্তিগত পরিষেবা সংযোগ → প্রকাশিত পরিষেবা৷
9. লুকারে একটি PSC এন্ডপয়েন্ট সংযোগ স্থাপন করুন
নিম্নলিখিত বিভাগে, আপনি একটি একক ডোমেনের জন্য ক্লাউড শেল-এ –psc-সার্ভিস-অ্যাটাচমেন্ট পতাকা ব্যবহারের মাধ্যমে লুকার কোর PSC-এর সাথে প্রযোজক পরিষেবা সংযুক্তি সংযুক্ত করবেন৷
ক্লাউড শেলের ভিতরে, আপনার পরিবেশের সাথে মেলে নিম্নলিখিত পরামিতিগুলি আপডেট করে psc অ্যাসোসিয়েশন তৈরি করুন:
- INSTANCE_NAME: আপনার লুকারের নাম (Google ক্লাউড কোর) উদাহরণ।
- DOMAIN_1: onprem.database1.com
- SERVICE_ATTACHMENT_1: পরিষেবা সংযুক্তি তৈরি করার সময় URI ক্যাপচার করা হয়েছে, onpremdatabase1-svc-সংযুক্তি
- অঞ্চল: যে অঞ্চলে আপনার লুকার (গুগল ক্লাউড কোর) উদাহরণ হোস্ট করা হয়েছে৷
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
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=onprem.database1.com,attachment=projects/$project/regions/$region/serviceAttachments/onpremdatabase1-svc-attachment --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": "looker.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": "onprem.database1.com",
"targetServiceAttachmentUri": "projects/$project/regions/$region/serviceAttachments/onpremdatabase1-svc-attachment"
}
]
},
"pscEnabled": true,
"state": "ACTIVE",
"updateTime": "2024-09-01T23:15:07.426372901Z"
}
ক্লাউড কনসোলে PSC এন্ডপয়েন্ট যাচাই করুন
ক্লাউড কনসোল থেকে আপনি পিএসসি সংযোগ যাচাই করতে পারেন
ক্লাউড কনসোলে, নেভিগেট করুন:
লুকার → লুকার ইনস্ট্যান্স → বিশদ বিবরণ৷
অন-প্রিম ভিপিসি নেটওয়ার্ক তৈরি করুন
ভিপিসি নেটওয়ার্ক
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute networks create on-prem-demo --project=$project --subnet-mode=custom
Postgresql ডাটাবেস সাবনেট তৈরি করুন
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute networks subnets create database-subnet --project=$project --range=192.168.10.0/28 --network=on-prem-demo --region=$region
ক্লাউড শেলের ভিতরে, একটি অভ্যন্তরীণ IPv4 ঠিকানা সংরক্ষণ করুন, যা onprem.database1.com, 192.168.10.4 এর জন্য ব্যবহৃত হয়:
gcloud compute addresses create on-prem-database1-ip --region=$region --subnet=database-subnet --addresses 192.168.10.4
অন-প্রিম-ডেমো ভিপিসির জন্য ক্লাউড রাউটার তৈরি করুন
সফ্টওয়্যার প্যাকেজ ইনস্টলেশনের জন্য টিউটোরিয়ালে ক্লাউড NAT ব্যবহার করা হয় কারণ VM উদাহরণের একটি বাহ্যিক IP ঠিকানা নেই।
ক্লাউড শেলের ভিতরে, ক্লাউড NAT এবং HA-VPN এর সাথে ব্যবহৃত ক্লাউড রাউটার তৈরি করুন:
gcloud compute routers create on-prem-cr \
--region=$region \
--network=on-prem-demo \
--asn=65002
ক্লাউড শেলের ভিতরে, NAT গেটওয়ে তৈরি করুন:
gcloud compute routers nats create on-prem-nat --router=on-prem-cr --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region $region
ডাটাবেস পরীক্ষার উদাহরণ তৈরি করুন
একটি পোস্টগ্রেস-ডাটাবেস উদাহরণ তৈরি করুন যা লুকারের সাথে সংযোগ পরীক্ষা এবং যাচাই করতে ব্যবহার করা হবে।
ক্লাউড শেলের ভিতরে, উদাহরণ তৈরি করুন:
gcloud compute instances create postgres-database \
--project=$project \
--zone=$zone \
--machine-type=e2-medium \
--subnet=database-subnet \
--no-address \
--private-network-ip 192.168.10.4 \
--image-family debian-12 \
--image-project debian-cloud \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt -y install postgresql postgresql-client postgresql-contrib -y"
নেটওয়ার্ক ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়ম তৈরি করুন
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute network-firewall-policies create on-prem-demo-policy --global
gcloud compute network-firewall-policies associations create --firewall-policy on-prem-demo-policy --network on-prem-demo --name on-prem-demo --global-firewall-policy
IAP কে আপনার VM দৃষ্টান্তের সাথে সংযোগ করার অনুমতি দিতে, একটি ফায়ারওয়াল নিয়ম তৈরি করুন যা:
- আপনি IAP ব্যবহার করে অ্যাক্সেসযোগ্য হতে চান এমন সমস্ত VM দৃষ্টান্তগুলিতে প্রযোজ্য।
- IP পরিসর 35.235.240.0/20 থেকে ট্র্যাফিক প্রবেশের অনুমতি দেয়। এই পরিসরে সমস্ত আইপি ঠিকানা রয়েছে যা IAP TCP ফরওয়ার্ডিংয়ের জন্য ব্যবহার করে।
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute network-firewall-policies rules create 1000 --action ALLOW --firewall-policy on-prem-demo-policy --description "SSH with IAP" --direction INGRESS --src-ip-ranges 35.235.240.0/20 --layer4-configs tcp:22 --global-firewall-policy
নিম্নলিখিত ফায়ারওয়াল নিয়মটি প্রক্সি-অনলি সাবনেট পরিসর থেকে নেটওয়ার্কের সমস্ত দৃষ্টান্তে ট্র্যাফিকের অনুমতি দেয়।
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute network-firewall-policies rules create 2001 --action ALLOW --firewall-policy on-prem-demo-policy --description "allow traffic from proxy only subnet" --direction INGRESS --src-ip-ranges 10.10.10.0/24 --global-firewall-policy --layer4-configs=tcp
10. হাইব্রিড সংযোগ
নিম্নলিখিত বিভাগে, আপনি একটি ক্লাউড রাউটার তৈরি করবেন যা আপনাকে বর্ডার গেটওয়ে প্রোটোকল (বিজিপি) ব্যবহার করে আপনার ভার্চুয়াল প্রাইভেট ক্লাউড (ভিপিসি) এবং পিয়ার নেটওয়ার্কের মধ্যে গতিশীলভাবে রুট বিনিময় করতে সক্ষম করে।
ক্লাউড রাউটার আপনার নেটওয়ার্কগুলিকে সংযুক্ত করতে একটি ক্লাউড ভিপিএন টানেলে একটি BGP সেশন সেট আপ করতে পারে৷ এটি স্বয়ংক্রিয়ভাবে নতুন সাবনেট আইপি অ্যাড্রেস রেঞ্জ শিখে এবং আপনার পিয়ার নেটওয়ার্কে সেগুলি ঘোষণা করে৷
নিম্নলিখিত ধাপে আপনি onprem.database1.com-এ হাইব্রিড NEG সংযোগ প্রদর্শন করতে looker-psc-demo VPC এবং on-prem-demo VPC-এর মধ্যে HA VPN স্থাপন করবেন।
লুকার-পিএসসি-ডেমোর জন্য HA VPN GW তৈরি করুন
যখন প্রতিটি গেটওয়ে তৈরি করা হয়, তখন দুটি বাহ্যিক IPv4 ঠিকানা স্বয়ংক্রিয়ভাবে বরাদ্দ করা হয়, প্রতিটি গেটওয়ে ইন্টারফেসের জন্য একটি।
ক্লাউড শেলের ভিতরে, HA VPN GW তৈরি করুন:
gcloud compute vpn-gateways create looker-psc-demo-vpn-gw \
--network=looker-psc-demo \
--region=$region
অন-প্রিম-ডেমোর জন্য HA VPN GW তৈরি করুন
যখন প্রতিটি গেটওয়ে তৈরি করা হয়, তখন দুটি বাহ্যিক IPv4 ঠিকানা স্বয়ংক্রিয়ভাবে বরাদ্দ করা হয়, প্রতিটি গেটওয়ে ইন্টারফেসের জন্য একটি।
ক্লাউড শেলের ভিতরে, HA VPN GW তৈরি করুন:
gcloud compute vpn-gateways create on-prem-vpn-gw \
--network=on-prem-demo\
--region=$region
HA VPN GW তৈরির বৈধতা দিন
কনসোল ব্যবহার করে, হাইব্রিড সংযোগ → ভিপিএন → ক্লাউড ভিপিএন গেটওয়েতে নেভিগেট করুন৷
Looker-psc-demo-এর জন্য ক্লাউড রাউটার তৈরি করুন
ক্লাউড শেলের ভিতরে, ক্লাউড রাউটার তৈরি করুন:
gcloud compute routers create looker-psc-demo-cr \
--region=$region \
--network=looker-psc-demo\
--asn=65001
Looker-psc-demo-এর জন্য VPN টানেল তৈরি করুন
আপনি প্রতিটি HA VPN গেটওয়েতে দুটি VPN টানেল তৈরি করবেন।
ভিপিএন টানেল 0 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 0 তৈরি করুন:
gcloud compute vpn-tunnels create looker-psc-demo-tunnel0 \
--peer-gcp-gateway on-prem-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \
--router looker-psc-demo-cr \
--vpn-gateway looker-psc-demo-vpn-gw \
--interface 0
ভিপিএন টানেল 1 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 1 তৈরি করুন:
gcloud compute vpn-tunnels create looker-psc-demo-tunnel1 \
--peer-gcp-gateway on-prem-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \
--router looker-psc-demo-cr \
--vpn-gateway looker-psc-demo-vpn-gw \
--interface 1
অন-প্রিম-ডেমোর জন্য ভিপিএন টানেল তৈরি করুন
আপনি প্রতিটি HA VPN গেটওয়েতে দুটি VPN টানেল তৈরি করবেন।
ভিপিএন টানেল 0 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 0 তৈরি করুন:
gcloud compute vpn-tunnels create on-prem-tunnel0 \
--peer-gcp-gateway looker-psc-demo-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \
--router on-prem-cr \
--vpn-gateway on-prem-vpn-gw \
--interface 0
ভিপিএন টানেল 1 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 1 তৈরি করুন:
gcloud compute vpn-tunnels create on-prem-tunnel1 \
--peer-gcp-gateway looker-psc-demo-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \
--router on-prem-cr \
--vpn-gateway on-prem-vpn-gw \
--interface 1
ভিপিএন টানেল তৈরির বৈধতা দিন
কনসোল ব্যবহার করে, হাইব্রিড সংযোগ → ভিপিএন → ক্লাউড ভিপিএন টানেলে নেভিগেট করুন।
11. BGP প্রতিবেশী স্থাপন
looker-psc-demo-এর জন্য একটি BGP ইন্টারফেস এবং পিয়ারিং তৈরি করুন
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface looker-psc-demo-cr \
--interface-name if-tunnel0-to-onprem \
--ip-address 169.254.1.1 \
--mask-length 30 \
--vpn-tunnel looker-psc-demo-tunnel0 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer looker-psc-demo-cr \
--peer-name bgp-on-premises-tunnel0 \
--interface if-tunnel1-to-onprem \
--peer-ip-address 169.254.1.2 \
--peer-asn 65002 \
--region $region
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface looker-psc-demo-cr \
--interface-name if-tunnel1-to-onprem \
--ip-address 169.254.2.1 \
--mask-length 30 \
--vpn-tunnel looker-psc-demo-tunnel1 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer looker-psc-demo-cr \
--peer-name bgp-on-premises-tunnel1 \
--interface if-tunnel2-to-onprem \
--peer-ip-address 169.254.2.2 \
--peer-asn 65002 \
--region $region
একটি BGP ইন্টারফেস তৈরি করুন এবং অন-প্রেম-ডেমোর জন্য পিয়ারিং করুন
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface on-prem-cr \
--interface-name if-tunnel0-to-looker-psc-demo \
--ip-address 169.254.1.2 \
--mask-length 30 \
--vpn-tunnel on-prem-tunnel0 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer on-prem-cr \
--peer-name bgp-looker-psc-demo-tunnel0 \
--interface if-tunnel1-to-looker-psc-demo \
--peer-ip-address 169.254.1.1 \
--peer-asn 65001 \
--region $region
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface on-prem-cr \
--interface-name if-tunnel1-to-looker-psc-demo \
--ip-address 169.254.2.2 \
--mask-length 30 \
--vpn-tunnel on-prem-tunnel1 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer on-prem-cr \
--peer-name bgp-looker-psc-demo-tunnel1\
--interface if-tunnel2-to-looker-psc-demo \
--peer-ip-address 169.254.2.1 \
--peer-asn 65001 \
--region $region
VPN টানেলের বিবরণ দেখতে হাইব্রিড সংযোগ → VPN- এ নেভিগেট করুন।
HA VPN এর মাধ্যমে looker-psc-demo শেখা রুট যাচাই করুন
এখন যেহেতু HA VPN টানেল এবং BGP সেশনগুলি প্রতিষ্ঠিত হয়েছে, ক্লাউড রাউটারের ডিফল্ট আচরণ হল সাবনেট রুটের বিজ্ঞাপন দেওয়া। লুকার-পিএসসি-ডেমো শেখা রুট দেখুন।
কনসোল ব্যবহার করে, ভিপিসি নেটওয়ার্ক → ভিপিসি নেটওয়ার্ক → লুকার-পিএসসি-ডেমো → রুট → অঞ্চল → ভিউতে নেভিগেট করুন
পর্যবেক্ষণ দেখুন looker-psc-demo অন-প্রেম-ডেমো ভিপিসি থেকে ডাটাবেস-সাবনেট 192.168.10.0/28 শিখেছে।
যাচাই করুন যে অন-প্রিম-ডেমো ভিপিসি HA VPN-এর উপর রুট শিখেছে
যেহেতু ক্লাউড রাউটারের ডিফল্ট আচরণ হল সমস্ত সাবনেটের বিজ্ঞাপন দেওয়া, তাই শুধুমাত্র প্রক্সি সাবনেট BGP-এ বিজ্ঞাপন দেওয়া হয়। হাইব্রিড NEG সার্ভার onprem.database1.com এর সাথে যোগাযোগ করার সময় উত্স ঠিকানা হিসাবে শুধুমাত্র প্রক্সি সাবনেট ব্যবহার করবে।
পর্যবেক্ষণ করুন অন-প্রেম-ডেমো লুকার-পিএসসি-ডেমো থেকে প্রক্সি-অনলি-সাবনেট 10.10.10.0/24 শিখেছে।
কনসোল ব্যবহার করে, ভিপিসি নেটওয়ার্ক → ভিপিসি নেটওয়ার্ক → অন-প্রিম-ডেমো → রুট → অঞ্চল → ভিউতে নেভিগেট করুন
12. লুকার পোস্টগ্রেস-ডাটাবেস তৈরি
নিম্নলিখিত বিভাগে, আপনি ক্লাউড শেল ব্যবহার করে postgres-database vm-এ একটি SSH সঞ্চালন করবেন।
ক্লাউড শেলের ভিতরে, পোস্টগ্রেস-ডাটাবেস উদাহরণে একটি ssh সম্পাদন করুন**:**
gcloud compute ssh --zone "$zone" "postgres-database" --project "$project"
OS-এর ভিতরে, পোস্টগ্রেস-ডাটাবেস উদাহরণের আইপি ঠিকানা (ens4) সনাক্ত করুন এবং নোট করুন:
ip a
উদাহরণ:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1460 qdisc mq state UP group default qlen 1000
link/ether 42:01:c0:a8:0a:04 brd ff:ff:ff:ff:ff:ff
altname enp0s4
inet 192.168.10.4/32 metric 100 scope global dynamic ens4
valid_lft 66779sec preferred_lft 66779sec
inet6 fe80::4001:c0ff:fea8:a04/64 scope link
valid_lft forever preferred_lft forever
OS এর ভিতরে, postgresql এ লগ ইন করুন:
sudo -u postgres psql postgres
OS এর ভিতরে, পাসওয়ার্ড প্রম্পট লিখুন:
\password postgres
OS এর ভিতরে, postgres-এ পাসওয়ার্ড সেট করুন (একই পাসওয়ার্ড দুবার লিখুন):
postgres
উদাহরণ:
user@postgres-database:~$ sudo -u postgres psql postgres
\password postgres
psql (13.11 (Debian 13.11-0+deb11u1))
Type "help" for help.
postgres=# \password postgres
Enter new password for user "postgres":
Enter it again:
OS এর ভিতরে, পোস্টগ্রেস থেকে প্রস্থান করুন:
\q
উদাহরণ:
postgres=# \q
user@postgres-database:~$
নিম্নলিখিত বিভাগে, আপনি IPv4 স্থানীয় সংযোগের অধীনে pg_hba.conf ফাইলে আপনার পোস্টগ্রেস-ডাটাবেস ইন্সট্যান্স আইপি (192.168.10.4) এবং প্রক্সি-অনলি সাবনেট (10.10.10.0/24) সন্নিবেশ করাবেন।
sudo nano /etc/postgresql/15/main/pg_hba.conf
নীচের স্ক্রিনশটটি সম্পূর্ণ আপডেট:
নিম্নলিখিত বিভাগে, নীচের স্ক্রিনশট প্রতি সমস্ত '*' আইপি ঠিকানা শুনতে postgresql.conf-এ মন্তব্য করুন:
sudo nano /etc/postgresql/15/main/postgresql.conf
আগে:
পরে:
OS এর ভিতরে, postgresql পরিষেবাটি পুনরায় চালু করুন:
sudo service postgresql restart
ওএসের ভিতরে, পোস্টগ্রেস্কএল স্ট্যাটাসটিকে সক্রিয় হিসাবে যাচাই করুন:
sudo service postgresql status
উদাহরণ:
ওএসের ভিতরে, পোস্টগ্রেস্কএল স্ট্যাটাসটিকে সক্রিয় হিসাবে যাচাই করুন:
user@postgres-database:/$ sudo service postgresql status
● postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; preset: enabled)
Active: active (exited) since Mon 2024-09-02 12:10:10 UTC; 1min 46s ago
Process: 20486 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 20486 (code=exited, status=0/SUCCESS)
CPU: 2ms
Sep 02 12:10:10 postgres-database systemd[1]: Starting postgresql.service - PostgreSQL RDBMS...
Sep 02 12:10:10 postgres-database systemd[1]: Finished postgresql.service - PostgreSQL RDBMS.
13. পোস্টগ্রেস ডাটাবেস তৈরি করুন
নিচের বিভাগে, আপনি postgres_looker এবং স্কিমা looker_schema নামে একটি পোস্টগ্রেস ডাটাবেস তৈরি করবেন যা লুকার থেকে অন-প্রিমিসেস সংযোগ যাচাই করতে ব্যবহৃত হয়।
ওএসের ভিতরে, পোস্টগ্রেসে লগ ইন করুন:
sudo -u postgres psql postgres
OS এর ভিতরে, ডাটাবেস তৈরি করুন:
create database postgres_looker;
OS এর ভিতরে, ডাটাবেস তালিকাভুক্ত করুন:
\l
OS এর ভিতরে, পাসওয়ার্ড postgreslooker দিয়ে ব্যবহারকারী postgres_looker তৈরি করুন:
create user postgres_looker with password 'postgreslooker';
OS এর ভিতরে, ডাটাবেসের সাথে সংযোগ করুন:
\c postgres_looker;
OS এর ভিতরে, স্কিমা লুকার-স্কিমা তৈরি করুন এবং ক্লাউড শেল প্রম্পটে প্রস্থান করুন।
create schema looker_schema;
create table looker_schema.test(firstname CHAR(15), lastname CHAR(20));
exit
Exit from the OS, returning you to cloud shell:
\q
উদাহরণ:
user@postgres-database:/$ sudo -u postgres psql postgres
psql (15.8 (Debian 15.8-0+deb12u1))
Type "help" for help.
postgres=# create database postgres_looker;
CREATE DATABASE
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | ICU Locale | Locale Provider | Access privileges
-----------------+----------+----------+---------+---------+------------+-----------------+-----------------------
postgres | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc |
postgres_looker | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc |
template0 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc | =c/postgres +
| | | | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc | =c/postgres +
| | | | | | | postgres=CTc/postgres
(4 rows)
postgres=# create user postgres_looker with password 'postgreslooker';
CREATE ROLE
postgres=# \c postgres_looker;
You are now connected to database "postgres_looker" as user "postgres".
postgres_looker=# create schema looker_schema;
create table looker_schema.test(firstname CHAR(15), lastname CHAR(20));
exit
CREATE SCHEMA
CREATE TABLE
postgres_looker-# \q
14. পোস্টগ্রেস পোস্টগ্রেস-ডাটাবেসের সাথে লুকারকে একীভূত করুন
নিম্নলিখিত বিভাগে আপনি অন-প্রিমিসেস পোস্টগ্রেস-ডাটাবেস উদাহরণে একটি ডেটাবেস সংযোগ তৈরি করতে লুকার কনসোল ব্যবহার করবেন।
অ্যাডমিন → ডেটাবেস → সংযোগ → সংযোগ যোগ করুন নির্বাচন করুন
নীচের স্ক্রিনশট অনুযায়ী সংযোগের বিবরণ পূরণ করুন, সংযোগ নির্বাচন করুন
সংযোগ এখন কনফিগার করা হয়েছে
15. লুকার সংযোগ যাচাই করুন
নিচের বিভাগে আপনি শিখবেন কিভাবে লুকার 'টেস্ট' অ্যাকশন এবং TCPDUMP ব্যবহার করে অন-প্রেম-ভিপিসি-তে পোস্টগ্রেস-ডাটাবেসের সাথে লুকার সংযোগ যাচাই করতে হয়।
ক্লাউড শেল থেকে, সেশনের সময় শেষ হলে পোস্টগ্রেস-ডাটাবেসে লগ ইন করুন।
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
zone=[YOUR-ZONE]
echo $project
echo $region
gcloud compute ssh --zone "$zone" "postgres-database" --project "$project"
OS থেকে, শুধুমাত্র প্রক্সি সাবনেট 10.10.10.0/24 সহ একটি TCPDUMP ফিল্টার তৈরি করুন
sudo tcpdump -i any net 10.10.10.0/24 -nn
ডেটা কানেকশন অ্যাডমিন → ডেটাবেস → সংযোগ → পোস্টগ্রেস-ডাটাবেস → টেস্টে নেভিগেট করুন
একবার পরীক্ষা নির্বাচিত হলে লুকার পোস্টগ্রেস-ডাটাবেসের সাথে সংযুক্ত হবে যেমনটি নীচে নির্দেশিত হয়েছে:
পরিষ্কার করুন
একটি একক ক্লাউড শেল টার্মিনাল থেকে ল্যাব উপাদান মুছে দিন
gcloud compute service-attachments delete onpremdatabase1-svc-attachment --region=$region -q
gcloud compute forwarding-rules delete producer-hybrid-neg-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 on-prem-nat --router=on-prem-cr --router-region=$region -q
gcloud compute network-endpoint-groups delete on-prem-hybrid-neg --zone=$zone -q
gcloud compute addresses delete hybrid-neg-lb-ip --region=$region -q
gcloud compute vpn-tunnels delete looker-psc-demo-tunnel0 looker-psc-demo-tunnel1 on-prem-tunnel0 on-prem-tunnel1 --region=$region -q
gcloud compute vpn-gateways delete looker-psc-demo-vpn-gw on-prem-vpn-gw --region=$region -q
gcloud compute routers delete looker-psc-demo-cr on-prem-cr --region=$region -q
gcloud compute instances delete postgres-database --zone=$zone -q
gcloud compute addresses delete on-prem-database1-ip --region=$region -q
gcloud compute networks subnets delete database-subnet --region=$region -q
gcloud compute network-firewall-policies rules delete 2001 --firewall-policy on-prem-demo-policy --global-firewall-policy -q
gcloud compute network-firewall-policies rules delete 1000 --firewall-policy on-prem-demo-policy --global-firewall-policy -q
gcloud compute network-firewall-policies associations delete --firewall-policy=on-prem-demo-policy --name=on-prem-demo --global-firewall-policy -q
gcloud compute networks subnets delete $region-proxy-only-subnet --region=$region -q
gcloud compute networks subnets delete producer-psc-nat-subnet --region=$region -q
gcloud compute networks subnets delete producer-psc-fr-subnet --region=$region -q
gcloud compute networks delete on-prem-demo -q
gcloud compute networks delete looker-psc-demo -q
16. অভিনন্দন
অভিনন্দন, আপনি প্রাইভেট সার্ভিস কানেক্ট দ্বারা চালিত লুকার কনসোল ব্যবহার করে HA-VPN-এর মাধ্যমে অন-প্রিমিসেস ডাটাবেসের সাথে সংযোগ সফলভাবে কনফিগার এবং যাচাই করেছেন।
আপনি প্রযোজকের পরিকাঠামো তৈরি করেছেন, শিখেছেন কীভাবে একটি হাইব্রিড NEG, প্রযোজক পরিষেবা এবং লুকার PSC এন্ডপয়েন্ট তৈরি করতে হয় যা প্রযোজক পরিষেবার সাথে সংযোগের অনুমতি দেয়৷
Cosmopup মনে করে কোডল্যাবগুলি দুর্দান্ত!!
এরপর কি?
এই কোডল্যাবগুলির কিছু পরীক্ষা করে দেখুন...
- পরিষেবাগুলি প্রকাশ এবং ব্যবহার করতে ব্যক্তিগত পরিষেবা সংযোগ ব্যবহার করে৷
- প্রাইভেট সার্ভিস কানেক্ট এবং একটি অভ্যন্তরীণ TCP প্রক্সি লোড ব্যালেন্সার ব্যবহার করে হাইব্রিড নেটওয়ার্কিংয়ের মাধ্যমে অন-প্রিম পরিষেবাগুলিতে সংযোগ করুন
- সমস্ত প্রকাশিত প্রাইভেট সার্ভিস কানেক্ট কোডল্যাবগুলিতে অ্যাক্সেস
আরও পড়া এবং ভিডিও
রেফারেন্স ডক্স
1. ভূমিকা
এই কোডল্যাবে আপনি একটি অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার ব্যবহার করে H-VPN এর উপর একটি অন-প্রিমিসেস পোস্টগ্রেস ডাটাবেসের সাথে একটি দক্ষিণমুখী সংযোগ সম্পাদন করবেন এবং একটি পরিষেবা গ্রাহক হিসাবে Looker PSC থেকে আহ্বান করা হাইব্রিড নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপ।
প্রাইভেট সার্ভিস কানেক্ট হল Google ক্লাউড নেটওয়ার্কিং এর একটি ক্ষমতা যা গ্রাহকদের তাদের VPC নেটওয়ার্কের ভিতর থেকে ব্যক্তিগতভাবে পরিচালিত পরিষেবাগুলি অ্যাক্সেস করতে দেয়। একইভাবে, এটি পরিচালিত পরিষেবা প্রযোজকদের তাদের নিজস্ব আলাদা ভিপিসি নেটওয়ার্কে এই পরিষেবাগুলি হোস্ট করতে এবং তাদের গ্রাহকদের একটি ব্যক্তিগত সংযোগ অফার করার অনুমতি দেয়। উদাহরণ স্বরূপ, আপনি যখন লুকার অ্যাক্সেস করতে প্রাইভেট সার্ভিস কানেক্ট ব্যবহার করেন, তখন আপনিই পরিষেবার ভোক্তা এবং Google হল পরিষেবা প্রযোজক, যেমন চিত্র 1-এ হাইলাইট করা হয়েছে৷
চিত্র 1।
সাউথবাউন্ড অ্যাক্সেস, রিভার্স পিএসসি নামেও পরিচিত, ভোক্তাকে প্রযোজক হিসাবে একটি প্রকাশিত পরিষেবা তৈরি করতে সক্ষম করে যাতে ভিপিসি-তে, ম্যানেজড পরিষেবা এবং হাইব্রিডগুলিতে লুকার অ্যাক্সেসের অনুমতি দেওয়া যায়৷ সাউথবাউন্ড সংযোগগুলি যে কোনও অঞ্চলে স্থাপন করা যেতে পারে, যেখানে লুকার পিএসসি মোতায়েন করা হয়েছে তা নির্বিশেষে, চিত্র 2-এ হাইলাইট করা হয়েছে৷
চিত্র 2।
আপনি কি শিখবেন
- নেটওয়ার্ক প্রয়োজনীয়তা
- একটি ব্যক্তিগত পরিষেবা সংযোগ প্রযোজক পরিষেবা তৈরি করুন৷
- লুকারে একটি প্রাইভেট সার্ভিস কানেক্ট এন্ডপয়েন্ট তৈরি করুন
- একটি টেস্ট সংযোগ ব্যবহার করে লুকার থেকে অন-প্রিমিসেস পোস্টগ্রেস ডাটাবেসের সাথে সংযোগ স্থাপন করুন
আপনি কি প্রয়োজন হবে
- মালিকের অনুমতি সহ Google ক্লাউড প্রকল্প
- বিদ্যমান লুকার পিএসসি উদাহরণ
2. আপনি কি তৈরি করবেন
অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার এবং Private Service Connect (PSC) এর মাধ্যমে একটি পরিষেবা হিসাবে প্রকাশিত হাইব্রিড NEG স্থাপন করতে আপনি একটি প্রযোজক নেটওয়ার্ক, looker-psc-demo প্রতিষ্ঠা করবেন। একটি অন-প্রিমিস ডাটাবেস প্রদর্শন করতে, আপনি HA-VPN ব্যবহার করে looker-psc-demo VPC এর সাথে সংযুক্ত একটি অন-প্রিম-ডেমো ভিপিসি স্থাপন করবেন।
আপনি প্রযোজক পরিষেবাতে বৈধতা অ্যাক্সেসের জন্য নিম্নলিখিত ক্রিয়াগুলি সম্পাদন করবেন:
- প্রডিউসার সার্ভিস অ্যাটাচমেন্টের সাথে যুক্ত লুকারে একটি PSC এন্ডপয়েন্ট তৈরি করুন
- অন-প্রিমিসেস পোস্টগ্রেস ডাটাবেসের সাথে সংযোগ বৈধতা সম্পাদন করতে লুকার কনসোল ব্যবহার করুন
3. নেটওয়ার্ক প্রয়োজনীয়তা
নীচে প্রযোজক নেটওয়ার্কের জন্য নেটওয়ার্ক প্রয়োজনীয়তাগুলির ভাঙ্গন রয়েছে, এই কোডল্যাবের ভোক্তা হল লুকার পিএসসি উদাহরণ৷
উপাদান | বর্ণনা |
ভিপিসি (লুকার-পিএসসি-ডেমো) | কাস্টম মোড ভিপিসি |
ভিপিসি (অন-প্রিম-ডেমো) | কাস্টম মোড ভিপিসি |
PSC NAT সাবনেট | ভোক্তা ভিপিসি নেটওয়ার্কের প্যাকেটগুলি উৎস NAT (SNAT) ব্যবহার করে অনুবাদ করা হয় যাতে তাদের মূল উৎস আইপি ঠিকানাগুলি প্রযোজকের ভিপিসি নেটওয়ার্কে NAT সাবনেট থেকে উৎস IP ঠিকানায় রূপান্তরিত হয়। |
পিএসসি ফরওয়ার্ডিং নিয়ম সাবনেট | আঞ্চলিক অভ্যন্তরীণ TCP প্রক্সি লোড ব্যালেন্সারের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয় |
PSC NEG সাবনেট | নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয় |
প্রক্সি শুধুমাত্র সাবনেট | লোড ব্যালেন্সারের প্রতিটি প্রক্সিকে একটি অভ্যন্তরীণ IP ঠিকানা বরাদ্দ করা হয়। একটি প্রক্সি থেকে ব্যাকএন্ড VM বা এন্ডপয়েন্টে পাঠানো প্যাকেটগুলিতে শুধুমাত্র প্রক্সি সাবনেট থেকে একটি উৎস আইপি ঠিকানা থাকে। |
হাইব্রিড NEG | অন-প্রিমিসেস এবং অন্যান্য ক্লাউড পরিষেবাগুলি অন্য যে কোনও ক্লাউড লোড ব্যালেন্সিং ব্যাকএন্ডের মতোই বিবেচিত হয়। মূল পার্থক্য হল আপনি এই ব্যাকএন্ডগুলির শেষ পয়েন্টগুলি কনফিগার করতে একটি হাইব্রিড সংযোগ NEG ব্যবহার করেন৷ শেষ পয়েন্টগুলি অবশ্যই বৈধ আইপি:পোর্ট সমন্বয় হতে হবে যেখানে আপনার লোড ব্যালেন্সার হাইব্রিড সংযোগ পণ্য যেমন ক্লাউড ভিপিএন বা ক্লাউড ইন্টারকানেক্ট ব্যবহার করে পৌঁছাতে পারে। |
ব্যাকএন্ড পরিষেবা | একটি ব্যাকএন্ড পরিষেবা আপনার লোড ব্যালেন্সার এবং আপনার ব্যাকএন্ড সংস্থানগুলির মধ্যে একটি সেতু হিসাবে কাজ করে। টিউটোরিয়ালে, ব্যাকএন্ড পরিষেবা হাইব্রিড এনইজি-র সাথে যুক্ত। |
ক্লাউড রাউটার |
|
HA-VPN | গুগল ক্লাউড ভিপিসি নেটওয়ার্কের মধ্যে HA VPN । এই টপোলজিতে, আপনি প্রতিটি নেটওয়ার্কে একটি HA VPN গেটওয়ে ব্যবহার করে দুটি Google ক্লাউড VPC নেটওয়ার্ক সংযোগ করতে পারেন। ভিপিসি নেটওয়ার্ক একই অঞ্চলে বা একাধিক অঞ্চলে হতে পারে। |
মেঘ NAT | ইন্টারনেট বহির্গমনের জন্য অন-প্রিম-ডেমো ভিপিসি দ্বারা ব্যবহৃত |
4. কোডল্যাব টপোলজি
5. সেটআপ এবং প্রয়োজনীয়তা
স্ব-গতিসম্পন্ন পরিবেশ সেটআপ
- Google ক্লাউড কনসোলে সাইন-ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ আপনার যদি ইতিমধ্যেই একটি Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে।
- প্রকল্পের নাম এই প্রকল্পের অংশগ্রহণকারীদের জন্য প্রদর্শনের নাম। এটি একটি অক্ষর স্ট্রিং যা Google API দ্বারা ব্যবহৃত হয় না। আপনি সবসময় এটি আপডেট করতে পারেন.
- প্রোজেক্ট আইডি সমস্ত Google ক্লাউড প্রোজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (সেট করার পরে পরিবর্তন করা যাবে না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত আপনি এটা কি যত্ন না. বেশিরভাগ কোডল্যাবে, আপনাকে আপনার প্রকল্প আইডি উল্লেখ করতে হবে (সাধারণত
PROJECT_ID
হিসাবে চিহ্নিত)। আপনি যদি জেনারেট করা আইডি পছন্দ না করেন, তাহলে আপনি অন্য একটি এলোমেলো আইডি তৈরি করতে পারেন। বিকল্পভাবে, আপনি নিজের চেষ্টা করতে পারেন, এবং এটি উপলব্ধ কিনা দেখতে পারেন। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রকল্পের সময়কালের জন্য থাকে। - আপনার তথ্যের জন্য, একটি তৃতীয় মান আছে, একটি প্রকল্প নম্বর , যা কিছু API ব্যবহার করে। ডকুমেন্টেশনে এই তিনটি মান সম্পর্কে আরও জানুন।
- এরপরে, ক্লাউড রিসোর্স/এপিআই ব্যবহার করতে আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে। এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ হবে না, যদি কিছু হয়। এই টিউটোরিয়ালের বাইরে বিলিং এড়াতে সংস্থানগুলি বন্ধ করতে, আপনি আপনার তৈরি করা সংস্থানগুলি মুছতে বা প্রকল্প মুছতে পারেন। নতুন Google ক্লাউড ব্যবহারকারীরা $300 USD বিনামূল্যের ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷
ক্লাউড শেল শুরু করুন
যদিও Google ক্লাউড আপনার ল্যাপটপ থেকে দূরবর্তীভাবে পরিচালিত হতে পারে, এই কোডল্যাবে আপনি Google ক্লাউড শেল ব্যবহার করবেন, একটি কমান্ড লাইন পরিবেশ যা ক্লাউডে চলছে।
Google ক্লাউড কনসোল থেকে, উপরের ডানদিকে টুলবারে ক্লাউড শেল আইকনে ক্লিক করুন:
পরিবেশের ব্যবস্থা করতে এবং সংযোগ করতে এটি শুধুমাত্র কয়েক মুহূর্ত নিতে হবে। এটি সমাপ্ত হলে, আপনি এই মত কিছু দেখতে হবে:
এই ভার্চুয়াল মেশিনটি আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুল দিয়ে লোড করা হয়েছে। এটি একটি ক্রমাগত 5GB হোম ডিরেক্টরি অফার করে এবং Google ক্লাউডে চলে, যা নেটওয়ার্ক কর্মক্ষমতা এবং প্রমাণীকরণকে ব্যাপকভাবে উন্নত করে। এই কোডল্যাবে আপনার সমস্ত কাজ একটি ব্রাউজারে করা যেতে পারে। আপনার কিছু ইন্সটল করার দরকার নেই।
6. আপনি শুরু করার আগে
এপিআই সক্ষম করুন
ক্লাউড শেলের ভিতরে, নিশ্চিত করুন যে আপনার প্রকল্প আইডি সেট আপ করা আছে:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
zone=[YOUR-ZONE]
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
লোড ব্যালেন্সারের আইপি ঠিকানা সংরক্ষণ করুন
ক্লাউড শেলের ভিতরে, লোড ব্যালেন্সারের জন্য একটি অভ্যন্তরীণ আইপি ঠিকানা সংরক্ষণ করুন:
gcloud compute addresses create hybrid-neg-lb-ip \
--region=$region \
--subnet=producer-psc-fr-subnet
ক্লাউড শেলের ভিতরে, সংরক্ষিত আইপি ঠিকানা দেখুন।
gcloud compute addresses describe hybrid-neg-lb-ip \
--region=$region | grep -i address:
উদাহরণ আউটপুট:
gcloud compute addresses describe hybrid-neg-lb-ip --region=$region | grep -i address:
address: 172.16.20.2
হাইব্রিড NEG সেট আপ করুন
একটি হাইব্রিড NEG তৈরি করুন এবং –নেটওয়ার্ক-এন্ডপয়েন্ট-টাইপ NON_GCP_PRIVATE_IP_PORT-এ সেট করুন
ক্লাউড শেলের ভিতরে, অন-প্রিম ডাটাবেস অ্যাক্সেস করতে ব্যবহৃত একটি হাইব্রিড NEG তৈরি করুন:
gcloud compute network-endpoint-groups create on-prem-hybrid-neg \
--network-endpoint-type=NON_GCP_PRIVATE_IP_PORT \
--network=looker-psc-demo \
--zone=$zone
ক্লাউড শেলের ভিতরে, আইপি দিয়ে হাইব্রিড NEG আপডেট করুন: অন-প্রিম ডাটাবেসের পোর্ট, 192.168.10.4 এবং পোর্ট 5432, টিউটোরিয়ালের পরবর্তী ধাপে তৈরি করা হয়েছে:
gcloud compute network-endpoint-groups update on-prem-hybrid-neg \
--add-endpoint=ip=192.168.10.4,port=5432 \
--zone=$zone
একটি আঞ্চলিক স্বাস্থ্য পরীক্ষা তৈরি করুন
ক্লাউড শেলের ভিতরে, একটি স্বাস্থ্য-পরীক্ষা তৈরি করুন যা অন-প্রিম ডাটাবেস পোর্ট, 5432 অনুসন্ধান করে:
gcloud compute health-checks create tcp on-prem-5432-healthcheck \
--region=$region \
--port=5432
নেটওয়ার্ক ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়ম তৈরি করুন
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
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 --region=$region --load-balancing-scheme=INTERNAL_MANAGED --protocol=TCP --region=$region --health-checks=on-prem-5432-healthcheck --health-checks-region=$region
ক্লাউড শেলের ভিতরে, ব্যাকএন্ড পরিষেবাতে হাইব্রিড NEG ব্যাকএন্ড যোগ করুন:
gcloud compute backend-services add-backend producer-backend-svc --network-endpoint-group=on-prem-hybrid-neg --network-endpoint-group-zone=$zone --balancing-mode=CONNECTION --max-connections=100 --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-hybrid-neg-fr \
--load-balancing-scheme=INTERNAL_MANAGED \
--network-tier=PREMIUM \
--network=looker-psc-demo \
--subnet=producer-psc-fr-subnet \
--address=hybrid-neg-lb-ip \
--target-tcp-proxy=producer-lb-tcp-proxy \
--target-tcp-proxy-region=$region \
--region=$region \
--ports=5432
সার্ভিস অ্যাটাচমেন্ট তৈরি করুন
ক্লাউড শেলের ভিতরে, পরিষেবা সংযুক্তি তৈরি করুন, onpremdatabase1-svc-attachment:
gcloud compute service-attachments create onpremdatabase1-svc-attachment --region=$region --producer-forwarding-rule=producer-hybrid-neg-fr --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=producer-psc-nat-subnet
এরপরে, লুকারে PSC এন্ডপয়েন্ট কনফিগার করার জন্য প্রোজেক্ট দিয়ে শুরু করে সেল্ফলিঙ্ক URI-তে তালিকাভুক্ত পরিষেবা সংযুক্তিটি পান এবং নোট করুন।
সেলফলিঙ্ক: প্রকল্প/<your-project-id>/regions/<your-region>/serviceAttachments/onpremdatabase1-svc-attachment
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute service-attachments describe onpremdatabase1-svc-attachment --region=$region
প্রত্যাশিত আউটপুট উদাহরণ:
connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-09-01T16:07:51.600-07:00'
description: ''
enableProxyProtocol: false
fingerprint: cFt9rERR1iE=
id: '2549689544315850024'
kind: compute#serviceAttachment
name: onpremdatabase1-svc-attachment
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$project/regions/$region/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
high: '19348441121424360'
low: '2549689544315850024'
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/onpremdatabase1-svc-attachment
targetService: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-hybrid-neg-fr
ক্লাউড কনসোলে, নেভিগেট করুন:
নেটওয়ার্ক পরিষেবা → ব্যক্তিগত পরিষেবা সংযোগ → প্রকাশিত পরিষেবা৷
9. লুকারে একটি PSC এন্ডপয়েন্ট সংযোগ স্থাপন করুন
নিম্নলিখিত বিভাগে, আপনি একটি একক ডোমেনের জন্য ক্লাউড শেল-এ –psc-সার্ভিস-অ্যাটাচমেন্ট পতাকা ব্যবহারের মাধ্যমে লুকার কোর PSC-এর সাথে প্রযোজক পরিষেবা সংযুক্তি সংযুক্ত করবেন৷
ক্লাউড শেলের ভিতরে, আপনার পরিবেশের সাথে মেলে নিম্নলিখিত পরামিতিগুলি আপডেট করে psc অ্যাসোসিয়েশন তৈরি করুন:
- INSTANCE_NAME: আপনার লুকারের নাম (Google ক্লাউড কোর) উদাহরণ।
- DOMAIN_1: onprem.database1.com
- SERVICE_ATTACHMENT_1: পরিষেবা সংযুক্তি তৈরি করার সময় URI ক্যাপচার করা হয়েছে, onpremdatabase1-svc-সংযুক্তি
- অঞ্চল: যে অঞ্চলে আপনার লুকার (গুগল ক্লাউড কোর) উদাহরণ হোস্ট করা হয়েছে৷
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
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=onprem.database1.com,attachment=projects/$project/regions/$region/serviceAttachments/onpremdatabase1-svc-attachment --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": "looker.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": "onprem.database1.com",
"targetServiceAttachmentUri": "projects/$project/regions/$region/serviceAttachments/onpremdatabase1-svc-attachment"
}
]
},
"pscEnabled": true,
"state": "ACTIVE",
"updateTime": "2024-09-01T23:15:07.426372901Z"
}
ক্লাউড কনসোলে PSC এন্ডপয়েন্ট যাচাই করুন
ক্লাউড কনসোল থেকে আপনি পিএসসি সংযোগ যাচাই করতে পারেন
ক্লাউড কনসোলে, নেভিগেট করুন:
লুকার → লুকার ইনস্ট্যান্স → বিশদ বিবরণ৷
অন-প্রিম ভিপিসি নেটওয়ার্ক তৈরি করুন
ভিপিসি নেটওয়ার্ক
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute networks create on-prem-demo --project=$project --subnet-mode=custom
Postgresql ডাটাবেস সাবনেট তৈরি করুন
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute networks subnets create database-subnet --project=$project --range=192.168.10.0/28 --network=on-prem-demo --region=$region
ক্লাউড শেলের ভিতরে, একটি অভ্যন্তরীণ IPv4 ঠিকানা সংরক্ষণ করুন, যা onprem.database1.com, 192.168.10.4 এর জন্য ব্যবহৃত হয়:
gcloud compute addresses create on-prem-database1-ip --region=$region --subnet=database-subnet --addresses 192.168.10.4
অন-প্রিম-ডেমো ভিপিসির জন্য ক্লাউড রাউটার তৈরি করুন
সফ্টওয়্যার প্যাকেজ ইনস্টলেশনের জন্য টিউটোরিয়ালে ক্লাউড NAT ব্যবহার করা হয় কারণ VM উদাহরণের একটি বাহ্যিক IP ঠিকানা নেই।
ক্লাউড শেলের ভিতরে, ক্লাউড NAT এবং HA-VPN এর সাথে ব্যবহৃত ক্লাউড রাউটার তৈরি করুন:
gcloud compute routers create on-prem-cr \
--region=$region \
--network=on-prem-demo \
--asn=65002
ক্লাউড শেলের ভিতরে, NAT গেটওয়ে তৈরি করুন:
gcloud compute routers nats create on-prem-nat --router=on-prem-cr --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region $region
ডাটাবেস পরীক্ষার উদাহরণ তৈরি করুন
একটি পোস্টগ্রেস-ডাটাবেস উদাহরণ তৈরি করুন যা লুকারের সাথে সংযোগ পরীক্ষা এবং যাচাই করতে ব্যবহার করা হবে।
ক্লাউড শেলের ভিতরে, উদাহরণ তৈরি করুন:
gcloud compute instances create postgres-database \
--project=$project \
--zone=$zone \
--machine-type=e2-medium \
--subnet=database-subnet \
--no-address \
--private-network-ip 192.168.10.4 \
--image-family debian-12 \
--image-project debian-cloud \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt -y install postgresql postgresql-client postgresql-contrib -y"
নেটওয়ার্ক ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়ম তৈরি করুন
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute network-firewall-policies create on-prem-demo-policy --global
gcloud compute network-firewall-policies associations create --firewall-policy on-prem-demo-policy --network on-prem-demo --name on-prem-demo --global-firewall-policy
IAP কে আপনার VM দৃষ্টান্তের সাথে সংযোগ করার অনুমতি দিতে, একটি ফায়ারওয়াল নিয়ম তৈরি করুন যা:
- আপনি IAP ব্যবহার করে অ্যাক্সেসযোগ্য হতে চান এমন সমস্ত VM দৃষ্টান্তগুলিতে প্রযোজ্য।
- IP পরিসর 35.235.240.0/20 থেকে ট্র্যাফিক প্রবেশের অনুমতি দেয়। এই পরিসরে সমস্ত আইপি ঠিকানা রয়েছে যা IAP TCP ফরওয়ার্ডিংয়ের জন্য ব্যবহার করে।
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute network-firewall-policies rules create 1000 --action ALLOW --firewall-policy on-prem-demo-policy --description "SSH with IAP" --direction INGRESS --src-ip-ranges 35.235.240.0/20 --layer4-configs tcp:22 --global-firewall-policy
নিম্নলিখিত ফায়ারওয়াল নিয়মটি প্রক্সি-অনলি সাবনেট পরিসর থেকে নেটওয়ার্কের সমস্ত দৃষ্টান্তে ট্র্যাফিকের অনুমতি দেয়।
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute network-firewall-policies rules create 2001 --action ALLOW --firewall-policy on-prem-demo-policy --description "allow traffic from proxy only subnet" --direction INGRESS --src-ip-ranges 10.10.10.0/24 --global-firewall-policy --layer4-configs=tcp
10. হাইব্রিড সংযোগ
নিম্নলিখিত বিভাগে, আপনি একটি ক্লাউড রাউটার তৈরি করবেন যা আপনাকে বর্ডার গেটওয়ে প্রোটোকল (বিজিপি) ব্যবহার করে আপনার ভার্চুয়াল প্রাইভেট ক্লাউড (ভিপিসি) এবং পিয়ার নেটওয়ার্কের মধ্যে গতিশীলভাবে রুট বিনিময় করতে সক্ষম করে।
ক্লাউড রাউটার আপনার নেটওয়ার্কগুলিকে সংযুক্ত করতে একটি ক্লাউড ভিপিএন টানেলে একটি BGP সেশন সেট আপ করতে পারে৷ এটি স্বয়ংক্রিয়ভাবে নতুন সাবনেট আইপি অ্যাড্রেস রেঞ্জ শিখে এবং আপনার পিয়ার নেটওয়ার্কে সেগুলি ঘোষণা করে৷
নিম্নলিখিত ধাপে আপনি onprem.database1.com-এ হাইব্রিড NEG সংযোগ প্রদর্শন করতে looker-psc-demo VPC এবং on-prem-demo VPC-এর মধ্যে HA VPN স্থাপন করবেন।
লুকার-পিএসসি-ডেমোর জন্য HA VPN GW তৈরি করুন
যখন প্রতিটি গেটওয়ে তৈরি করা হয়, তখন দুটি বাহ্যিক IPv4 ঠিকানা স্বয়ংক্রিয়ভাবে বরাদ্দ করা হয়, প্রতিটি গেটওয়ে ইন্টারফেসের জন্য একটি।
ক্লাউড শেলের ভিতরে, HA VPN GW তৈরি করুন:
gcloud compute vpn-gateways create looker-psc-demo-vpn-gw \
--network=looker-psc-demo \
--region=$region
অন-প্রিম-ডেমোর জন্য HA VPN GW তৈরি করুন
যখন প্রতিটি গেটওয়ে তৈরি করা হয়, তখন দুটি বাহ্যিক IPv4 ঠিকানা স্বয়ংক্রিয়ভাবে বরাদ্দ করা হয়, প্রতিটি গেটওয়ে ইন্টারফেসের জন্য একটি।
ক্লাউড শেলের ভিতরে, HA VPN GW তৈরি করুন:
gcloud compute vpn-gateways create on-prem-vpn-gw \
--network=on-prem-demo\
--region=$region
HA VPN GW তৈরির বৈধতা দিন
কনসোল ব্যবহার করে, হাইব্রিড সংযোগ → ভিপিএন → ক্লাউড ভিপিএন গেটওয়েতে নেভিগেট করুন৷
Looker-psc-demo-এর জন্য ক্লাউড রাউটার তৈরি করুন
ক্লাউড শেলের ভিতরে, ক্লাউড রাউটার তৈরি করুন:
gcloud compute routers create looker-psc-demo-cr \
--region=$region \
--network=looker-psc-demo\
--asn=65001
Looker-psc-demo-এর জন্য VPN টানেল তৈরি করুন
আপনি প্রতিটি HA VPN গেটওয়েতে দুটি VPN টানেল তৈরি করবেন।
ভিপিএন টানেল 0 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 0 তৈরি করুন:
gcloud compute vpn-tunnels create looker-psc-demo-tunnel0 \
--peer-gcp-gateway on-prem-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \
--router looker-psc-demo-cr \
--vpn-gateway looker-psc-demo-vpn-gw \
--interface 0
ভিপিএন টানেল 1 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 1 তৈরি করুন:
gcloud compute vpn-tunnels create looker-psc-demo-tunnel1 \
--peer-gcp-gateway on-prem-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \
--router looker-psc-demo-cr \
--vpn-gateway looker-psc-demo-vpn-gw \
--interface 1
অন-প্রিম-ডেমোর জন্য ভিপিএন টানেল তৈরি করুন
আপনি প্রতিটি HA VPN গেটওয়েতে দুটি VPN টানেল তৈরি করবেন।
ভিপিএন টানেল 0 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 0 তৈরি করুন:
gcloud compute vpn-tunnels create on-prem-tunnel0 \
--peer-gcp-gateway looker-psc-demo-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \
--router on-prem-cr \
--vpn-gateway on-prem-vpn-gw \
--interface 0
ভিপিএন টানেল 1 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 1 তৈরি করুন:
gcloud compute vpn-tunnels create on-prem-tunnel1 \
--peer-gcp-gateway looker-psc-demo-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \
--router on-prem-cr \
--vpn-gateway on-prem-vpn-gw \
--interface 1
ভিপিএন টানেল তৈরির বৈধতা দিন
কনসোল ব্যবহার করে, হাইব্রিড সংযোগ → ভিপিএন → ক্লাউড ভিপিএন টানেলে নেভিগেট করুন।
11. BGP প্রতিবেশী স্থাপন
looker-psc-demo-এর জন্য একটি BGP ইন্টারফেস এবং পিয়ারিং তৈরি করুন
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface looker-psc-demo-cr \
--interface-name if-tunnel0-to-onprem \
--ip-address 169.254.1.1 \
--mask-length 30 \
--vpn-tunnel looker-psc-demo-tunnel0 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer looker-psc-demo-cr \
--peer-name bgp-on-premises-tunnel0 \
--interface if-tunnel1-to-onprem \
--peer-ip-address 169.254.1.2 \
--peer-asn 65002 \
--region $region
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface looker-psc-demo-cr \
--interface-name if-tunnel1-to-onprem \
--ip-address 169.254.2.1 \
--mask-length 30 \
--vpn-tunnel looker-psc-demo-tunnel1 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer looker-psc-demo-cr \
--peer-name bgp-on-premises-tunnel1 \
--interface if-tunnel2-to-onprem \
--peer-ip-address 169.254.2.2 \
--peer-asn 65002 \
--region $region
একটি BGP ইন্টারফেস তৈরি করুন এবং অন-প্রেম-ডেমোর জন্য পিয়ারিং করুন
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface on-prem-cr \
--interface-name if-tunnel0-to-looker-psc-demo \
--ip-address 169.254.1.2 \
--mask-length 30 \
--vpn-tunnel on-prem-tunnel0 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer on-prem-cr \
--peer-name bgp-looker-psc-demo-tunnel0 \
--interface if-tunnel1-to-looker-psc-demo \
--peer-ip-address 169.254.1.1 \
--peer-asn 65001 \
--region $region
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface on-prem-cr \
--interface-name if-tunnel1-to-looker-psc-demo \
--ip-address 169.254.2.2 \
--mask-length 30 \
--vpn-tunnel on-prem-tunnel1 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer on-prem-cr \
--peer-name bgp-looker-psc-demo-tunnel1\
--interface if-tunnel2-to-looker-psc-demo \
--peer-ip-address 169.254.2.1 \
--peer-asn 65001 \
--region $region
VPN টানেলের বিবরণ দেখতে হাইব্রিড সংযোগ → VPN- এ নেভিগেট করুন।
HA VPN এর মাধ্যমে looker-psc-demo শেখা রুট যাচাই করুন
এখন যেহেতু HA VPN টানেল এবং BGP সেশনগুলি প্রতিষ্ঠিত হয়েছে, ক্লাউড রাউটারের ডিফল্ট আচরণ হল সাবনেট রুটের বিজ্ঞাপন দেওয়া। লুকার-পিএসসি-ডেমো শেখা রুট দেখুন।
কনসোল ব্যবহার করে, ভিপিসি নেটওয়ার্ক → ভিপিসি নেটওয়ার্ক → লুকার-পিএসসি-ডেমো → রুট → অঞ্চল → ভিউতে নেভিগেট করুন
পর্যবেক্ষণ দেখুন looker-psc-demo অন-প্রেম-ডেমো ভিপিসি থেকে ডাটাবেস-সাবনেট 192.168.10.0/28 শিখেছে।
যাচাই করুন যে অন-প্রিম-ডেমো ভিপিসি HA VPN-এর উপর রুট শিখেছে
যেহেতু ক্লাউড রাউটারের ডিফল্ট আচরণ হল সমস্ত সাবনেটের বিজ্ঞাপন দেওয়া, তাই শুধুমাত্র প্রক্সি সাবনেট BGP-এ বিজ্ঞাপন দেওয়া হয়। হাইব্রিড NEG সার্ভার onprem.database1.com এর সাথে যোগাযোগ করার সময় উত্স ঠিকানা হিসাবে শুধুমাত্র প্রক্সি সাবনেট ব্যবহার করবে।
পর্যবেক্ষণ করুন অন-প্রেম-ডেমো লুকার-পিএসসি-ডেমো থেকে প্রক্সি-অনলি-সাবনেট 10.10.10.0/24 শিখেছে।
কনসোল ব্যবহার করে, ভিপিসি নেটওয়ার্ক → ভিপিসি নেটওয়ার্ক → অন-প্রিম-ডেমো → রুট → অঞ্চল → ভিউতে নেভিগেট করুন
12. লুকার পোস্টগ্রেস-ডাটাবেস তৈরি
নিম্নলিখিত বিভাগে, আপনি ক্লাউড শেল ব্যবহার করে postgres-database vm-এ একটি SSH সঞ্চালন করবেন।
ক্লাউড শেলের ভিতরে, পোস্টগ্রেস-ডাটাবেস উদাহরণে একটি ssh সম্পাদন করুন**:**
gcloud compute ssh --zone "$zone" "postgres-database" --project "$project"
OS-এর ভিতরে, পোস্টগ্রেস-ডাটাবেস উদাহরণের আইপি ঠিকানা (ens4) সনাক্ত করুন এবং নোট করুন:
ip a
উদাহরণ:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1460 qdisc mq state UP group default qlen 1000
link/ether 42:01:c0:a8:0a:04 brd ff:ff:ff:ff:ff:ff
altname enp0s4
inet 192.168.10.4/32 metric 100 scope global dynamic ens4
valid_lft 66779sec preferred_lft 66779sec
inet6 fe80::4001:c0ff:fea8:a04/64 scope link
valid_lft forever preferred_lft forever
OS এর ভিতরে, postgresql এ লগ ইন করুন:
sudo -u postgres psql postgres
OS এর ভিতরে, পাসওয়ার্ড প্রম্পট লিখুন:
\password postgres
OS এর ভিতরে, postgres-এ পাসওয়ার্ড সেট করুন (একই পাসওয়ার্ড দুবার লিখুন):
postgres
উদাহরণ:
user@postgres-database:~$ sudo -u postgres psql postgres
\password postgres
psql (13.11 (Debian 13.11-0+deb11u1))
Type "help" for help.
postgres=# \password postgres
Enter new password for user "postgres":
Enter it again:
OS এর ভিতরে, পোস্টগ্রেস থেকে প্রস্থান করুন:
\q
উদাহরণ:
postgres=# \q
user@postgres-database:~$
নিম্নলিখিত বিভাগে, আপনি IPv4 স্থানীয় সংযোগের অধীনে pg_hba.conf ফাইলে আপনার পোস্টগ্রেস-ডাটাবেস ইন্সট্যান্স আইপি (192.168.10.4) এবং প্রক্সি-অনলি সাবনেট (10.10.10.0/24) সন্নিবেশ করাবেন।
sudo nano /etc/postgresql/15/main/pg_hba.conf
নীচের স্ক্রিনশটটি সম্পূর্ণ আপডেট:
নিম্নলিখিত বিভাগে, নীচের স্ক্রিনশট প্রতি সমস্ত '*' আইপি ঠিকানা শুনতে postgresql.conf-এ মন্তব্য করুন:
sudo nano /etc/postgresql/15/main/postgresql.conf
আগে:
পরে:
OS এর ভিতরে, postgresql পরিষেবাটি পুনরায় চালু করুন:
sudo service postgresql restart
ওএসের ভিতরে, পোস্টগ্রেস্কএল স্ট্যাটাসটিকে সক্রিয় হিসাবে যাচাই করুন:
sudo service postgresql status
উদাহরণ:
ওএসের ভিতরে, পোস্টগ্রেস্কএল স্ট্যাটাসটিকে সক্রিয় হিসাবে যাচাই করুন:
user@postgres-database:/$ sudo service postgresql status
● postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; preset: enabled)
Active: active (exited) since Mon 2024-09-02 12:10:10 UTC; 1min 46s ago
Process: 20486 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 20486 (code=exited, status=0/SUCCESS)
CPU: 2ms
Sep 02 12:10:10 postgres-database systemd[1]: Starting postgresql.service - PostgreSQL RDBMS...
Sep 02 12:10:10 postgres-database systemd[1]: Finished postgresql.service - PostgreSQL RDBMS.
13. পোস্টগ্রেস ডাটাবেস তৈরি করুন
নিচের বিভাগে, আপনি postgres_looker এবং স্কিমা looker_schema নামে একটি পোস্টগ্রেস ডাটাবেস তৈরি করবেন যা লুকার থেকে অন-প্রিমিসেস সংযোগ যাচাই করতে ব্যবহৃত হয়।
ওএসের ভিতরে, পোস্টগ্রেসে লগ ইন করুন:
sudo -u postgres psql postgres
OS এর ভিতরে, ডাটাবেস তৈরি করুন:
create database postgres_looker;
OS এর ভিতরে, ডাটাবেস তালিকাভুক্ত করুন:
\l
OS এর ভিতরে, পাসওয়ার্ড postgreslooker দিয়ে ব্যবহারকারী postgres_looker তৈরি করুন:
create user postgres_looker with password 'postgreslooker';
OS এর ভিতরে, ডাটাবেসের সাথে সংযোগ করুন:
\c postgres_looker;
OS এর ভিতরে, স্কিমা লুকার-স্কিমা তৈরি করুন এবং ক্লাউড শেল প্রম্পটে প্রস্থান করুন।
create schema looker_schema;
create table looker_schema.test(firstname CHAR(15), lastname CHAR(20));
exit
Exit from the OS, returning you to cloud shell:
\q
উদাহরণ:
user@postgres-database:/$ sudo -u postgres psql postgres
psql (15.8 (Debian 15.8-0+deb12u1))
Type "help" for help.
postgres=# create database postgres_looker;
CREATE DATABASE
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | ICU Locale | Locale Provider | Access privileges
-----------------+----------+----------+---------+---------+------------+-----------------+-----------------------
postgres | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc |
postgres_looker | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc |
template0 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc | =c/postgres +
| | | | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc | =c/postgres +
| | | | | | | postgres=CTc/postgres
(4 rows)
postgres=# create user postgres_looker with password 'postgreslooker';
CREATE ROLE
postgres=# \c postgres_looker;
You are now connected to database "postgres_looker" as user "postgres".
postgres_looker=# create schema looker_schema;
create table looker_schema.test(firstname CHAR(15), lastname CHAR(20));
exit
CREATE SCHEMA
CREATE TABLE
postgres_looker-# \q
14. পোস্টগ্রেস পোস্টগ্রেস-ডাটাবেসের সাথে লুকারকে একীভূত করুন
নিম্নলিখিত বিভাগে আপনি অন-প্রিমিসেস পোস্টগ্রেস-ডাটাবেস উদাহরণে একটি ডেটাবেস সংযোগ তৈরি করতে লুকার কনসোল ব্যবহার করবেন।
অ্যাডমিন → ডেটাবেস → সংযোগ → সংযোগ যোগ করুন নির্বাচন করুন
নীচের স্ক্রিনশট অনুযায়ী সংযোগের বিবরণ পূরণ করুন, সংযোগ নির্বাচন করুন
সংযোগ এখন কনফিগার করা হয়েছে
15. লুকার সংযোগ যাচাই করুন
নিচের বিভাগে আপনি শিখবেন কিভাবে লুকার 'টেস্ট' অ্যাকশন এবং TCPDUMP ব্যবহার করে অন-প্রেম-ভিপিসি-তে পোস্টগ্রেস-ডাটাবেসের সাথে লুকার সংযোগ যাচাই করতে হয়।
ক্লাউড শেল থেকে, সেশনের সময় শেষ হলে পোস্টগ্রেস-ডাটাবেসে লগ ইন করুন।
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
zone=[YOUR-ZONE]
echo $project
echo $region
gcloud compute ssh --zone "$zone" "postgres-database" --project "$project"
OS থেকে, শুধুমাত্র প্রক্সি সাবনেট 10.10.10.0/24 সহ একটি TCPDUMP ফিল্টার তৈরি করুন
sudo tcpdump -i any net 10.10.10.0/24 -nn
ডেটা কানেকশন অ্যাডমিন → ডেটাবেস → সংযোগ → পোস্টগ্রেস-ডাটাবেস → টেস্টে নেভিগেট করুন
একবার পরীক্ষা নির্বাচিত হলে লুকার পোস্টগ্রেস-ডাটাবেসের সাথে সংযুক্ত হবে যেমনটি নীচে নির্দেশিত হয়েছে:
পরিষ্কার করুন
একটি একক ক্লাউড শেল টার্মিনাল থেকে ল্যাব উপাদান মুছে দিন
gcloud compute service-attachments delete onpremdatabase1-svc-attachment --region=$region -q
gcloud compute forwarding-rules delete producer-hybrid-neg-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 on-prem-nat --router=on-prem-cr --router-region=$region -q
gcloud compute network-endpoint-groups delete on-prem-hybrid-neg --zone=$zone -q
gcloud compute addresses delete hybrid-neg-lb-ip --region=$region -q
gcloud compute vpn-tunnels delete looker-psc-demo-tunnel0 looker-psc-demo-tunnel1 on-prem-tunnel0 on-prem-tunnel1 --region=$region -q
gcloud compute vpn-gateways delete looker-psc-demo-vpn-gw on-prem-vpn-gw --region=$region -q
gcloud compute routers delete looker-psc-demo-cr on-prem-cr --region=$region -q
gcloud compute instances delete postgres-database --zone=$zone -q
gcloud compute addresses delete on-prem-database1-ip --region=$region -q
gcloud compute networks subnets delete database-subnet --region=$region -q
gcloud compute network-firewall-policies rules delete 2001 --firewall-policy on-prem-demo-policy --global-firewall-policy -q
gcloud compute network-firewall-policies rules delete 1000 --firewall-policy on-prem-demo-policy --global-firewall-policy -q
gcloud compute network-firewall-policies associations delete --firewall-policy=on-prem-demo-policy --name=on-prem-demo --global-firewall-policy -q
gcloud compute networks subnets delete $region-proxy-only-subnet --region=$region -q
gcloud compute networks subnets delete producer-psc-nat-subnet --region=$region -q
gcloud compute networks subnets delete producer-psc-fr-subnet --region=$region -q
gcloud compute networks delete on-prem-demo -q
gcloud compute networks delete looker-psc-demo -q
16. অভিনন্দন
অভিনন্দন, আপনি প্রাইভেট সার্ভিস কানেক্ট দ্বারা চালিত লুকার কনসোল ব্যবহার করে HA-VPN-এর মাধ্যমে অন-প্রিমিসেস ডাটাবেসের সাথে সংযোগ সফলভাবে কনফিগার এবং যাচাই করেছেন।
আপনি প্রযোজকের পরিকাঠামো তৈরি করেছেন, শিখেছেন কীভাবে একটি হাইব্রিড NEG, প্রযোজক পরিষেবা এবং লুকার PSC এন্ডপয়েন্ট তৈরি করতে হয় যা প্রযোজক পরিষেবার সাথে সংযোগের অনুমতি দেয়৷
Cosmopup মনে করে কোডল্যাবগুলি দুর্দান্ত!!
এরপর কি?
এই কোডল্যাবগুলির কিছু পরীক্ষা করে দেখুন...
- পরিষেবাগুলি প্রকাশ এবং ব্যবহার করতে ব্যক্তিগত পরিষেবা সংযোগ ব্যবহার করে৷
- প্রাইভেট সার্ভিস কানেক্ট এবং একটি অভ্যন্তরীণ TCP প্রক্সি লোড ব্যালেন্সার ব্যবহার করে হাইব্রিড নেটওয়ার্কিংয়ের মাধ্যমে অন-প্রিম পরিষেবাগুলিতে সংযোগ করুন
- সমস্ত প্রকাশিত প্রাইভেট সার্ভিস কানেক্ট কোডল্যাবগুলিতে অ্যাক্সেস
আরও পড়া এবং ভিডিও
রেফারেন্স ডক্স
1. ভূমিকা
এই কোডল্যাবে আপনি একটি অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার ব্যবহার করে H-VPN এর উপর একটি অন-প্রিমিসেস পোস্টগ্রেস ডাটাবেসের সাথে একটি দক্ষিণমুখী সংযোগ সম্পাদন করবেন এবং একটি পরিষেবা গ্রাহক হিসাবে Looker PSC থেকে আহ্বান করা হাইব্রিড নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপ।
প্রাইভেট সার্ভিস কানেক্ট হল Google ক্লাউড নেটওয়ার্কিং এর একটি ক্ষমতা যা গ্রাহকদের তাদের VPC নেটওয়ার্কের ভিতর থেকে ব্যক্তিগতভাবে পরিচালিত পরিষেবাগুলি অ্যাক্সেস করতে দেয়। একইভাবে, এটি পরিচালিত পরিষেবা প্রযোজকদের তাদের নিজস্ব আলাদা ভিপিসি নেটওয়ার্কে এই পরিষেবাগুলি হোস্ট করতে এবং তাদের গ্রাহকদের একটি ব্যক্তিগত সংযোগ অফার করার অনুমতি দেয়। উদাহরণ স্বরূপ, আপনি যখন লুকার অ্যাক্সেস করতে প্রাইভেট সার্ভিস কানেক্ট ব্যবহার করেন, তখন আপনিই পরিষেবার ভোক্তা এবং Google হল পরিষেবা প্রযোজক, যেমন চিত্র 1-এ হাইলাইট করা হয়েছে৷
চিত্র 1।
সাউথবাউন্ড অ্যাক্সেস, রিভার্স পিএসসি নামেও পরিচিত, ভোক্তাকে প্রযোজক হিসাবে একটি প্রকাশিত পরিষেবা তৈরি করতে সক্ষম করে যাতে ভিপিসি-তে, ম্যানেজড পরিষেবা এবং হাইব্রিডগুলিতে লুকার অ্যাক্সেসের অনুমতি দেওয়া যায়৷ সাউথবাউন্ড সংযোগগুলি যে কোনও অঞ্চলে স্থাপন করা যেতে পারে, যেখানে লুকার পিএসসি মোতায়েন করা হয়েছে তা নির্বিশেষে, চিত্র 2-এ হাইলাইট করা হয়েছে৷
চিত্র 2।
আপনি কি শিখবেন
- নেটওয়ার্ক প্রয়োজনীয়তা
- একটি ব্যক্তিগত পরিষেবা সংযোগ প্রযোজক পরিষেবা তৈরি করুন৷
- লুকারে একটি প্রাইভেট সার্ভিস কানেক্ট এন্ডপয়েন্ট তৈরি করুন
- একটি টেস্ট সংযোগ ব্যবহার করে লুকার থেকে অন-প্রিমিসেস পোস্টগ্রেস ডাটাবেসের সাথে সংযোগ স্থাপন করুন
আপনি কি প্রয়োজন হবে
- মালিকের অনুমতি সহ Google ক্লাউড প্রকল্প
- বিদ্যমান লুকার পিএসসি উদাহরণ
2. আপনি কি তৈরি করবেন
অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার এবং Private Service Connect (PSC) এর মাধ্যমে একটি পরিষেবা হিসাবে প্রকাশিত হাইব্রিড NEG স্থাপন করতে আপনি একটি প্রযোজক নেটওয়ার্ক, looker-psc-demo প্রতিষ্ঠা করবেন। একটি অন-প্রিমিস ডাটাবেস প্রদর্শন করতে, আপনি HA-VPN ব্যবহার করে looker-psc-demo VPC এর সাথে সংযুক্ত একটি অন-প্রিম-ডেমো ভিপিসি স্থাপন করবেন।
আপনি প্রযোজক পরিষেবাতে বৈধতা অ্যাক্সেসের জন্য নিম্নলিখিত ক্রিয়াগুলি সম্পাদন করবেন:
- প্রডিউসার সার্ভিস অ্যাটাচমেন্টের সাথে যুক্ত লুকারে একটি PSC এন্ডপয়েন্ট তৈরি করুন
- অন-প্রিমিসেস পোস্টগ্রেস ডাটাবেসের সাথে সংযোগ বৈধতা সম্পাদন করতে লুকার কনসোল ব্যবহার করুন
3. নেটওয়ার্ক প্রয়োজনীয়তা
নীচে প্রযোজক নেটওয়ার্কের জন্য নেটওয়ার্ক প্রয়োজনীয়তাগুলির ভাঙ্গন রয়েছে, এই কোডল্যাবের ভোক্তা হল লুকার পিএসসি উদাহরণ৷
উপাদান | বর্ণনা |
ভিপিসি (লুকার-পিএসসি-ডেমো) | কাস্টম মোড ভিপিসি |
ভিপিসি (অন-প্রিম-ডেমো) | কাস্টম মোড ভিপিসি |
PSC NAT সাবনেট | ভোক্তা ভিপিসি নেটওয়ার্কের প্যাকেটগুলি উৎস NAT (SNAT) ব্যবহার করে অনুবাদ করা হয় যাতে তাদের মূল উৎস আইপি ঠিকানাগুলি প্রযোজকের ভিপিসি নেটওয়ার্কে NAT সাবনেট থেকে উৎস IP ঠিকানায় রূপান্তরিত হয়। |
পিএসসি ফরওয়ার্ডিং নিয়ম সাবনেট | আঞ্চলিক অভ্যন্তরীণ TCP প্রক্সি লোড ব্যালেন্সারের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয় |
PSC NEG সাবনেট | নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয় |
প্রক্সি শুধুমাত্র সাবনেট | লোড ব্যালেন্সারের প্রতিটি প্রক্সিকে একটি অভ্যন্তরীণ IP ঠিকানা বরাদ্দ করা হয়। একটি প্রক্সি থেকে ব্যাকএন্ড VM বা এন্ডপয়েন্টে পাঠানো প্যাকেটগুলিতে শুধুমাত্র প্রক্সি সাবনেট থেকে একটি উৎস আইপি ঠিকানা থাকে। |
হাইব্রিড NEG | অন-প্রিমিসেস এবং অন্যান্য ক্লাউড পরিষেবাগুলি অন্য যে কোনও ক্লাউড লোড ব্যালেন্সিং ব্যাকএন্ডের মতোই বিবেচিত হয়। মূল পার্থক্য হল আপনি এই ব্যাকএন্ডগুলির শেষ পয়েন্টগুলি কনফিগার করতে একটি হাইব্রিড সংযোগ NEG ব্যবহার করেন৷ শেষ পয়েন্টগুলি অবশ্যই বৈধ আইপি:পোর্ট সমন্বয় হতে হবে যেখানে আপনার লোড ব্যালেন্সার হাইব্রিড সংযোগ পণ্য যেমন ক্লাউড ভিপিএন বা ক্লাউড ইন্টারকানেক্ট ব্যবহার করে পৌঁছাতে পারে। |
ব্যাকএন্ড পরিষেবা | একটি ব্যাকএন্ড পরিষেবা আপনার লোড ব্যালেন্সার এবং আপনার ব্যাকএন্ড সংস্থানগুলির মধ্যে একটি সেতু হিসাবে কাজ করে। টিউটোরিয়ালে, ব্যাকএন্ড পরিষেবা হাইব্রিড এনইজি-র সাথে যুক্ত। |
ক্লাউড রাউটার |
|
HA-VPN | গুগল ক্লাউড ভিপিসি নেটওয়ার্কের মধ্যে HA VPN । এই টপোলজিতে, আপনি প্রতিটি নেটওয়ার্কে একটি HA VPN গেটওয়ে ব্যবহার করে দুটি Google ক্লাউড VPC নেটওয়ার্ক সংযোগ করতে পারেন। ভিপিসি নেটওয়ার্ক একই অঞ্চলে বা একাধিক অঞ্চলে হতে পারে। |
মেঘ NAT | ইন্টারনেট বহির্গমনের জন্য অন-প্রিম-ডেমো ভিপিসি দ্বারা ব্যবহৃত |
4. কোডল্যাব টপোলজি
5. সেটআপ এবং প্রয়োজনীয়তা
স্ব-গতিসম্পন্ন পরিবেশ সেটআপ
- Google ক্লাউড কনসোলে সাইন-ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ আপনার যদি ইতিমধ্যেই একটি Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে।
- প্রকল্পের নাম এই প্রকল্পের অংশগ্রহণকারীদের জন্য প্রদর্শনের নাম। এটি একটি অক্ষর স্ট্রিং যা Google API দ্বারা ব্যবহৃত হয় না। আপনি সবসময় এটি আপডেট করতে পারেন.
- প্রোজেক্ট আইডি সমস্ত Google ক্লাউড প্রোজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (সেট করার পরে পরিবর্তন করা যাবে না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত আপনি এটা কি যত্ন না. বেশিরভাগ কোডল্যাবে, আপনাকে আপনার প্রকল্প আইডি উল্লেখ করতে হবে (সাধারণত
PROJECT_ID
হিসাবে চিহ্নিত)। আপনি যদি জেনারেট করা আইডি পছন্দ না করেন, তাহলে আপনি অন্য একটি এলোমেলো আইডি তৈরি করতে পারেন। বিকল্পভাবে, আপনি নিজের চেষ্টা করতে পারেন, এবং এটি উপলব্ধ কিনা দেখতে পারেন। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রকল্পের সময়কালের জন্য থাকে। - আপনার তথ্যের জন্য, একটি তৃতীয় মান আছে, একটি প্রকল্প নম্বর , যা কিছু API ব্যবহার করে। ডকুমেন্টেশনে এই তিনটি মান সম্পর্কে আরও জানুন।
- এরপরে, ক্লাউড রিসোর্স/এপিআই ব্যবহার করতে আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে। এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ হবে না, যদি কিছু হয়। এই টিউটোরিয়ালের বাইরে বিলিং এড়াতে সংস্থানগুলি বন্ধ করতে, আপনি আপনার তৈরি করা সংস্থানগুলি মুছতে বা প্রকল্প মুছতে পারেন। নতুন Google ক্লাউড ব্যবহারকারীরা $300 USD বিনামূল্যের ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷
ক্লাউড শেল শুরু করুন
যদিও Google ক্লাউড আপনার ল্যাপটপ থেকে দূরবর্তীভাবে পরিচালিত হতে পারে, এই কোডল্যাবে আপনি Google ক্লাউড শেল ব্যবহার করবেন, একটি কমান্ড লাইন পরিবেশ যা ক্লাউডে চলছে।
Google ক্লাউড কনসোল থেকে, উপরের ডানদিকে টুলবারে ক্লাউড শেল আইকনে ক্লিক করুন:
পরিবেশের ব্যবস্থা করতে এবং সংযোগ করতে এটি শুধুমাত্র কয়েক মুহূর্ত নিতে হবে। এটি সমাপ্ত হলে, আপনি এই মত কিছু দেখতে হবে:
এই ভার্চুয়াল মেশিনটি আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুল দিয়ে লোড করা হয়েছে। এটি একটি ক্রমাগত 5GB হোম ডিরেক্টরি অফার করে এবং Google ক্লাউডে চলে, যা নেটওয়ার্ক কর্মক্ষমতা এবং প্রমাণীকরণকে ব্যাপকভাবে উন্নত করে। এই কোডল্যাবে আপনার সমস্ত কাজ একটি ব্রাউজারে করা যেতে পারে। আপনার কিছু ইন্সটল করার দরকার নেই।
6. আপনি শুরু করার আগে
এপিআই সক্ষম করুন
ক্লাউড শেলের ভিতরে, নিশ্চিত করুন যে আপনার প্রকল্প আইডি সেট আপ করা আছে:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
zone=[YOUR-ZONE]
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
লোড ব্যালেন্সারের আইপি ঠিকানা সংরক্ষণ করুন
ক্লাউড শেলের ভিতরে, লোড ব্যালেন্সারের জন্য একটি অভ্যন্তরীণ আইপি ঠিকানা সংরক্ষণ করুন:
gcloud compute addresses create hybrid-neg-lb-ip \
--region=$region \
--subnet=producer-psc-fr-subnet
ক্লাউড শেলের ভিতরে, সংরক্ষিত আইপি ঠিকানা দেখুন।
gcloud compute addresses describe hybrid-neg-lb-ip \
--region=$region | grep -i address:
উদাহরণ আউটপুট:
gcloud compute addresses describe hybrid-neg-lb-ip --region=$region | grep -i address:
address: 172.16.20.2
হাইব্রিড NEG সেট আপ করুন
একটি হাইব্রিড NEG তৈরি করুন এবং –নেটওয়ার্ক-এন্ডপয়েন্ট-টাইপ NON_GCP_PRIVATE_IP_PORT-এ সেট করুন
ক্লাউড শেলের ভিতরে, অন-প্রিম ডাটাবেস অ্যাক্সেস করতে ব্যবহৃত একটি হাইব্রিড NEG তৈরি করুন:
gcloud compute network-endpoint-groups create on-prem-hybrid-neg \
--network-endpoint-type=NON_GCP_PRIVATE_IP_PORT \
--network=looker-psc-demo \
--zone=$zone
ক্লাউড শেলের ভিতরে, আইপি দিয়ে হাইব্রিড NEG আপডেট করুন: অন-প্রিম ডাটাবেসের পোর্ট, 192.168.10.4 এবং পোর্ট 5432, টিউটোরিয়ালের পরবর্তী ধাপে তৈরি করা হয়েছে:
gcloud compute network-endpoint-groups update on-prem-hybrid-neg \
--add-endpoint=ip=192.168.10.4,port=5432 \
--zone=$zone
একটি আঞ্চলিক স্বাস্থ্য পরীক্ষা তৈরি করুন
ক্লাউড শেলের ভিতরে, একটি স্বাস্থ্য-পরীক্ষা তৈরি করুন যা অন-প্রিম ডাটাবেস পোর্ট, 5432 অনুসন্ধান করে:
gcloud compute health-checks create tcp on-prem-5432-healthcheck \
--region=$region \
--port=5432
নেটওয়ার্ক ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়ম তৈরি করুন
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
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 --region=$region --load-balancing-scheme=INTERNAL_MANAGED --protocol=TCP --region=$region --health-checks=on-prem-5432-healthcheck --health-checks-region=$region
ক্লাউড শেলের ভিতরে, ব্যাকএন্ড পরিষেবাতে হাইব্রিড NEG ব্যাকএন্ড যোগ করুন:
gcloud compute backend-services add-backend producer-backend-svc --network-endpoint-group=on-prem-hybrid-neg --network-endpoint-group-zone=$zone --balancing-mode=CONNECTION --max-connections=100 --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-hybrid-neg-fr \
--load-balancing-scheme=INTERNAL_MANAGED \
--network-tier=PREMIUM \
--network=looker-psc-demo \
--subnet=producer-psc-fr-subnet \
--address=hybrid-neg-lb-ip \
--target-tcp-proxy=producer-lb-tcp-proxy \
--target-tcp-proxy-region=$region \
--region=$region \
--ports=5432
সার্ভিস অ্যাটাচমেন্ট তৈরি করুন
ক্লাউড শেলের ভিতরে, পরিষেবা সংযুক্তি তৈরি করুন, onpremdatabase1-svc-attachment:
gcloud compute service-attachments create onpremdatabase1-svc-attachment --region=$region --producer-forwarding-rule=producer-hybrid-neg-fr --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=producer-psc-nat-subnet
এরপরে, লুকারে PSC এন্ডপয়েন্ট কনফিগার করার জন্য প্রোজেক্ট দিয়ে শুরু করে সেল্ফলিঙ্ক URI-তে তালিকাভুক্ত পরিষেবা সংযুক্তিটি পান এবং নোট করুন।
সেলফলিঙ্ক: প্রকল্প/<your-project-id>/regions/<your-region>/serviceAttachments/onpremdatabase1-svc-attachment
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute service-attachments describe onpremdatabase1-svc-attachment --region=$region
প্রত্যাশিত আউটপুট উদাহরণ:
connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-09-01T16:07:51.600-07:00'
description: ''
enableProxyProtocol: false
fingerprint: cFt9rERR1iE=
id: '2549689544315850024'
kind: compute#serviceAttachment
name: onpremdatabase1-svc-attachment
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$project/regions/$region/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
high: '19348441121424360'
low: '2549689544315850024'
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/onpremdatabase1-svc-attachment
targetService: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-hybrid-neg-fr
ক্লাউড কনসোলে, নেভিগেট করুন:
নেটওয়ার্ক পরিষেবা → ব্যক্তিগত পরিষেবা সংযোগ → প্রকাশিত পরিষেবা৷
9. লুকারে একটি PSC এন্ডপয়েন্ট সংযোগ স্থাপন করুন
নিম্নলিখিত বিভাগে, আপনি একটি একক ডোমেনের জন্য ক্লাউড শেল-এ –psc-সার্ভিস-অ্যাটাচমেন্ট পতাকা ব্যবহারের মাধ্যমে লুকার কোর PSC-এর সাথে প্রযোজক পরিষেবা সংযুক্তি সংযুক্ত করবেন৷
ক্লাউড শেলের ভিতরে, আপনার পরিবেশের সাথে মেলে নিম্নলিখিত পরামিতিগুলি আপডেট করে psc অ্যাসোসিয়েশন তৈরি করুন:
- INSTANCE_NAME: আপনার লুকারের নাম (Google ক্লাউড কোর) উদাহরণ।
- DOMAIN_1: onprem.database1.com
- SERVICE_ATTACHMENT_1: পরিষেবা সংযুক্তি তৈরি করার সময় URI ক্যাপচার করা হয়েছে, onpremdatabase1-svc-সংযুক্তি
- অঞ্চল: যে অঞ্চলে আপনার লুকার (গুগল ক্লাউড কোর) উদাহরণ হোস্ট করা হয়েছে৷
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
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=onprem.database1.com,attachment=projects/$project/regions/$region/serviceAttachments/onpremdatabase1-svc-attachment --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": "looker.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": "onprem.database1.com",
"targetServiceAttachmentUri": "projects/$project/regions/$region/serviceAttachments/onpremdatabase1-svc-attachment"
}
]
},
"pscEnabled": true,
"state": "ACTIVE",
"updateTime": "2024-09-01T23:15:07.426372901Z"
}
ক্লাউড কনসোলে PSC এন্ডপয়েন্ট যাচাই করুন
ক্লাউড কনসোল থেকে আপনি পিএসসি সংযোগ যাচাই করতে পারেন
ক্লাউড কনসোলে, নেভিগেট করুন:
লুকার → লুকার ইনস্ট্যান্স → বিশদ বিবরণ৷
অন-প্রিম ভিপিসি নেটওয়ার্ক তৈরি করুন
ভিপিসি নেটওয়ার্ক
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute networks create on-prem-demo --project=$project --subnet-mode=custom
Postgresql ডাটাবেস সাবনেট তৈরি করুন
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute networks subnets create database-subnet --project=$project --range=192.168.10.0/28 --network=on-prem-demo --region=$region
ক্লাউড শেলের ভিতরে, একটি অভ্যন্তরীণ IPv4 ঠিকানা সংরক্ষণ করুন, যা onprem.database1.com, 192.168.10.4 এর জন্য ব্যবহৃত হয়:
gcloud compute addresses create on-prem-database1-ip --region=$region --subnet=database-subnet --addresses 192.168.10.4
অন-প্রিম-ডেমো ভিপিসির জন্য ক্লাউড রাউটার তৈরি করুন
সফ্টওয়্যার প্যাকেজ ইনস্টলেশনের জন্য টিউটোরিয়ালে ক্লাউড NAT ব্যবহার করা হয় কারণ VM উদাহরণের একটি বাহ্যিক IP ঠিকানা নেই।
ক্লাউড শেলের ভিতরে, ক্লাউড NAT এবং HA-VPN এর সাথে ব্যবহৃত ক্লাউড রাউটার তৈরি করুন:
gcloud compute routers create on-prem-cr \
--region=$region \
--network=on-prem-demo \
--asn=65002
ক্লাউড শেলের ভিতরে, NAT গেটওয়ে তৈরি করুন:
gcloud compute routers nats create on-prem-nat --router=on-prem-cr --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region $region
ডাটাবেস পরীক্ষার উদাহরণ তৈরি করুন
একটি পোস্টগ্রেস-ডাটাবেস উদাহরণ তৈরি করুন যা লুকারের সাথে সংযোগ পরীক্ষা এবং যাচাই করতে ব্যবহার করা হবে।
ক্লাউড শেলের ভিতরে, উদাহরণ তৈরি করুন:
gcloud compute instances create postgres-database \
--project=$project \
--zone=$zone \
--machine-type=e2-medium \
--subnet=database-subnet \
--no-address \
--private-network-ip 192.168.10.4 \
--image-family debian-12 \
--image-project debian-cloud \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt -y install postgresql postgresql-client postgresql-contrib -y"
নেটওয়ার্ক ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়ম তৈরি করুন
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute network-firewall-policies create on-prem-demo-policy --global
gcloud compute network-firewall-policies associations create --firewall-policy on-prem-demo-policy --network on-prem-demo --name on-prem-demo --global-firewall-policy
IAP কে আপনার VM দৃষ্টান্তের সাথে সংযোগ করার অনুমতি দিতে, একটি ফায়ারওয়াল নিয়ম তৈরি করুন যা:
- আপনি IAP ব্যবহার করে অ্যাক্সেসযোগ্য হতে চান এমন সমস্ত VM দৃষ্টান্তগুলিতে প্রযোজ্য।
- IP পরিসর 35.235.240.0/20 থেকে ট্র্যাফিক প্রবেশের অনুমতি দেয়। এই পরিসরে সমস্ত আইপি ঠিকানা রয়েছে যা IAP TCP ফরওয়ার্ডিংয়ের জন্য ব্যবহার করে।
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute network-firewall-policies rules create 1000 --action ALLOW --firewall-policy on-prem-demo-policy --description "SSH with IAP" --direction INGRESS --src-ip-ranges 35.235.240.0/20 --layer4-configs tcp:22 --global-firewall-policy
নিম্নলিখিত ফায়ারওয়াল নিয়মটি প্রক্সি-অনলি সাবনেট পরিসর থেকে নেটওয়ার্কের সমস্ত দৃষ্টান্তে ট্র্যাফিকের অনুমতি দেয়।
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute network-firewall-policies rules create 2001 --action ALLOW --firewall-policy on-prem-demo-policy --description "allow traffic from proxy only subnet" --direction INGRESS --src-ip-ranges 10.10.10.0/24 --global-firewall-policy --layer4-configs=tcp
10. হাইব্রিড সংযোগ
নিম্নলিখিত বিভাগে, আপনি একটি ক্লাউড রাউটার তৈরি করবেন যা আপনাকে বর্ডার গেটওয়ে প্রোটোকল (বিজিপি) ব্যবহার করে আপনার ভার্চুয়াল প্রাইভেট ক্লাউড (ভিপিসি) এবং পিয়ার নেটওয়ার্কের মধ্যে গতিশীলভাবে রুট বিনিময় করতে সক্ষম করে।
ক্লাউড রাউটার আপনার নেটওয়ার্কগুলিকে সংযুক্ত করতে একটি ক্লাউড ভিপিএন টানেলে একটি BGP সেশন সেট আপ করতে পারে৷ এটি স্বয়ংক্রিয়ভাবে নতুন সাবনেট আইপি অ্যাড্রেস রেঞ্জ শিখে এবং আপনার পিয়ার নেটওয়ার্কে সেগুলি ঘোষণা করে৷
নিম্নলিখিত ধাপে আপনি onprem.database1.com-এ হাইব্রিড NEG সংযোগ প্রদর্শন করতে looker-psc-demo VPC এবং on-prem-demo VPC-এর মধ্যে HA VPN স্থাপন করবেন।
লুকার-পিএসসি-ডেমোর জন্য HA VPN GW তৈরি করুন
যখন প্রতিটি গেটওয়ে তৈরি করা হয়, তখন দুটি বাহ্যিক IPv4 ঠিকানা স্বয়ংক্রিয়ভাবে বরাদ্দ করা হয়, প্রতিটি গেটওয়ে ইন্টারফেসের জন্য একটি।
ক্লাউড শেলের ভিতরে, HA VPN GW তৈরি করুন:
gcloud compute vpn-gateways create looker-psc-demo-vpn-gw \
--network=looker-psc-demo \
--region=$region
অন-প্রিম-ডেমোর জন্য HA VPN GW তৈরি করুন
যখন প্রতিটি গেটওয়ে তৈরি করা হয়, তখন দুটি বাহ্যিক IPv4 ঠিকানা স্বয়ংক্রিয়ভাবে বরাদ্দ করা হয়, প্রতিটি গেটওয়ে ইন্টারফেসের জন্য একটি।
ক্লাউড শেলের ভিতরে, HA VPN GW তৈরি করুন:
gcloud compute vpn-gateways create on-prem-vpn-gw \
--network=on-prem-demo\
--region=$region
HA VPN GW তৈরির বৈধতা দিন
কনসোল ব্যবহার করে, হাইব্রিড সংযোগ → ভিপিএন → ক্লাউড ভিপিএন গেটওয়েতে নেভিগেট করুন৷
Looker-psc-demo-এর জন্য ক্লাউড রাউটার তৈরি করুন
ক্লাউড শেলের ভিতরে, ক্লাউড রাউটার তৈরি করুন:
gcloud compute routers create looker-psc-demo-cr \
--region=$region \
--network=looker-psc-demo\
--asn=65001
Looker-psc-demo-এর জন্য VPN টানেল তৈরি করুন
আপনি প্রতিটি HA VPN গেটওয়েতে দুটি VPN টানেল তৈরি করবেন।
ভিপিএন টানেল 0 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 0 তৈরি করুন:
gcloud compute vpn-tunnels create looker-psc-demo-tunnel0 \
--peer-gcp-gateway on-prem-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \
--router looker-psc-demo-cr \
--vpn-gateway looker-psc-demo-vpn-gw \
--interface 0
ভিপিএন টানেল 1 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 1 তৈরি করুন:
gcloud compute vpn-tunnels create looker-psc-demo-tunnel1 \
--peer-gcp-gateway on-prem-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \
--router looker-psc-demo-cr \
--vpn-gateway looker-psc-demo-vpn-gw \
--interface 1
অন-প্রিম-ডেমোর জন্য ভিপিএন টানেল তৈরি করুন
আপনি প্রতিটি HA VPN গেটওয়েতে দুটি VPN টানেল তৈরি করবেন।
ভিপিএন টানেল 0 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 0 তৈরি করুন:
gcloud compute vpn-tunnels create on-prem-tunnel0 \
--peer-gcp-gateway looker-psc-demo-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \
--router on-prem-cr \
--vpn-gateway on-prem-vpn-gw \
--interface 0
ভিপিএন টানেল 1 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 1 তৈরি করুন:
gcloud compute vpn-tunnels create on-prem-tunnel1 \
--peer-gcp-gateway looker-psc-demo-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \
--router on-prem-cr \
--vpn-gateway on-prem-vpn-gw \
--interface 1
ভিপিএন টানেল তৈরির বৈধতা দিন
কনসোল ব্যবহার করে, হাইব্রিড সংযোগ → ভিপিএন → ক্লাউড ভিপিএন টানেলে নেভিগেট করুন।
11. BGP প্রতিবেশী স্থাপন
looker-psc-demo-এর জন্য একটি BGP ইন্টারফেস এবং পিয়ারিং তৈরি করুন
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface looker-psc-demo-cr \
--interface-name if-tunnel0-to-onprem \
--ip-address 169.254.1.1 \
--mask-length 30 \
--vpn-tunnel looker-psc-demo-tunnel0 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer looker-psc-demo-cr \
--peer-name bgp-on-premises-tunnel0 \
--interface if-tunnel1-to-onprem \
--peer-ip-address 169.254.1.2 \
--peer-asn 65002 \
--region $region
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface looker-psc-demo-cr \
--interface-name if-tunnel1-to-onprem \
--ip-address 169.254.2.1 \
--mask-length 30 \
--vpn-tunnel looker-psc-demo-tunnel1 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer looker-psc-demo-cr \
--peer-name bgp-on-premises-tunnel1 \
--interface if-tunnel2-to-onprem \
--peer-ip-address 169.254.2.2 \
--peer-asn 65002 \
--region $region
একটি BGP ইন্টারফেস তৈরি করুন এবং অন-প্রেম-ডেমোর জন্য পিয়ারিং করুন
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface on-prem-cr \
--interface-name if-tunnel0-to-looker-psc-demo \
--ip-address 169.254.1.2 \
--mask-length 30 \
--vpn-tunnel on-prem-tunnel0 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer on-prem-cr \
--peer-name bgp-looker-psc-demo-tunnel0 \
--interface if-tunnel1-to-looker-psc-demo \
--peer-ip-address 169.254.1.1 \
--peer-asn 65001 \
--region $region
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface on-prem-cr \
--interface-name if-tunnel1-to-looker-psc-demo \
--ip-address 169.254.2.2 \
--mask-length 30 \
--vpn-tunnel on-prem-tunnel1 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer on-prem-cr \
--peer-name bgp-looker-psc-demo-tunnel1\
--interface if-tunnel2-to-looker-psc-demo \
--peer-ip-address 169.254.2.1 \
--peer-asn 65001 \
--region $region
VPN টানেলের বিবরণ দেখতে হাইব্রিড সংযোগ → VPN- এ নেভিগেট করুন।
HA VPN এর মাধ্যমে looker-psc-demo শেখা রুট যাচাই করুন
এখন যেহেতু HA VPN টানেল এবং BGP সেশনগুলি প্রতিষ্ঠিত হয়েছে, ক্লাউড রাউটারের ডিফল্ট আচরণ হল সাবনেট রুটের বিজ্ঞাপন দেওয়া। লুকার-পিএসসি-ডেমো শেখা রুট দেখুন।
কনসোল ব্যবহার করে, ভিপিসি নেটওয়ার্ক → ভিপিসি নেটওয়ার্ক → লুকার-পিএসসি-ডেমো → রুট → অঞ্চল → ভিউতে নেভিগেট করুন
পর্যবেক্ষণ দেখুন looker-psc-demo অন-প্রেম-ডেমো ভিপিসি থেকে ডাটাবেস-সাবনেট 192.168.10.0/28 শিখেছে।
যাচাই করুন যে অন-প্রিম-ডেমো ভিপিসি HA VPN-এর উপর রুট শিখেছে
যেহেতু ক্লাউড রাউটারের ডিফল্ট আচরণ হল সমস্ত সাবনেটের বিজ্ঞাপন দেওয়া, তাই শুধুমাত্র প্রক্সি সাবনেট BGP-এ বিজ্ঞাপন দেওয়া হয়। হাইব্রিড NEG সার্ভার onprem.database1.com এর সাথে যোগাযোগ করার সময় উত্স ঠিকানা হিসাবে শুধুমাত্র প্রক্সি সাবনেট ব্যবহার করবে।
পর্যবেক্ষণ করুন অন-প্রেম-ডেমো লুকার-পিএসসি-ডেমো থেকে প্রক্সি-অনলি-সাবনেট 10.10.10.0/24 শিখেছে।
কনসোল ব্যবহার করে, ভিপিসি নেটওয়ার্ক → ভিপিসি নেটওয়ার্ক → অন-প্রিম-ডেমো → রুট → অঞ্চল → ভিউতে নেভিগেট করুন
12. লুকার পোস্টগ্রেস-ডাটাবেস তৈরি
নিম্নলিখিত বিভাগে, আপনি ক্লাউড শেল ব্যবহার করে postgres-database vm-এ একটি SSH সঞ্চালন করবেন।
ক্লাউড শেলের ভিতরে, পোস্টগ্রেস-ডাটাবেস উদাহরণে একটি ssh সম্পাদন করুন**:**
gcloud compute ssh --zone "$zone" "postgres-database" --project "$project"
OS-এর ভিতরে, পোস্টগ্রেস-ডাটাবেস উদাহরণের আইপি ঠিকানা (ens4) সনাক্ত করুন এবং নোট করুন:
ip a
উদাহরণ:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1460 qdisc mq state UP group default qlen 1000
link/ether 42:01:c0:a8:0a:04 brd ff:ff:ff:ff:ff:ff
altname enp0s4
inet 192.168.10.4/32 metric 100 scope global dynamic ens4
valid_lft 66779sec preferred_lft 66779sec
inet6 fe80::4001:c0ff:fea8:a04/64 scope link
valid_lft forever preferred_lft forever
OS এর ভিতরে, postgresql এ লগ ইন করুন:
sudo -u postgres psql postgres
OS এর ভিতরে, পাসওয়ার্ড প্রম্পট লিখুন:
\password postgres
OS এর ভিতরে, postgres-এ পাসওয়ার্ড সেট করুন (একই পাসওয়ার্ড দুবার লিখুন):
postgres
উদাহরণ:
user@postgres-database:~$ sudo -u postgres psql postgres
\password postgres
psql (13.11 (Debian 13.11-0+deb11u1))
Type "help" for help.
postgres=# \password postgres
Enter new password for user "postgres":
Enter it again:
OS এর ভিতরে, পোস্টগ্রেস থেকে প্রস্থান করুন:
\q
উদাহরণ:
postgres=# \q
user@postgres-database:~$
নিম্নলিখিত বিভাগে, আপনি IPv4 স্থানীয় সংযোগের অধীনে pg_hba.conf ফাইলে আপনার পোস্টগ্রেস-ডাটাবেস ইন্সট্যান্স আইপি (192.168.10.4) এবং প্রক্সি-অনলি সাবনেট (10.10.10.0/24) সন্নিবেশ করাবেন।
sudo nano /etc/postgresql/15/main/pg_hba.conf
নীচের স্ক্রিনশটটি সম্পূর্ণ আপডেট:
নিম্নলিখিত বিভাগে, নীচের স্ক্রিনশট প্রতি সমস্ত '*' আইপি ঠিকানা শুনতে postgresql.conf-এ মন্তব্য করুন:
sudo nano /etc/postgresql/15/main/postgresql.conf
আগে:
পরে:
OS এর ভিতরে, postgresql পরিষেবাটি পুনরায় চালু করুন:
sudo service postgresql restart
ওএসের ভিতরে, পোস্টগ্রেস্কএল স্ট্যাটাসটিকে সক্রিয় হিসাবে যাচাই করুন:
sudo service postgresql status
উদাহরণ:
ওএসের ভিতরে, পোস্টগ্রেস্কএল স্ট্যাটাসটিকে সক্রিয় হিসাবে যাচাই করুন:
user@postgres-database:/$ sudo service postgresql status
● postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; preset: enabled)
Active: active (exited) since Mon 2024-09-02 12:10:10 UTC; 1min 46s ago
Process: 20486 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 20486 (code=exited, status=0/SUCCESS)
CPU: 2ms
Sep 02 12:10:10 postgres-database systemd[1]: Starting postgresql.service - PostgreSQL RDBMS...
Sep 02 12:10:10 postgres-database systemd[1]: Finished postgresql.service - PostgreSQL RDBMS.
13. পোস্টগ্রেস ডাটাবেস তৈরি করুন
নিচের বিভাগে, আপনি postgres_looker এবং স্কিমা looker_schema নামে একটি পোস্টগ্রেস ডাটাবেস তৈরি করবেন যা লুকার থেকে অন-প্রিমিসেস সংযোগ যাচাই করতে ব্যবহৃত হয়।
ওএসের ভিতরে, পোস্টগ্রেসে লগ ইন করুন:
sudo -u postgres psql postgres
OS এর ভিতরে, ডাটাবেস তৈরি করুন:
create database postgres_looker;
OS এর ভিতরে, ডাটাবেস তালিকাভুক্ত করুন:
\l
OS এর ভিতরে, পাসওয়ার্ড postgreslooker দিয়ে ব্যবহারকারী postgres_looker তৈরি করুন:
create user postgres_looker with password 'postgreslooker';
OS এর ভিতরে, ডাটাবেসের সাথে সংযোগ করুন:
\c postgres_looker;
OS এর ভিতরে, স্কিমা লুকার-স্কিমা তৈরি করুন এবং ক্লাউড শেল প্রম্পটে প্রস্থান করুন।
create schema looker_schema;
create table looker_schema.test(firstname CHAR(15), lastname CHAR(20));
exit
Exit from the OS, returning you to cloud shell:
\q
উদাহরণ:
user@postgres-database:/$ sudo -u postgres psql postgres
psql (15.8 (Debian 15.8-0+deb12u1))
Type "help" for help.
postgres=# create database postgres_looker;
CREATE DATABASE
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | ICU Locale | Locale Provider | Access privileges
-----------------+----------+----------+---------+---------+------------+-----------------+-----------------------
postgres | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc |
postgres_looker | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc |
template0 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc | =c/postgres +
| | | | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc | =c/postgres +
| | | | | | | postgres=CTc/postgres
(4 rows)
postgres=# create user postgres_looker with password 'postgreslooker';
CREATE ROLE
postgres=# \c postgres_looker;
You are now connected to database "postgres_looker" as user "postgres".
postgres_looker=# create schema looker_schema;
create table looker_schema.test(firstname CHAR(15), lastname CHAR(20));
exit
CREATE SCHEMA
CREATE TABLE
postgres_looker-# \q
14. পোস্টগ্রেস পোস্টগ্রেস-ডাটাবেসের সাথে লুকারকে একীভূত করুন
নিম্নলিখিত বিভাগে আপনি অন-প্রিমিসেস পোস্টগ্রেস-ডাটাবেস উদাহরণে একটি ডেটাবেস সংযোগ তৈরি করতে লুকার কনসোল ব্যবহার করবেন।
অ্যাডমিন → ডেটাবেস → সংযোগ → সংযোগ যোগ করুন নির্বাচন করুন
নীচের স্ক্রিনশট অনুযায়ী সংযোগের বিবরণ পূরণ করুন, সংযোগ নির্বাচন করুন
সংযোগ এখন কনফিগার করা হয়েছে
15. লুকার সংযোগ যাচাই করুন
নিচের বিভাগে আপনি শিখবেন কিভাবে লুকার 'টেস্ট' অ্যাকশন এবং TCPDUMP ব্যবহার করে অন-প্রেম-ভিপিসি-তে পোস্টগ্রেস-ডাটাবেসের সাথে লুকার সংযোগ যাচাই করতে হয়।
ক্লাউড শেল থেকে, সেশনের সময় শেষ হলে পোস্টগ্রেস-ডাটাবেসে লগ ইন করুন।
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
zone=[YOUR-ZONE]
echo $project
echo $region
gcloud compute ssh --zone "$zone" "postgres-database" --project "$project"
OS থেকে, শুধুমাত্র প্রক্সি সাবনেট 10.10.10.0/24 সহ একটি TCPDUMP ফিল্টার তৈরি করুন
sudo tcpdump -i any net 10.10.10.0/24 -nn
ডেটা কানেকশন অ্যাডমিন → ডেটাবেস → সংযোগ → পোস্টগ্রেস-ডাটাবেস → টেস্টে নেভিগেট করুন
একবার পরীক্ষা নির্বাচিত হলে লুকার পোস্টগ্রেস-ডাটাবেসের সাথে সংযুক্ত হবে যেমনটি নীচে নির্দেশিত হয়েছে:
পরিষ্কার করুন
একটি একক ক্লাউড শেল টার্মিনাল থেকে ল্যাব উপাদান মুছে দিন
gcloud compute service-attachments delete onpremdatabase1-svc-attachment --region=$region -q
gcloud compute forwarding-rules delete producer-hybrid-neg-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 on-prem-nat --router=on-prem-cr --router-region=$region -q
gcloud compute network-endpoint-groups delete on-prem-hybrid-neg --zone=$zone -q
gcloud compute addresses delete hybrid-neg-lb-ip --region=$region -q
gcloud compute vpn-tunnels delete looker-psc-demo-tunnel0 looker-psc-demo-tunnel1 on-prem-tunnel0 on-prem-tunnel1 --region=$region -q
gcloud compute vpn-gateways delete looker-psc-demo-vpn-gw on-prem-vpn-gw --region=$region -q
gcloud compute routers delete looker-psc-demo-cr on-prem-cr --region=$region -q
gcloud compute instances delete postgres-database --zone=$zone -q
gcloud compute addresses delete on-prem-database1-ip --region=$region -q
gcloud compute networks subnets delete database-subnet --region=$region -q
gcloud compute network-firewall-policies rules delete 2001 --firewall-policy on-prem-demo-policy --global-firewall-policy -q
gcloud compute network-firewall-policies rules delete 1000 --firewall-policy on-prem-demo-policy --global-firewall-policy -q
gcloud compute network-firewall-policies associations delete --firewall-policy=on-prem-demo-policy --name=on-prem-demo --global-firewall-policy -q
gcloud compute networks subnets delete $region-proxy-only-subnet --region=$region -q
gcloud compute networks subnets delete producer-psc-nat-subnet --region=$region -q
gcloud compute networks subnets delete producer-psc-fr-subnet --region=$region -q
gcloud compute networks delete on-prem-demo -q
gcloud compute networks delete looker-psc-demo -q
16. অভিনন্দন
অভিনন্দন, আপনি প্রাইভেট সার্ভিস কানেক্ট দ্বারা চালিত লুকার কনসোল ব্যবহার করে HA-VPN-এর মাধ্যমে অন-প্রিমিসেস ডাটাবেসের সাথে সংযোগ সফলভাবে কনফিগার এবং যাচাই করেছেন।
আপনি প্রযোজকের পরিকাঠামো তৈরি করেছেন, শিখেছেন কীভাবে একটি হাইব্রিড NEG, প্রযোজক পরিষেবা এবং লুকার PSC এন্ডপয়েন্ট তৈরি করতে হয় যা প্রযোজক পরিষেবার সাথে সংযোগের অনুমতি দেয়৷
Cosmopup মনে করে কোডল্যাবগুলি দুর্দান্ত!!
এরপর কি?
এই কোডল্যাবগুলির কিছু পরীক্ষা করে দেখুন...
- পরিষেবাগুলি প্রকাশ এবং ব্যবহার করতে ব্যক্তিগত পরিষেবা সংযোগ ব্যবহার করে৷
- প্রাইভেট সার্ভিস কানেক্ট এবং একটি অভ্যন্তরীণ TCP প্রক্সি লোড ব্যালেন্সার ব্যবহার করে হাইব্রিড নেটওয়ার্কিংয়ের মাধ্যমে অন-প্রিম পরিষেবাগুলিতে সংযোগ করুন
- সমস্ত প্রকাশিত প্রাইভেট সার্ভিস কানেক্ট কোডল্যাবগুলিতে অ্যাক্সেস
আরও পড়া এবং ভিডিও
রেফারেন্স ডক্স
1. ভূমিকা
এই কোডল্যাবে আপনি একটি অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার ব্যবহার করে H-VPN এর উপর একটি অন-প্রিমিসেস পোস্টগ্রেস ডাটাবেসের সাথে একটি দক্ষিণমুখী সংযোগ সম্পাদন করবেন এবং একটি পরিষেবা গ্রাহক হিসাবে Looker PSC থেকে আহ্বান করা হাইব্রিড নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপ।
প্রাইভেট সার্ভিস কানেক্ট হল Google ক্লাউড নেটওয়ার্কিং এর একটি ক্ষমতা যা গ্রাহকদের তাদের VPC নেটওয়ার্কের ভিতর থেকে ব্যক্তিগতভাবে পরিচালিত পরিষেবাগুলি অ্যাক্সেস করতে দেয়। একইভাবে, এটি পরিচালিত পরিষেবা প্রযোজকদের তাদের নিজস্ব আলাদা ভিপিসি নেটওয়ার্কে এই পরিষেবাগুলি হোস্ট করতে এবং তাদের গ্রাহকদের একটি ব্যক্তিগত সংযোগ অফার করার অনুমতি দেয়। উদাহরণ স্বরূপ, আপনি যখন লুকার অ্যাক্সেস করতে প্রাইভেট সার্ভিস কানেক্ট ব্যবহার করেন, তখন আপনিই পরিষেবার ভোক্তা এবং Google হল পরিষেবা প্রযোজক, যেমন চিত্র 1-এ হাইলাইট করা হয়েছে৷
চিত্র 1।
সাউথবাউন্ড অ্যাক্সেস, রিভার্স পিএসসি নামেও পরিচিত, ভোক্তাকে প্রযোজক হিসাবে একটি প্রকাশিত পরিষেবা তৈরি করতে সক্ষম করে যাতে ভিপিসি-তে, ম্যানেজড পরিষেবা এবং হাইব্রিডগুলিতে লুকার অ্যাক্সেসের অনুমতি দেওয়া যায়৷ সাউথবাউন্ড সংযোগগুলি যে কোনও অঞ্চলে স্থাপন করা যেতে পারে, যেখানে লুকার পিএসসি মোতায়েন করা হয়েছে তা নির্বিশেষে, চিত্র 2-এ হাইলাইট করা হয়েছে৷
চিত্র 2।
আপনি কি শিখবেন
- নেটওয়ার্ক প্রয়োজনীয়তা
- একটি ব্যক্তিগত পরিষেবা সংযোগ প্রযোজক পরিষেবা তৈরি করুন৷
- লুকারে একটি প্রাইভেট সার্ভিস কানেক্ট এন্ডপয়েন্ট তৈরি করুন
- একটি টেস্ট সংযোগ ব্যবহার করে লুকার থেকে অন-প্রিমিসেস পোস্টগ্রেস ডাটাবেসের সাথে সংযোগ স্থাপন করুন
আপনি কি প্রয়োজন হবে
- মালিকের অনুমতি সহ Google ক্লাউড প্রকল্প
- বিদ্যমান লুকার পিএসসি উদাহরণ
2. আপনি কি তৈরি করবেন
অভ্যন্তরীণ tcp প্রক্সি লোড ব্যালেন্সার এবং Private Service Connect (PSC) এর মাধ্যমে একটি পরিষেবা হিসাবে প্রকাশিত হাইব্রিড NEG স্থাপন করতে আপনি একটি প্রযোজক নেটওয়ার্ক, looker-psc-demo প্রতিষ্ঠা করবেন। একটি অন-প্রিমিস ডাটাবেস প্রদর্শন করতে, আপনি HA-VPN ব্যবহার করে looker-psc-demo VPC এর সাথে সংযুক্ত একটি অন-প্রিম-ডেমো ভিপিসি স্থাপন করবেন।
আপনি প্রযোজক পরিষেবাতে বৈধতা অ্যাক্সেসের জন্য নিম্নলিখিত ক্রিয়াগুলি সম্পাদন করবেন:
- প্রডিউসার সার্ভিস অ্যাটাচমেন্টের সাথে যুক্ত লুকারে একটি PSC এন্ডপয়েন্ট তৈরি করুন
- অন-প্রিমিসেস পোস্টগ্রেস ডাটাবেসের সাথে সংযোগ বৈধতা সম্পাদন করতে লুকার কনসোল ব্যবহার করুন
3. নেটওয়ার্ক প্রয়োজনীয়তা
নীচে প্রযোজক নেটওয়ার্কের জন্য নেটওয়ার্ক প্রয়োজনীয়তাগুলির ভাঙ্গন রয়েছে, এই কোডল্যাবের ভোক্তা হল লুকার পিএসসি উদাহরণ৷
উপাদান | বর্ণনা |
ভিপিসি (লুকার-পিএসসি-ডেমো) | কাস্টম মোড ভিপিসি |
ভিপিসি (অন-প্রিম-ডেমো) | কাস্টম মোড ভিপিসি |
PSC NAT সাবনেট | ভোক্তা ভিপিসি নেটওয়ার্কের প্যাকেটগুলি উৎস NAT (SNAT) ব্যবহার করে অনুবাদ করা হয় যাতে তাদের মূল উৎস আইপি ঠিকানাগুলি প্রযোজকের ভিপিসি নেটওয়ার্কে NAT সাবনেট থেকে উৎস IP ঠিকানায় রূপান্তরিত হয়। |
পিএসসি ফরওয়ার্ডিং নিয়ম সাবনেট | আঞ্চলিক অভ্যন্তরীণ TCP প্রক্সি লোড ব্যালেন্সারের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয় |
PSC NEG সাবনেট | নেটওয়ার্ক এন্ডপয়েন্ট গ্রুপের জন্য একটি IP ঠিকানা বরাদ্দ করতে ব্যবহৃত হয় |
প্রক্সি শুধুমাত্র সাবনেট | লোড ব্যালেন্সারের প্রতিটি প্রক্সিকে একটি অভ্যন্তরীণ IP ঠিকানা বরাদ্দ করা হয়। একটি প্রক্সি থেকে ব্যাকএন্ড VM বা এন্ডপয়েন্টে পাঠানো প্যাকেটগুলিতে শুধুমাত্র প্রক্সি সাবনেট থেকে একটি উৎস আইপি ঠিকানা থাকে। |
হাইব্রিড NEG | অন-প্রিমিসেস এবং অন্যান্য ক্লাউড পরিষেবাগুলি অন্য যে কোনও ক্লাউড লোড ব্যালেন্সিং ব্যাকএন্ডের মতোই বিবেচিত হয়। মূল পার্থক্য হল আপনি এই ব্যাকএন্ডগুলির শেষ পয়েন্টগুলি কনফিগার করতে একটি হাইব্রিড সংযোগ NEG ব্যবহার করেন৷ শেষ পয়েন্টগুলি অবশ্যই বৈধ আইপি:পোর্ট সমন্বয় হতে হবে যেখানে আপনার লোড ব্যালেন্সার হাইব্রিড সংযোগ পণ্য যেমন ক্লাউড ভিপিএন বা ক্লাউড ইন্টারকানেক্ট ব্যবহার করে পৌঁছাতে পারে। |
ব্যাকএন্ড পরিষেবা | একটি ব্যাকএন্ড পরিষেবা আপনার লোড ব্যালেন্সার এবং আপনার ব্যাকএন্ড সংস্থানগুলির মধ্যে একটি সেতু হিসাবে কাজ করে। টিউটোরিয়ালে, ব্যাকএন্ড পরিষেবা হাইব্রিড এনইজি-র সাথে যুক্ত। |
ক্লাউড রাউটার |
|
HA-VPN | গুগল ক্লাউড ভিপিসি নেটওয়ার্কের মধ্যে HA VPN । এই টপোলজিতে, আপনি প্রতিটি নেটওয়ার্কে একটি HA VPN গেটওয়ে ব্যবহার করে দুটি Google ক্লাউড VPC নেটওয়ার্ক সংযোগ করতে পারেন। ভিপিসি নেটওয়ার্ক একই অঞ্চলে বা একাধিক অঞ্চলে হতে পারে। |
মেঘ NAT | ইন্টারনেট বহির্গমনের জন্য অন-প্রিম-ডেমো ভিপিসি দ্বারা ব্যবহৃত |
4. কোডল্যাব টপোলজি
5. সেটআপ এবং প্রয়োজনীয়তা
স্ব-গতিসম্পন্ন পরিবেশ সেটআপ
- Google ক্লাউড কনসোলে সাইন-ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ আপনার যদি ইতিমধ্যেই একটি Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে।
- প্রকল্পের নাম এই প্রকল্পের অংশগ্রহণকারীদের জন্য প্রদর্শনের নাম। এটি একটি অক্ষর স্ট্রিং যা Google API দ্বারা ব্যবহৃত হয় না। আপনি সবসময় এটি আপডেট করতে পারেন.
- প্রোজেক্ট আইডি সমস্ত Google ক্লাউড প্রোজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (সেট করার পরে পরিবর্তন করা যাবে না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত আপনি এটা কি যত্ন না. বেশিরভাগ কোডল্যাবে, আপনাকে আপনার প্রকল্প আইডি উল্লেখ করতে হবে (সাধারণত
PROJECT_ID
হিসাবে চিহ্নিত)। আপনি যদি জেনারেট করা আইডি পছন্দ না করেন, তাহলে আপনি অন্য একটি এলোমেলো আইডি তৈরি করতে পারেন। বিকল্পভাবে, আপনি নিজের চেষ্টা করতে পারেন, এবং এটি উপলব্ধ কিনা দেখতে পারেন। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রকল্পের সময়কালের জন্য থাকে। - আপনার তথ্যের জন্য, একটি তৃতীয় মান আছে, একটি প্রকল্প নম্বর , যা কিছু API ব্যবহার করে। ডকুমেন্টেশনে এই তিনটি মান সম্পর্কে আরও জানুন।
- এরপরে, ক্লাউড রিসোর্স/এপিআই ব্যবহার করতে আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে। এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ হবে না, যদি কিছু হয়। এই টিউটোরিয়ালের বাইরে বিলিং এড়াতে সংস্থানগুলি বন্ধ করতে, আপনি আপনার তৈরি করা সংস্থানগুলি মুছতে বা প্রকল্প মুছতে পারেন। নতুন Google ক্লাউড ব্যবহারকারীরা $300 USD বিনামূল্যের ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷
ক্লাউড শেল শুরু করুন
যদিও Google ক্লাউড আপনার ল্যাপটপ থেকে দূরবর্তীভাবে পরিচালিত হতে পারে, এই কোডল্যাবে আপনি Google ক্লাউড শেল ব্যবহার করবেন, একটি কমান্ড লাইন পরিবেশ যা ক্লাউডে চলছে।
Google ক্লাউড কনসোল থেকে, উপরের ডানদিকে টুলবারে ক্লাউড শেল আইকনে ক্লিক করুন:
পরিবেশের ব্যবস্থা করতে এবং সংযোগ করতে এটি শুধুমাত্র কয়েক মুহূর্ত নিতে হবে। এটি সমাপ্ত হলে, আপনি এই মত কিছু দেখতে হবে:
এই ভার্চুয়াল মেশিনটি আপনার প্রয়োজনীয় সমস্ত ডেভেলপমেন্ট টুল দিয়ে লোড করা হয়েছে। এটি একটি ক্রমাগত 5GB হোম ডিরেক্টরি অফার করে এবং Google ক্লাউডে চলে, যা নেটওয়ার্ক কর্মক্ষমতা এবং প্রমাণীকরণকে ব্যাপকভাবে উন্নত করে। এই কোডল্যাবে আপনার সমস্ত কাজ একটি ব্রাউজারে করা যেতে পারে। আপনার কিছু ইন্সটল করার দরকার নেই।
6. আপনি শুরু করার আগে
এপিআই সক্ষম করুন
ক্লাউড শেলের ভিতরে, নিশ্চিত করুন যে আপনার প্রকল্প আইডি সেট আপ করা আছে:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
zone=[YOUR-ZONE]
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
লোড ব্যালেন্সারের আইপি ঠিকানা সংরক্ষণ করুন
ক্লাউড শেলের ভিতরে, লোড ব্যালেন্সারের জন্য একটি অভ্যন্তরীণ আইপি ঠিকানা সংরক্ষণ করুন:
gcloud compute addresses create hybrid-neg-lb-ip \
--region=$region \
--subnet=producer-psc-fr-subnet
ক্লাউড শেলের ভিতরে, সংরক্ষিত আইপি ঠিকানা দেখুন।
gcloud compute addresses describe hybrid-neg-lb-ip \
--region=$region | grep -i address:
উদাহরণ আউটপুট:
gcloud compute addresses describe hybrid-neg-lb-ip --region=$region | grep -i address:
address: 172.16.20.2
হাইব্রিড NEG সেট আপ করুন
একটি হাইব্রিড NEG তৈরি করুন এবং –নেটওয়ার্ক-এন্ডপয়েন্ট-টাইপ NON_GCP_PRIVATE_IP_PORT-এ সেট করুন
ক্লাউড শেলের ভিতরে, অন-প্রিম ডাটাবেস অ্যাক্সেস করতে ব্যবহৃত একটি হাইব্রিড NEG তৈরি করুন:
gcloud compute network-endpoint-groups create on-prem-hybrid-neg \
--network-endpoint-type=NON_GCP_PRIVATE_IP_PORT \
--network=looker-psc-demo \
--zone=$zone
ক্লাউড শেলের ভিতরে, আইপি দিয়ে হাইব্রিড NEG আপডেট করুন: অন-প্রিম ডাটাবেসের পোর্ট, 192.168.10.4 এবং পোর্ট 5432, টিউটোরিয়ালের পরবর্তী ধাপে তৈরি করা হয়েছে:
gcloud compute network-endpoint-groups update on-prem-hybrid-neg \
--add-endpoint=ip=192.168.10.4,port=5432 \
--zone=$zone
একটি আঞ্চলিক স্বাস্থ্য পরীক্ষা তৈরি করুন
ক্লাউড শেলের ভিতরে, একটি স্বাস্থ্য-পরীক্ষা তৈরি করুন যা অন-প্রিম ডাটাবেস পোর্ট, 5432 অনুসন্ধান করে:
gcloud compute health-checks create tcp on-prem-5432-healthcheck \
--region=$region \
--port=5432
নেটওয়ার্ক ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়ম তৈরি করুন
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
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 --region=$region --load-balancing-scheme=INTERNAL_MANAGED --protocol=TCP --region=$region --health-checks=on-prem-5432-healthcheck --health-checks-region=$region
ক্লাউড শেলের ভিতরে, ব্যাকএন্ড পরিষেবাতে হাইব্রিড NEG ব্যাকএন্ড যোগ করুন:
gcloud compute backend-services add-backend producer-backend-svc --network-endpoint-group=on-prem-hybrid-neg --network-endpoint-group-zone=$zone --balancing-mode=CONNECTION --max-connections=100 --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-hybrid-neg-fr \
--load-balancing-scheme=INTERNAL_MANAGED \
--network-tier=PREMIUM \
--network=looker-psc-demo \
--subnet=producer-psc-fr-subnet \
--address=hybrid-neg-lb-ip \
--target-tcp-proxy=producer-lb-tcp-proxy \
--target-tcp-proxy-region=$region \
--region=$region \
--ports=5432
সার্ভিস অ্যাটাচমেন্ট তৈরি করুন
ক্লাউড শেলের ভিতরে, পরিষেবা সংযুক্তি তৈরি করুন, onpremdatabase1-svc-attachment:
gcloud compute service-attachments create onpremdatabase1-svc-attachment --region=$region --producer-forwarding-rule=producer-hybrid-neg-fr --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=producer-psc-nat-subnet
এরপরে, লুকারে PSC এন্ডপয়েন্ট কনফিগার করার জন্য প্রোজেক্ট দিয়ে শুরু করে সেল্ফলিঙ্ক URI-তে তালিকাভুক্ত পরিষেবা সংযুক্তিটি পান এবং নোট করুন।
সেলফলিঙ্ক: প্রকল্প/<your-project-id>/regions/<your-region>/serviceAttachments/onpremdatabase1-svc-attachment
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute service-attachments describe onpremdatabase1-svc-attachment --region=$region
প্রত্যাশিত আউটপুট উদাহরণ:
connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-09-01T16:07:51.600-07:00'
description: ''
enableProxyProtocol: false
fingerprint: cFt9rERR1iE=
id: '2549689544315850024'
kind: compute#serviceAttachment
name: onpremdatabase1-svc-attachment
natSubnets:
- https://www.googleapis.com/compute/v1/projects/$project/regions/$region/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
high: '19348441121424360'
low: '2549689544315850024'
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/onpremdatabase1-svc-attachment
targetService: https://www.googleapis.com/compute/v1/projects/$project/regions/$region/forwardingRules/producer-hybrid-neg-fr
ক্লাউড কনসোলে, নেভিগেট করুন:
নেটওয়ার্ক পরিষেবা → ব্যক্তিগত পরিষেবা সংযোগ → প্রকাশিত পরিষেবা৷
9. লুকারে একটি PSC এন্ডপয়েন্ট সংযোগ স্থাপন করুন
নিম্নলিখিত বিভাগে, আপনি একটি একক ডোমেনের জন্য ক্লাউড শেল-এ –psc-সার্ভিস-অ্যাটাচমেন্ট পতাকা ব্যবহারের মাধ্যমে লুকার কোর PSC-এর সাথে প্রযোজক পরিষেবা সংযুক্তি সংযুক্ত করবেন৷
ক্লাউড শেলের ভিতরে, আপনার পরিবেশের সাথে মেলে নিম্নলিখিত পরামিতিগুলি আপডেট করে psc অ্যাসোসিয়েশন তৈরি করুন:
- INSTANCE_NAME: আপনার লুকারের নাম (Google ক্লাউড কোর) উদাহরণ।
- DOMAIN_1: onprem.database1.com
- SERVICE_ATTACHMENT_1: পরিষেবা সংযুক্তি তৈরি করার সময় URI ক্যাপচার করা হয়েছে, onpremdatabase1-svc-সংযুক্তি
- অঞ্চল: যে অঞ্চলে আপনার লুকার (গুগল ক্লাউড কোর) উদাহরণ হোস্ট করা হয়েছে৷
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
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=onprem.database1.com,attachment=projects/$project/regions/$region/serviceAttachments/onpremdatabase1-svc-attachment --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": "looker.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": "onprem.database1.com",
"targetServiceAttachmentUri": "projects/$project/regions/$region/serviceAttachments/onpremdatabase1-svc-attachment"
}
]
},
"pscEnabled": true,
"state": "ACTIVE",
"updateTime": "2024-09-01T23:15:07.426372901Z"
}
ক্লাউড কনসোলে PSC এন্ডপয়েন্ট যাচাই করুন
ক্লাউড কনসোল থেকে আপনি পিএসসি সংযোগ যাচাই করতে পারেন
ক্লাউড কনসোলে, নেভিগেট করুন:
লুকার → লুকার ইনস্ট্যান্স → বিশদ বিবরণ৷
অন-প্রিম ভিপিসি নেটওয়ার্ক তৈরি করুন
ভিপিসি নেটওয়ার্ক
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute networks create on-prem-demo --project=$project --subnet-mode=custom
Postgresql ডাটাবেস সাবনেট তৈরি করুন
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute networks subnets create database-subnet --project=$project --range=192.168.10.0/28 --network=on-prem-demo --region=$region
ক্লাউড শেলের ভিতরে, একটি অভ্যন্তরীণ IPv4 ঠিকানা সংরক্ষণ করুন, যা onprem.database1.com, 192.168.10.4 এর জন্য ব্যবহৃত হয়:
gcloud compute addresses create on-prem-database1-ip --region=$region --subnet=database-subnet --addresses 192.168.10.4
অন-প্রিম-ডেমো ভিপিসির জন্য ক্লাউড রাউটার তৈরি করুন
সফ্টওয়্যার প্যাকেজ ইনস্টলেশনের জন্য টিউটোরিয়ালে ক্লাউড NAT ব্যবহার করা হয় কারণ VM উদাহরণের একটি বাহ্যিক IP ঠিকানা নেই।
ক্লাউড শেলের ভিতরে, ক্লাউড NAT এবং HA-VPN এর সাথে ব্যবহৃত ক্লাউড রাউটার তৈরি করুন:
gcloud compute routers create on-prem-cr \
--region=$region \
--network=on-prem-demo \
--asn=65002
ক্লাউড শেলের ভিতরে, NAT গেটওয়ে তৈরি করুন:
gcloud compute routers nats create on-prem-nat --router=on-prem-cr --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region $region
ডাটাবেস পরীক্ষার উদাহরণ তৈরি করুন
একটি পোস্টগ্রেস-ডাটাবেস উদাহরণ তৈরি করুন যা লুকারের সাথে সংযোগ পরীক্ষা এবং যাচাই করতে ব্যবহার করা হবে।
ক্লাউড শেলের ভিতরে, উদাহরণ তৈরি করুন:
gcloud compute instances create postgres-database \
--project=$project \
--zone=$zone \
--machine-type=e2-medium \
--subnet=database-subnet \
--no-address \
--private-network-ip 192.168.10.4 \
--image-family debian-12 \
--image-project debian-cloud \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt -y install postgresql postgresql-client postgresql-contrib -y"
নেটওয়ার্ক ফায়ারওয়াল নীতি এবং ফায়ারওয়াল নিয়ম তৈরি করুন
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute network-firewall-policies create on-prem-demo-policy --global
gcloud compute network-firewall-policies associations create --firewall-policy on-prem-demo-policy --network on-prem-demo --name on-prem-demo --global-firewall-policy
IAP কে আপনার VM দৃষ্টান্তের সাথে সংযোগ করার অনুমতি দিতে, একটি ফায়ারওয়াল নিয়ম তৈরি করুন যা:
- আপনি IAP ব্যবহার করে অ্যাক্সেসযোগ্য হতে চান এমন সমস্ত VM দৃষ্টান্তগুলিতে প্রযোজ্য।
- IP পরিসর 35.235.240.0/20 থেকে ট্র্যাফিক প্রবেশের অনুমতি দেয়। এই পরিসরে সমস্ত আইপি ঠিকানা রয়েছে যা IAP TCP ফরওয়ার্ডিংয়ের জন্য ব্যবহার করে।
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute network-firewall-policies rules create 1000 --action ALLOW --firewall-policy on-prem-demo-policy --description "SSH with IAP" --direction INGRESS --src-ip-ranges 35.235.240.0/20 --layer4-configs tcp:22 --global-firewall-policy
নিম্নলিখিত ফায়ারওয়াল নিয়মটি প্রক্সি-অনলি সাবনেট পরিসর থেকে নেটওয়ার্কের সমস্ত দৃষ্টান্তে ট্র্যাফিকের অনুমতি দেয়।
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud compute network-firewall-policies rules create 2001 --action ALLOW --firewall-policy on-prem-demo-policy --description "allow traffic from proxy only subnet" --direction INGRESS --src-ip-ranges 10.10.10.0/24 --global-firewall-policy --layer4-configs=tcp
10. হাইব্রিড সংযোগ
নিম্নলিখিত বিভাগে, আপনি একটি ক্লাউড রাউটার তৈরি করবেন যা আপনাকে বর্ডার গেটওয়ে প্রোটোকল (বিজিপি) ব্যবহার করে আপনার ভার্চুয়াল প্রাইভেট ক্লাউড (ভিপিসি) এবং পিয়ার নেটওয়ার্কের মধ্যে গতিশীলভাবে রুট বিনিময় করতে সক্ষম করে।
ক্লাউড রাউটার আপনার নেটওয়ার্কগুলিকে সংযুক্ত করতে একটি ক্লাউড ভিপিএন টানেলে একটি BGP সেশন সেট আপ করতে পারে৷ এটি স্বয়ংক্রিয়ভাবে নতুন সাবনেট আইপি অ্যাড্রেস রেঞ্জ শিখে এবং আপনার পিয়ার নেটওয়ার্কে সেগুলি ঘোষণা করে৷
নিম্নলিখিত ধাপে আপনি onprem.database1.com-এ হাইব্রিড NEG সংযোগ প্রদর্শন করতে looker-psc-demo VPC এবং on-prem-demo VPC-এর মধ্যে HA VPN স্থাপন করবেন।
লুকার-পিএসসি-ডেমোর জন্য HA VPN GW তৈরি করুন
যখন প্রতিটি গেটওয়ে তৈরি করা হয়, তখন দুটি বাহ্যিক IPv4 ঠিকানা স্বয়ংক্রিয়ভাবে বরাদ্দ করা হয়, প্রতিটি গেটওয়ে ইন্টারফেসের জন্য একটি।
ক্লাউড শেলের ভিতরে, HA VPN GW তৈরি করুন:
gcloud compute vpn-gateways create looker-psc-demo-vpn-gw \
--network=looker-psc-demo \
--region=$region
অন-প্রিম-ডেমোর জন্য HA VPN GW তৈরি করুন
যখন প্রতিটি গেটওয়ে তৈরি করা হয়, তখন দুটি বাহ্যিক IPv4 ঠিকানা স্বয়ংক্রিয়ভাবে বরাদ্দ করা হয়, প্রতিটি গেটওয়ে ইন্টারফেসের জন্য একটি।
ক্লাউড শেলের ভিতরে, HA VPN GW তৈরি করুন:
gcloud compute vpn-gateways create on-prem-vpn-gw \
--network=on-prem-demo\
--region=$region
HA VPN GW তৈরির বৈধতা দিন
কনসোল ব্যবহার করে, হাইব্রিড সংযোগ → ভিপিএন → ক্লাউড ভিপিএন গেটওয়েতে নেভিগেট করুন৷
Looker-psc-demo-এর জন্য ক্লাউড রাউটার তৈরি করুন
ক্লাউড শেলের ভিতরে, ক্লাউড রাউটার তৈরি করুন:
gcloud compute routers create looker-psc-demo-cr \
--region=$region \
--network=looker-psc-demo\
--asn=65001
Looker-psc-demo-এর জন্য VPN টানেল তৈরি করুন
আপনি প্রতিটি HA VPN গেটওয়েতে দুটি VPN টানেল তৈরি করবেন।
ভিপিএন টানেল 0 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 0 তৈরি করুন:
gcloud compute vpn-tunnels create looker-psc-demo-tunnel0 \
--peer-gcp-gateway on-prem-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \
--router looker-psc-demo-cr \
--vpn-gateway looker-psc-demo-vpn-gw \
--interface 0
ভিপিএন টানেল 1 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 1 তৈরি করুন:
gcloud compute vpn-tunnels create looker-psc-demo-tunnel1 \
--peer-gcp-gateway on-prem-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \
--router looker-psc-demo-cr \
--vpn-gateway looker-psc-demo-vpn-gw \
--interface 1
অন-প্রিম-ডেমোর জন্য ভিপিএন টানেল তৈরি করুন
আপনি প্রতিটি HA VPN গেটওয়েতে দুটি VPN টানেল তৈরি করবেন।
ভিপিএন টানেল 0 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 0 তৈরি করুন:
gcloud compute vpn-tunnels create on-prem-tunnel0 \
--peer-gcp-gateway looker-psc-demo-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [ZzTLxKL8fmRykwNDfCvEFIjmlYLhMucH] \
--router on-prem-cr \
--vpn-gateway on-prem-vpn-gw \
--interface 0
ভিপিএন টানেল 1 তৈরি করুন
ক্লাউড শেলের ভিতরে, টানেল 1 তৈরি করুন:
gcloud compute vpn-tunnels create on-prem-tunnel1 \
--peer-gcp-gateway looker-psc-demo-vpn-gw \
--region $region \
--ike-version 2 \
--shared-secret [bcyPaboPl8fSkXRmvONGJzWTrc6tRqY5] \
--router on-prem-cr \
--vpn-gateway on-prem-vpn-gw \
--interface 1
ভিপিএন টানেল তৈরির বৈধতা দিন
কনসোল ব্যবহার করে, হাইব্রিড সংযোগ → ভিপিএন → ক্লাউড ভিপিএন টানেলে নেভিগেট করুন।
11. BGP প্রতিবেশী স্থাপন
looker-psc-demo-এর জন্য একটি BGP ইন্টারফেস এবং পিয়ারিং তৈরি করুন
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface looker-psc-demo-cr \
--interface-name if-tunnel0-to-onprem \
--ip-address 169.254.1.1 \
--mask-length 30 \
--vpn-tunnel looker-psc-demo-tunnel0 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer looker-psc-demo-cr \
--peer-name bgp-on-premises-tunnel0 \
--interface if-tunnel1-to-onprem \
--peer-ip-address 169.254.1.2 \
--peer-asn 65002 \
--region $region
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface looker-psc-demo-cr \
--interface-name if-tunnel1-to-onprem \
--ip-address 169.254.2.1 \
--mask-length 30 \
--vpn-tunnel looker-psc-demo-tunnel1 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer looker-psc-demo-cr \
--peer-name bgp-on-premises-tunnel1 \
--interface if-tunnel2-to-onprem \
--peer-ip-address 169.254.2.2 \
--peer-asn 65002 \
--region $region
একটি BGP ইন্টারফেস তৈরি করুন এবং অন-প্রেম-ডেমোর জন্য পিয়ারিং করুন
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface on-prem-cr \
--interface-name if-tunnel0-to-looker-psc-demo \
--ip-address 169.254.1.2 \
--mask-length 30 \
--vpn-tunnel on-prem-tunnel0 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer on-prem-cr \
--peer-name bgp-looker-psc-demo-tunnel0 \
--interface if-tunnel1-to-looker-psc-demo \
--peer-ip-address 169.254.1.1 \
--peer-asn 65001 \
--region $region
ক্লাউড শেলের ভিতরে, BGP ইন্টারফেস তৈরি করুন:
gcloud compute routers add-interface on-prem-cr \
--interface-name if-tunnel1-to-looker-psc-demo \
--ip-address 169.254.2.2 \
--mask-length 30 \
--vpn-tunnel on-prem-tunnel1 \
--region $region
ক্লাউড শেলের ভিতরে, BGP পিয়ার তৈরি করুন:
gcloud compute routers add-bgp-peer on-prem-cr \
--peer-name bgp-looker-psc-demo-tunnel1\
--interface if-tunnel2-to-looker-psc-demo \
--peer-ip-address 169.254.2.1 \
--peer-asn 65001 \
--region $region
VPN টানেলের বিবরণ দেখতে হাইব্রিড সংযোগ → VPN- এ নেভিগেট করুন।
HA VPN এর মাধ্যমে looker-psc-demo শেখা রুট যাচাই করুন
এখন যেহেতু HA VPN টানেল এবং BGP সেশনগুলি প্রতিষ্ঠিত হয়েছে, ক্লাউড রাউটারের ডিফল্ট আচরণ হল সাবনেট রুটের বিজ্ঞাপন দেওয়া। লুকার-পিএসসি-ডেমো শেখা রুট দেখুন।
কনসোল ব্যবহার করে, ভিপিসি নেটওয়ার্ক → ভিপিসি নেটওয়ার্ক → লুকার-পিএসসি-ডেমো → রুট → অঞ্চল → ভিউতে নেভিগেট করুন
পর্যবেক্ষণ দেখুন looker-psc-demo অন-প্রেম-ডেমো ভিপিসি থেকে ডাটাবেস-সাবনেট 192.168.10.0/28 শিখেছে।
যাচাই করুন যে অন-প্রিম-ডেমো ভিপিসি HA VPN-এর উপর রুট শিখেছে
যেহেতু ক্লাউড রাউটারের ডিফল্ট আচরণ হল সমস্ত সাবনেটের বিজ্ঞাপন দেওয়া, তাই শুধুমাত্র প্রক্সি সাবনেট BGP-এ বিজ্ঞাপন দেওয়া হয়। হাইব্রিড NEG সার্ভার onprem.database1.com এর সাথে যোগাযোগ করার সময় উত্স ঠিকানা হিসাবে শুধুমাত্র প্রক্সি সাবনেট ব্যবহার করবে।
পর্যবেক্ষণ করুন অন-প্রেম-ডেমো লুকার-পিএসসি-ডেমো থেকে প্রক্সি-অনলি-সাবনেট 10.10.10.0/24 শিখেছে।
কনসোল ব্যবহার করে, ভিপিসি নেটওয়ার্ক → ভিপিসি নেটওয়ার্ক → অন-প্রিম-ডেমো → রুট → অঞ্চল → ভিউতে নেভিগেট করুন
12. লুকার পোস্টগ্রেস-ডাটাবেস তৈরি
নিম্নলিখিত বিভাগে, আপনি ক্লাউড শেল ব্যবহার করে postgres-database vm-এ একটি SSH সঞ্চালন করবেন।
ক্লাউড শেলের ভিতরে, পোস্টগ্রেস-ডাটাবেস উদাহরণে একটি ssh সম্পাদন করুন**:**
gcloud compute ssh --zone "$zone" "postgres-database" --project "$project"
OS-এর ভিতরে, পোস্টগ্রেস-ডাটাবেস উদাহরণের আইপি ঠিকানা (ens4) সনাক্ত করুন এবং নোট করুন:
ip a
উদাহরণ:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1460 qdisc mq state UP group default qlen 1000
link/ether 42:01:c0:a8:0a:04 brd ff:ff:ff:ff:ff:ff
altname enp0s4
inet 192.168.10.4/32 metric 100 scope global dynamic ens4
valid_lft 66779sec preferred_lft 66779sec
inet6 fe80::4001:c0ff:fea8:a04/64 scope link
valid_lft forever preferred_lft forever
OS এর ভিতরে, postgresql এ লগ ইন করুন:
sudo -u postgres psql postgres
OS এর ভিতরে, পাসওয়ার্ড প্রম্পট লিখুন:
\password postgres
OS এর ভিতরে, postgres-এ পাসওয়ার্ড সেট করুন (একই পাসওয়ার্ড দুবার লিখুন):
postgres
উদাহরণ:
user@postgres-database:~$ sudo -u postgres psql postgres
\password postgres
psql (13.11 (Debian 13.11-0+deb11u1))
Type "help" for help.
postgres=# \password postgres
Enter new password for user "postgres":
Enter it again:
OS এর ভিতরে, পোস্টগ্রেস থেকে প্রস্থান করুন:
\q
উদাহরণ:
postgres=# \q
user@postgres-database:~$
নিম্নলিখিত বিভাগে, আপনি IPv4 স্থানীয় সংযোগের অধীনে pg_hba.conf ফাইলে আপনার পোস্টগ্রেস-ডাটাবেস ইন্সট্যান্স আইপি (192.168.10.4) এবং প্রক্সি-অনলি সাবনেট (10.10.10.0/24) সন্নিবেশ করাবেন।
sudo nano /etc/postgresql/15/main/pg_hba.conf
নীচের স্ক্রিনশটটি সম্পূর্ণ আপডেট:
নিম্নলিখিত বিভাগে, নীচের স্ক্রিনশট প্রতি সমস্ত '*' আইপি ঠিকানা শুনতে postgresql.conf-এ মন্তব্য করুন:
sudo nano /etc/postgresql/15/main/postgresql.conf
আগে:
পরে:
OS এর ভিতরে, postgresql পরিষেবাটি পুনরায় চালু করুন:
sudo service postgresql restart
ওএসের ভিতরে, পোস্টগ্রেস্কএল স্ট্যাটাসটিকে সক্রিয় হিসাবে যাচাই করুন:
sudo service postgresql status
উদাহরণ:
ওএসের ভিতরে, পোস্টগ্রেস্কএল স্ট্যাটাসটিকে সক্রিয় হিসাবে যাচাই করুন:
user@postgres-database:/$ sudo service postgresql status
● postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; preset: enabled)
Active: active (exited) since Mon 2024-09-02 12:10:10 UTC; 1min 46s ago
Process: 20486 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 20486 (code=exited, status=0/SUCCESS)
CPU: 2ms
Sep 02 12:10:10 postgres-database systemd[1]: Starting postgresql.service - PostgreSQL RDBMS...
Sep 02 12:10:10 postgres-database systemd[1]: Finished postgresql.service - PostgreSQL RDBMS.
13. পোস্টগ্রেস ডাটাবেস তৈরি করুন
নিচের বিভাগে, আপনি postgres_looker এবং স্কিমা looker_schema নামে একটি পোস্টগ্রেস ডাটাবেস তৈরি করবেন যা লুকার থেকে অন-প্রিমিসেস সংযোগ যাচাই করতে ব্যবহৃত হয়।
ওএসের ভিতরে, পোস্টগ্রেসে লগ ইন করুন:
sudo -u postgres psql postgres
OS এর ভিতরে, ডাটাবেস তৈরি করুন:
create database postgres_looker;
OS এর ভিতরে, ডাটাবেস তালিকাভুক্ত করুন:
\l
OS এর ভিতরে, পাসওয়ার্ড postgreslooker দিয়ে ব্যবহারকারী postgres_looker তৈরি করুন:
create user postgres_looker with password 'postgreslooker';
OS এর ভিতরে, ডাটাবেসের সাথে সংযোগ করুন:
\c postgres_looker;
OS এর ভিতরে, স্কিমা লুকার-স্কিমা তৈরি করুন এবং ক্লাউড শেল প্রম্পটে প্রস্থান করুন।
create schema looker_schema;
create table looker_schema.test(firstname CHAR(15), lastname CHAR(20));
exit
Exit from the OS, returning you to cloud shell:
\q
উদাহরণ:
user@postgres-database:/$ sudo -u postgres psql postgres
psql (15.8 (Debian 15.8-0+deb12u1))
Type "help" for help.
postgres=# create database postgres_looker;
CREATE DATABASE
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | ICU Locale | Locale Provider | Access privileges
-----------------+----------+----------+---------+---------+------------+-----------------+-----------------------
postgres | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc |
postgres_looker | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc |
template0 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc | =c/postgres +
| | | | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | | libc | =c/postgres +
| | | | | | | postgres=CTc/postgres
(4 rows)
postgres=# create user postgres_looker with password 'postgreslooker';
CREATE ROLE
postgres=# \c postgres_looker;
You are now connected to database "postgres_looker" as user "postgres".
postgres_looker=# create schema looker_schema;
create table looker_schema.test(firstname CHAR(15), lastname CHAR(20));
exit
CREATE SCHEMA
CREATE TABLE
postgres_looker-# \q
14. পোস্টগ্রেস পোস্টগ্রেস-ডাটাবেসের সাথে লুকারকে একীভূত করুন
নিম্নলিখিত বিভাগে আপনি অন-প্রিমিসেস পোস্টগ্রেস-ডাটাবেস উদাহরণে একটি ডেটাবেস সংযোগ তৈরি করতে লুকার কনসোল ব্যবহার করবেন।
অ্যাডমিন → ডেটাবেস → সংযোগ → সংযোগ যোগ করুন নির্বাচন করুন
নীচের স্ক্রিনশট অনুযায়ী সংযোগের বিবরণ পূরণ করুন, সংযোগ নির্বাচন করুন
সংযোগ এখন কনফিগার করা হয়েছে
15. লুকার সংযোগ যাচাই করুন
নিচের বিভাগে আপনি শিখবেন কিভাবে লুকার 'টেস্ট' অ্যাকশন এবং TCPDUMP ব্যবহার করে অন-প্রেম-ভিপিসি-তে পোস্টগ্রেস-ডাটাবেসের সাথে লুকার সংযোগ যাচাই করতে হয়।
ক্লাউড শেল থেকে, সেশনের সময় শেষ হলে পোস্টগ্রেস-ডাটাবেসে লগ ইন করুন।
ক্লাউড শেলের ভিতরে, নিম্নলিখিতগুলি সম্পাদন করুন:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
zone=[YOUR-ZONE]
echo $project
echo $region
gcloud compute ssh --zone "$zone" "postgres-database" --project "$project"
OS থেকে, শুধুমাত্র প্রক্সি সাবনেট 10.10.10.0/24 সহ একটি TCPDUMP ফিল্টার তৈরি করুন
sudo tcpdump -i any net 10.10.10.0/24 -nn
ডেটা কানেকশন অ্যাডমিন → ডেটাবেস → সংযোগ → পোস্টগ্রেস-ডাটাবেস → টেস্টে নেভিগেট করুন
একবার পরীক্ষা নির্বাচিত হলে লুকার পোস্টগ্রেস-ডাটাবেসের সাথে সংযুক্ত হবে যেমনটি নীচে নির্দেশিত হয়েছে:
পরিষ্কার করুন
একটি একক ক্লাউড শেল টার্মিনাল থেকে ল্যাব উপাদান মুছে দিন
gcloud compute service-attachments delete onpremdatabase1-svc-attachment --region=$region -q
gcloud compute forwarding-rules delete producer-hybrid-neg-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 on-prem-nat --router=on-prem-cr --router-region=$region -q
gcloud compute network-endpoint-groups delete on-prem-hybrid-neg --zone=$zone -q
gcloud compute addresses delete hybrid-neg-lb-ip --region=$region -q
gcloud compute vpn-tunnels delete looker-psc-demo-tunnel0 looker-psc-demo-tunnel1 on-prem-tunnel0 on-prem-tunnel1 --region=$region -q
gcloud compute vpn-gateways delete looker-psc-demo-vpn-gw on-prem-vpn-gw --region=$region -q
gcloud compute routers delete looker-psc-demo-cr on-prem-cr --region=$region -q
gcloud compute instances delete postgres-database --zone=$zone -q
gcloud compute addresses delete on-prem-database1-ip --region=$region -q
gcloud compute networks subnets delete database-subnet --region=$region -q
gcloud compute network-firewall-policies rules delete 2001 --firewall-policy on-prem-demo-policy --global-firewall-policy -q
gcloud compute network-firewall-policies rules delete 1000 --firewall-policy on-prem-demo-policy --global-firewall-policy -q
gcloud compute network-firewall-policies associations delete --firewall-policy=on-prem-demo-policy --name=on-prem-demo --global-firewall-policy -q
gcloud compute networks subnets delete $region-proxy-only-subnet --region=$region -q
gcloud compute networks subnets delete producer-psc-nat-subnet --region=$region -q
gcloud compute networks subnets delete producer-psc-fr-subnet --region=$region -q
gcloud compute networks delete on-prem-demo -q
gcloud compute networks delete looker-psc-demo -q
16. অভিনন্দন
অভিনন্দন, আপনি প্রাইভেট সার্ভিস কানেক্ট দ্বারা চালিত লুকার কনসোল ব্যবহার করে HA-VPN-এর মাধ্যমে অন-প্রিমিসেস ডাটাবেসের সাথে সংযোগ সফলভাবে কনফিগার এবং যাচাই করেছেন।
আপনি প্রযোজকের পরিকাঠামো তৈরি করেছেন, শিখেছেন কীভাবে একটি হাইব্রিড NEG, প্রযোজক পরিষেবা এবং লুকার PSC এন্ডপয়েন্ট তৈরি করতে হয় যা প্রযোজক পরিষেবার সাথে সংযোগের অনুমতি দেয়৷
Cosmopup মনে করে কোডল্যাবগুলি দুর্দান্ত!!
এরপর কি?
এই কোডল্যাবগুলির কিছু পরীক্ষা করে দেখুন...
- পরিষেবাগুলি প্রকাশ এবং ব্যবহার করতে ব্যক্তিগত পরিষেবা সংযোগ ব্যবহার করে৷
- প্রাইভেট সার্ভিস কানেক্ট এবং একটি অভ্যন্তরীণ TCP প্রক্সি লোড ব্যালেন্সার ব্যবহার করে হাইব্রিড নেটওয়ার্কিংয়ের মাধ্যমে অন-প্রিম পরিষেবাগুলিতে সংযোগ করুন
- সমস্ত প্রকাশিত প্রাইভেট সার্ভিস কানেক্ট কোডল্যাবগুলিতে অ্যাক্সেস