【问题标题】:K8S - get config map data issueK8S - 获取配置地图数据问题
【发布时间】:2020-04-02 12:39:01
【问题描述】:

我们需要每个使用我们二进制文件的 pod 都能够读取特定的config map

我们使用 Go API 来读取配置映射。

https://github.com/kubernetes/client-go

这里的棘手部分是一些 pod 具有以下配置 automountServiceAccountToken: false(不幸的是我们无法更改它:()

因此我收到以下错误:

 open /var/run/secrets/kubernetes.io/serviceaccount/token:no such file or directory

知道如何避免这种情况吗?

是否有其他解决方案如何提供特定的环境变量以在所有 pod 和所有命名空间上可用?

https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#use-the-default-service-account-to-access-the-api-server

【问题讨论】:

标签: azure go kubernetes


【解决方案1】:

您需要手动创建令牌:

apiVersion: v1
kind: Secret
metadata:
  name: build-robot-secret
  annotations:
    kubernetes.io/service-account.name: default # I assume you use the default service account
type: kubernetes.io/service-account-token

然后将此秘密作为文件挂载到 pod 中:

apiVersion: v1
kind: Pod
metadata:
  name: mypod
spec:
  containers:
  - name: mypod
    image: redis
    volumeMounts:
    - name: foo
      mountPath: "/var/run/secrets/kubernetes.io/serviceaccount"
  volumes:
  - name: foo
    secret:
      secretName: build-robot-secret

【讨论】:

    猜你喜欢
    • 2020-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-18
    • 1970-01-01
    • 2019-10-28
    • 1970-01-01
    相关资源
    最近更新 更多