我能想到的一種方法是在定義Pod時設置一個值爲Pod的命名空間的環境。
動態獲取名稱空間而不需要對Pod進行更改將更好,因爲它減輕了構建Pod的負擔。如何獲取Pod中的當前命名空間?
那麼有沒有辦法在Pod中獲取當前命名空間?
我能想到的一種方法是在定義Pod時設置一個值爲Pod的命名空間的環境。
動態獲取名稱空間而不需要對Pod進行更改將更好,因爲它減輕了構建Pod的負擔。如何獲取Pod中的當前命名空間?
那麼有沒有辦法在Pod中獲取當前命名空間?
嘗試將文件:
/var/run/secrets/kubernetes.io/serviceaccount/namespace
,如果你想使用ENV變量,你可以使用「向下API」爲讓K8S你不需要設置靜態命名空間環境變量在POD規範動態地使用當前名稱空間填充它。請參閱https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/#the-downward-api
是的,但它也需要在定義Pod規範時設置環境變量,儘管該值是從Pod元數據或serviceAccount文件派生的。這些方法看起來很相似,因爲它們都試圖從serviceAccountFile獲取當前名稱空間。非常感謝,這給了我另一個我沒有想到的解決方案:D – flyer