更改挂载卷中的 Kubernetes 机密文件格式

Change Kubernetes secrets file format in mounted volume

我能够从 AWS Secrets Manager 中提取一个机密文件并将其装载到容器中。 secrets文件格式如下:

{"testkey":"datepie"}

如何将文件重新格式化为这样:

testkey=datepie

这是我的清单文件:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test-app
  labels:
    app: test-app
spec:
  replicas: 2
  selector:
    matchLabels:
      app: test-app
  template:
    metadata:
      labels:
        app: test-app
    spec:
      serviceAccountName: test-service-account
      containers:
      - name: test-app
        image: 111122223333.dkr.ecr.us-west-2.amazonaws.com/test.example:test-service-1.0.0-main
        volumeMounts:
          - name: test-secrets
            mountPath: /mnt/
            readOnly: true
. . .
      volumes:
      - name: test-secrets
        csi:
          driver: secrets-store.csi.k8s.io
          readOnly: true
          volumeAttributes:
            secretProviderClass: test-secrets

所见即所得。卷安装形式将永远只是以键作为文件名的值。

我明白了。在 AWS Secrets Manager 本身中使用所需的格式,因此在“Secret value”部分中,select“Plaintext”并将 testkey=datepie 放入框中。 “秘密 key/value”选项卡将不再可用,这不是问题。