使用场景:存储应用配置信息,保存键值对、属性或者保存文件
目录
创建ConfigMap
在环境变量中引用
在Volume中引用
???????
创建ConfigMap
创建configmap-test.yaml内容如下:
apiVersion: v1
kind: ConfigMap
metadata:name: configmap-test
data: # 配置数据property_1: Helloproperty_2: World
创建
在环境变量中引用
编辑env-configmap.yaml,引用configmap-test的property_1,将其作为环境变量EXAMPLE_PROPERTY_1的值
apiVersion: v1
kind: Pod
metadata:name: nginx
spec:containers:- image: nginx:alpinename: container-0resources:limits:cpu: 100mmemory: 200Mirequests:cpu: 100mmemory: 200Mienv:- name: EXAMPLE_PROPERTY_1valueFrom:configMapKeyRef: # 引用ConfigMapname: configmap-testkey: property_1imagePullSecrets:- name: default-secret
进入pod,测试环境变量是否配置成功
kubectl exec -it nginx -- /bin/sh
env
在Volume中引用
在Volume中引用ConfigMap,就是通过文件的方式直接将ConfigMap的每条数据填入Volume,每条数据是一个文件,键就是文件名,键值就是文件内容 ,创建vol-configmap.yaml,将Volume挂载到容器的“/tmp”路径下
在做实验前,可以先把上一步的删除,kubectl delete -f env-configmap.yaml
apiVersion: v1
kind: Pod
metadata:name: nginx
spec:containers:- image: nginx:alpinename: container-0resources:limits:cpu: 100mmemory: 200Mirequests:cpu: 100mmemory: 200MivolumeMounts:- name: vol-configmap # 挂载名为vol-configmap的VolumemountPath: "/tmp"imagePullSecrets:- name: default-secretvolumes:- name: vol-configmapconfigMap: # 引用ConfigMapname: configmap-test
验证是否挂载成功
以上实验都是参考华为云的教程
ConfigMap_云容器引擎 CCE_Kubernetes基础知识_配置管理_华为云