我目前有以下的秘密管理配置。
apiVersion: v1
kind: Secret
metadata:
  name: secret-tls
type: kubernetes.io/tls
data:
  # the data is abbreviated in this example
  tls.crt: |
        MIIC2DCCAcCgAwIBAgIBATANBgkqh ...
  tls.key: |
        MIIEpgIBAAKCAQEA7yn3bRHQ5FHMQ ...这将是一个类似我所拥有的豆荚例子:
apiVersion: v1
kind: Pod
metadata:
  name: secret-test-pod
spec:
  containers:
    - name: test-container
      image: nginx
      volumeMounts:
        # name must match the volume name below
        - name: secret-volume
          mountPath: /etc/secret-dir
  # The secret data is exposed to Containers in the Pod through a Volume.
  volumes:
    - name: secret-volume
      secret:
        secretName: secret-tls我如何修改配置,以便将秘密存储在Azure中,这样当它们过期时,我已经将它们集中在azure中,并且不必通过"SecretProviderClass“进行任何带舵机的部署。
发布于 2022-11-02 10:41:43
我尝试在我的环境中复制相同的结果,并得到了以下结果:
我已经使用秘密对象将敏感数据(如tls.key、tls.cert )注入到荚中。
下面的命令生成两个文件tls.key,tls.cert
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.crt -subj "/CN=foo.bar.com"

我们可以验证是否增加了秘密。
kubeclt get secrets查看该秘密的YAML来源
kubectl get secret test-tls -o yaml

在这里,我使用了YAML文件来创建秘密
vi filename.yaml
apiVersion: v1
data:
    tls.crt:LS0tLS1CRUdJTiBDRVJXXXXXX
    tls.key:S0tCk1JSUV2d0lCQXXXXXX
kind: Secret
metadata:
    name: test-tls
    namespace: default
type: kubernetes.io/tls我使用以下命令创建/部署了该文件
kubectl apply -f filename.yaml我已经创建了使用pod YAML使用秘密值的资源。
apiVersion: v1
kind: Pod
metadata:
  name: secret-test-pod
spec:
  containers:
    - name: test-container
      image: nginx
      volumeMounts:
        - name: secret-volume
          mountPath: /etc/secret-dir
  volumes:
    - name: secret-volume
      secret:
        secretName: secret-tls我们可以检查使用下面命令创建或不使用的豆荚和秘密。
kubectl get pods
kubectl get secrets

在这里,我使用envFORM来存储秘密
vi envpod.yaml
apiVersion: v1  
kind: Pod  
metadata:  
    name: nginx-pod  
spec:  
    containers:  
    - name: nginx-container  
       image: nginx  
        envFrom:  
        - secretRef:  
             name: secret-tls我们还可以使用下面的命令检查是否创建了秘密
kubectl get secrets注:
1).Azure有一个专门的驱动程序,它可以将蔚蓝的密钥库映射到机密,并允许秘密的滚动更新。
2)。最好的方法是使用CSI驱动程序(provider类)来安全地存储秘密,如果我们不想使用CSI驱动程序,另一个选项是外部秘密操作符,您可以为https://external-secrets.io/v0.6.1/guides/templating/使用这个链接
https://stackoverflow.com/questions/74251010
复制相似问题