kubernetes ConfigMap实战demo

首先开发一个简单的SpringBoot demo项目。

application.yml

mysql:
  host: 106.14.13.61
  ...

如果想动态改变mysql中的连接地址,目前有很多种方法,比如java -jar 启动命令传值,DockerFile镜像文件传值。

今天演示的是利用kubernetes的configMap动态配置mysql的url

为了方便效果,我们可以在SpringBoot demo项目中写个controller将url host返回。

@Value("${mysql.host}")
private String host;

开始编写编排文件

deploy.yaml

---
 apiVersion: v1
 kind: Service
 metadata:
   name: demo-wpp-service
 spec:
   type: NodePort
   selector:
     app: demo-wpp
   ports:
    - port: 80
      targetPort: 8088
      nodePort: 30089
---
 apiVersion: extensions/v1beta1
 kind: Deployment
 metadata:
   name: demo-wpp-deployment
 spec:
   replicas: 2
   template:
     metadata:
       labels:
         app: demo-wpp
     spec:
       containers:
         - name: demo-wpp
           image: registry.cn-shanghai.aliyuncs.com/glodoncornerstone/demo_wpp
           imagePullPolicy: IfNotPresent
           args: [
                "--mysql.host=$(mysql_host)"
           ]
           env:
             - name: mysql_host
               valueFrom:
                  configMapKeyRef:
                    name: demo-wpp-configmap
                    key: mysql_host
           ports:
             - containerPort: 8088
---
apiVersion: v1
kind: ConfigMap
metadata:
  name: demo-wpp-configmap
data:
  mysql_host: "106.14.13.62"

执行

kubectl apply -f deploy.yaml

验证
浏览器输入
http://ip:30089/api/port
浏览器返回 106.14.13.62

验证成功,configmap优先级是高于其他的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值