configmap:是实现给容器内应用程序传递参数。
原因:
就是为了让镜像 和 配置文件解耦,以便实现镜像的可移植性和可复用性
举个例子,比如我有一个pod,既要运行在正式环境,又要运行在测试环境,还有预发三个环境,但是当中的配置,是不一样的,那么我们需要准备三个不同的pod进行测试使用。
configmap就是解决这个问题的,我们只需要准备不同的configmap即可,然后把不同的configmap挂载到同一个pod当中,就可以实现不同环境的pod运行,减少pod的复杂度,实现程序和pod的分离。
配置文件我上传到了百度网盘:
链接:https://pan.baidu.com/s/1qypUw_jK05BC0VKOWXG6_Q
提取码:1m32
咱们先创建一个演示一下效果:
kubectl create configmap index-html --from-file index.html -o yaml > configmap.yaml
查看configmap index-html的内容
kubectl describe configmap index-html
接下来创建deployment和service的yaml文件
这里必须要写的,路径、和配置文件
接下来启动一下
访问一下看一下效果
这就说明我们已经挂载成功了,
如果觉得简单,我们一会在做个mysql的测试
首先创建一个mysql的configmap
然后启动一下
下面是配置文件内容
=---------------------------------------------------
接下来查看一下mysql的配置
这里要注意,上面的是mysql配置文件的路径
下面的是咱们上面定义的configmap的名字
这里要对应起来
然后启动下
是不是和上面configmap配置一样呢
进入mysql看一下之前上面的密码是否对不对
上面就是今天讲的configmap,吧配置挂载到pod当中,后续大家有问题可以私信和评论区留言
原文地址:https://blog.51cto.com/xiaorenwutest/2485823
时间: 2024-10-01 23:19:53