kubernetes-ConfigMap
首页->学习资料->微服务治理->k8s 关键词: 发布时间:2023-01-05 23:19:10 浏览次数:405

ConfigMap抽取应用配置,并且可以自动更新

1、redis示例

1、把之前的配置文件创建为配置集

# 创建配置,redis保存到k8s的etcd;

kubectl create cm redis-conf --from-file=redis.conf


apiVersion: v1

data:    #data是所有真正的数据,key:默认是文件名   value:配置文件的内容

  redis.conf: |

    appendonly yes

kind: ConfigMap

metadata:

  name: redis-conf

  namespace: default



apiVersion: v1

kind: Pod

metadata:

  name: redis

spec:

  containers:

  - name: redis

    image: redis

    command:

      - redis-server

      - "/redis-master/redis.conf"  #指的是redis容器内部的位置

    ports:

    - containerPort: 6379

    volumeMounts:

    - mountPath: /data

      name: data

    - mountPath: /redis-master

      name: config

  volumes:

    - name: data

      emptyDir: {}

    - name: config

      configMap:

        name: redis-conf

        items:

        - key: redis.conf

          path: redis.conf



检查默认配置

kubectl exec -it redis -- redis-cli

127.0.0.1:6379> CONFIG GET appendonly

127.0.0.1:6379> CONFIG GET requirepass


修改ConfigMap

apiVersion: v1

kind: ConfigMap

metadata:

  name: example-redis-config

data:

  redis-config: |

    maxmemory 2mb

    maxmemory-policy allkeys-lru 


再次登录pod看看配置是否更新

kubectl exec -it redis -- redis-cli

127.0.0.1:6379> CONFIG GET maxmemory

127.0.0.1:6379> CONFIG GET maxmemory-policy


如果配置值未更改,因为需要重新启动 Pod 才能从关联的 ConfigMap 中获取更新的值。

原因:我们的Pod部署的中间件自己本身没有热更新能力


赞:(0)
踩:(0)
相关文章
虚拟机环境搭建及各种坑及前期准备
kubernetes集群环境搭建-公共操作
主节点及node节点配置
名称空间namespace
kubernetes-pod
kubernetes-deployment
kubernetes-service
kubernetes-ingress
kubernetes-存储抽象pv&pvc
kubernetes-Secret
热门文章
win7中将文件拷贝到虚拟机linux下
phpexcel设置行高及列宽,背景颜色,
rabbitmq无法启动
intellij idea不显示git push按钮
php7中使用mongodb的aggregate进行
centos7.4 64位下swoole安装及配置
laravel页面静态化的方法
navicate连接mycat报1184错误
单点登录sso原理及php实现方式及de
devops-jenkins容器为pending状态
好评文章
phpexcel设置行高及列宽,背景颜色,
php7中使用mongodb的aggregate进行
intellij idea打开文件所在文件夹
windows下使用MongoDB Compass Com
win7中将文件拷贝到虚拟机linux下
laravel 中悲观锁 & 乐观锁的使用
单点登录sso原理及php实现方式及de
navicate连接mycat报1184错误
rabbitmq无法启动
laravel整合dingo/api方法步骤:jwt
标签
rabbitmq mysql备份 elasticsearch golang swoole
我的项目
【github】www.github.com/hurong241
【码云】gitee.com/hu_rong/projects
【docker hub】hub.docker.com/repositories/hurong241
【packagist】packagist.org/users/hurong241/packages
站点信息
建站时间:2011年
文章数:607篇
浏览数:948034
粤ICP备18028092号-1  微信:hurong241