أهلا،
آسف للقيام بذلك بالترتيب الخاطئ كما هو مذكور هنا: https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md#contributing -a-patch
فعلت # 22439 لمعالجة هذه المشكلة (على جانب kubectl)
الحاجة إلى أن تكون قادرًا على تحديث مجموعة خفية في سطر أوامر واحد.
يكافئ بشكل أساسي القيام بما يلي:
kubectl delete -f dsfile --cascade=false
kubectl create -f dsfile
for pod in pods
kubectl delete pod
wait for delete
تحرير: اقترح @ bgrant0607 تحديث ds بدلاً من delte / إعادة إنشاء
إذا كنت ترغب في المساهمة في حل من جانب العميل ، على الرغم من أن هذا ليس الاتجاه طويل المدى الذي يدور في ذهننا (# 12143) ، فلا ينبغي أن يقدم أمرًا جديدًا. بدلاً من ذلك ، يجب أن نجعل kubectl rolling-update
يعمل مع DaemonSet (و ReplicaSet أيضًا ، إذا كنت مائلاً جدًا).
https://github.com/kubernetes/kubernetes/blob/master/pkg/kubectl/cmd/rollingupdate.go
نظرًا لأن rolling-update
لا يحدد نوع المورد ( replicationcontroller
) ، يجب أن نفترض rc
افتراضيًا. بخلاف ذلك ، أعتقد أن بناء الجملة قابل للتوسيع بشكل طبيعي لأنواع وحدات التحكم الأخرى ، باستخدام بناء جملة النوع / الاسم.
على سبيل المثال:
kubectl rolling-update daemonset/mydaemon --image=image:v2
بخلاف الأمر نفسه ، لا أتوقع أن يقوم إجراء التحديث بمشاركة الكود.
يقوم أمر التحديث المتداول الحالي بإنشاء وحدة تحكم ReplicationController جديدة وتغيير حجمها تدريجيًا أثناء تصغير الحجم القديم. في حالة --image
، فإنه يقوم "برقصة الحذف" في النهاية من أجل تغيير الاسم مرة أخرى إلى RC الأصلي - يقوم بحذف الأصل ، وإنشاء RC آخر بنفس الاسم ، ثم يحذف تم استخدام RC المؤقت لطرح الصورة الجديدة.
في حالة DaemonSet ، ستفعل kubectl العكس: ستقوم بتحديث DaemonSet الأصلي وحذف الكبسولات واحدة تلو الأخرى لاستبدالها. إذا تم تحديد --image
، فسيتم ذلك في النهاية. إذا تم تحديد اسم DaemonSet جديد (على سبيل المثال ، kubectl rolling-update daemonset/mydaemon-v1 -f mydaemon-v2.yaml
) ، فسيتم إنشاء DaemonSet الجديد في نهاية عملية التحديث ، وسيتم حذف الأصل. سنحتاج إما إلى التأكد من معالجة DaemonSet لذلك بأمان ، أو سنحتاج إلى حذف DaemonSet الأصلي قبل إنشاء المجموعة الجديدة (على غرار اقتراحي في # 7402).
سم مكعبmikedanesedavidoppmadhusudancsjanetkuokargakispwittrockgmarek
1.6 يتضمن ترقيات متجددة لـ DaemonSets.
شكرا للتحديث! 👍
التعليق الأكثر فائدة
1.6 يتضمن ترقيات متجددة لـ DaemonSets.