ভার্সন Skew পলিসি
এই ডকুমেন্টটি কুবারনেটিসের বিভিন্ন উপাদানগুলির মধ্যে সর্বাধিক ভার্সন skew সাপোর্টেড বর্ণনা করে। নির্দিষ্ট ক্লাস্টার সরঞ্জামগুলি ভার্সন skew অতিরিক্ত সীমাবদ্ধতা স্থাপন করতে পারে৷
সাপোর্টেড ভার্সনগুলি
কুবারনেটিস ভার্সন x.y.z হিসাবে প্রকাশ করা হয়, যেখানে x হল মুখ্য ভার্সন, y হল গৌণ ভার্সন এবং z হল প্যাচ ভার্সন (patch version), যা শব্দার্থিক ভার্সন পরিভাষা অনুসরণ করে হয়। অতিরিক্ত তথ্যসমূহের জন্য, দেখুন কুবারনেটিস রিলিজ ভার্সন।
কুবারনেটিস প্রজেক্ট সাম্প্রতিক তিনটি পর্যন্ত ছোট রিলিজের জন্য রিলিজ শাখা বজায় রাখে (1.34, 1.33, 1.32)। কুবারনেটিস 1.19 এবং নতুন ভার্সন আনুমানিক 1 বছরের প্যাচ সাপোর্ট পায়(patch support) কুবারনেটিস 1.18 এবং তার বেশি বয়সীরা প্রায় 9 মাস প্যাচ সাপোর্ট (patch support) পেয়েছে।
প্রযোজ্য সংশোধন, নিরাপত্তা সংশোধন সহ, তীব্রতা এবং সম্ভাব্যতার উপর নির্ভর করে, সেই তিনটি রিলিজ শাখায় ব্যাকপোর্ট করা যেতে পারে। প্যাচ রিলিজগুলি এই শাখাগুলি থেকে একটি নিয়মিত ক্যাডেন্স এ কাটা হয়, এবং প্রয়োজনে অতিরিক্ত জরুরী রিলিজগুলি।
এ রিলিজ ম্যানেজার গ্রুপ এই সিদ্ধান্তের মালিক।
আরও তথ্যের জন্য, কুবারনেটিস প্যাচ রিলিজ পৃষ্ঠাটি দেখুন।
ভার্সন সাপোর্টেড skew
kube-apiserver
অত্যন্ত-উপলব্ধ (HA) ক্লাস্টারে,,
নতুন এবং প্রাচীনতম kube-apiserver উদাহরণগুলি অবশ্যই একটি ছোট ভার্সনের মধ্যে থাকতে হবে৷
উদাহরণ:
- নতুন
kube-apiserver1.34 এ আছে - অন্যান্য
kube-apiserverইন্সট্যান্সগুলি 1.34 এবং 1.33 এ সাপোর্টেড
kubelet
kubeletনতুন হওয়া উচিত নয়kube-apiserverএর চেয়ে।kubeletতিনটি ছোট ভার্সন পর্যন্ত পুরানো হতে পারেkube-apiserverএর চেয়ে (kubelet< 1.25 শুধুমাত্র দুটি ছোট ভার্সন পর্যন্ত পুরানো হতে পারেkube-apiserverএর চেয়ে).
উদাহরণ:
kube-apiserver1.34 এ আছেkubelet1.34, 1.33, 1.32, এবং 1.31 সাপোর্টেড
বিঃদ্রঃ:
If version skew exists betweenkube-apiserver instances in an HA cluster, this narrows the allowed kubelet versions.উদাহরণ:
kube-apiserverইন্সট্যান্সগুলিতে 1.34 এবং 1.33 আছেkubelet1.33, 1.32, এবং 1.31 এ সাপোর্টেড (1.34 সাপোর্টেড নয় কারণ এটি ভার্সন 1.33 -এkube-apiserverইন্সট্যান্সের চেয়ে নতুন হবে)
kube-proxy
kube-proxyনতুন হওয়া উচিত নয়kube-apiserverএর চেয়ে।kube-proxyতিনটি ছোট ভার্সন পর্যন্ত পুরানো হতে পারেkube-apiserverএর চেয়ে (kube-proxy< 1.25 শুধুমাত্র দুটি ছোট ভার্সন পর্যন্ত পুরানো হতে পারেkube-apiserver) এর চেয়ে।kube-proxyতিনটি ছোট ভার্সন পর্যন্ত পুরানো বা নতুন হতে পারেkubeletইন্সট্যান্সের(instance) থেকে পাশাপাশি এটি চলে (kube-proxy< 1.25 শুধুমাত্র দুটি ছোট ভার্সন পর্যন্ত পুরানো বা নতুন হতে পারেkubeletইন্সট্যান্সের থেকে পাশাপাশি এটি চলে )।
উদাহরণ:
kube-apiserver1.34 এ আছেkube-proxyতে 1.34, 1.33, 1.32, এবং 1.31 এ সাপোর্টেড
বিঃদ্রঃ:
If version skew exists betweenkube-apiserver instances in an HA cluster, this narrows the allowed kube-proxy versions.উদাহরণ:
kube-apiserverইন্সট্যান্সে 1.34 এবং 1.33 আছেkube-proxy1.33, 1.32, এবং 1.31 এ সাপোর্টেড (1.34 সাপোর্টেড নয় কারণ এটি ভার্সন 1.33 -এkube-apiserverইন্সট্যান্সের চেয়ে নতুন হবে)
kube-controller-manager, kube-scheduler, and cloud-controller-manager
kube-controller-manager, kube-scheduler, এবং cloud-controller-manager নতুন হওয়া উচিত নয়
kube-apiserver থেকে ইন্সট্যান্সগুলির সাথে তারা যোগাযোগ করে। তারা kube-apiserver ক্ষুদ্র ভার্সনের সাথে মিলবে বলে আশা করা হচ্ছে,
কিন্তু একটি ছোট ভার্সন পর্যন্ত পুরানো হতে পারে (লাইভ আপগ্রেডের অনুমতি দেওয়ার জন্য)।
উদাহরণ:
kube-apiserver1.34 এ আছেkube-controller-manager,kube-scheduler, এবংcloud-controller-managerসাপোর্টেড আছে 1.34 এবং 1.33
বিঃদ্রঃ:
If version skew exists betweenkube-apiserver instances in an HA cluster, and these components
can communicate with any kube-apiserver instance in the cluster (for example, via a load balancer),
this narrows the allowed versions of these components.উদাহরণ:
kube-apiserverইন্সট্যান্সে 1.34 এবং 1.33 আছেkube-controller-manager,kube-scheduler, এবংcloud-controller-managerএকটি লোড ব্যালেন্সারের সাথে যোগাযোগ করে যে কোনোkube-apiserverইন্সট্যান্সে রুট করতে পারেkube-controller-manager,kube-scheduler, এবংcloud-controller-managerসাপোর্টেড আছে 1.33 (1.34 সাপোর্টেড নয় কারণ এটি 1.33 ভার্সনে নতুন হবেkube-apiserverইন্সট্যান্সের চেয়ে নতুন হবে)
kubectl
kubectl একটি ছোট ভার্সন (পুরানো বা নতুন) kube-apiserver এর মধ্যে সাপোর্টেড।
উদাহরণ:
kube-apiserverআছে 1.34kubectlসাপোর্টেড আছে 1.35, 1.34, এবং 1.33
বিঃদ্রঃ:
If version skew exists betweenkube-apiserver instances in an HA cluster, this narrows the supported kubectl versions.উদাহরণ:
kube-apiserverইন্সট্যান্সে আছে 1.34 এবং 1.33kubectlসাপোর্টেড আছে 1.34 এবং 1.33 (অন্যান্য ভার্সনগুলিkube-apiserverউপাদানগুলির একটি থেকে একের বেশি ছোটখাট ভার্সন হবে )
সাপোর্টেড উপাদান আপগ্রেড অর্ডার
উপাদানগুলির মধ্যে সাপোর্টেড ভার্সনের স্কুটির প্রভাব রয়েছে যে ক্রম অনুসারে উপাদানগুলিকে আপগ্রেড করতে হবে৷ এই বিভাগটি 1.33 ভার্সন থেকে 1.34 ভার্সনে একটি বিদ্যমান ক্লাস্টার রূপান্তর করতে উপাদানগুলিকে আপগ্রেড করতে হবে তা বর্ণনা করে৷
ঐচ্ছিকভাবে, আপগ্রেড করার প্রস্তুতির সময়, কুবারনেটিস প্রজেক্ট সুপারিশ করে যে আপনি আপগ্রেড করার সময় যতটা সম্ভব রিগ্রেশন এবং বাগ ফিক্স থেকে উপকৃত হতে নিম্নলিখিতগুলি করুন:
- নিশ্চিত করুন যে উপাদানগুলি আপনার বর্তমান ছোট ভার্সনের সবচেয়ে সাম্প্রতিক প্যাচ ভার্সনে রয়েছে৷
- ক্ষুদ্র লক্ষ্য ভার্সনের সবচেয়ে সাম্প্রতিক প্যাচ ভার্সনে উপাদান আপগ্রেড করুন।
উদাহরণস্বরূপ, আপনি যদি 1.33 ভার্সন চালাচ্ছেন, তাহলে নিশ্চিত করুন যে আপনি সাম্প্রতিক প্যাচ ভার্সনে আছেন৷ তারপর, 1.34-এর সবচেয়ে সাম্প্রতিক প্যাচ ভার্সনে আপগ্রেড করুন৷
kube-apiserver
পূর্বশর্তসমূহ:
- একটি একক-ইন্সট্যান্স ক্লাস্টারে, বিদ্যমান
kube-apiserverইন্সট্যান্স হল 1.33 - একটি HA ক্লাস্টারে, সমস্ত
kube-apiserverইন্সট্যান্সগুলি 1.33 বা 1.34 এ থাকে (এটি প্রাচীনতম এবং নতুনkube-apiserverইন্সট্যান্সের মধ্যে সর্বাধিক 1 টি ছোট ভার্সন নিশ্চিত করে ) - এই সার্ভারের সাথে যোগাযোগকারী
কুব-কন্ট্রোলার-ম্যানেজার,কুব-শিডিউলারএবংক্লাউড-কন্ট্রোলার-ম্যানেজারইনস্ট্যান্সগুলি 1.33 ভার্সনে রয়েছে (এটি নিশ্চিত করে যে তারা বিদ্যমান API সার্ভার ভার্সনের চেয়ে নতুন নয় ,এবং এর মধ্যে রয়েছে নতুন API সার্ভার ভার্সনের 1টি ছোট ভার্সন) - সমস্ত নোডের
kubeletইনস্ট্যান্সগুলি 1.33 or 1.32 ভার্সনে রয়েছে (এটি নিশ্চিত করে যে তারা বিদ্যমান API সার্ভার ভার্সনের চেয়ে নতুন নয় ,এবং নতুন API সার্ভার ভার্সনের 2টি ছোট ভার্সনের মধ্যে রয়েছে) - নিবন্ধিত ভর্তির ওয়েবহুকগুলি নতুন
কুবে-এপিসার্ভারইনস্ট্যান্স যে ডেটা পাঠাবে তা পরিচালনা করতে সক্ষম:ValidatingWebhookConfigurationএবংMutatingWebhookConfigurationঅবজেক্ট অন্তর্ভুক্ত করার জন্য আপডেট করা হয়েছে REST রিসোর্সের যেকোন নতুন ভার্সন 1.34 এ যোগ করা হয়েছে (বা ব্যবহার করুনmatchPolicy: Equivalentoption v1.15+ এ সহজলভ্য)- ওয়েবহুকগুলি REST সংস্থানগুলির যে কোনও নতুন ভার্সন পরিচালনা করতে সক্ষম যা তাদের কাছে পাঠানো হবে, এবং 1.34-এ বিদ্যমান ভার্সনগুলিতে যে কোনও নতুন ক্ষেত্র যুক্ত করা হবে।
kube-apiserver আপগ্রেড করুন 1.34
বিঃদ্রঃ:
Project policies for API deprecation and API change guidelines requirekube-apiserver to not skip minor versions when upgrading, even in single-instance clusters.kube-controller-manager, kube-scheduler, and cloud-controller-manager
পূর্বশর্তসমূহ:
kube-apiserverইনস্ট্যান্সগুলির সাথে এই উপাদানগুলি 1.34 -এ যোগাযোগ করে (HA ক্লাস্টারে যেখানে এই কন্ট্রোল প্লেন উপাদানগুলি ক্লাস্টারের যেকোনোkube-apiserverইনস্ট্যান্সের সাথে যোগাযোগ করতে পারে, এই উপাদানগুলি আপগ্রেড করার আগে সমস্তkube-apiserverইনস্ট্যান্সগুলি আপগ্রেড করা আবশ্যক)
1.34 থেকে আপগ্রেড করুন kube-controller-manager, kube-scheduler, এবং
cloud-controller-manager । kube-controller-manager, kube-scheduler,
cloud-controller-manager এর মধ্যে কোনো প্রয়োজনীয় আপগ্রেড অর্ডার নেই।
আপনি যে কোনো ক্রমে এই উপাদান আপগ্রেড করতে পারেন, বা
এমনকি একই সাথে।
kubelet
পূর্বশর্তসমূহ:
- যে
kube-apiserverইনস্ট্যান্সkubeletএর সাথে যোগাযোগ করে তা 1.34-এ।
ঐচ্ছিকভাবে kubelet ইনস্ট্যান্সগুলিকে 1.34 তে আপগ্রেড করুন (অথবা সেগুলি
1.33, 1.32, বা 1.31 এ ছেড়ে দেওয়া যেতে পারে)
বিঃদ্রঃ:
Before performing a minor versionkubelet upgrade, drain pods from that node.
In-place minor version kubelet upgrades are not supported.সতর্কতা:
Running a cluster withkubelet instances that are persistently three minor versions behind
kube-apiserver means they must be upgraded before the control plane can be upgraded.kube-proxy
পূর্বশর্তসমূহ:
- যে
kube-apiserverইনস্ট্যান্সkube-proxyএর সাথে যোগাযোগ করে তা 1.34-এ।
ঐচ্ছিকভাবে kube-proxy ইনস্ট্যান্সগুলিকে 1.34 তে আপগ্রেড করুন
(অথবা সেগুলি 1.33, 1.32,
বা 1.31 এ ছেড়ে দেওয়া যেতে পারে)
সতর্কতা:
Running a cluster withkube-proxy instances that are persistently three minor versions behind
kube-apiserver means they must be upgraded before the control plane can be upgraded.