কুবারনেটে সহনশীলতা এবং কলঙ্কগুলি কী কী?
কুবারনেটে সহনশীলতা এবং কলঙ্ক ব্যবহার করা হয় যাতে শুঁটি সঠিক নোডে স্থাপন করা হয়। সহনশীলতা পড স্পেসিফিকেশনে সংজ্ঞায়িত করা হয় যখন দাগ নোড স্পেসিফিকেশনে সংজ্ঞায়িত করা হয়। আপনি যখন একটি পডের উপর সহনশীলতা প্রয়োগ করেন, তখন এটি শিডিয়ুলারকে একটি নির্দিষ্ট নোডে পড নির্ধারণ করতে দেয়। যাইহোক, কলঙ্ক সহ্য করার বিপরীতে কাজ করে। এটি নোডকে এটিতে নির্ধারিত পডগুলি প্রত্যাখ্যান করার অনুমতি দেয়। পডগুলিকে শুধুমাত্র নোডের উপর নির্ধারিত করার অনুমতি দেওয়া হয় যদি তাদের সাথে মিলিত দাগের সাথে সহনশীলতা প্রয়োগ করা হয়।
কুবারনেটস পড, ক্লাস্টার, নোড, ইভেন্ট ইত্যাদির সাথে কাজ করে৷ কিছু ক্ষেত্রে, এই জিনিসগুলি পরিচালনা করার জন্য, কুবারনেটসকে সহনশীলতা এবং কলঙ্কের প্রয়োজন হয়৷ সহনশীলতা হল শিডিউলিং প্রক্রিয়ার বাস্তবায়ন। শুঁটিগুলিকে সময়সূচী করা দরকার যাতে তারা সঠিকভাবে কাজ করতে পারে এবং যখন তাদের অপারেশন করার প্রয়োজন হয় তখন তাদের যথেষ্ট সম্পদ থাকতে পারে। কলঙ্কের বিরুদ্ধে পোডগুলিতে সহনশীলতা প্রয়োগ করা হয় যাতে কাজ করার সময় তাদের কোনও বাধা বা বিঘ্ন না ঘটে।
Kubernetes-এর কলঙ্কগুলি একটি পডকে একটি পডের সময়সূচী প্রত্যাখ্যান করতে সক্ষম করে। এটি 'NodeSpec' নোড স্পেসিফিকেশন ব্যবহার করে একটি নোডে প্রয়োগ করা হয়। শিডিয়ুলার এমন একটি নোডের উপর একটি পড লাগাতে অক্ষম যেটিতে একটি দাগ রয়েছে৷ যাইহোক, আপনি যদি একটি নোডের উপর পডগুলি নির্ধারণ করতে চান যেখানে ইতিমধ্যে একটি দাগ প্রয়োগ করা হয়েছে, তাহলে আপনাকে এটির বিরুদ্ধে সহনশীলতা ঘোষণা করতে হবে।
কুবারনেটে সহনশীলতা একটি নোডের উপর একটি পড নির্ধারণ করার অনুমতি দেয় যেখানে একটি দাগ ইতিমধ্যেই প্রয়োগ করা হয়েছে। একটি পডের সহনশীলতা 'PodSpec' পড স্পেসিফিকেশন ব্যবহার করে প্রয়োগ করা হয়। আপনি যখন ম্যাচিং টেন্ট সহ একটি পডের উপর সহনশীলতা প্রয়োগ করেন, সময়সূচি সহজেই একটি নির্দিষ্ট নোডে পডগুলি নির্ধারণ করতে পারে।
এখন, কুবারনেটসের একটি পডের উপর সহনশীলতা কীভাবে প্রয়োগ করতে পারেন তা বুঝতে আপনাকে সাহায্য করার জন্য একটি দৃশ্য উপস্থাপন করা যাক। আপনি বাস্তবায়ন বিভাগে এগিয়ে যাওয়ার আগে, নিশ্চিত করুন যে আপনার সমস্ত পূর্বশর্ত প্রয়োজনীয়তা রয়েছে।
পূর্বশর্ত:
কুবারনেটসের একটি নোডে সহনশীলতা বাস্তবায়নের জন্য আপনাকে নিম্নলিখিত জিনিসগুলি করতে হবে:
- উবুন্টু 20.04 বা যেকোন লিনাক্স সিস্টেমের অন্য যেকোনো সর্বশেষ সংস্করণ
- মিনিকুব (সর্বশেষ সংস্করণ)
- আপনার Linux/Unix সিস্টেমে ভার্চুয়াল মেশিন ইনস্টল করা হয়েছে
- Kubectl কমান্ড লাইন টুল
ধরে নিই যে আপনার সিস্টেম পূর্বশর্তের সমস্ত চাহিদা পূরণ করে, আসুন আমরা Kubernetes সহনশীলতা সেট করা শুরু করি।
ধাপ 1: Minikube টার্মিনাল শুরু করুন
আপনাকে প্রথমে যা করতে হবে তা হল মিনিকুব টার্মিনাল চালু করা যাতে আপনি একটি নোডে Kubernetes সহনশীলতা বাস্তবায়নের জন্য kubectl কমান্ডগুলি ব্যবহার করতে পারেন। মিনিকুব শুরু করতে, নিম্নলিখিত কমান্ডটি ব্যবহার করা হয়:
> মিনিকুব শুরু করুনএই কমান্ডটি কার্যকর করার পরে, আপনি আপনার টার্মিনালে নিম্নলিখিত আউটপুট পাবেন:
ধাপ 2: সক্রিয় নোডের তালিকা পান
এখন যেহেতু আমরা মিনিকুব শুরু করেছি, আমাদের সিস্টেম কুবারনেটসের পডগুলিতে সহনশীলতা সেট করতে প্রস্তুত। আমরা পডগুলিতে সহনশীলতা সেট করার আগে, আমাদের ইতিমধ্যেই কতগুলি নোড এবং কী ধরণের নোড রয়েছে তা পরীক্ষা করা যাক। এটি করার জন্য, আমরা নিম্নলিখিত পরবর্তী কমান্ড ব্যবহার করি:
> kubectl নোড পেতে -দ্য =custom-columns=NodeName:.metadata.name,TaintKey:.spec.taints [ * ] .key,TaintValue:.spec.taints [ * ] .value, TaintEffect:.spec.taints [ * ] প্রভাবএই নির্দেশে কুবারনেটস ডিফল্ট ইনস্টলেশন দ্বারা কলঙ্কিত সমস্ত নোড তালিকাভুক্ত করা হয়েছে। প্রথমে এই কমান্ডের আউটপুট দেখি। তারপর, আমরা নোডের তালিকা নিয়ে আলোচনা করি:
যেহেতু কুবারনেটস ডিফল্ট ইনস্টলেশনের দ্বারা তৈরি এবং কলঙ্কিত কোনো নোড নেই এবং আমরা নির্দিষ্টভাবে কোনো নোড তৈরি করিনি, ফলাফলটি <কোনও> নয়। পূর্ববর্তী আউটপুট থেকে, আমরা দেখতে পাচ্ছি যে কোন নোড নেই। অতএব, আমরা প্রথমে নোড তৈরি করি এবং তারপর সহনশীলতা সেট করি। Kubernetes-এ একটি পডে সহনশীলতা সেট করতে, আমাদের প্রথমে একটি ক্লাস্টারে একটি অ্যাপ স্থাপন করতে হবে। পরবর্তী কয়েকটি ধাপ প্রদর্শন করে কিভাবে একটি ক্লাস্টারে একটি অ্যাপ স্থাপন করতে হয়।
ধাপ 3: একটি নেমস্পেস তৈরি করুন
প্রথমত, আমরা একটি ক্লাস্টারে একটি অ্যাপ স্থাপন করার জন্য একটি নামস্থান তৈরি করি। এখানে, আমরা নিম্নলিখিত কমান্ডের সাহায্যে 'ফ্রন্টএন্ড' মান সহ একটি অ্যাপ তৈরি করি:
> kubectl ns ফ্রন্টএন্ড তৈরি করেএই কমান্ডটি 'ফ্রন্টএন্ড' মান সহ নামস্থান তৈরি করে। নিম্নলিখিত আউটপুট দেখুন:
ধাপ 4: নেমস্পেসে Nginx পড স্থাপন করুন
এখন, আমরা এইমাত্র তৈরি করা নামস্থানে nginx পড স্থাপন করুন। আমরা nginx স্থাপন করতে নিম্নলিখিত কমান্ডটি ব্যবহার করি:
> kubectl রান nginx - ইমেজ =nginx -নামস্পেস ফ্রন্টএন্ডএটি অ্যাপ স্থাপনের স্পেসিফিকেশনে কোনো সহনশীলতা কনফিগারেশন ছাড়াই একটি ক্লাস্টারে একটি অ্যাপ স্থাপন করে। kubectl কমান্ড ব্যবহার করে, আমরা নেমস্পেস ফ্রন্টএন্ডে nginx পড স্থাপন করি:
ধাপ 5: পডের তালিকা পান
এখন, তৈরি করা পডগুলিকে তাদের স্ট্যাটাস দেখতে দিন। প্রদত্ত কমান্ডটি সমস্ত পড এবং তাদের অবস্থাও তালিকাভুক্ত করে:
> kubectl শুঁটি পেতে -n সামনের অংশযেহেতু আমরা শুধুমাত্র nginx তৈরি করেছি, তাই এই কমান্ডটি সেই পডটিকে তার স্থিতি সহ তালিকাভুক্ত করা উচিত। নিম্নলিখিত আউটপুট দেখুন:
ধাপ 6: Kubernetes ঘটনা বিশ্লেষণ করুন
এখন, আসুন কুবারনেটসের ঘটনাগুলি বিশ্লেষণ করি যাতে আমরা সেই অনুযায়ী পোডগুলিতে সহনশীলতা সেট করতে পারি। Kubernetes-এ ইভেন্টের তালিকা পেতে আমরা নিম্নলিখিত kubectl কমান্ড ব্যবহার করি:
> kubectl ঘটনা পেতে -n সামনের অংশএটি টাইপ, কারণ, অবজেক্ট এবং বার্তার মতো বৈশিষ্ট্যগুলির সাথে ফ্রন্ট-এন্ড মানের সাথে সম্পর্কিত সমস্ত ইভেন্টের তালিকা করে। নিম্নলিখিত আউটপুটে প্রদত্ত তালিকা দেখুন:
আপনি আগের আউটপুট থেকে দেখতে পাচ্ছেন, nginx পড নির্দিষ্ট সহনশীলতার সাথে নির্ধারিত হয়েছে। 'বার্তা' বৈশিষ্ট্যটি প্রক্রিয়াটির সাথে সম্পাদিত কর্মের তালিকা দেখায়।
ধাপ 7: পডের অবস্থা পরীক্ষা করুন
চূড়ান্ত পদক্ষেপ হল একটি নির্দিষ্ট এবং সঠিক নোডে সফলভাবে নির্ধারিত হয়েছে তা নিশ্চিত করার জন্য আমরা পূর্বে তৈরি করা পডের স্থিতি আবার পরীক্ষা করা। এটি করার জন্য, আমরা নিম্নলিখিত kubectl কমান্ড ব্যবহার করি:
> kubectl শুঁটি পেতে -n সামনের অংশ
আগের আউটপুটে দেখা যায়, পডটিকে এখন কলঙ্কিত নোডে চালানোর অনুমতি দেওয়া হয়েছে যেহেতু সহনশীলতা এটির বিপরীতে সেট করা হয়েছে।
উপসংহার
এই গাইডে, আমরা কলঙ্ক এবং সহনশীলতা সম্পর্কে অনুসন্ধান করেছি। আমরা কলঙ্ক এবং সহনশীলতার মৌলিক কাজ সম্পর্কে শিখেছি। তারপর, আমরা একটি পড উপর সহনশীলতা বাস্তবায়ন. একটি সাধারণ উদাহরণের সাহায্যে, আমরা শিখেছি কিভাবে কুবারনেটসের একটি নোডে সহনশীলতা সেট করতে হয়।