美文网首页
Kubernetes YAML 详解之配置管理中心(Config

Kubernetes YAML 详解之配置管理中心(Config

作者: 河码匠 | 来源:发表于2023-02-20 09:18 被阅读0次

一、ConfigMap YAML

配置管理中心。简写 cm
数据不能超过 1MB
用于保存非机密性的配置的,数据可以用 key/value 键值对的形式保存,也可通过文件的形式保存。
项目配置文件统一管理。可以当做 volume 挂载到 pod 中。如 nginx 配置等

\color{red}{注意}:挂载卷里面的时候,修改 ConfigMap 时 pod 里面会一起修改。如果加载到 env 里面,则 env 不会随着 ConfigMap 改变而改变。

kubectl explain ConfigMap
字段 值类型 说明
binaryData map[string]string 二进制数据
data map[string]string 配置的数据 key-value 形式
immutable boolean true 时 ConfigMap 不能修改。默认 false

示例: 命令行方式创建参考 ConfigMap 相关命令

apiVersion: v1
kind: ConfigMap
metadata:
  name: mysql
  labels:
    app: mysql
data:           # 定义配置数据
  my.cnf: |     # | 表示下面配置是一行一行的
    [mysqld]
    port: 3306
    user: root

二、Secret YAML

加密配置管理中心。
保存敏感数据,如密码、私钥等

kubectl explain Secret
字段 值类型 说明
data map[string]string 数据,key-value 的形式,value 是根据 type 加密以后的值
immutable boolean true 时 ConfigMap 不能修改。默认 false
stringData map[string]string 数据,他会覆盖和 data 中重复的数据信息。
type string 类型

Opaque: 用户定义的任意数据,base64 编码格式的 Secret。可以通过 base64 --decode 解码获得原始数据,因此安全性弱

kubernetes.io/dockerconfigjson: 用来存储私有 docker registry 的认证信息

kubernetes.io/service-account-token: 服务账号令牌。用于被 serviceaccount 引用

示例:

apiVersion: v1
kind: Secret
metadata:
  name: mysql
type: Opaque               # Secret 的类型
data:
    password: "MTIzCg=="   # 这是 base64 以后的值

相关文章

网友评论

      本文标题:Kubernetes YAML 详解之配置管理中心(Config

      本文链接:https://www.haomeiwen.com/subject/ofnmkdtx.html