حذف خودکار یک شغل در Kubernetes

هنگام کار با مشاغل در Kubernetes، ممکن است لازم باشد آنها را یک بار در زمان استقرار رول کنید و سپس دیگر به آنها نیازی نداشته باشید. بنابراین حفظ منبع برای شما بی فایده است و می خواهید آن را حذف کنید. (به خصوص اگر در طول استقرار خود اطلاعات شغلی خاصی را تغییر دهید – که می تواند باعث خطا شود)
برای انجام این کار، فقط باید فیلد را اضافه کنید .spec.ttlSecondsAfterFinished
در تعریف شغل شما به عنوان مقدار، تعداد ثانیه هایی که پس از آن می خواهید کار تکمیل شده است.
مثال
apiVersion: batch/v1
kind: Job
metadata:
name: pi-with-ttl
spec:
ttlSecondsAfterFinished: 100
template:
spec:
containers:
- name: pi
image: perl:5.34.0
command: ["perl", "-Mbignum=bpi", "-wle", "print bpi(2000)"]
restartPolicy: Never
بیشتر توجه!! من اشاره کردم تکمیل شدبنابراین مهم نیست که Job شما با موفقیت به پایان رسیده است یا خیر، پس از مدت زمان تعیین شده حذف خواهد شد! بنابراین، مراقب باشید که چه مقداری را تعیین می کنید!
در واقع، اگر سیستمی نداشته باشید که گزارشها را جمعآوری کند، هیچ تصوری از آنچه ممکن است رخ داده باشد نخواهید داشت و بنابراین در صورت بروز مشکل، اشکالزدایی میکنید.
بهتر است همیشه مقداری به اندازه کافی بزرگ تنظیم کنید که بتوانید ببینید چه اتفاقی برای خوشه شما می افتد پس از استقرار و بتوانید اطلاعات را قبل از از بین رفتن آن بازیابی کنید.
اگر از Helm استفاده می کنید، به زودی خواهیم دید که یک سیستم موجود وجود دارد که بسیار مفیدتر است.
حق حبس
امیدوارم برای شما مفید باشد! 🍺