Shu*_*eng 20 cloud kubernetes rancher
服务帐户的 API 凭证通常挂载在 pod 中,如下所示:
/var/run/secrets/kubernetes.io/serviceaccount/token
Run Code Online (Sandbox Code Playgroud)
此令牌允许 Pod 中的容器化进程与 API 服务器进行通信。
如果设置为serviceAccountName,Pod 的服务帐户 ( )的用途是什么?automountServiceAccountTokenfalse
moo*_*tte 16
一点理论:
让我们从创建 pod 时发生的情况开始。
创建pod时,如果不指定service account,会自动分配同一个namespace下的默认service account
参考。
因此,所有 pod 都链接到服务帐户(默认或在 中指定spec)。
然后始终为每个服务帐户生成 API 访问令牌。
automountServiceAccountTokenflag 定义此令牌在创建后是否会自动挂载到 pod。
有两个选项可以设置此标志:
在特定的服务帐户中
apiVersion: v1
kind: ServiceAccount
metadata:
name: build-robot
automountServiceAccountToken: false
...
Run Code Online (Sandbox Code Playgroud)
在特定的 Pod 中
apiVersion: v1
kind: Pod
metadata:
name: my-pod
spec:
serviceAccountName: build-robot
automountServiceAccountToken: false
...
Run Code Online (Sandbox Code Playgroud)
回答:
如果 automountServiceAccountToken 设置为 false,Pod 的服务帐户 (serviceAccountName) 的用途是什么?
这可能会有所不同,具体取决于 Pod 创建中涉及的进程。GitHub 问题中的评论就是一个很好的例子(这个标志最终来自于此):
在某些用例中,仍然创建令牌(用于外部系统)或仍然将服务帐户与 Pod 关联(用于图像拉取机密),但能够选择退出 API 令牌自动挂载(对于特定 Pod) ,或对于特定服务帐户)很有用。
| 归档时间: |
|
| 查看次数: |
21790 次 |
| 最近记录: |