如何在Pod中获取当前名称空间?

fly*_*yer 5 kubernetes kubernetes-go-client

我可以想到的一种方法是设置一个环境,该环境在定义Pod时应使用Pod的命名空间。
动态获取名称空间而不需要更改Pod会更好,因为它减轻了构造Pod的负担。

那么有没有办法在Pod中获取当前的名称空间?

Gra*_*ton 11

尝试文件:

/var/run/secrets/kubernetes.io/serviceaccount/namespace
Run Code Online (Sandbox Code Playgroud)


sli*_*tes 7

如果您想使用环境变量,则无需在 pod 规范中设置静态命名空间环境变量,您可以使用“向下 API”让 k8s 使用当前命名空间动态填充它。请参阅https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/#the-downward-api