অ্যাপ্লিকেশন লোড ব্যালেন্সার সম্পর্কে আপনাকে যা জানা দরকার তা সমস্ত

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

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

বিষয়গুলি আচ্ছাদিত:





অ্যাপ্লিকেশন লোড ব্যালেন্সার কী?

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

অ্যাপ্লিকেশন লোড ব্যালান্সারের কাজ

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



ALB - অ্যাপ্লিকেশন লোড ব্যালান্সার - এডুরেকা

আপনার অ্যাপ্লিকেশনটিতে অনুরোধগুলির সামগ্রিক প্রবাহকে ব্যাহত না করে আপনি যখনই প্রয়োজন তখন আপনার লোড ব্যালেন্সার থেকে লক্ষ্যগুলি যুক্ত বা সরাতে পারেন। ELB আপনার লোড ব্যালেন্সারকে গতিশীলভাবে স্কেল করে, যেমন আপনার অ্যাপ্লিকেশনটির ট্র্যাফিক সময়ের সাথে সাথে পরিবর্তিত হয় বিভিন্ন পরিস্থিতিতে আপনার অ্যাপ্লিকেশনটি প্রস্তুত রাখে।

বৈশিষ্ট্য যা ক্লাসিক লোড ব্যালান্সারের চেয়ে এটি আরও ভাল করে তোলে

সামগ্রী ভিত্তিক রাউটিং: অ্যাপ্লিকেশন লোড ব্যালেন্সারকে এইচটিটিপি শিরোনাম অ্যাক্সেস করতে হবে এবং তাই ট্র্যাফিকটিকে এর উপর ভিত্তি করে চালিত করে।



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

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

পাথ-ভিত্তিক রাউটিং: অ্যাপ্লিকেশন লোড ব্যালেন্সার পাথ-ভিত্তিক এবং হোস্ট-ভিত্তিক রাউটিংকে সমর্থন করে যা ক্লাসিক লোড ব্যালেন্সারের ক্ষেত্রে নয়। ওয়াইOU একক লোড ব্যালেন্সার ব্যবহার করে একাধিক ডোমেনগুলিতে অনুরোধগুলি রুট করতে পারে।

আইপি ঠিকানা এবং ল্যাম্বদা ফাংশন নিবন্ধন করুন: ইসি ২ টি দৃষ্টান্ত নিবন্ধভুক্ত করার সাথে সাথে আপনি আইপি ঠিকানা এবং ল্যাম্বডা ফাংশনগুলিও আপনার লক্ষ্যে নিবন্ধভুক্ত করতে পারেন। এবং অতঃপরআপনি ভিপিসির বাইরে থাকা লক্ষ্যগুলিও নিবন্ধভুক্ত করতে পারেন।

অতিরিক্ত প্রোটোকল এবং কাজের চাপ সরবরাহ করে:

অ্যাপ্লিকেশন লোড ব্যালেন্সার দুটি অতিরিক্ত প্রোটোকল সরবরাহ করে - HTTP / 2 এবং ওয়েবস্কট S

এইচটিপিএস / 2: এই প্রোটোকলটি একক সংযোগ জুড়ে মাল্টিপ্লেক্স অনুরোধগুলি সমর্থন করে। এটি নেটওয়ার্ক ট্র্যাফিক হ্রাস করে।

ওয়েবসকেট: এই প্রোটোকলটি আপনাকে ক্লায়েন্ট এবং সার্ভারের মধ্যে দীর্ঘস্থায়ী টিসিপি সংযোগ স্থাপনের অনুমতি দেয়। পুরানো পদ্ধতির তুলনায় এই প্রোটোকলটি আরও কার্যকর।

ডেমো: একটি অ্যাপ্লিকেশন লোড ব্যালান্সার তৈরি করুন এবং এটি কাজ করছে তা প্রদর্শন করুন

আসুন অ্যাপ্লিকেশন লোড ব্যালান্সারের একটি তৈরি করে এবং এটি ব্যবহার করে আরও ভালভাবে বুঝতে পারি। এই ডেমোতে, আমি দুটি ইসি 2 উদাহরণ তৈরি করতে যাচ্ছি, উভয়টিতেই ভিন্ন ভিন্ন এইচটিএমএল আউটপুট (তাদের মধ্যে পার্থক্য করা সহজ) এর সাথে এনগিনেক্স ওয়েব সার্ভার স্থাপন করা, একটি অ্যাপ্লিকেশন লোড ব্যালেন্সার তৈরি করা, এই দুটি ভার্সনটি সেই লোড ব্যালেন্সারে নিবন্ধিত করুন এবং চেক করুন উদাহরণস্বরূপ মোতায়েন করা ওয়েব সার্ভার যদি লোড ব্যালান্সার ডিএনএস থেকে অ্যাক্সেস করা যায়। চল শুরু করি.

ধাপ 1: এবং আপনার উদাহরণগুলি পুট্টি বা সেন্টিমিডারের সাথে সংযুক্ত করুন।

ধাপ ২: উভয় দৃষ্টান্তে Nginx ওয়েব সার্ভার ইনস্টল করুন। Nginx ইনস্টল করার জন্য নিম্নলিখিত কমান্ডগুলি কার্যকর করুন:

জাভা অ্যালগরিদম এবং ডেটা স্ট্রাকচার
do sudo apt-get update $ sudo apt install nginx $ sudo ufw app list $ sudo ufw પરવાનગી দেয় 'Nginx HTTP' $ sudo ufw status

উদাহরণগুলির সার্বজনীন আইপি অনুলিপি করুন এবং এটি একটি ইউআরএল এর মতো ব্রাউজারে পেস্ট করুন, Nginx সফলভাবে ইনস্টল করা হয়েছে কিনা তা পরীক্ষা করতে।

ধাপ 3 : উভয় দৃষ্টান্তে মোতায়েনের মধ্যে বিভ্রান্তি এড়াতে এনগিনেক্স ওয়েব সার্ভারের এইচটিএমএল আউটপুট পরিবর্তন করুন।

$ সিডি / ভেরি / www / এইচটিএমএল $ সুডো ভি ইনডেক্স.জিনেক্স-ডিবিয়ান এইচটিএমএল

এইচ 1 ট্যাগের সামগ্রীটিকে 'এনগিনেক্সে স্বাগতম!' হিসাবে পরিবর্তন করুন - সার্ভার 1 '। অন্যান্য উদাহরণে একই করুন, এটিকে 'এনগিনেক্সে স্বাগতম! - সার্ভার 2 '।

পদক্ষেপ 4: একটি অ্যাপ্লিকেশন লোড ব্যালেন্সার তৈরি করুন। নেভিগেশন ফলকে, অধীনে ভারসাম্য লোড করুন , পছন্দ করা ভারসাম্য লোড করুন এবং ক্লিক করুন সৃষ্টি অ্যাপ্লিকেশন লোড ব্যালান্সারের অধীনে।

আপনাকে অন্য পৃষ্ঠায় নেভিগেট করা হবে, চয়ন করুন লোড ব্যালেন্সার তৈরি করুন সেখানে

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

শ্রোতাদের জন্য, ডিফল্টটি হ'ল 80 পোর্টের টিসিপি ট্র্যাফিক গ্রহণ করা এবং আমি একই ডিফল্ট শ্রোতার কনফিগারেশনটি চালিয়ে যাচ্ছি। আপনি যদি অন্য শ্রোতা যুক্ত করতে চান তবে আপনি চয়ন করতে পারেন শ্রোতা যুক্ত করুন

উপলভ্যতা জোনের জন্য, আপনি আপনার ইসি 2 উদাহরণগুলি তৈরি করতে যে ভিপিসি ব্যবহার করেছেন তা নির্বাচন করুন। একটি ইসি 2 ইনস্ট্যান্স তৈরি করতে ব্যবহৃত প্রতিটি উপলভ্যতা জোনের জন্য একটি উপলভ্যতা অঞ্চল এবং সেই উপলব্ধতা অঞ্চলের সাবনেট নির্বাচন করুন।

আপনি আপনার লোড ব্যালেন্সারে প্রয়োজনীয় হিসাবে ট্যাগ যুক্ত করুন। আপনার একাধিক লোড ব্যালেন্সার থাকলে ট্যাগগুলি বিশেষত কার্যকর।

ক্লিক করুন পরবর্তী: সুরক্ষা সেটিংস কনফিগার করুন । আপনি হয়ত একটি সতর্কতা দেখতে পেয়েছেন তবে আপনি এটিকে উপেক্ষা করতে পারেন।

এই পদক্ষেপে, আপনি আপনার লোড ব্যালান্সারের সুরক্ষা কনফিগার করতে পারেন, আপনিও পারেন একটি নতুন সুরক্ষা গোষ্ঠী তৈরি করুন বা একটি বিদ্যমান সুরক্ষা গ্রুপ নির্বাচন করুন । এই ক্ষেত্রে, আমি একটি বিদ্যমান সুরক্ষা গোষ্ঠী বেছে নিয়েছি।

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

আমি কিছুই পরিবর্তন করি নি স্বাস্থ্য পরীক্ষা এবং উন্নত স্বাস্থ্য চেক হয়। ডিফল্ট সেটিংস আমাদের জন্য যথেষ্ট ভাল।

ক্লিক করুন পরবর্তী: লক্ষ্যগুলি নিবন্ধন করুন আপনার টার্গেটগুলি যুক্ত করতে (এই ক্ষেত্রে, উদাহরণস্বরূপ) আপনার লোড ব্যালেন্সারে।

টার্গেট হিসাবে আপনি যে দৃষ্টান্ত যুক্ত করতে চান তা নির্বাচন করুন এবং তারপরে ক্লিক করুন নিবন্ধে যুক্ত করুন।

আপনার লক্ষ্যগুলি (দৃষ্টান্তগুলি) এখন লোড ব্যালেন্সারে নিবন্ধিত হয়েছে।

ক্লিক করুন পরবর্তী: পর্যালোচনা । আপনার লোড ব্যালেন্সারটি পর্যালোচনা করুন এবং তারপরে অবশেষে ক্লিক করুন সৃষ্টি

আপনার লোড ব্যালেন্সার এখন তৈরি হয়েছে এবং আপনি এটির স্থিতি পরীক্ষা করতে পারেন।

প্রোগ্রাম শেষ করতে জাভা কোড

ইয়ায়ে !! আপনি সফলভাবে একটি অ্যাপ্লিকেশন লোড ব্যালেন্সার তৈরি করেছেন। এখন আসুন এটি পরীক্ষা করে দেখি যে এটি আসলে কাজ করছে কিনা।

পদক্ষেপ 5: আপনার লোড ব্যালান্সারের ডিএনএস নামটি অনুলিপি করুন এবং এটি একটি URL এর মতো ব্রাউজারে আটকান। আপনার প্রথম দৃষ্টান্তের আউটপুটটি দেখতে হবে।

এখন অন্য ব্রাউজারে যান এবং একই ডিএনএস নামটি পেস্ট করুন, আপনার দ্বিতীয় দৃষ্টান্তের আউটপুটটি দেখা উচিত।

এবং এটি দেখায় যে লোড ব্যালেন্সার এটিতে দুটি উদাহরণের লোডকে ভারসাম্যপূর্ণ করছে। আপনার ইসি 2 টি দৃষ্টান্তের বোঝা এই লোড ব্যালেন্সার দ্বারা পরিচালিত হবে। আপনার লোড ব্যালান্সারের কাজ পরীক্ষা করার আরেকটি উপায় হ'ল একটি দৃষ্টান্ত বন্ধ করে পরীক্ষা করুন যে এর স্থাপনা লোড ব্যালান্সারের ডিএনএসে স্থাপন করা হয়েছে কিনা।

এটি আমাদের এই অ্যাপ্লিকেশন লোড ব্যালান্সার ব্লগের শেষে নিয়ে আসে। আমি আশা করি আপনি অ্যামাজন দ্বারা সরবরাহিত এই আশ্চর্যজনক পরিষেবার পিছনে ধারণাটি বুঝতে পেরেছেন। এই জাতীয় আরও ব্লগের জন্য, দেখুন ' '।

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

আমাদের জন্য একটি প্রশ্ন আছে? দয়া করে মন্তব্য বিভাগে এটি উল্লেখ করুন এবং আমরা আপনার কাছে ফিরে যাব বা আপনার প্রশ্নটি এখানে পোস্ট করব । এডুরেকা কমিউনিটিতে আমাদের কাছে 1,00,000+ এরও বেশি প্রযুক্তি-অনুরাগী সাহায্য করার জন্য প্রস্তুত।