একটি মাল্টি-নোড Couchbase® সার্ভার ক্লাস্টার আপগ্রেড করার অনেক পদ্ধতি রয়েছে। এই পোস্টটি গ্রেসফুল ফেইলওভার এবং ডেল্টা রিকভারি পদ্ধতি ব্যবহার করে রোলিং অনলাইন আপগ্রেডের জন্য বিস্তারিত পদক্ষেপ বর্ণনা করে।
ভূমিকা
এই পোস্টে বর্ণিত পদ্ধতি অনলাইন আপগ্রেডের জন্য সবচেয়ে পছন্দসই পদ্ধতিগুলির একটি কারণ এটি আপগ্রেডের জন্য ক্লাস্টারে কোনো অতিরিক্ত নোড যোগ করার প্রয়োজন হয় না। এই পদ্ধতিটি দ্রুত এবং কম রিসোর্স-গহন কারণ নোডটি শুধু ডেল্টা পরিবর্তন ব্যবহার করে রিকভার করা হয়, পুরো রিব্যালেন্সের পরিবর্তে। এছাড়াও, এই প্রক্রিয়ায় গ্লোবাল সেকেন্ডারি ইনডেক্স সংরক্ষিত থাকে, যাতে পুনর্নির্মাণের প্রয়োজন হয় না। এই পদ্ধতির প্রाथমিক অসুবিধা হল আপগ্রেডের সময়কালের জন্য হ্রাসপ্রাপ্ত হাই অভেইলেবিলিটি।
পূর্বশর্ত
আপনাকে এই আপগ্রেডটি অফ-পিক বിസিনেস আওয়ার্সে সম্পাদন করা উচিত। গ্রেসফুল ফেইলওভার ব্যবহার করার জন্য কিছু প্রয়োজনীয়তা এবং বিবেচনা আছে। এই সেটআপ ডকুমেন্টটি পর্যালোচনা করুন এই পোস্টে उल्लিখিত পদক্ষেপগুলির সাথে অগ্রসর হওয়ার আগে।
পরিবেশের বিবরণ
এই পোস্টের উদাহরণের নিম্নলিখিত বৈশিষ্ট্যগুলি রয়েছে:
- এটির একটি টু-নোড ক্লাস্টার আছে
Prashant 2-Node London Cluster। - এটি Couchbase এন্টারপ্রাইজ এডিশন সংস্করণ 5.1.0 বিল্ড 5552 থেকে Couchbase এন্টারপ্রাইজ এডিশন সংস্করণ 5.5.0 বিল্ড 2473 - IPv4-এ আপগ্রেড করে।
- এটি অধিকাংশ পদক্ষেপের জন্য Couchbase অ্যাডমিনিস্ট্রেশন ওয়েব কনসোল ব্যবহার করে।
আপগ্রেড পদক্ষেপ
আপগ্রেড সম্পাদন করতে এই বিভাগের পদক্ষেপগুলি ব্যবহার করুন।
পদক্ষেপ ১: ক্লাস্টারের দুই নোডে Couchbase ভার্সন 5.5 ডাউনলোড করুন
ক্লাস্টার নোডের প্রথমে Couchbase ভার্সন 5.5 বাইনারি এক্সিকিউটেবল ডাউনলোড করুন।
নিচের ছবিটি WGET ইউটিলিটি ব্যবহার করে সার্ভার থেকে প্রয়োজনীয় RPM প্যাকেজ ম্যানেজার (RPM) ফাইল ডাউনলোড করার প্রক্রিয়া দেখায়।
ডাউনলোডের পর, বর্তমান লোকেশনে ভার্সন 5.5 বাইনারি রয়েছে, নিচের ছবিতে দেখানো अनुसार:
ক্লাস্টারের অন্য নোডের জন্য ডাউনলোড প্রক্রিয়াটি পুনরাবৃত্তি করুন।
পদক্ষেপ ২: ক্লাস্টার নোড-১-এ লগইন করুন
Adminstrator অ্যাকাউন্ট ব্যবহার করে Couchbase ওয়েব কনসোল ব্যবহার করে ক্লাস্টার node-1-এ লগইন করুন, নিচের ছবিতে দেখানো szerint:
পদক্ষেপ ৩: সার্ভারগুলোর তালিকা দেখুন
ক্লাস্টারের অংশবূত সার্ভারগুলির তালিকা দেখতে Servers ট্যাবে ক্লিক করুন। নিচের ছবিটি দেখায় যে এই ক্লাস্টারের অংশ হিসেবে দুটি সার্ভার নোড রয়েছে:
পদক্ষেপ ৪: সার্ভার বিবরণ পর্যালোচনা করুন
বর্তমান সংস্করণ সহ প্রতিটি সার্ভারের বিস্তারিত তথ্য দেখতে প্রতিটি সার্ভারে ক্লিক করুন, নিচের ছবিতে দেখানো согласно:
যেহেতু আপনি node-1-এ থেকে লগইন করেছেন, আপনাকে প্রথমে অন্য নোড, node-2, আপগ্রেড করতে হবে যাতে Couchbase আপগ্রেডের সময় শাটডাউন হওয়ার পরেও Couchbase ওয়েব কনসোল সেশন 그대로 থাকে।
পদক্ষেপ ৫: নোড-২-এর গ্রেসফুল ফেইলওভার সঞ্চালন করুন
node-2 বিভাগটি প্রসারিত করুন এবং Failover-এ ক্লিক করুন, নিচের ছবিতে দেখানো अनुसार:
Graceful Failover নির্বাচন করুন এবং Failover Server-এ ক্লিক করুন, নিচের ছবিতে দেখানো согласно:
গ্রেসফুল ফেইলওভারের জন্য প্রয়োজনীয় সময় সরাসরি সক্রিয় বা সার্বাইভিং নোডে সিঙ্ক করার জন্য প্রয়োজনীয় vBuckets-এর সংখ্যার সাথে অনুপাতিক। আপনি যদি বদলে Hard Failover নির্বাচন করেন, তবে vBuckets সিঙ্ক হবে না এবং পরবর্তীতে সফ্টওয়্যার আপগ্রেডের পর Full Recovery ব্যবহার করতে হবে Delta Recovery-এর পরিবর্তে।
নিচের ছবিটি আপগ্রেডের অগ্রগতি দেখায়:
নিচের ছবিটি আপগ্রেড সম্পন্ন হওয়ার পর Couchbase ওয়েব কনসোল দেখায়:
পদক্ষেপ ৬: নোড-২-এ Couchbase শাটডাউন করুন
নিচের ছবিতে দেখানো szerint node-2-এ Couchbase শাটডাউন করুন:
শাটডাউন করার পর, Couchbase ওয়েব কনসোলে নোডটির স্ট্যাটাস Node unresponsive-এ পরিবর্তন হয়, নিচের ছবিতে দেখানোตาม:
পদক্ষেপ ৭: আপগ্রেড সঞ্চালন করুন
পদক্ষেপ ১-এ ডাউনলোড করা বাইনারি প্রয়োগ করে বিদ্যমান ভার্সন 5.1.0 ইনস্টলেশনকে 5.5.0-এ আপগ্রেড করুন, নিচের ছবিতে দেখানোตาม। যেহেতু এটি একটি ফ্রেশ ইনস্টলেশন নয়, RPM কমান্ডের --upgrade অপশন ব্যবহার করুন। আপনি যদি ভার্সন 5.1.0 আনইনস্টল করে তারপর 5.5.0 ইনস্টল করতে চান (বদলে --upgrade অপশন ব্যবহার না করে), তবে সফ্টওয়্যার আপগ্রেডের পর Full Recovery ব্যবহার করতে হবে Delta Recovery-এর পরিবর্তে।
আপগ্রেডে শুধু কয়েক মিনিট লাগবে এবং আপগ্রেড সম্পন্ন হলে, Couchbase সার্ভার প্রক্রিয়া স্বয়ংক্রিয়ভাবে শুরু হয়, নিচের ছবিতে দেখানোตาม:
Couchbase ওয়েব কনসোল আউটপুট এখন আপগ্রেড করা ভার্সনও দেখায় সেই সাথে Full Recovery বা Delta Recovery ব্যবহার করে আবার যোগ করার অপশন, নিচের ছবিতে দেখানোตาม:
পদক্ষেপ ৮: একটি ডেল্টা রিকভারি সঞ্চালন করুন
Add Back: Delta Recovery-এ ক্লিক করুন।
স্ট্যাটাস DELTA RECOVERY pending rebalance-এ পরিবর্তন হয়, নিচের ছবিতে দেখানোตาม। এই ধাপে, আপনি কেবল Couchbase-কে বলে দিচ্ছেন কোন রিকভারি মোড ব্যবহার করবে, আসলে রিকভারি শুরু করছেন না।
পদক্ষেপ ৯: রিকভারি শুরু করুন
আপগ্রেড করা নোডটি ক্লাস্টারের সাথে সিঙ্ক করতে Rebalance-এ ক্লিক করুন। এটি দ্রুত হওয়া উচিত কারণ এটি একটি ডেল্টা রিকভারি, ফুল রিকভারির পরিবর্তে।
নিচের ছবিটি রিকভারির অগ্রগতি দেখায়:
রিব্যালেন্স সম্পন্ন হলে, নোডটি Couchbase ওয়েব কনসোলে সবুজ হয়ে যায় এবং ক্লাস্টারে ফিরে সিঙ্ক হয়ে যায়। আপনি ভার্সনটিও 5.5-এ আপগ্রেড করা দেখতে পাবেন, নিচের ছবিতে দেখানোตาม:
নিচের ছবিতে লক্ষ্য করুন যে ক্লাস্টারের একটি নোড ভার্সন 5.1.0-এ এবং অন্যটি ভার্সন 5.5.0-এ রয়েছে:
পদক্ষেপ ১০: নোড-১ আপগ্রেড করুন
এখন যেহেতু আপনি সফলভাবে node-2 আপগ্রেড করেছেন, আপনাকে node-1 আপগ্রেড করতে হবে। প্রথম, node-2 Couchbase ওয়েব কনসোলে Administrator হিসেবে লগইন করুন এবং সার্ভার node-1 için পদক্ষেপ ৫ থেকে ৯ পুনরাবৃত্তি করুন।
নিচের ছবিটি node-1-এর আপগ্রেড এবং রিকভারি সম্পন্ন হওয়ার পর Couchbase ওয়েব কনসোল দেখায়:
বাম পাশের মেনুতে নিম্নলিখিত দুটি নতুন অপশন লক্ষ্য করুন, যা ভার্সন 5.5.0-এ নতুন।
-
Analytics: N1QL ব্যবহার করে знаком SQL কোয়েরি অ্যানালিটিক্সের জন্য চালানোর অনুমতি দেয়।
-
Eventing:
Event-Condition-Actionমডেল ব্যবহার করে ট্রিগার করা সার্ভার-সাইড ফাংশন তৈরি করার অনুমতি দেয়।
উপসংহার
গ্রেসফুল ফেইলওভার এবং ডেল্টা রিকভারি পদ্ধতি Couchbase রোলিং আপগ্রেডের জন্য একটি চমৎকার অপশন। অনেক নোডে फैले খুব বড় ডেটাবেস ক্লাস্টারের জন্য, প্রতিটি আপগ্রেড করা নোডের ফুল রিকভারি একটি অপচয়ের মতো হতে পারে। গ্রেসফুলি ফেইলওভার করে, Couchbase আপনাকে আপগ্রেড করা নোডটি যোগ করার অপশন দেয় শুধু আপগ্রেডের সময় 일어난 পরিবর্তনগুলিকে সিঙ্ক করে। এটি উল্লেখযোগ্যভাবে কম সময়সাপেক্ষ।
এছাড়া, যেসব ইন্টারঅ্যাক্টিভ ডেটাবেস অ্যাপ্লিকেশনগুলিতে অনেক গ্লোবাল সেকেন্ডারি ইনডেক্স (GSI) থাকে, उनके জন্য এটি একটি অনুকূল পদ্ধতি কারণ GSI-গুলি সংরক্ষিত থাকে এবং তাদের পুনর্নির্মাণের প্রয়োজন হয় না, যা রিসোর্স বাঁচায় এবং আপগ্রেড সময় কমায়।
এই পদ্ধতির সর্বোচ্চ সুবিধা নেওয়ার জন্য, আপগ্রেড অফ-পিক আওয়ার্সে সঞ্চালন করা উচিত। এটি এই পদ্ধতির একমাত্র ত্রুটি (হ্রাসপ্রাপ্ত হাই অভেইলেবিলিটি) সমাধান করে এবং আপগ্রেড গতি বাড়ায় কারণ অফ-পিক আওয়ার্সে ডেল্টা পরিবর্তন অনেক কম হবে।
ফিডব্যাক ট্যাব ব্যবহার করে যেকোনো মন্তব্য করুন বা প্রশ্ন জিজ্ঞাসা করুন।
আমাদের ডেটাবেস সেবাগুলি সম্পর্কে আরও জানুন।