Kubernetes ConfigMap

举报
叶康铭 发表于 2021/03/26 00:25:14 2021/03/26
【摘要】 什么是ConfigMap ConfigMap为Pod中的容器提供了配置文件、环境变量等非敏感信息,通过ConfigMap可以将Pod和其他组件分开,这将使得Pod更加有移植性,使得配置更加容器更改及管理,也使得Pod更加规范。 Config基本操作 通过kubectl create configmap kubectl create configmap nginx-...

什么是ConfigMap

ConfigMap为Pod中的容器提供了配置文件、环境变量等非敏感信息,通过ConfigMap可以将Pod和其他组件分开,这将使得Pod更加有移植性,使得配置更加容器更改及管理,也使得Pod更加规范。

Config基本操作

通过kubectl create configmap
kubectl create configmap nginx-configmap --from-literal=password=123456
在这里插入图片描述
通过yaml资源配置清单
kubectl apply -f nginx-configmap.yaml

apiVersion: v1
kind: List
metadata:
items:
- apiVersion: v1
  data: password: "123456"
  kind: ConfigMap
  metadata: name: nginx-configmap

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

通过kubectl get configmap查看详细信息
在这里插入图片描述
通过kubectl describe configmap查看详细信息
在这里插入图片描述

ConfigMap作为存储卷被Pod调用

创建ConfigMap
kubectl create configmap database-config --from-literal=user=root --from-literal=password=123456
在这里插入图片描述
通过YAML资源定义清单创建Pod并绑定ConfigMap为存储卷
kubectl apply -f nginx-pod-configmap-volume.yaml

apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod
spec:
  containers: - name: nginx image: nginx:1.16 volumeMounts: - name: config-volume mountPath: /etc/config
  volumes: - name: config-volume configMap: name: database-config 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

查看Pod容器挂载的ConfigMap存储卷
kubectl exec -it nginx-pod /bin/bash
在这里插入图片描述
查看Pod详细信息,挂载了ConfigMap类型的Volumes
kubectl describe pod nginx-pod
在这里插入图片描述

ConfigMap作为环境变量被Pod调用

kubectl create configmap database-config --from-literal=user=root --from-literal=password=123456
kubectl create configmap env-config --from-literal=LOG_LEVEL=ERROR
在这里插入图片描述
kubectl apply -f nginx-pod-configmap-env.yaml

apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod
spec:
  containers: - name: nginx image: nginx:1.16 env: - name: DB_USER_CONFIG valueFrom: configMapKeyRef: name: database-config key: user - name: DB_PASSWORD_CONFIG valueFrom: configMapKeyRef: name: database-config key: password envFrom: - configMapRef: name: env-config

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

查看Pod容器的环境变量
kubectl exec -it nginx-pod /bin/bash
在这里插入图片描述
查看Pod容器详细信息
kubectl describe pod nginx-pod
在这里插入图片描述

Config注意的事项

  1. ConfigMap文件大小限制: 1MB (etcd的限制)
  2. ConfigMap必须在Pod引用它之前创建

文章来源: blog.csdn.net,作者:叶康铭,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/m0_38030719/article/details/104495690

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。