k8s之配置资源管理

时间:2024-03-02 19:06:56

目录

一、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二进制大对象

应用场景:应用配置