仅为Kubernetes中的某些POD启用ServiceAccounts

仅为Kubernetes中的某些POD启用ServiceAccounts,kubernetes,Kubernetes,我使用Kubernetes ServiceAccount插件将ca.crt和令牌自动注入到我的POD中。这对于需要访问API服务器的应用程序(如kube2sky)非常有用 然而,我运行了数百个不需要这个令牌的其他pod。有没有办法阻止ServiceAccount插件将默认令牌注入到这些pod中(或者,更好的是,在默认情况下关闭它,并为pod显式地打开它) 目前没有办法为某些POD启用服务帐户,但不能为其他POD启用服务帐户,尽管您可以使用ABAC为某些服务帐户启用服务帐户以限制对apiserve

我使用Kubernetes ServiceAccount插件将ca.crt和令牌自动注入到我的POD中。这对于需要访问API服务器的应用程序(如kube2sky)非常有用


然而,我运行了数百个不需要这个令牌的其他pod。有没有办法阻止ServiceAccount插件将默认令牌注入到这些pod中(或者,更好的是,在默认情况下关闭它,并为pod显式地打开它)

目前没有办法为某些POD启用服务帐户,但不能为其他POD启用服务帐户,尽管您可以使用ABAC为某些服务帐户启用服务帐户以限制对apiserver的访问


这个问题正在中讨论,我鼓励您将您的use can添加到该问题中,并查看它将在何时实施

目前没有办法为某些POD启用服务帐户,但不能为其他POD启用服务帐户,尽管您可以使用ABAC为某些服务帐户启用服务帐户以限制对apiserver的访问


这个问题正在中讨论,我鼓励您将您的use can添加到该问题中,并查看它将在何时实施

从Kubernetes 1.6+开始,您现在可以禁用特定pod的自动安装API凭据,如中所述


从Kubernetes 1.6+开始,您现在可以禁用特定pod的自动装载API凭据,如中所述


谢谢你的信息!那么,是否可以禁用ServiceAccount插件,并为实际需要它们的几个pod自己管理它们呢?是的。您可以创建一个包含对集群有效的有效客户端凭据(承载令牌或http基本身份验证密码)的密码。然后,您可以将这个秘密添加到任何需要api访问的pod中,而所有其他pod都没有凭据。如果您希望默认的“InClusterConfig”开箱即用(假设您使用的是Go k8s客户端库),那么您应该将机密装载到服务帐户凭据的装载位置。如果您不依赖于该特定位置的凭据,那么将其安装在pod中的任何位置就足够了。感谢您的澄清!谢谢你的信息!那么,是否可以禁用ServiceAccount插件,并为实际需要它们的几个pod自己管理它们呢?是的。您可以创建一个包含对集群有效的有效客户端凭据(承载令牌或http基本身份验证密码)的密码。然后,您可以将这个秘密添加到任何需要api访问的pod中,而所有其他pod都没有凭据。如果您希望默认的“InClusterConfig”开箱即用(假设您使用的是Go k8s客户端库),那么您应该将机密装载到服务帐户凭据的装载位置。如果您不依赖于该特定位置的凭据,那么将其安装在pod中的任何位置就足够了。感谢您的澄清!
apiVersion: v1
kind: Pod
metadata:
  name: my-pod
spec:
  serviceAccountName: build-robot
  automountServiceAccountToken: false
  ...