目录
一、Secret
1.Secret 四种类型
2.Pod 需要先引用才能使用某个 secret,Pod 有 3 种方式来使用 secret
二.ConfigMap
一、Secret
Secret 是用来保存密码、token、密钥等敏感数据的 k8s 资源,这类数据虽然也可以存放在 Pod 或者镜像中,但是放在 Secret 中是为了更方便的控制如何使用数据,并减少暴露的风险
1.Secret 四种类型
1)kubernetes.io/service-account-token
由 Kubernetes 自动创建,用来访问 APIServer 的 Secret,Pod 会默认使用这个 Secret 与 APIServer 通信, 并且会自动挂载到 Pod 的 /run/secrets/kubernetes.io/serviceaccount 目录中
2)Opaque
base64 编码格式的 Secret,用来存储用户自定义的密码、密钥等,默认的 Secret 类型
3)kubernetes.io/dockerconfigjson
用来存储私有 docker registry 的认证信息
4)kubernetes.io/tls
用来存储 TLS 证书和私钥信息
2.Pod 需要先引用才能使用某个 secret,Pod 有 3 种方式来使用 secret
1)作为挂载到一个或多个容器上的卷 中的文件
2)作为容器的环境变量
3)由 kubelet 在为 Pod 拉取镜像时使用
应用场景:凭据
Secrets | Kubernetes
二.ConfigMap
与Secret类似,区别在于ConfigMap保存的是不需要加密配置的信息 ConfigMap 功能在 Kubernetes1.2 版本中引入,许多应用程序会从配置文件、命令行参数或环境变量中读取配置信息。ConfigMap API 给我们提供了向容器中注入配置信息的机制,ConfigMap 可以被用来保存单个属性,也可以用来保存整个配置文件或者JSON二进制大对象
应用场景:应用配置