বাজেটে অ্যাপাচে ভারসাম্য লোড করবেন?


13

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

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

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

আমাদের জন্য সেরা বিকল্পটি কী? আমাদের বাজেটের ভিতরে থাকা অবস্থায় প্রাপ্যতার উচ্চতা পেতে আমাদের কী করা উচিত?


2
বিটিডব্লিউ, দয়া করে একই সার্ভারে চলমান দুটি ভার্চুয়াল মেশিন ব্যবহার করে "রিডানডেন্সি" প্রয়োগ করবেন না। এটা ঠিক বোকা। (আমি এটি বলছিলাম না যে এটি আপনার পরিকল্পনা ছিল)
আর্লজ

সম্ভবত আপনার লোড ব্যালেন্সে 3 বা 4 ডেডিকেটেড আইপি এবং সার্ভার (ভিপিএস) সার্ভারে ব্যবহার করা, এটি গতির ধারণা তৈরি করবে, তবে সত্য তা নয়। লোড ব্যালেন্সটি বেছে নেবে যদি কোনটি নীচে থাকে তবে কোন লিঙ্কটি অ্যাক্সেস করতে হবে (কারণ অনেক ব্যবহারকারী অ্যাক্সেস করছেন)।

@ এয়ারলজ - পরিকল্পনাটি নষ্ট করে না। আমি চেয়েছিলাম আসলে ভিএম এর যতদূর সম্ভব (ভৌগোলিকভাবে) প্রতিটি থেকে ছড়িয়ে দেওয়া উচিত, তাই তারা এমনকি একই ডেটা সেন্টারে থাকবে না
ইন্ডাস্ট্রিয়াল

নিবন্ধন করুন আপনার সত্যিকারের অর্থ কী তা নিশ্চিত নন, আপনি কি উত্তর লিখতে এবং নিজের ধারণাটি আরও খানিকটা ব্যাখ্যা করার বিষয়ে মনে করেন?
শিল্প 17

অনুগ্রহ চালু! এ সম্পর্কে আরও চিন্তার প্রত্যাশায়
শিল্প

উত্তর:


6

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

  • ডিএনএসটি different টি ভিন্ন ভিন্ন বৈধ আইপি অ্যাড্রেসকে রাউন্ড রবিনেড (এসপি?) করে।
  • আমার কাছে অভিন্ন কনফিগারেশনের সাথে 3 লোড ব্যালেন্সার রয়েছে এবং 6 আইপি অ্যাড্রেসগুলি সমানভাবে বিতরণ করতে করোজেন / পেসমেকার ব্যবহার করে (যাতে প্রতিটি মেশিন 2 টি অ্যাড্রেস পায়)।
  • প্রতিটি ভার ভারসাম্যের একটি nginx + বার্নিশ কনফিগারেশন রয়েছে। এনগিনেক্স সংযোগগুলি গ্রহণ এবং পুনর্লিখন এবং কিছু স্থির পরিবেশন করার বিষয়ে এবং এটি বার্নিশে ফেরত দেওয়ার সাথে চুক্তি করে যা লোড ভারসাম্য এবং ক্যাশে করে।

আমার পক্ষপাতদুষ্ট মতামত নিয়ে এই খিলানের নিম্নলিখিত সুবিধা রয়েছে:

  1. কোনও এলবি ব্যর্থ হলে করোজিন / পেসমেকার আইপি ঠিকানাগুলিকে পুনরায় বিতরণ করবে।
  2. nginx ক্যাশে (বড় ভিডিও, অডিও বা বড় ফাইল) ব্যবহার না করে সরাসরি এসএসএল, কিছু ধরণের ফাইল সরাসরি ফাইল সিস্টেম বা এনএফএস থেকে পরিবেশন করতে ব্যবহার করা যেতে পারে।
  3. বার্নিশ খুব ভাল লোড ব্যালেন্সার, ওজন, ব্যাকএন্ড স্বাস্থ্য পরীক্ষা করা এবং বিপরীত প্রক্সি হিসাবে অসামান্য কাজ করে supporting
  4. ট্র্যাফিক পরিচালনার জন্য আরও এলবির দরকার পড়ার ক্ষেত্রে, ক্লাস্টারে আরও মেশিন যুক্ত করুন এবং সমস্ত মেশিনের মধ্যে আইপি ঠিকানাগুলি ভারসাম্য বজায় রাখা হবে। এমনকি আপনি এটি স্বয়ংক্রিয়ভাবে করতে পারেন (লোড ব্যালেন্সারগুলি যুক্ত এবং অপসারণ)। এজন্য আমি বর্ধনের জন্য কিছু জায়গা দিতে, 3 টি মেশিনের জন্য 6 আইপিস ব্যবহার করি।

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

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


হাই আবার করডাম্প। বাস্তব-জগতের দৃশ্যে এটি সম্পাদন করতে কমপক্ষে কতগুলি মেশিনের প্রয়োজন হবে?
শিল্প

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

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

@ ইন্ডাস্ট্রিয়াল এটি শেখার সর্বোত্তম উপায় :) এনজিঙ্ক্স + বার্নিশের সাহায্যে লোড ব্যালেন্সারকে একত্রিত করে শুরু করুন, তবে আপনি ক্লাস্টারের অংশটি নিয়ে উদ্বেগ প্রকাশ করবেন।
coredump

6

HAproxy একটি ভাল সমাধান। কনফিগারটি মোটামুটি সোজা এগিয়ে রয়েছে।

কমপক্ষে 2 অন্যান্য ভিপিএসের সামনে বসতে আপনার আরও একটি ভিপিএস উদাহরণ প্রয়োজন। সুতরাং লোড ব্যালেন্সিং / ব্যর্থতার জন্য আপনার সর্বনিম্ন 3 ভিপিএসের প্রয়োজন

কিছু ভাবার বিষয় যা হ'ল:

  1. এসএসএল সমাপ্তি। আপনি যদি এইচটিটিপিএস: // ব্যবহার করেন তবে লোড ব্যালান্সারের পিছনে সংযোগটি শেষ হওয়া উচিত, লোড ব্যালান্সারের পিছনে এটি সমস্ত ট্র্যাফিক একটি এনক্রিপ্ট না করা সংযোগের মধ্য দিয়ে যেতে হবে।

  2. ফাইল স্টোরেজ। যদি কোনও ব্যবহারকারী কোনও চিত্র আপলোড করে তবে এটি কোথায় যায়? এটি কি কেবল একটি মেশিনে বসে? মেশিনগুলির মধ্যে তাত্ক্ষণিকভাবে ফাইলগুলি ভাগ করার জন্য আপনার দরকার - আপনি আপনার সমস্ত স্থিতিশীল ফাইলগুলি সঞ্চয় করতে অ্যামাজনের এস 3 পরিষেবা ব্যবহার করতে পারেন, বা আপনার অন্য কোনও ভিপিএস থাকতে পারে যা একটি ফাইল সার্ভার হিসাবে কাজ করবে, তবে আমি এস 3 কে সুপারিশ করব কারণ এটি অপ্রয়োজনীয় এবং অত্যন্ত সস্তা cheap

  3. সেশন তথ্য। আপনার লোড ব্যালান্সার কনফিগারেশনের প্রতিটি মেশিন ব্যবহারকারীর সেশন তথ্য অ্যাক্সেস করতে সক্ষম হওয়া দরকার কারণ তারা কখনই জানেন না যে তারা কী মেশিনটি আঘাত করবে।

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

তাই আমি আপনার জুতাগুলিতে এসেছি, এমন কোনও ওয়েবসাইটের সাথে ঝামেলা পোঁছিয়ে দিচ্ছি যা দিনে কয়েকশ হিট করে সত্যিকারের ক্রিয়াকলাপে। এটি জটিল দ্রুত পায়। আশা করি আপনাকে চিন্তার জন্য কিছু খাবার দিয়েছে :)


2
আপনি যদি কেবল একটি সিঙ্গল লোডবালেন্সিং ভিপিএস সামনে রাখেন তবে আপনার এখনও ব্যর্থতার একক পয়েন্ট আছে!
জেমসআরয়ান

@ জামেসারিয়ান - হ্যাঁ আমি সে সম্পর্কেও ভেবেছিলাম, একক ব্যর্থতার দিকগুলি দুর্গন্ধযুক্ত। পরিবর্তে করণীয় সম্পর্কে আপনার কি কোনও সুপারিশ আছে?
শিল্পকলা

+1 HAProxy ব্যবহার করা অত্যন্ত উন্মুক্ত।
আন্তোইন বেনকামাউন

3

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

  1. আমার অভিজ্ঞতাতে বাধাটি কোনও সমস্যা নয়; এলভিএস পুনঃনির্দেশ পদক্ষেপটি স্তর -3, এবং অত্যন্ত (গণনামূলকভাবে) সস্তা।
  2. লিনাক্স এইচএ দ্বারা নিয়ন্ত্রিত দু'জনের সাথে দ্বিতীয় পরিচালক থাকার মাধ্যমে ব্যর্থতার একক পয়েন্টটি মোকাবেলা করা উচিত ।

প্রথম পরিচালককে প্রথম এলভিএস নোডের মতো একই মেশিনে রাখার পরে এবং দ্বিতীয় এলভিএস নোডের মতো একই মেশিনে দ্বিতীয় পরিচালককে রেখে কস্টটি কম রাখা যায়। তৃতীয় এবং পরবর্তী নোডগুলি খাঁটি নোড, কোনও এলভিএস বা এইচএ প্রভাব নেই।

অ্যাপ্লিকেশন স্তরের নীচে পুনঃনির্দেশটি স্থান গ্রহণ করায় এটি আপনাকে আপনার পছন্দ মতো কোনও ওয়েব সার্ভার সফটওয়্যার চালাতে মুক্ত রাখে।


হাই ম্যাডহ্যাটার এটি এমন একটি সমাধান যা আমি এর আগে কখনও শুনিনি। এটি পড়তে হবে!
শিল্প

আমার জন্য ভাল কাজ করে, প্রশ্ন নিয়ে ফিরে আসতে নির্দ্বিধায়!
ম্যাডহ্যাটার

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

1

এই চেইন সম্পর্কে কি?

রাউন্ড রবিন ডিএনএস> উভয় মেশিনে হ্যাপ্রোক্সি> স্ট্যাটিক ফাইলগুলি পৃথক করতে এনগিনেক্স> অ্যাপাচি

হ্যাপ্রোক্সি সর্বদা উত্তরগুলি নিশ্চিত করতে সম্ভবত ucarp বা হার্টবিট ব্যবহার করুন। আপনার যদি এসএসএল প্রয়োজন হয় তবে স্টানেল হ্যাপ্রোক্সিটির সামনে বসে থাকবে


1

আপনি সঠিক ক্লাস্টারিং সফ্টওয়্যার ব্যবহার করে বিবেচনা করতে পারেন। রেডহ্যাটস (বা সেন্টোস ) ক্লাস্টার স্যুট , বা ওরাকলের ক্লাস্টারওয়্যার । এগুলি অ্যাক্টিভ-প্যাসিভ ক্লাস্টার সেটআপ করতে ব্যবহার করা যেতে পারে, এবং পরিষেবাগুলি পুনঃসূচনা করতে ব্যবহৃত হতে পারে এবং গুরুতর সমস্যা দেখা দিলে নোডের মধ্যে ব্যর্থ হয়। এটি মূলত যা আপনি অনুসন্ধান করছেন।

এই সমস্ত ক্লাস্টার সমাধানগুলি সম্পর্কিত ওএস লাইসেন্সগুলিতে অন্তর্ভুক্ত রয়েছে, সুতরাং আপনি ব্যয়বহুল হয়ে উঠছেন সম্ভবত cool তাদের কিছু অংশীদারি স্টোরেজ দরকার - একটি এনএফএস মাউন্ট, বা ক্লাস্টারযুক্ত ফাইল সিস্টেমের মাধ্যমে উভয় নোড দ্বারা অ্যাক্সেসযুক্ত ফিজিক্যাল ডিস্ক। পরেরটির একটি উদাহরণ একাধিক হোস্ট অ্যাক্সেস করা মঞ্জুরিপ্রাপ্ত সঙ্গে ফরম্যাট করা সান ডিস্ক হবে OCFS2 বা নির্মাণরত GFS । আমি বিশ্বাস করি আপনি এটির জন্য ভিএমওয়্যার শেয়ার্ড ডিস্ক ব্যবহার করতে পারেন ।

ক্লাস্টার সফ্টওয়্যারটি সর্বদা নোডগুলিতে চালিত 'পরিষেবাগুলি' সংজ্ঞায়িত করতে ব্যবহৃত হয় বা কেবল যখন নোডটি 'সক্রিয়' থাকে। নোডগুলি হৃদস্পন্দনের মাধ্যমে যোগাযোগ করে এবং সেই পরিষেবাগুলি পর্যবেক্ষণ করে। যদি তারা ব্যর্থতা লক্ষ্য করে তবে এগুলি পুনরায় চালু করতে পারে এবং যদি ঠিক করা না যায় তবে পুনরায় বুট করতে পারেন।

আপনি মূলত একটি একক 'ভাগ করা' আইপি ঠিকানাটি কনফিগার করবেন যা ট্রাফিকের দিকে পরিচালিত হবে। তারপরে অ্যাপাচি এবং অন্য কোনও প্রয়োজনীয় পরিষেবাদিগুলির পাশাপাশি সংজ্ঞা দেওয়া যেতে পারে এবং কেবলমাত্র সক্রিয় সার্ভারে চালানো যেতে পারে। ভাগ করা ডিস্ক আপনার সমস্ত ওয়েব সামগ্রী, যে কোনও আপলোড করা ফাইল এবং আপনার অ্যাপাচি কনফিগারেশন ডিরেক্টরিগুলির জন্য ব্যবহৃত হবে। (httpd.conf ইত্যাদি সহ)

আমার অভিজ্ঞতায়, এটি অবিশ্বাস্যভাবে ভাল কাজ করে।

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


- ক্রিস্টোফার কারেল


1

অনুকূল লোড ব্যালেন্সিং খুব ব্যয়বহুল এবং জটিল হতে পারে। বেসিক লোড ব্যালেন্সিংটি নিশ্চিত হওয়া উচিত যে প্রতিটি সার্ভার যে কোনও সময় একই সংখ্যক হিটগুলি পরিবেশন করছে serv

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

রাষ্ট্রীয় প্রয়োজনীয়তাগুলি পরিচালনা করতে, আপনি পুনর্নির্দেশগুলি ব্যবহার করতে পারেন। প্রতিটি ওয়েব সার্ভারকে একটি বিকল্প ঠিকানা যেমন www1, www2, www3 ইত্যাদি দিন etc. হোস্টের বিকল্প ঠিকানায় প্রাথমিক www সংযোগটি পুনর্নির্দেশ করুন। আপনি বুকমার্ক সংক্রান্ত সমস্যাগুলি এভাবেই শেষ করতে পারেন তবে সেগুলি সার্ভারগুলিতে সমানভাবে ছড়িয়ে দেওয়া উচিত।

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

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

ব্যর্থতা ছাড়াই ব্যবহারকারীরা পরবর্তী আইপি ঠিকানায় তাদের ব্রাউজারটি ব্যর্থ না হওয়া পর্যন্ত একটি বিলম্ব অনুভব করবে।

রাষ্ট্রীয় অধিবেশনগুলির চেয়ে স্থির পরিষেবাগুলি ব্যবহার করা সামনের প্রান্তে ক্লাস্টারিংয়ের সমস্যাগুলি সরিয়ে দেয়। স্টোরেজ পক্ষের ক্লাস্টারিংয়ের সমস্যাগুলি এখনও প্রয়োগ হবে।

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

সর্বোত্তম সমাধান প্রাসঙ্গিক প্রয়োজনীয়তার উপর নির্ভর করবে।

চিত্র, সিএসএস ফাইল এবং অন্যান্য স্ট্যাটিক সামগ্রীর মতো সামগ্রী পরিবেশন করতে ইমেজ সার্ভার প্রয়োগ করা অ্যাপ্লিকেশন সার্ভারের বোঝা কমিয়ে আনতে পারে।


1

আমি সাধারণত এক জোড়া অভিন্ন ওপেনবিএসডি মেশিন ব্যবহার করি:

  • লোড ব্যালেন্সিং, ওয়েবসভার মনিটরিং, এবং একটি ব্যর্থ ওয়েবসারভার পরিচালনা করার জন্য রিলেডি ব্যবহার করুন Use
  • লোড ব্যালান্সাররা তাদের উচ্চতর প্রাপ্যতার জন্য সিএআরপি ব্যবহার করুন।

ওপেনবিএসডি হালকা, স্থিতিশীল এবং বেশ সুরক্ষিত - নেটওয়ার্ক পরিষেবার জন্য উপযুক্ত।

শুরু করতে, আমি একটি স্তর 3 সেটআপ করার পরামর্শ দিচ্ছি। এটি জটিলতা ফায়ারওয়াল (পিএফ) সেটআপ এড়ায়। এখানে একটি উদাহরণ /etc/relayd.conf ফাইল রয়েছে যা ব্যাকএন্ড ওয়েবসার্সগুলির পর্যবেক্ষণ সহ একটি সাধারণ রিলে লোড ব্যালান্সারের সেটআপ দেখায়:

# $OpenBSD: relayd.conf,v 1.13 2008/03/03 16:58:41 reyk Exp $
#
# Macros
#

# The production internal load balanced address
intralbaddr="1.1.1.100"

# The interface on this load balancer with the alias for the intralbaddr address
intralbint="carp0"

# The list of web/app servers serving weblbaddress
intra1="1.1.1.90"
intra2="1.1.1.91"

# Global Options
#
# interval 10
timeout 1000
# prefork 5

log updates

# The "relaylb" interface group is assigned to the intralbint carp interface
# The following forces a demotion in carp if relayd stops
demote relaylb

#
# Each table will be mapped to a pf table.
#
table <intrahosts> { $intra1 $intra2 }

# Assumes local webserver that can provide a sorry page
table <fallback> { 127.0.0.1 }

#
# Relay and protocol for HTTP layer 7 loadbalancing and SSL acceleration
#
http protocol httprelay {
        return error
        header append "$REMOTE_ADDR" to "X-Forwarded-For"
        header append "$SERVER_ADDR:$SERVER_PORT" to "X-Forwarded-By"
        # header change "Connection" to "close"

        # Various TCP performance options
        tcp { nodelay, sack, socket buffer 65536, backlog 128 }

#       ssl { no sslv2, sslv3, tlsv1, ciphers HIGH }
#       ssl session cache disable
}

relay intra-httprelay {
        listen on $intralbaddr port 80
        protocol httprelay

        # Forward to hosts in the intrahosts table using a src/dst hash
        # The example shows use of a page with dynamic content to provide
        # application aware site checking.  This page should return a 200 on success,
        # including database or appserver connection, and a 500 or other on failure
        forward to <intrahosts> port http mode loadbalance \
                check http "/nlbcheck.asp" code 200

}

হাই পল, আপনার হাতের উদাহরণের জন্য ধন্যবাদ! আপনি কি নিজের সমাধানটির নির্ভরযোগ্যতা নিয়ে খুশি হয়েছেন?
শিল্প

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

0

আপনি কি ক্লাউডফাউন্ড্রি বা সম্ভবত ইলাস্টিক বিনস্টালক বা কেবল একটি সরল পুরাতন এডাব্লুএসের একটি চিন্তাকে অটোক্যাসিং দিয়ে ec2 দিয়েছেন । আমি এটি ব্যবহার করে চলেছি এবং এটি বেশ ভাল স্কেল করে এবং ইলাস্টিক হওয়া কোনও মানুষের হস্তক্ষেপ ছাড়াই স্কেলআপ / ডাউন করতে পারে।

আপনি যে ভারী ভারসাম্যের সাথে শূন্যের অভিজ্ঞতা অর্জন করেছেন বলে মনে করেন, আমি এই বিকল্পগুলির পরামর্শ দেব কারণ তাদের উঠতে এবং দৌড়াতে ন্যূনতম মস্তিষ্কের "ফ্রাইং" প্রয়োজন।

এটি আপনার সময়ের আরও ভাল ব্যবহার হতে পারে।


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

হাই অঙ্কুর। আপনার উত্তর দেওয়ার জন্য ধন্যবাদ. আমাজন নিশ্চিত হ'ল একটি বিকল্প যা আমরা বিবেচনা করেছি, তবে ইসি 2-তে ব্যবসায়ের সমালোচনামূলক অ্যাপ্লিকেশন তৈরির ক্ষেত্রে negativeণাত্মক প্রতিক্রিয়া হিসাবে সমান পরিমাণ ইতিবাচক বলে মনে হচ্ছে ...
শিল্প
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.