কম্পিউটার টিউটোরিয়াল

হাই অভেইলেবিলিটি আর্কিটেকচার মাস্টার করুন: রেজিলিয়েন্ট সিস্টেম তৈরি করুন যাতে ডাউনটাইম নেই

হাই অভেইলেবিলিটি আর্কিটেকচার কী?

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

হাই অভেইলেবিলিটি আর্কিটেকচার মাস্টার করুন: রেজিলিয়েন্ট সিস্টেম তৈরি করুন যাতে ডাউনটাইম নেই

এর শুদ্ধ অর্থে, এই সিস্টেম ব্যবসাগুলোকে একটি নির্দিষ্ট সময়কালে ব্যর্থতা ছাড়া 계속해서 কাজ করতে দেয়। অনেক ব্যবসা এমনকি এক মিনিটের ডাউনটাইমও বাহন করতে পারে না। যেহেতু ডেটা অনেক ব্যবসার প্রাণ, তাই শুধু একটি ছোট ডাউনটাইমও অত্যন্ত ব্যয়বহুল হতে পারে।

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

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

হাই অভেইলেবিলিটি ক্লাস্টার কী?

হাই অভেইলেবিলিটি ক্লাস্টার হলো হোস্টের একটি গ্রুপ যা একক সিস্টেম হিসেবে জোড়া হয়ে ডাউনটাইম প্রতিরোধ করে। যদি একটি হাই অভেইলেবিলিটি ক্লাস্টারের একটি সার্ভার ডাউন হয়, তবে মিশন-ক্রিটিক্যাল অ্যাপটি তাত্ক্ষণিক অন্য সার্ভারে ট্রান্সফার হয়ে যায় ফল্ট ডিটেক্ট होते ही।

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

হাই অভেইলেবিলিটি ক্লাস্টারিং কীভাবে কাজ করে?

একটি হাই অভেইলেবিলিটি ক্লাস্টার একাধিক ইন্টিগ্রেটেড সিস্টেম ব্যবহার করে, যাতে একটি সিস্টেম ফেইল করলে অন্যটি দক্ষতার সাথে সার্ভিস বা অ্যাপ্লিকেশন kullanım কন্টিনিউইটি বজায় রাখতে পারে।

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

হাই অভেইলেবিলিটি ক্লাস্টার কনসেপ্ট

এ্যাক্টিভ-প্যাসিভ ক্লাস্টার

এ্যাক্টিভ/প্যাসিভ ক্লাস্টার কমপক্ষে দুটি নোড নিয়ে গঠিত। নামের অনুযায়ী, সব নোড এক্টিভ থাকবে না। যদি একটি নোড এক্টিভ থাকে, তবে দ্বিতীয়টি রিড-অনলি স্ট্যান্ডবাই মোডে থাকে। প্যাসিভ সার্ভার ব্যাকআপ হিসেবে কাজ করে এবং এক্টিভ সার্ভার ব্যর্থ হলে ব্যবহৃত হয়।

এ্যাক্টিভ-এ্যাক্টিভ ক্লাস্টার

এই টাইপের ক্লাস্টার সাধারণত কমপক্ষে দুটি নোড ব্যবহার করে যারা একই সার্ভিস একই সময়ে এক্সিকিউট করে। একটি এক্টিভ-এ্যাক্টিভ ক্লাস্টারে, দুটি নোডই প্রাইমারি নোড হিসেবে কাজ করে, অর্থাৎ যেকোনোটি রিড বা রাইট এক্সেপ্ট করতে পারে। যদি একটি নোড ফেইল করে, তবে ব্যবহারকারী স্বয়ংক্রিয়ভাবে অন্যটির সাথে কানেক্ট হয়ে যায় সার্ভিস কন্টিনিউইटी নিশ্চিত করতে। একবার প্রথম নোড রিপ্লেস হলে, ব্যবহারকারীরা ফিরে দুটি মূল নোডের মধ্যে বিভক্ত हो যায়।

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

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

শেয়ারড-নথিং বনাম শেয়ারড-ডিস্ক ক্লাস্টার

ডিস্ট্রিবিউটেড কম্পিউটিং-এ একটি সাধারণ নিয়ম হলো সিঙ্গেল পয়েন্ট অফ ফেইলার любой লেনদেন এড়ানো। এর জন্য রিসোর্সগুলোকে সক্রিয়ভাবে রেপ্লিকেট বা রিপ্লেসযোগ্য হতে হবে, যাতে একটি ফ্যাক্টর বিঘ্নিত না হলে পুরো সার্ভিস ডাউন না হয়।

কল্পনা করুন আপনার পাঁচাশ চলমান নোড আছে যা একটি ডাটাবেস দ্বারা চালিত। যদি একটি নোড ফেইল করে, তবে সেটি অন্যদের পারসিস্টেন্ট স্টেটে কোনো প্রভাব ফেলবে না, চলমান নোডের সংখ্যা নির্বিশেষে।

কিন্তু যদি ডাটাবেস ফেইল করে, তবে পুরো ক্লাস্টার ডাউন হয়ে যাবে, কি ডাটাবেস একটি সিঙ্গেল পয়েন্ট অফ ফেইলার? এটিকে শেয়ারড ডিস্ক ক্লাস্টার বলা হয়।

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

দ্রষ্টব্য: যদি আপনি হাই অভেইলেবিলিটি ক্লাস্টারিং টেকনোলজি সম্পর্কে আরও জানতে চান তবে এই ওয়েবিনার দেখুন। সফটওয়্যার ইন্ডাস্ট্রিতে ২০ বছরের অভিজ্ঞতার সাথে, জর্জ কার্বনেল রেডিস এন্টারপ্রাইজের সাথে ক্লাস্টারিং টেকনোলজি কীভাবে হাই পারফরম্যানস ও হাই অভেইলেবিলিটি দেয় সেটি অনাবৃত করবেন।

হাই অভেইলেবিলিটি আর্কিটেকচারের প্রয়োজনীয়তা

ড্যুরেবিলিটি এবং হাই অভেইলেবিলিটি সর্বাধিক করতে আপনার কিছু প্রয়োজনীয়তা পূরণ করতে হবে। এগুলো شامل:

লোড ব্যালেন্সিং

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

ডেটা স্কেলেবিলিটি

ডাটাবেস বা ডিস্ক স্টোরেজ ইউনিট স্কেল করার ক্ষমতা সব হাই অভেইলেবিলিটি আর্কিটেকচারের জন্য বিবেচ্য। স্কেলেবিলিটি অর্জনের জন্য দুটি সমাধান বেছে নেওয়া যায়:

  • আর্কিটেকচারের মূল ডাটাবেস ব্যবহার করে এবং রেপ্লিকেশন বা পার্টিশনিং দিয়ে এটি হাই অভেইলেবল করা; অথবা
  • নিশ্চিত করা যে প্রতিটি অ্যাপ্লিকেশন ইন্সট্যান্স নিজস্ব ডেটা স্টোরেজ বজায় রাখতে সক্ষম

জিওগ্রাফিক্যাল ডাইভারসিটি

আমরা একটি দ্রুত গতির ডিজিটাল বিশ্বে বাস করি যেখানে হাই অভেইলেবিলিটি ক্লাস্টার গ্লোবালি বিতরণ করা এখন আবশ্যক। এটি নিশ্চিত করবে যে যদি একটি প্রাকৃতিক দুর্যোগ একটি লোকেশনে আঘাত করে, তবে তার প্রভাব তাদের সার্ভিস প্রদানের ক্ষমতাকে বাধা দেবে না।

ব্যাকআপ এবং রিকভারি (ডিজাস্টার রিকভারি)

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

এটিকে প্রায়শই ডিজাস্টার রিকভারি বলা হয় - একটি বিঘ্নজনক ঘটনার ঘটনায় সার্ভিসকে পুরো ফাংশন্যালিটিতে ফেরত আনার জন্য নীতিমালা এবং প্রসেসের সেট।

হাই অভেইলেবিলিটি কীভাবে পরিমাপ করা হয়

হাই অভেইলেবিলিটি প্রায়শই পরিমাপ করা হয় সার্ভিস ব্যবহারকারীদের জন্য উপলব্ধ থাকার সময়ের শতাংশে। এটি টোটাল আপটাইমকে সিস্টেম পিরিয়ড দিয়ে ভাগ করে এবং ১০০ দিয়ে গুণ করে শতাংশ বের করা হয়। মাইক্রোসফট নেটওয়ার্ক ডেভেলপার গ্লসারি অনুযায়ী, একটি সার্ভারকে "হাইলি অভেইলেবল" মনে করার জন্য এটি ৯৯.৯৯৯% নেটওয়ার্ক আপটাইম অর্জন করতে হবে।

প্রায়শই শতাংশ আভেইলেবিলিটি কে নাইন সংখ্যা হিসেবে রেফার করা হয়। সুতরাং চার নাইন মানে ৯৯.৯৯%।

দ্রষ্টব্য: ৯৯.৯৯% আভেইলেবিলিটি ইন্ডাস্ট্রি স্ট্যান্ডার্ড মনে করা হয়।

হাই অভেইলেবিলিটির জন্য সেরা অনুশীলন

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

জিওগ্রাফিক্যাল রিডান্ডেন্সি অর্জন করুন

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

দ্রষ্টব্য: আপনি একটি ডাটাবেস যা এক্টিভ-এ্যাক্টিভ জিও-ডিস্ট্রিবিউশন আছে সেটি সহজে অর্জন করতে পারেন।

ফেইলওভার সমাধান ব্যবহার করুন

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

লোড ব্যালেন্সার বাস্তবায়ন করুন

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

নিশ্চিত করুন যে আপনার ডেটা সিঙ্ক্রোনাইজেশন আপনার রিকভারি পয়েন্ট অবজেক্টিভ (RPO) মেট করে

RPO হলো সর্বোচ্চ ডেটা হারানোর মের্কার যা আপনার অর্গানাইজেশনের ক্ষতি না করে। এটি আপনার ব্যবসার সমগ্র ডেটা-লস টলারেন্স হাইলাইট করে এবং এটি সাধারণত টাইম ইউনিটে পরিমাপ করা হয়, যেমন ১ মিনিট বা ১ দিন।

আপনার RPO ৬০ সেকেন্ড বা তার কম সেট করলে আপনাকে সর্বোচ্চ আভেইলেবিলিটি বজায় রাখতে সাহায্য করবে। এটি নিশ্চিত করবে যে যদি প্রাইমারি সোর্স ফেইল হয়, তবে আপনি ৬০ সেকেন্ডের বেশি ডেটা হারাবেন না।

হাই অভেইলেবিলিটি আর্কিটেকচারে রেডিসের ভূমিকা

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

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

হাই অভেইলেবিলিটি অর্জন করার বিষয়ে আরও জানতে চান?

  1. HTML high অ্যাট্রিবিউট: গেজের উচ্চ মান নির্দিষ্ট করা

  2. MS SQL Server-এ High Availability (উপলব্ধতা)

  3. ১৩ বছর পর: কি রেডিস নতুন আর্কিটেকচারের জন্য প্রস্তুত?

  4. Oracle Enterprise Linux 7.2에서 Oracle Forms & Reports 12.2.1.3 설치 및 구성으로 고가용성 달성