服务帐户的API凭据通常在Pod中装载为:
/var/run/secrets/kubernetes.io/serviceaccount/token
此令牌允许pod中的容器化进程与API服务器通信。
如果将automountServiceAccountToken
设置为false
,则Pod的服务帐户(serviceAccountName
)的用途是什么?
服务帐户的API凭据通常在Pod中装载为:
/var/run/secrets/kubernetes.io/serviceaccount/token
此令牌允许pod中的容器化进程与API服务器通信。
如果将automountServiceAccountToken
设置为false
,则Pod的服务帐户(serviceAccountName
)的用途是什么?
1条答案
按热度按时间ruarlubt1#
让我们从应该创建pod时发生的情况开始。
创建Pod时,如果未指定服务帐户,则会自动为其分配同一命名空间中的默认服务帐户
参考。
因此,所有pod均链接到服务帐户(默认或在
spec
中指定)。然后,始终为每个服务帐户生成API访问令牌。
automountServiceAccountToken
标志定义此令牌在创建后是否将自动安装到pod。有两个选项可用于设置此标志:
如果automountServiceAccountToken设置为false,pod的服务帐户(serviceAccountName)的用途是什么?
根据创建pod所涉及的流程,这可能会造成不同。GitHub issue的注解中有一个很好的例子(这个标记最终来自哪里):
仍然存在创建令牌(用于外部系统)或将服务帐户与pod关联(用于映像拉入机密)的用例,但能够选择退出API令牌自动装载(对于特定pod或特定服务帐户)是有用的。