kubernetes实践之三十五:Pod配置管理ConfigMap
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,一:简介很多生产环境中的应用程序配置较为复杂,可能需要多个config文件、命令行参数和环境变量的组合。使用容器部署时,把配置应该从应用程序镜像中解耦出来,以保证镜像的可移植性。ConfigMap是用
千家信息网最后更新 2026年10月31日kubernetes实践之三十五:Pod配置管理ConfigMap一:简介
很多生产环境中的应用程序配置较为复杂,可能需要多个config文件、命令行参数和环境变量的组合。使用容器部署时,把配置应该从应用程序镜像中解耦出来,以保证镜像的可移植性。
ConfigMap是用来存储配置文件的kubernetes资源对象,所有的配置内容都存储在etcd中。ConfigMap让我们能够从容器镜像中把配置的详细信息给解耦出来。通过ConfigMap我们能够把配置以key-value对的形式传递到container或者别的系统组件(比如Controller)里面。
二:ConfigMap的创建方式
1.From Literal Values 可以用kubectl create来创建一个ConfigMap,然后通过kubectl get来获取
kubectl create configmap donkey.properties --from-file=donkey.properties
三:ConfigMap的使用方式
1.Pod 通过env使用ConfigMap定义环境变量
2.使用ConfigMap设置容器启动命令的启动参数
1.ConfigMap必须在Pod之前创建
2.ConfigMap受Namespace限制,只有处于相同Namespaces中的Pod可以引用它
3.ConfigMap 中的配额管理还未能实现
4.kubelet只支持可以被API Server管理的Pod使用ConfigMap
很多生产环境中的应用程序配置较为复杂,可能需要多个config文件、命令行参数和环境变量的组合。使用容器部署时,把配置应该从应用程序镜像中解耦出来,以保证镜像的可移植性。
ConfigMap是用来存储配置文件的kubernetes资源对象,所有的配置内容都存储在etcd中。ConfigMap让我们能够从容器镜像中把配置的详细信息给解耦出来。通过ConfigMap我们能够把配置以key-value对的形式传递到container或者别的系统组件(比如Controller)里面。
二:ConfigMap的创建方式
1.From Literal Values 可以用kubectl create来创建一个ConfigMap,然后通过kubectl get来获取
点击(此处)折叠或打开
- # Create the ConfigMap
- $ kubectl create configmap my-config --from-literal=key1=value1 --from-literal=key2=value2
- configmap "my-config" created
- # Get the ConfigMap Details for my-config
- $ kubectl get configmaps my-config -o yaml
- apiVersion: v1
- data:
- key1: value1
- key2: value2
- kind: ConfigMap
- metadata:
- creationTimestamp: 2017-05-31T07:21:55Z
- name: my-config
- namespace: default
- resourceVersion: "241345"
- selfLink: /api/v1/namespaces/default/configmaps/my-config
- uid: d35f0a3d-45d1-11e7-9e62-080027a46057
点击(此处)折叠或打开
- apiVersion: v1
- kind: ConfigMap
- metadata:
- name: special-config
- namespace: default
- data:
- special.how: very
点击(此处)折叠或打开
- apiVersion: v1
- kind: ConfigMap
- metadata:
- name: env-config
- namespace: default
- data:
- log_level: INFO
kubectl create configmap donkey.properties --from-file=donkey.properties
三:ConfigMap的使用方式
1.Pod 通过env使用ConfigMap定义环境变量
点击(此处)折叠或打开
- apiVersion: v1
- kind: Pod
- metadata:
- name: dapi-test-pod
- spec:
- containers:
- - name: test-container
- image: gcr.io/google_containers/busybox
- command: [ "/bin/sh", "-c", "env" ]
- env:
- - name: SPECIAL_LEVEL_KEY
- valueFrom:
- configMapKeyRef:
- name: special-config
- key: special.how
- - name: LOG_LEVEL
- valueFrom:
- configMapKeyRef:
- name: env-config
- key: log_level
- restartPolicy: Never
点击(此处)折叠或打开
- apiVersion: v1
- kind: Pod
- metadata:
- name: dapi-test-pod
- spec:
- containers:
- - name: test-container
- image: gcr.io/google_containers/busybox
- command: [ "/bin/sh", "-c", "env" ]
- envFrom:
- - configMapRef:
- name: special-config
- restartPolicy: Never
2.使用ConfigMap设置容器启动命令的启动参数
点击(此处)折叠或打开
- apiVersion: v1
- kind: Pod
- metadata:
- name: dapi-test-pod
- spec:
- containers:
- - name: test-container
- image: k8s.gcr.io/busybox
- command: [ "/bin/sh", "-c", "echo $(SPECIAL_LEVEL_KEY) $(SPECIAL_TYPE_KEY)" ]
- env:
- - name: SPECIAL_LEVEL_KEY
- valueFrom:
- configMapKeyRef:
- name: special-config
- key: SPECIAL_LEVEL
- - name: SPECIAL_TYPE_KEY
- valueFrom:
- configMapKeyRef:
- name: special-config
- key: SPECIAL_TYPE
- restartPolicy: Never
点击(此处)折叠或打开
- apiVersion: v1
kind: Pod
metadata:
name: busybox
namespace: default
spec:
containers:
- image: 120.79.156.135/desktop/busybox:latest
command:
- sleep
- "3600"
imagePullPolicy: IfNotPresent
name: busybox
volumeMounts:
- name: donkeyconfig
mountPath: /configfiles
volumes:
- name: donkeyconfig
configMap:
name: donkey.properties
items:
- key: donkey.properties
path: donkey.properties
restartPolicy: Always
imagePullSecrets:
- name: registry-secret
1.ConfigMap必须在Pod之前创建
2.ConfigMap受Namespace限制,只有处于相同Namespaces中的Pod可以引用它
3.ConfigMap 中的配额管理还未能实现
4.kubelet只支持可以被API Server管理的Pod使用ConfigMap
配置
文件
环境
变量
命令
容器
镜像
存储
管理
内容
参数
应用程序
方式
程序
解耦
应用
限制
复杂
相同
信息
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
博彦科技互联网金融
圆梦互联网科技
互联网公司 科技公司
唐信互联网科技
小马过河互联网科技
壕鑫互联网络科技
互联网 新科技
农村开互联网科技讲堂
浙江互联网科技研学营
南平创想时代互联网科技有限公司
晓花互联网科技有限公司网址
电子科技大学互联网创业大赛
中国科技创新与世界互联网大会
浙南科技城互联网大厦建设工程
互联网时代的科技公司
四川互联网展示科技馆设计
江苏互联网智能科技软件
西安有哪些互联网高科技企业
昆明中奇联合互联网科技
绵阳真晨互联网科技有限公司
保险科技 互联网保险
科技制造互联网公司
百单互联网科技有限公司
深圳期待互联网科技
上海亿帐通互联网科技
互联网科技股午盘股票涨跌
小米互联网科技园设置
深圳艾果互联网通讯科技
广州有谷有贝互联网科技有限公司
求路客互联网科技电话