স্তর 4 বনাম স্তর 7 লোড ব্যালেন্সিং


21

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

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

যেহেতু এটি কেবল এইচটিটিপি, তাই আমি HAProxy বা nginx এর মতো একটি স্তর 7 লোড ব্যালেন্সিং সমাধান ব্যবহার করতে পারি। তবে আমি এলডিএস প্রকল্পটি ldirectord বা কিপালাইভড বা যে কোনও কিছুতে ব্যবহার করতে পারি।

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

উত্তর:


17

হ্যাপ্রক্সির মতো "এল 7" এর একটি দরকারী সুবিধা একই ব্রাউজারে একই ব্যাকএন্ড সার্ভারকে আঘাত করতে কুকি ব্যবহার করতে সক্ষম হয়। এটি ডিবাগিং ক্লায়েন্টকে আরও সহজ করে তোলে।

L4 ব্যালেন্সিং বেশ কয়েকটি ব্যাকএন্ড সার্ভারে একক ব্যবহারকারীর কাছাকাছি আসতে পারে। (যা কিছু ক্ষেত্রে সুবিধাজনক হতে পারে তবে একটি ডিবাগিং / প্রোফাইলিং অর্থে "L7" ব্যবহার করা অনেক বেশি মূল্যবান))

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

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

/ * এফডাব্লুআইডাব্লু: আমি "এল 7" বা "এল 4" বলব না, আমি এইচটিটিপি বা টিসিপি বলব। তবে আমি ওএসআই এর সাথে মেলে না এমন জিনিসগুলিকে বর্ণনা করতে এড়ানোর জন্য একটি স্টিলার। * /

আমি মনে করি মৌলিকভাবে যদি আপনি কী স্থাপন করবেন তা নিশ্চিত না হন, আপনার কাছে যা সহজ এবং প্রাকৃতিক বলে মনে হয় তা নিয়ে যান। এটি পরীক্ষা করুন (অ্যাপাচি বেঞ্চ ব্যবহার করবেন?) এবং নিশ্চিত করুন যে এটি আপনার প্রয়োজনের জন্য কাজ করে। আমার কাছে এইচটিটিপি এলবি বেশি স্বাভাবিক।


স্টিকনেস, কুকি ভিত্তিক বা আইপি ভিত্তিক অবশ্যই এল 7 স্যুইচিংয়ের একটি সুবিধা। তবে এটি এমন নয় যে আমাদের অ্যাপ্লিকেশনটি বিশেষত ব্যবহার করতে সক্ষম হবে।
স্ক্রিভেনার

এইচটিটিপি স্তরের লোড ব্যালেন্সিংয়ের একটি অসুবিধা হ'ল না যে এই দুইটির মধ্যে ব্যর্থতা সক্ষম করতে আপনাকে এইচটিটিপি ব্যালান্সারদের সামনে টিসিপি লেভেল লোড ব্যালেন্সার রাখতে হবে?
স্ক্রিভেনার

@ প্রত্যক্ষক - আপনার উচিত হবে না, না। আমি আপনার প্রশ্নের ভুল বোঝাবুঝি না করে রাউন্ড-রবিন ডিএনএস আমার বিশ্বাসের যত্ন নিতে পারে।
mfinni

@ এমফিন্নি: গ্লোবাল ভৌগলিক ডিএনএস ডেটাসেন্টারে প্রতি আইপিতে নির্দেশ করতে সক্ষম হবে। এই আইপিতে সাড়া দেওয়ার জন্য আমার কিছু দরকার।
স্ক্রুইনার

আমি দেখি. ঠিক আছে, এটি আপনার ডিভাইস (গুলি) এর সক্ষমতার উপর নির্ভর করে। আপনি সম্ভবত একটি এল 7-সক্ষম ডিভাইসটি খুঁজে পেতে পারেন যা একটি একক ক্লাস্টার ভিআইপি-র সাথে জোড়া লাগাতে কাজ করতে পারে যার জন্য হার্ডওয়্যার টিসিপি / আইপি লোড-ব্যালেন্সারের প্রয়োজন হবে না। যদি আইআইএস এবং এমএস উইন্ডোজ এনএলবি এটি করতে পারে তবে আমার ধারণা অন্যান্য বেশিরভাগ বাণিজ্যিক পণ্য এটি করতে পারে।
mfinni

4

L7 ব্যালেন্সিং করা থেকে আপনার সুবিধার অভাবের দিক থেকে, আমি পরিবর্তে L4 ব্যালেন্সিং স্থির করব। আমি খুব বেশি ত্যাগ ছাড়াই এটি যতটা সম্ভব সরল রাখার এক বড় ভক্ত।

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


0

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


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

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

প্রাক্তন - আমরা ইতিমধ্যে একটি বাহ্যিক সংস্থার সাথে ডিএনএস করছি যা বিভিন্ন ডাটাসেন্টারে ব্যর্থতা এবং ভৌগলিক লোড ভারসাম্যহীন কাজ করে। আমার এটি কেবল ডেটাসেন্টারের অভ্যন্তরে ভারসাম্য লোড করা দরকার।
স্ক্রুইনার

আপনি ঠিক একই পাশের সার্ভার দ্বারা সার্ভারের জন্য একই বৃত্তাকার রবিন ব্যবহার করতে পারেন? রাউন্ড রবিন লোড ব্যালেন্সিংয়ের জন্য ডিএনএস প্রায়শই একক ডেটা সেন্টারের জন্য ব্যবহৃত হয়; একাধিক ভৌগলিক অবস্থানের উপরে একটি বড় ছেলের প্রয়োজন।
আর্নেস্ট মুলার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.