কোনও স্থাপনা তৈরি করার সময় কিসের জন্য নির্বাচক - ম্যাচ লেবেলগুলি ব্যবহার করা যায়?


18

কুবেরনেটস ডকুমেন্টেশন থেকে :

নির্বাচক ক্ষেত্রটি নির্ধারণ করে যে কী পডগুলি পরিচালনা করতে হবে তা ডিপ্লয়মেন্ট কীভাবে খুঁজে পায়।

তবে, স্থাপনার তৈরি করার সময়, আমি ইতিমধ্যে মোতায়েনের অংশ হিসাবে পড টেম্পলেটটি নির্দিষ্ট করে দিয়েছি। তাহলে কেন আমারও নির্বাচকদের দরকার হবে?

এটি কি পরিষেবাগুলির মতো ব্যবহার করার কথা রয়েছে, যেখানে ইতিমধ্যে শুঁটি আলাদাভাবে শুরু করা হয়েছে, কিন্তু পরে একত্রিত করার জন্য ডিপোয়মেন্টের ছত্রছায়ায় আনা হয়েছে?

উত্তর:


8

এই প্রশ্নের উত্তর আমরা কুবেরনেটস.ওয়ে থেকে বিভাগে ডিপ্লোয়মেন্টস এ পেতে পারি

তাহলে কেন আমারও নির্বাচকদের দরকার হবে?

কে 8 এস বনাম 1.14 এর জন্য ডকুমেন্টেশন থেকে নীচে উদ্ধৃতি

.spec.selectorএকটি প্রয়োজনীয় ক্ষেত্র যা এই স্থাপনার দ্বারা চিহ্নিত পডগুলির জন্য একটি লেবেল নির্বাচনকারী নির্দিষ্ট করে।

.spec.selectorঅবশ্যই মিলবে .spec.template.metadata.labels, বা এটি এপিআই দ্বারা প্রত্যাখ্যাত হবে।

এপিআই সংস্করণ অ্যাপ্লিকেশনগুলিতে / v1, .spec.selector এবং .metadata.labels সেট না থাকলে .spec.template.metadata.labels এ ডিফল্ট হয় না। সুতরাং সেগুলি অবশ্যই স্পষ্টভাবে সেট করা উচিত । আরও মনে রাখবেন যে .spec.selector অ্যাপস / ভি 1 এ ডিপ্লোয়মেন্ট তৈরির পরে অপরিবর্তনীয়।

কোনও স্থাপনা পডগুলি সমাপ্ত করতে পারে যার লেবেলগুলি নির্বাচকের সাথে মেলে যদি তাদের টেমপ্লেট .spec.template থেকে আলাদা হয় বা যদি এই জাতীয় পডগুলির মোট সংখ্যা .spec.replicas ছাড়িয়ে যায়। এটি পোডের সংখ্যা পছন্দসই সংখ্যার চেয়ে কম হলে .spec.template সহ নতুন পোড নিয়ে আসে।

পডগুলি ইতিমধ্যে পৃথকভাবে শুরু করা হচ্ছে, তবে পরে একসাথে পরিচালিত করার জন্য স্থাপনার ছত্রছায়ায় আনা হয়েছে?

সোজা কথা বলছি, না

দ্রষ্টব্য: আপনার অন্য কোনও শুঁটি তৈরি করা উচিত নয় যার লেবেলগুলি এই নির্বাচকটির সাথে মেলে, সরাসরি, অন্য তৈরি করে Deployment, বা অন্য বা যেমন একটি ReplicaSetবা একটি নিয়ন্ত্রণকারী তৈরি করে ReplicationController। আপনি যদি Deploymentএটি করেন তবে প্রথমটি মনে করে যে এটি এই অন্যান্য শুঁটি তৈরি করেছে। Kubernetesআপনাকে এটি করতে বাধা দেয় না। যদি আপনার একাধিক কন্ট্রোলার থাকে যাতে ওভারল্যাপিং সিলেক্টর থাকে, কন্ট্রোলাররা একে অপরের সাথে লড়াই করবে এবং সঠিকভাবে আচরণ করবে না।


5
সুতরাং এটি কি জন্য ব্যবহার করা হয়? দেখে মনে হচ্ছে আপনার সর্বদা নির্বাচকটিকে অনুমানের লেবেলের সাথে মেলে করা উচিত ... এমন কিছু ঘটনা আছে যেখানে এটি না করা কার্যকর?
ভিক্টর নোল

4
সত্যিই কেন প্রশ্নের উত্তর দেয় না? - কেন ম্যাচ লেবেল বিদ্যমান এবং অবশ্যই মিলবে .spec.template.metadata.labels? এটির মূল বিষয়টি কীভাবে, specনীচে যেমন সংজ্ঞায়িত করা হয়েছে Deploymentতাই এটি স্পষ্ট করে দেওয়া হয়েছে যে পডগুলি স্থাপনার জন্য শুরু করা হয়েছে।
ইভান

2
যে কেউ এই আলোচনায় বাধা দেয় তার সর্বশেষতম ডকুমেন্টেশন চেক করা উচিত। উদাহরণস্বরূপ, বর্তমানে .spec.selector চ্ছিক ক্ষেত্র নয়। এটি প্রয়োজনীয় ক্ষেত্র। kubernetes.io/docs/concepts/workloads/controllers/d কর্মসংস্থান
সফটওয়্যার

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

@ সফটওয়্যারটিরি হ্যাঁ, তবে এটি কেন প্রয়োজন তা এখনও ব্যাখ্যা করে না, যেহেতু পড স্পেস টেম্পলেটটি নীচে যে কোনওভাবে সংজ্ঞায়িত করা হয়েছে।
user168317
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.