প্রাইভেট সার্ভিস কানেক্ট 64

১. ভূমিকা

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

আপনি যা শিখবেন

  • পিএসসি ৬৪ এর প্রধান সুবিধাসমূহ
  • প্রাইভেট সার্ভিস কানেক্ট ৬৪ সমর্থিত অনুবাদ
  • ডুয়াল স্ট্যাক ইউএলএ ওভারভিউ
  • নেটওয়ার্কের প্রয়োজনীয়তা
  • একটি ব্যক্তিগত পরিষেবা তৈরি করুন প্রযোজক পরিষেবা সংযোগ করুন
  • একটি ব্যক্তিগত সার্ভিস কানেক্ট এন্ডপয়েন্ট তৈরি করুন
  • একটি IPv4 VM থেকে প্রাইভেট সার্ভিস কানেক্ট এন্ডপয়েন্টের সাথে সংযোগ স্থাপন করুন।
  • একটি ডুয়াল-স্ট্যাক ভিএম থেকে প্রাইভেট সার্ভিস কানেক্ট এন্ডপয়েন্টের সাথে সংযোগ স্থাপন করুন।

আপনার যা যা লাগবে

  • মালিকের অনুমতি সহ গুগল ক্লাউড প্রজেক্ট

২. আপনি যা তৈরি করবেন

আপনি প্রাইভেট সার্ভিস কানেক্ট (PSC) এর মাধ্যমে একটি অ্যাপাচি ওয়েব সার্ভারকে প্রকাশিত পরিষেবা হিসাবে স্থাপন করার জন্য একটি প্রোডিউসার নেটওয়ার্ক প্রতিষ্ঠা করবেন। প্রকাশিত হয়ে গেলে, প্রোডিউসার পরিষেবাতে অ্যাক্সেস যাচাই করার জন্য আপনি নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করবেন:

  • কনজিউমার ভিপিসি-এর IPv4 GCE ইনস্ট্যান্স থেকে প্রডিউসার সার্ভিসে পৌঁছানোর জন্য IPv4 PSC এন্ডপয়েন্টকে টার্গেট করুন।
  • কনজিউমার ভিপিসি থেকে, ডুয়াল-স্ট্যাক জিসিই ইনস্ট্যান্সের মাধ্যমে প্রডিউসার সার্ভিসে পৌঁছানোর জন্য IPv6 PSC এন্ডপয়েন্টকে টার্গেট করুন।

পিএসসি ৬৪ এর প্রধান সুবিধাসমূহ

  • নির্বিঘ্ন ইন্টিগ্রেশন: PSC, IPv6-এর জন্য কনফিগার করা VPC নেটওয়ার্কের সাথে নির্বিঘ্নে ইন্টিগ্রেট হয়, যা আপনাকে আপনার সার্ভিস কানেকশনগুলোর জন্য IPv6 অ্যাড্রেসিংয়ের সুবিধাগুলো কাজে লাগাতে দেয়।
  • ডুয়াল-স্ট্যাক সাপোর্ট: PSC ডুয়াল-স্ট্যাক কনফিগারেশন সমর্থন করে, যা একই VPC-এর মধ্যে IPv4 এবং IPv6-এর যুগপৎ ব্যবহার সক্ষম করে, আপনার নেটওয়ার্ককে নমনীয়তা প্রদান করে এবং ভবিষ্যতের জন্য প্রস্তুত রাখে।
  • সরলীকৃত রূপান্তর: PSC আপনার বিদ্যমান IPv4 পরিকাঠামোর পাশাপাশি পর্যায়ক্রমে IPv6 গ্রহণ করার সুযোগ দিয়ে IPv6-এ রূপান্তরকে সহজ করে তোলে।
  • প্রডিউসার সাপোর্ট: প্রডিউসারকে ডুয়াল-স্ট্যাক গ্রহণ করতে হবে না, পরিবর্তে কনজিউমারের কাছে একটি IPv4 বা IPv6 PSC এন্ডপয়েন্ট স্থাপন করার বিকল্প রয়েছে।

৩. প্রাইভেট সার্ভিস কানেক্ট ৬৪ ও ৬৬ সমর্থিত অনুবাদ

ভোক্তার বিবেচ্য বিষয়

এন্ডপয়েন্টের আইপি ভার্সন IPv4 অথবা IPv6 হতে পারে, কিন্তু উভয়ই একসাথে নয়। গ্রাহকরা একটি IPv4 অ্যাড্রেস ব্যবহার করতে পারেন যদি অ্যাড্রেসটির সাবনেট সিঙ্গেল-স্ট্যাক হয়। গ্রাহকরা একটি IPv4 বা IPv6 অ্যাড্রেস ব্যবহার করতে পারেন যদি অ্যাড্রেসটির সাবনেট ডুয়াল-স্ট্যাক হয়। গ্রাহকরা একই সার্ভিস অ্যাটাচমেন্টের সাথে IPv4 এবং IPv6 উভয় এন্ডপয়েন্ট সংযুক্ত করতে পারেন, যা সার্ভিসগুলোকে IPv6-এ মাইগ্রেট করার জন্য সহায়ক হতে পারে।

প্রযোজকের বিবেচ্য বিষয়

প্রডিউসার ফরওয়ার্ডিং রুলের আইপি ভার্সন, সার্ভিস অ্যাটাচমেন্টের আইপি ভার্সন এবং সার্ভিস অ্যাটাচমেন্ট থেকে নির্গত ট্র্যাফিক নির্ধারণ করে। সার্ভিস অ্যাটাচমেন্টের আইপি ভার্সন IPv4 অথবা IPv6 হতে পারে, কিন্তু উভয়ই নয়। যদি অ্যাড্রেসটির সাবনেট সিঙ্গেল-স্ট্যাক হয়, তবে প্রডিউসাররা একটি IPv4 অ্যাড্রেস ব্যবহার করতে পারে। যদি অ্যাড্রেসটির সাবনেট ডুয়াল-স্ট্যাক হয়, তবে প্রডিউসাররা একটি IPv4 বা IPv6 অ্যাড্রেস ব্যবহার করতে পারে।

প্রডিউসার ফরওয়ার্ডিং রুলের আইপি অ্যাড্রেসের আইপি ভার্সন অবশ্যই সার্ভিস অ্যাটাচমেন্টের NAT সাবনেটের স্ট্যাক টাইপের সাথে সামঞ্জস্যপূর্ণ হতে হবে।

  • যদি প্রডিউসার ফরওয়ার্ডিং রুলটি IPv4 হয়, তাহলে NAT সাবনেটটি সিঙ্গেল-স্ট্যাক বা ডুয়াল-স্ট্যাক হতে পারে।
  • যদি প্রডিউসার ফরওয়ার্ডিং রুলটি IPv6 হয়, তাহলে NAT সাবনেটটি অবশ্যই ডুয়াল-স্ট্যাক হতে হবে।

সমর্থিত কনফিগারেশনগুলির জন্য নিম্নলিখিত সংমিশ্রণগুলি সম্ভব:

  • IPv4 এন্ডপয়েন্ট থেকে IPv4 পরিষেবা সংযুক্তি
  • IPv6 এন্ডপয়েন্ট থেকে IPv6 পরিষেবা সংযুক্তি
  • IPv6 এন্ডপয়েন্ট থেকে IPv4 পরিষেবা সংযুক্তি: এই কনফিগারেশনে, প্রাইভেট সার্ভিস কানেক্ট স্বয়ংক্রিয়ভাবে দুটি আইপি সংস্করণের মধ্যে অনুবাদ করে।

নিম্নলিখিতটি সমর্থিত নয়:

প্রাইভেট সার্ভিস কানেক্ট একটি IPv6 সার্ভিস অ্যাটাচমেন্টের সাথে IPv4 এন্ডপয়েন্ট সংযোগ করা সমর্থন করে না। এক্ষেত্রে, নিম্নলিখিত ত্রুটি বার্তা সহ এন্ডপয়েন্ট তৈরি ব্যর্থ হয়:

IPv4 ঠিকানা সহ একটি প্রাইভেট সার্ভিস কানেক্ট ফরওয়ার্ডিং নিয়ম কোনো IPv6 পরিষেবা সংযুক্তিকে লক্ষ্য করতে পারে না।

৪. ডুয়াল স্ট্যাক ইউএলএ-এর সংক্ষিপ্ত বিবরণ

গুগল ক্লাউড ULA প্রাইভেট IPv6 সাবনেট এবং VM তৈরি সমর্থন করে। RFC 4193 স্থানীয় যোগাযোগের জন্য একটি IPv6 অ্যাড্রেসিং স্কিম সংজ্ঞায়িত করে, যা আন্তঃ-VPC যোগাযোগের জন্য আদর্শ। ULA অ্যাড্রেসগুলো বিশ্বব্যাপী রাউটেবল নয়, তাই আপনার VM-গুলো ইন্টারনেট থেকে সম্পূর্ণ বিচ্ছিন্ন থাকে এবং IPv6 ব্যবহার করে RFC-1918-এর মতো আচরণ প্রদান করে। গুগল ক্লাউড /48 VPC নেটওয়ার্ক ULA প্রিফিক্স তৈরির অনুমতি দেয়, যাতে আপনার সমস্ত /64 IPv6 ULA সাবনেট সেই VPC নেটওয়ার্ক রেঞ্জ থেকে বরাদ্দ করা হয়।

গুগল ক্লাউড দ্বারা সমর্থিত বিশ্বব্যাপী অনন্য বাহ্যিক IPv6 অ্যাড্রেসের মতোই, প্রতিটি ULA IPv6-সক্ষম সাবনেট /48 VPC নেটওয়ার্ক ULA রেঞ্জ থেকে একটি /64 সাবনেট পাবে এবং প্রতিটি VM-কে সেই সাবনেট থেকে একটি /96 অ্যাড্রেস বরাদ্দ করা হবে।

RFC4193, fc00::/7 রেঞ্জের মধ্যে IPv6 অ্যাড্রেস স্পেসকে সংজ্ঞায়িত করে। ULA অ্যাড্রেসগুলো প্রাইভেট নেটওয়ার্ক/সাইটের ভেতরে অবাধে বরাদ্দ ও ব্যবহার করা যায়। গুগল ক্লাউড fd20::/20 রেঞ্জ থেকে সমস্ত ULA অ্যাড্রেস বরাদ্দ করে। এই অ্যাড্রেসগুলো শুধুমাত্র VPC-এর আওতার মধ্যে রাউটেবল, এবং গ্লোবাল IPv6 ইন্টারনেটে রাউটেবল নয়।

গুগল ক্লাউড দ্বারা বরাদ্দকৃত ULA অ্যাড্রেসগুলো সমস্ত VPC নেটওয়ার্ক জুড়ে অনন্য হওয়ার নিশ্চয়তা দেয়। গুগল ক্লাউড নিশ্চিত করে যে কোনো দুটি VPC নেটওয়ার্ককে একই ULA প্রিফিক্স বরাদ্দ করা হবে না। এর ফলে VPC নেটওয়ার্কগুলোতে ওভারল্যাপিং রেঞ্জের সমস্যা দূর হয়।

আপনি হয় গুগল ক্লাউডকে আপনার নেটওয়ার্কে স্বয়ংক্রিয়ভাবে /48 বরাদ্দ করতে দিতে পারেন অথবা একটি নির্দিষ্ট /48 IPv6 প্রিফিক্স বেছে নিতে পারেন। যদি আপনার নির্দিষ্ট করা IPv6 প্রিফিক্সটি ইতিমধ্যেই অন্য কোনো VPC-তে বা আপনার অন-প্রিমিসেস নেটওয়ার্কে বরাদ্দ করা থাকে, তাহলে আপনি অন্য একটি রেঞ্জ বেছে নিতে পারেন।

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

নিম্নে কনজিউমার এবং প্রডিউসার নেটওয়ার্কের জন্য প্রয়োজনীয় নেটওয়ার্ক শর্তাবলীর বিবরণ দেওয়া হলো:

ভোক্তা নেটওয়ার্ক (সমস্ত উপাদান us-central1-এ স্থাপন করা হয়েছে)

উপাদান

বর্ণনা

ভিপিসি

ডুয়াল-স্ট্যাক নেটওয়ার্কিংয়ের জন্য ULA সক্রিয় সহ একটি কাস্টম মোড VPC প্রয়োজন।

পিএসসি এন্ডপয়েন্ট

  • প্রডিউসার সার্ভিস অ্যাক্সেস করতে ব্যবহৃত IPv4 PSC এন্ডপয়েন্ট
  • প্রডিউসার সার্ভিস অ্যাক্সেস করতে ব্যবহৃত IPV6 PSC এন্ডপয়েন্ট

সাবনেট(গুলি)

IPv4 এবং ডুয়াল-স্ট্যাক

জিসিই

IPv4 এবং ডুয়াল-স্ট্যাক

প্রযোজক নেটওয়ার্ক (সমস্ত উপাদান us-central1-এ স্থাপন করা হয়েছে)

উপাদান

বর্ণনা

ভিপিসি

কাস্টম মোড ভিপিসি, ইউএলএ সক্রিয় করা হয়নি

পিএসসি এনএটি সাবনেট

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

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

IPv4. অভ্যন্তরীণ পাসথ্রু নেটওয়ার্ক লোড ব্যালেন্সার

স্বাস্থ্য পরীক্ষা

লোড ব্যালেন্স করা ইনস্ট্যান্সগুলোর জন্য প্রযোজ্য একটি ইনগ্রেস রুল, যা গুগল ক্লাউড হেলথ চেকিং সিস্টেম (130.211.0.0/22 ​​এবং 35.191.0.0/16) থেকে ট্র্যাফিকের অনুমতি দেয়।

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

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

অব্যবস্থাপিত ইনস্ট্যান্স গ্রুপ

যেসব ভিএম-এর জন্য স্বতন্ত্র কনফিগারেশন বা টিউনিং প্রয়োজন, সেগুলোকে সমর্থন করে। অটো স্কেলিং সমর্থন করে না।

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

b52931afd997d61.png

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

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

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

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

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

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

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

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

55efc1aaa7a4d3ad.png

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

7ffe5cbb04455448.png

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

৮. শুরু করার আগে

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

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

gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=us-central1
echo $project
echo $region

সকল প্রয়োজনীয় পরিষেবা সক্রিয় করুন:

gcloud services enable compute.googleapis.com

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

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

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

gcloud compute networks create producer-vpc --subnet-mode custom

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

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

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

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

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

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

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

gcloud compute networks subnets create producer-psc-vm-subnet --network producer-vpc --range 172.16.30.0/28 --region $region --enable-private-ip-google-access

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

প্রডিউসার-ভিএম-এর অ্যাপাচি ডাউনলোড করার জন্য ইন্টারনেট অ্যাক্সেস প্রয়োজন, কিন্তু জিসিই ইনস্ট্যান্সটির কোনো এক্সটার্নাল আইপি নেই; তাই, ক্লাউড ন্যাট প্যাকেজ ডাউনলোডের জন্য ইন্টারনেট ইগ্রেসের সুবিধা দেবে।

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

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

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

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

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

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

gcloud compute network-firewall-policies create producer-vpc-policy --global

gcloud compute network-firewall-policies associations create --firewall-policy producer-vpc-policy --network producer-vpc --name producer-vpc --global-firewall-policy

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

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

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

gcloud compute network-firewall-policies rules create 1000 --action ALLOW --firewall-policy producer-vpc-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 2000 --action ALLOW --firewall-policy producer-vpc-policy --description "allow traffic from health check probe range" --direction INGRESS --src-ip-ranges 130.211.0.0/22,35.191.0.0/16 --layer4-configs tcp:80 --global-firewall-policy

নিম্নলিখিত ফায়ারওয়াল নিয়মটি PSC NAT সাবনেট রেঞ্জ থেকে নেটওয়ার্কের সমস্ত ইনস্ট্যান্সে ট্র্যাফিকের অনুমতি দেয়। একটি প্রোডাকশন পরিবেশে, এই ফায়ারওয়াল নিয়মটি শুধুমাত্র নির্দিষ্ট প্রডিউসার সার্ভিসের সাথে যুক্ত ইনস্ট্যান্সগুলিতে সীমাবদ্ধ রাখা উচিত।

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

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

প্রডিউসার ভিএম তৈরি করুন

ক্লাউড শেলের ভিতরে, প্রডিউসার-ভিএম অ্যাপাচি ওয়েব সার্ভারটি তৈরি করুন:

gcloud compute instances create producer-vm \
    --project=$project \
    --machine-type=e2-micro \
    --image-family debian-12 \
    --no-address \
    --image-project debian-cloud \
    --zone us-central1-a \
    --subnet=producer-psc-vm-subnet \
    --metadata startup-script="#! /bin/bash
      sudo apt-get update
      sudo apt-get install apache2 -y
      sudo service apache2 restart
      echo 'Welcome to Producer-VM !!' | tee /var/www/html/index.html
      EOF"

ক্লাউড শেলের ভিতরে, প্রডিউসার-ভিএম ইনস্ট্যান্স এবং হেলথ চেক নিয়ে একটি আনম্যানেজড ইনস্ট্যান্স গ্রুপ তৈরি করুন:

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

gcloud compute instance-groups unmanaged add-instances producer-instance-group  --zone=us-central1-a --instances=producer-vm

gcloud compute health-checks create http hc-http-80 --port=80

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

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

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

gcloud compute backend-services create producer-backend-svc --load-balancing-scheme=internal --protocol=tcp --region=us-central1 --health-checks=hc-http-80

gcloud compute backend-services add-backend producer-backend-svc --region=us-central1 --instance-group=producer-instance-group --instance-group-zone=us-central1-a

নিম্নলিখিত সিনট্যাক্সে, producer-backend-svc ব্যাকএন্ড সার্ভিসের সাথে যুক্ত একটি পূর্বনির্ধারিত আইপি অ্যাড্রেস 172.16.2.3 ব্যবহার করে একটি ফরওয়ার্ডিং রুল (অভ্যন্তরীণ নেটওয়ার্ক লোড ব্যালেন্সার) তৈরি করুন।

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

gcloud compute forwarding-rules create producer-fr --region=us-central1 --load-balancing-scheme=internal --network=producer-vpc --subnet=producer-psc-fr-subnet --address=172.16.20.3 --ip-protocol=TCP --ports=all --backend-service=producer-backend-svc --backend-service-region=us-central1

সার্ভিস সংযুক্তি তৈরি করুন

ক্লাউড শেলের ভিতরে সার্ভিস অ্যাটাচমেন্টটি তৈরি করুন:

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

এরপরে, কনজিউমার এনভায়রনমেন্টে PSC এন্ডপয়েন্ট কনফিগার করার জন্য, projects দিয়ে শুরু হওয়া selfLink URI-তে তালিকাভুক্ত সার্ভিস অ্যাটাচমেন্টটি সংগ্রহ করে নোট করুন।

selfLink: projects/<your-project-id>/regions/us-central1/serviceAttachments/ipv4-producer-svc-attachment

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

gcloud compute service-attachments describe ipv4-producer-svc-attachment --region=$region

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

user@cloudshell:~ (projectid)$ gcloud compute service-attachments describe ipv4-producer-svc-attachment --region=$region
connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-08-26T07:08:01.625-07:00'
description: ''
enableProxyProtocol: false
fingerprint: USOMy1eQKyM=
id: '1401660514263708334'
kind: compute#serviceAttachment
name: ipv4-producer-svc-attachment
natSubnets:
- https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
  high: '85245007652455400'
  low: '1401660514263708334'
reconcileConnections: false
region: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1
selfLink: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/serviceAttachments/ipv4-producer-svc-attachment
targetService: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/forwardingRules/producer-fr

ক্লাউড কনসোলে, এখানে যান:

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

9166d64204ec31c3.png

1b5feeca51b6533e.png

১১. কনজিউমার ভিপিসি নেটওয়ার্ক তৈরি করুন

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

ক্লাউড শেলের ভিতরে, IPv6 ULA সক্রিয় করে কনজিউমার VPC তৈরি করুন:

gcloud compute networks create consumer-vpc \
    --subnet-mode=custom \
    --enable-ula-internal-ipv6

গুগল কনজিউমার ভিপিসি-কে একটি বিশ্বব্যাপী অনন্য /48 সাবনেট বরাদ্দ করে, এই বরাদ্দ দেখতে নিম্নলিখিতগুলি করুন:

ক্লাউড কনসোলে, এখানে যান:

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

c847bd7c20e3677d.png

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

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

gcloud compute networks subnets create consumer-v4-subnet --network consumer-vpc --range=192.168.10.0/28 --region $region --enable-private-ip-google-access

ক্লাউড শেলের ভিতরে, IPv4 PSC এন্ডপয়েন্ট সাবনেট তৈরি করুন:

gcloud compute networks subnets create psc-ipv4-endpoint-subnet --network consumer-vpc --range=192.168.11.0/28 --region $region --enable-private-ip-google-access

ক্লাউড শেলের ভিতরে, ডুয়াল-স্ট্যাক GCE সাবনেট তৈরি করুন:

gcloud compute networks subnets create consumer-dual-stack-subnet --network consumer-vpc --range=192.168.20.0/28 --stack-type=IPV4_IPV6 --ipv6-access-type=INTERNAL --region $region --enable-private-ip-google-access

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

gcloud compute networks subnets create psc-dual-stack-endpoint-subnet --network consumer-vpc --range=192.168.21.0/28 --stack-type=IPV4_IPV6 --ipv6-access-type=INTERNAL --region $region --enable-private-ip-google-access

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

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

gcloud compute network-firewall-policies create consumer-vpc-policy --global

gcloud compute network-firewall-policies associations create --firewall-policy consumer-vpc-policy --network consumer-vpc --name consumer-vpc --global-firewall-policy

gcloud compute network-firewall-policies rules create 1000 --action ALLOW --firewall-policy consumer-vpc-policy --description "SSH with IAP" --direction INGRESS --src-ip-ranges 35.235.240.0/20 --layer4-configs tcp:22  --global-firewall-policy

কনজিউমার নেটওয়ার্কের জন্য শুধুমাত্র IAP অ্যাক্সেস থেকে SSH প্রয়োজন।

১২. ভিএম, পিএসসি এন্ডপয়েন্ট তৈরি করুন এবং আইপিভি৪ সংযোগ পরীক্ষা করুন।

টেস্ট ভিএম তৈরি করুন

ক্লাউড শেলের ভিতরে, IPv4 সাবনেটে IPv4 GCE ইনস্ট্যান্সটি তৈরি করুন:

gcloud compute instances create consumer-vm-ipv4 --zone=us-central1-a --subnet=consumer-v4-subnet --no-address

PSC এন্ডপয়েন্ট স্ট্যাটিক আইপি তৈরি করুন

ক্লাউড শেলের ভিতরে, PSC এন্ডপয়েন্টের জন্য একটি স্ট্যাটিক আইপি অ্যাড্রেস তৈরি করুন।

gcloud compute addresses create psc-ipv4-endpoint-ip --region=$region --subnet=psc-ipv4-endpoint-subnet --addresses 192.168.11.13

IPv4 PSC এন্ডপয়েন্ট তৈরি করুন

ক্লাউড শেলের ভিতরে, সার্ভিস অ্যাটাচমেন্ট তৈরি করার সময় প্রাপ্ত আপনার URI দিয়ে SERVICE ATTACHMENT URI আপডেট করে PSC এন্ডপয়েন্টটি তৈরি করুন।

gcloud compute forwarding-rules create psc-ipv4-endpoint --region=$region --network=consumer-vpc --address=psc-ipv4-endpoint-ip --target-service-attachment=[SERVICE ATTACHMENT URI]

PSC এন্ডপয়েন্টটি যাচাই করুন

চলুন নিশ্চিত করা যাক যে প্রডিউসার PSC এন্ডপয়েন্টটি গ্রহণ করেছে। ক্লাউড কনসোলে, এখানে যান:

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

ac858b2db226e58a.png

সংযোগ পরীক্ষা করুন

ক্লাউড শেলের ভিতরে, consumer-vm-ipv4 নামের GCE ইনস্ট্যান্সে ssh করুন।

gcloud compute ssh --zone us-central1-a "consumer-vm-ipv4" --tunnel-through-iap --project $project

এখন যেহেতু আপনি GCE ইনস্ট্যান্সে লগ ইন করেছেন, psc এন্ডপয়েন্টে (psc-ipv4-endpoint 192.168.11.13) একটি curl কমান্ড চালান।

consumer-vm-ipv4 GCE ইনস্ট্যান্সের ভিতরে, একটি curl চালান:

curl 192.168.11.13

প্রত্যাশিত আউটপুট:

user@consumer-vm-ipv4:~$ curl 192.168.11.13
Welcome to Producer-VM !!

consumer-vm-ipv4 GCE ইনস্ট্যান্সের ভিতরে, exit কমান্ডটি চালিয়ে ইনস্ট্যান্সটি থেকে লগআউট করুন, যা আপনাকে ক্লাউড শেলে ফিরিয়ে নিয়ে যাবে।

exit

প্রত্যাশিত আউটপুট:

user@consumer-vm-ipv4:~$ exit
logout
Connection to compute.6833450446005281720 closed.

১৩. ভিএম, পিএসসি এন্ডপয়েন্ট তৈরি করুন এবং ডুয়াল-স্ট্যাক সংযোগ পরীক্ষা করুন।

টেস্ট ডুয়াল-স্ট্যাক ভিএম তৈরি করুন

ক্লাউড শেলের ভিতরে, ডুয়াল-স্ট্যাক সাবনেটে ডুয়াল-স্ট্যাক GCE ইনস্ট্যান্সটি তৈরি করুন:

gcloud compute instances create consumer-vm-ipv4-ipv6 --zone=us-central1-a --subnet=consumer-dual-stack-subnet --no-address --stack-type=IPV4_IPV6

PSC এন্ডপয়েন্ট স্ট্যাটিক IPv6 ঠিকানা তৈরি করুন

ক্লাউড শেলের ভিতরে, PSC এন্ডপয়েন্টের জন্য একটি স্ট্যাটিক IPv6 অ্যাড্রেস তৈরি করুন:

gcloud compute addresses create psc-ipv6-endpoint-ip --region=$region --subnet=psc-dual-stack-endpoint-subnet --ip-version=IPV6

PSC এন্ডপয়েন্টের স্ট্যাটিক IPv6 ঠিকানাটি সংগ্রহ করুন।

ক্লাউড শেলের ভিতরে, PSC IPv6 অ্যাড্রেসটি সংগ্রহ করুন যা আপনি Producer সার্ভিসে পৌঁছানোর জন্য ব্যবহার করবেন:

gcloud compute addresses describe psc-ipv6-endpoint-ip --region=us-central1 | grep -i address:

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

user@cloudshell$ gcloud compute addresses describe psc-ipv6-endpoint-ip --region=us-central1 | grep -i address:
address: 'fd20:2eb:7252:2::'

IPv6 PSC এন্ডপয়েন্ট তৈরি করুন

ক্লাউড শেলের ভিতরে, সার্ভিস অ্যাটাচমেন্ট তৈরি করার সময় প্রাপ্ত আপনার URI দিয়ে SERVICE ATTACHMENT URI আপডেট করে PSC এন্ডপয়েন্টটি তৈরি করুন।

gcloud compute forwarding-rules create psc-ipv6-endpoint --region=$region --network=consumer-vpc --address=psc-ipv6-endpoint-ip --target-service-attachment=[SERVICE ATTACHMENT URI]

PSC এন্ডপয়েন্টটি যাচাই করুন

চলুন নিশ্চিত করা যাক যে প্রডিউসার PSC এন্ডপয়েন্টটি গ্রহণ করেছে। ক্লাউড কনসোলে, এখানে যান:

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

957b74e89f3ad837.png

সংযোগ পরীক্ষা করুন

ক্লাউড শেলের ভিতরে, ডুয়াল-স্ট্যাক GCE ইনস্ট্যান্স, consumer-vm-ipv4-ipv6-এ ssh করুন এবং Producer সার্ভিসে অ্যাক্সেস যাচাই করার জন্য PSC IPv6 কনজিউমার এন্ডপয়েন্ট, psc-ipv6-endpoint-এ একটি curl কমান্ড চালান।

gcloud compute ssh --zone us-central1-a "consumer-vm-ipv4-ipv6" --tunnel-through-iap --project $project

এখন যেহেতু আপনি ডুয়াল-স্ট্যাক GCE ইনস্ট্যান্সে লগ ইন করেছেন, পূর্ববর্তী ধাপে চিহ্নিত IPv6 অ্যাড্রেসগুলো ব্যবহার করে psc এন্ডপয়েন্ট, psc-dual-stack-endpoint-এ একটি curl কমান্ড চালান।

consumer-vm-ipv4-ipv6 GCE ইনস্ট্যান্সের ভিতরে, "Obtain the PSC endpoint static IPv6" ধাপে চিহ্নিত IPv6 PSC এন্ডপয়েন্টে একটি curl কমান্ড চালান।

curl -6 http://[insert-your-ipv6-psc-endpoint]

প্রত্যাশিত আউটপুট:

user@consumer-vm-ipv4-ipv6$ curl -6 http://[fd20:2eb:7252:2::]
Welcome to Producer-VM !!

consumer-vm-ipv4-ipv6 GCE ইনস্ট্যান্সের ভিতরে, exit কমান্ডটি চালিয়ে ইনস্ট্যান্সটি থেকে লগআউট করুন, যা আপনাকে ক্লাউড শেলে ফিরিয়ে নিয়ে যাবে।

exit

প্রত্যাশিত আউটপুট:

user@consumer-vm-ipv4-ipv6:~$ exit
logout
Connection to compute.6162185519072639197 closed.

১৪. পরিষ্কার করার পদক্ষেপ

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

gcloud compute service-attachments delete ipv4-producer-svc-attachment --region=us-central1 -q

gcloud compute forwarding-rules delete psc-ipv6-endpoint psc-ipv4-endpoint --region=us-central1 -q

gcloud compute instances delete consumer-vm-ipv4 consumer-vm-ipv4-ipv6 --zone=us-central1-a -q

gcloud compute network-firewall-policies rules delete 1000 --firewall-policy=consumer-vpc-policy --global-firewall-policy -q

gcloud compute network-firewall-policies associations delete --firewall-policy=consumer-vpc-policy  --name=consumer-vpc --global-firewall-policy -q

gcloud compute network-firewall-policies delete consumer-vpc-policy --global -q

gcloud compute addresses delete psc-ipv4-endpoint-ip psc-ipv6-endpoint-ip --region=us-central1 -q

gcloud compute networks subnets delete consumer-v4-subnet psc-ipv4-endpoint-subnet consumer-dual-stack-subnet psc-dual-stack-endpoint-subnet --region=us-central1 -q

gcloud compute networks delete consumer-vpc -q

gcloud compute forwarding-rules delete producer-fr --region=us-central1 -q

gcloud compute backend-services delete producer-backend-svc --region=us-central1 -q

gcloud compute health-checks delete hc-http-80 -q

gcloud compute network-firewall-policies rules delete 2001 --firewall-policy producer-vpc-policy --global-firewall-policy -q

gcloud compute network-firewall-policies rules delete 2000 --firewall-policy producer-vpc-policy --global-firewall-policy -q

gcloud compute network-firewall-policies rules delete 1000 --firewall-policy producer-vpc-policy --global-firewall-policy -q

gcloud compute network-firewall-policies associations delete --firewall-policy=producer-vpc-policy  --name=producer-vpc --global-firewall-policy -q

gcloud compute network-firewall-policies delete producer-vpc-policy --global -q

gcloud compute instance-groups unmanaged delete producer-instance-group --zone=us-central1-a -q

gcloud compute instances delete producer-vm --zone=us-central1-a -q

gcloud compute routers nats delete producer-nat-gw --router=producer-cloud-router --router-region=us-central1 -q

gcloud compute routers delete producer-cloud-router --region=us-central1 -q

gcloud compute networks subnets delete producer-psc-fr-subnet  producer-psc-vm-subnet producer-psc-nat-subnet --region=us-central1 -q

gcloud compute networks delete producer-vpc -q

১৫. অভিনন্দন

অভিনন্দন, আপনি সফলভাবে প্রাইভেট সার্ভিস কানেক্ট ৬৪ কনফিগার এবং যাচাই করেছেন।

আপনি প্রডিউসার ইনফ্রাস্ট্রাকচার তৈরি করেছেন এবং শিখেছেন কীভাবে কনজিউমার ভিপিসি নেটওয়ার্কে একটি IPv4 ও IPv6 কনজিউমার এন্ডপয়েন্ট তৈরি করতে হয়, যা প্রডিউসার সার্ভিসের সাথে সংযোগ স্থাপন করতে সক্ষম করে।

কসমোপাপের মতে কোডল্যাবগুলো অসাধারণ!!

c911c127bffdee57.jpeg

এরপর কী?

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

আরও পড়ুন ও ভিডিও

রেফারেন্স নথি