kubernetes配置数据存储configmap
Configmap配置管理
ConfigMap是存储通用的配置变量的。ConfigMap有点儿像一个统一的配置文件,使用户可以将分布式系统中用于不同模块的环境变量统一到一个对象中管理;而它与配置文件的区别在于它是存在集群的“环境”中的,并且支持K8s集群中所有通用的操作调用方式。
而资源的使用者可以通过ConfigMap来存储这个资源的配置,这样需要访问这个资源的应用就可以同通过ConfigMap来引用这个资源。相当通过创建Configmap封装资源配置。
configmap以一个或者多个key:value的形式保存在k8s系统中供应用使用,既可以用于表示一个变量的值(reg.westos:info),也可以用于表示一个完整配置文件的内容
1.1Configmap特点:
-
Configmap用于保存配置数据,以键值对形式存储。
-
configMap 资源提供了向 Pod 注入配置数据的方法。
-
旨在让镜像和配置文件解耦,以便实现镜像的可移植性和可复用性。
1.2典型的使用场景:
-
填充环境变量的值
-
设置容器内的命令行参数
-
填充卷的配置文件
1.3 创建方式
-
字面值创建
kubectl create configmap my-config --from-literal=key1=config1 --from-literal=key2=config2
-
使用文件创建
kubectl create configmap my-config-2 --from-file=/etc/resolv.conf
-
使用目录创建
kubectl create configmap my-config-3 --from-file=test
-
编写configmap的yaml文件创建
kubectl create -f cm1.yaml
cat cm1.yaml
apiVersion: v1
kind: Conf