Kubernetes-ში ოპერატორები რა არის და რა ნიმუშს იყენებენ?
sobes.tech AI
პასუხი AI-სგან
অপারেটৰসমূহ হৈছে Kubernetes-ত এপ্লিকেশ্যন পেকেজিং, ডিপ্লয়মেন্ট আৰু ব্যৱস্থাপনা কৰাৰ পদ্ধতি। তেওঁলোকে Kubernetes API-ৰ কাৰ্যক্ষমতা বিস্তাৰ কৰে, বিশেষকৈ নিৰ্দিষ্ট সফ্টৱেৰ-সম্পৰ্কীয় কন্ট্ৰোলাৰ হিচাপে কাম কৰে।
অপারেটৰসমূহে ব্যৱহাৰ কৰা মূল পেটাৰ্ন হৈছে Controller (কন্ট্ৰোলাৰ)। Kubernetes-ত কন্ট্ৰোলাৰে ক্লাস্টাৰৰ বৰ্তমান অৱস্থা অবিৰত পৰ্যবেক্ষণ কৰে আৰু ইয়াক ইচ্ছিত অৱস্থাৰ সৈতে তুলনা কৰে। যদি অৱস্থা ভিন্ন হয়, তেনেহলে কন্ট্ৰোলাৰে প্ৰয়োজনীয় পদক্ষেপ গ্ৰহণ কৰে বৰ্তমান অৱস্থাক ইচ্ছিত অৱস্থালৈ আনিবলৈ।
অপারেটৰসমূহে স্বয়ংক্ৰিয়ভাৱে সেই অপাৰেচনেল কামবোৰ সম্পাদন কৰে, যিবোৰ সাধাৰণতে মানুহে কৰে: ব্যাকআপ, আপডেট, স্কেলিং, জীৱনচক্র ব্যৱস্থাপনা আৰু নিৰ্দিষ্ট এপ্লিকেশ্যনসমূহ আৰু তেওঁলোকৰ নিৰ্ভৰশীলতাসমূহৰ ব্যৱস্থাপনা। তেওঁলোকে ইয়াক ক্লাস্টাৰত ঘটনাসমূহৰ প্ৰতিক্ৰিয়া হিচাপে আৰু ব্যৱহাৰকাৰী সম্পদ (Custom Resources - CR) আৰু ব্যৱহাৰকাৰী সম্পদৰ সংজ্ঞাসমূহ (Custom Resource Definitions - CRD)ৰ জৰিয়তে API Kubernetes-ৰ বিস্তাৰ কৰি কৰে।
কৰ্মপদ্ধতি:
- Custom Resource (CRD) সংজ্ঞা: এপ্লিকেশ্যন বা সেৱাৰ প্ৰতিনিধিত্ব কৰিবলৈ নতুন সম্পদৰ ধৰণ নিৰ্ধাৰণ কৰা হয়।
- Custom Resource (CR) সৃষ্টি: ব্যৱহাৰকাৰীয়ে এই নতুন সম্পদৰ এটা উদাহৰণ সৃষ্টি কৰে, য'ত ইচ্ছিত অৱস্থা বৰ্ণনা কৰা হয়।
- অপারেটৰ হিচাপে কন্ট্ৰোলাৰ: অপাৰেটৰ এই ধৰণৰ CR সৃষ্টি, আপডেট আৰু মচি পেলোৱাৰ বিষয়ে সদায় নজৰদাৰী কৰে।
- অৱস্থা তুলনা: অপাৰেটৰে চলি থকা অৱস্থা (উদাহৰণস্বৰূপ, চলি থকা পডৰ সংখ্যা, সফ্টৱেৰ সংস্কৰণ, কনফিগাৰেচন) আৰু CRত বৰ্ণনা কৰা ইচ্ছিত অৱস্থা তুলনা কৰে।
- কাৰ্য্য সম্পাদন: অৱস্থা ভিন্ন হলে, অপাৰেটৰে প্ৰয়োজনীয় পদক্ষেপ গ্ৰহণ কৰে Kubernetes-ৰ মান API ব্যৱহাৰ কৰি (Deployment, StatefulSet, Service, PVC আদি সৃষ্টি/আপডেট/মচি পেলোৱা) আৰু বৰ্তমান অৱস্থাক ইচ্ছিত অৱস্থালৈ আনিবলৈ।
উদাহৰণ: PostgreSQL ডেটাবেছৰ বাবে অপাৰেটৰে PostgresqlDatabase CR প্ৰদান কৰিব পাৰে। ব্যৱহাৰকাৰীয়ে এই CRটো সৃষ্টি কৰে, য'ত ইচ্ছিত সংস্কৰণ, সংৰক্ষণৰ আকাৰ আৰু ৰেপ্লিকেশ্যনৰ সেটিংছ থাকে। PostgreSQL অপাৰেটৰে এই CR মনিটৰিং কৰি, প্ৰয়োজনীয় StatefulSet, PersistentVolumeClaim, Service সৃষ্টি কৰিব আৰু ৰেপ্লিকেশ্যন কনফিগাৰ কৰিব, যাতে ইচ্ছিত অৱস্থা লাভ আৰু ৰক্ষা হয়।
# হাইপোথেটিক PostgreSQL অপাৰেটৰৰ বাবে Custom Resource উদাহৰণ
apiVersion: postgresql.database.example.com/v1
kind: PostgresqlDatabase
metadata:
name: my-prod-db
spec:
version: "14.5"
storageSize: "100Gi"
replicas: 3
backup:
enabled: true
schedule: "0 2 * * *"
এইদৰে, অপাৰেটৰসমূহ বিশেষ এপ্লিকেশ্যনৰ বিষয়ে গভীৰ অপাৰেচনাল জ্ঞান কোডত সংৰক্ষণ কৰে, ৰুটিন কামসমূহ স্বয়ংক্ৰিয় কৰে আৰু ডিপ্লয়মেণ্টৰ বিশ্বাসযোগ্যতা আৰু স্কেলেবিলিটা বৃদ্ধি কৰে।