Secret解决了密码、token、密钥等敏感数据的配置问题,而不需要把这些敏感数据暴露到镜像或者Pod Spe中。Secret 可以以Volume或者环境变量的方式使用。

三种类型:

  1. Service Account:用来访问Kubernetes API,由 Kubernetes自动创建,并且会自动挂载到 Pod的/run/secrets/kubernetes.io/serviceaccount目录中。
  2. Opaque : base64编码格式的Secret,用来存储密码、密钥等。
  3. kubernetes.io/dockerconfigjson :用来存储私有docker registry的认证信息。

例子:

SA:

image.png
**

Opaque:

image.png
image.png
导入到volume中会解密后导入。文件名是key,内容是value。

2、导入环境变量中(跟cm差不多)
image.png
也是导入的解密后的数据

**

kubernetes.io/dockerconfigjson:

image.png