Kubernetes(K8S) 配置管理-ConfigMap 介绍
2024-10-21 05:36:57
作用:存储不加密数据到 etcd,让 Pod 以变量或者 Volume 挂载到容器中
场景:配置文件
创建配置文件
redis.properties
redis.host=127.0.0.1
redis.port=6379
redis.password=123456
创建 ConfigMap
# 根据 redis.properties 创建 redis-config
[root@k8smaster ~]# kubectl create configmap redis-config --from-file=redis.properties
# 查看 configmap
[root@k8smaster ~]# kubectl get cm
# 查看 redis-config 的详情
[root@k8smaster ~]# kubectl describe cm redis-config
以 Volume 的形式进行挂载到 pod 容器中
cm.yaml
apiVersion: v1
kind: Pod
metadata:
name: mypod
spec:
containers:
- name: busybox
image: busybox
command: [ "/bin/sh","-c","cat /etc/config/redis.properties" ]
volumeMounts:
- name: config-volume
mountPath: /etc/config
volumes:
- name: config-volume
configMap:
name: redis-config
restartPolicy: Never
# 创建 yaml文件
[root@k8smaster ~]# vi cm.yaml
# 创建pod
[root@k8smaster ~]# kubectl apply -f cm.yaml
# 启动后可以查看日志
[root@k8smaster ~]# kubectl logs mypod
以变量的形式进行挂载
创建 yaml,声明变量信息 configmap 创建
myconfig.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: myconfig
namespace: default
data:
special.level: info
special.type: hello
config-var.yaml
apiVersion: v1
kind: Pod
metadata:
name: mypod
spec:
containers:
- name: busybox
image: busybox
command: [ "/bin/sh", "-c", "echo $(LEVEL) $(TYPE)" ]
env:
- name: LEVEL
valueFrom:
configMapKeyRef:
name: myconfig
key: special.level
- name: TYPE
valueFrom:
configMapKeyRef:
name: myconfig
key: special.type
restartPolicy: Never
[root@k8smaster ~]# vi myconfig.yaml
[root@k8smaster ~]# kubectl apply -f myconfig.yaml
# 以变量形式进行挂载
[root@k8smaster ~]# vi config-var.yaml
[root@k8smaster ~]# kubectl apply -f config-var.yaml
最新文章
- Socket TCP之keepalive
- ASP.Net上传大文件解决方案之IIS7.0下的配置
- 微软职位内部推荐-SW Engineer II for Cloud Service
- Android开发之ViewPager的简单使用
- HTML5 video 支持air play
- 支付宝APP支付之Java后台生成签名具体步骤
- Android课程---布局管理器之相对布局(二)
- java中的transient关键词
- IOS开发问题录:如何在Swift中引入Head文件?
- 我的第一份vim程序
- 2014.9.23window对象
- Luogu P1410 子序列
- prometheus 基于DNS的目标发现
- Oracle 10g RAC OCR、Voting disk更换
- JavaScript 中的常用12种循环遍历(数组或对象)的方法
- c#经典三层框架中的SqlHelper帮助类
- linux系统ssh免密钥登录配置
- Nginx+IIS简单的部署
- (NOI2014)(bzoj3669)魔法森林
- SpringMVC 实现返回一段数据 &; 实现自动发送json格式数据 - AJAX