ইনগ্রেস(Ingress)

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

এটা যেসব সমস্যাতে দৃষ্টিপাত করে

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

এটা কিভাবে সাহায্য করে

একটি ইনগ্রেস রিসোর্স আপনাকে কনফিগার করতে দেয় যে কীভাবে ট্র্যাফিক ব্যালেন্সড এবং রুট করা যায় একটি অ্যাপ্লিকেশনের পরিষেবাসমূহে। ইনগ্রেস কন্ট্রোলার একটি ইউআরএল (www.example-url.com) এর মাধ্যমে একটি একক এন্ট্রি পয়েন্ট প্রকাশ করে এবং বিভিন্ন ইউআরএল পাথের (www.example-url.com/path) উপর ভিত্তি করে প্রকৃত রাউটিং এবং ব্যালেন্সিং করে। একটি ইনগ্রেস কন্ট্রোলার হলো এমন একটি উপাদান যা ক্লাস্টারের মধ্যে চলে এবং ইনগ্রেস রিসোর্সে সংজ্ঞায়িত নিয়মগুলো ব্যাখ্যা করে। এটি ক্লাস্টার অপারেটরদের উপর নির্ভর করে যেখানে ওয়েব অ্যাপটি Nginx, Traefik, HAProxy ইত্যাদির মতো সম্ভাব্য প্রযুক্তির সেট থেকে একটি নির্দিষ্ট ইনগ্রেস কন্ট্রোলার বেছে নিতে কাজ করে। ফলে এখন, যদি একটি অ্যাপ্লিকেশন একাধিক পরিষেবা নিয়ে গঠিত হয়, তখন ব্যবহারকারী একটি মাত্র URL ব্যবহার করে এটি অ্যাক্সেস করতে পারবেন । এটি অবকাঠামো স্তরে অসংখ্য পৃথক লোড ব্যালেন্সারের প্রয়োজনীয়তা দূর করে এবং প্রতিটি পরিষেবার জন্য ফায়ারওয়াল এবং লোড ব্যালেন্সারের নিয়মগুলোর কনফিগারেশন সহজ করে। ট্র্যাফিক রাউটিং এবং কনফিগারেশন পরিচালনার কেন্দ্রীকরণের মাধ্যমে, ইনগ্রেস সুবিন্যস্ত স্কেলেবিলিটি প্রদান করে, রিসোর্সের ব্যবহার অপ্টিমাইজ করে, খরচ কমায় এবং একটি ক্লাস্টারে চলমান অ্যাপ্লিকেশনগুলোর সামগ্রিক ব্যবস্থাপনার উন্নতি করে।


সর্বশেষ পরিবর্তিত February 24, 2024: [bn] Update main branch with dev-bn (#2894) (19b78e4)