簡體   English   中英

創建命名空間后注入 cronjob

[英]Inject cronjob once namespace created

這主要用於具有搶占式節點的 GKE 集群。 谷歌雲會在沒有警告的情況下關閉任何節點,這會留下許多處於 Terminated 和/或 NodeShutdown 狀態的 Pod。 我當前的 UAT 環境是一個擁有數百個租戶的 GKE 集群,其中每個租戶占用一個命名空間。 刪除所有具有 Terminated 和/或 NodeShutdown 狀態(意味着跨命名空間)的 pod 會花費很長時間,而且作為單次運行並不實際,所以我認為每個命名空間運行自己的“管理員”Cronjob 可能會更好。 現在,我可以使用現有命名空間手動創建 Cronjob,但我無法阻止我的同事為他們的租戶創建其他命名空間。 所以我開始考慮是否可以像 Istio 自動邊車注入一樣做類似的事情。

只是好奇有人知道我應該從這里挖掘哪些文件/github repo。 或者,如果我認為可能完全錯誤,請指出解決此問題的正確方法。

所以我認為每個命名空間運行自己的“看門人”Cronjob 可能會更好。 現在,我可以使用現有命名空間手動創建 Cronjob,但我無法阻止我的同事為他們的租戶創建其他命名空間。 所以我開始考慮是否可以像 Istio 自動邊車注入一樣做類似的事情。

您可以編寫自己的 CRD 或控制器,默認將 Job 或 Cronjob 注入新創建的命名空間。

任何創建新命名空間的人,都會運行這個 cronjob(janitor) 進行清理。

我正在研究這個 CRD 或控制器daemonjob ,它將作為JOB在每個節點上運行。 也許您可以將其作為基礎並進一步更新以實現您的場景。

https://github.com/AmitKumarDas/metac/blob/master/examples/daemonjob/sync.py

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM