一味宠爱|Springboot整合K8s读取ConfigMap刷新配置( 二 )
访问spring-cloud-kubernetes-configmap.localhost/pkslow , 可以正确读取配置 , ConfigMap和Secret的内容都获取到了:
3 自动刷新配置3.1 原理介绍与代码变更我们需要在Web运行过程中修改配置并使配置生效 , 有多种模式 。 修改配置文件如下:
server:port: 8080spring:application:name: spring-cloud-kubernetes-configmapcloud:kubernetes:config:name: spring-cloud-kubernetes-configmapnamespace: defaultsecrets:name: spring-cloud-kubernetes-secretnamespace: defaultenabled: truereload:enabled: truemonitoring-config-maps: truemonitoring-secrets: truestrategy: restart_contextmode: eventmanagement:endpoint:restart:enabled: trueendpoints:web:exposure:include: restart
(1) spring.cloud.kubernetes.reload.enabled=true需要打开刷新功能;
(2) 加载策略strategy:
- refresh:只对特定的配置生效 , 有注解@ConfigurationProperties 或 @RefreshScope 。
- restart_context:整个Spring Context会优雅重启 , 里面的所有配置都会重新加载 。
org.springframework.boot spring-boot-actuatororg.springframework.boot spring-boot-actuator-autoconfigure
- shutdown:重启容器 。
- 事件Event:会通过k8s API监控ConfigMap的变更 , 读取配置并生效 。
- Polling:定期查看是否有变化 , 有变化则触发 , 默认为15秒 。
$ kubectl apply -f src/main/k8s/config.yaml configmap/spring-cloud-kubernetes-configmap configured
查看发现age和email都修改了:我们查看一下Pod的日志如下:
Springboot先是检测到了ConfigMap有了变更 , 然后触发Context重启 。
4 总结Spring Cloud Kubernetes为我们提供了不少Spring Cloud整合Kubernetes的特性 , 可以引入使用 。
多读书 , 多分享;多写作 , 多整理 。
推荐阅读
- 一味宠爱|最全盘点卡中国脖子的35项技术,折射中国工业水平的真实现状
- 金在中|4岁遭抛弃,被养父家8个姐姐宠爱,红遍亚洲后亲生父母上门认亲
- T恤|集万千宠爱于一身的T恤,不仅百搭还时髦,难怪这么受欢迎
- 德国天然宠粮Real Nature浩瀚母公司Fressnapf(宠爱碗)最全剖析
- 一味宠爱|上海:打造“四全”在线教育的“上海模式”
- 一味宠爱|2020开学季之手机CPU性能天梯图、拍照天梯图(0903)
- 小熊科技|从零学ELK系列(十):SpringBoot接入ELK升级版
- 一味宠爱|骗走十亿,“世联通证”究竟什么来头?,100多万人上当
- 一味宠爱|德国专家:中方顶级芯片若自研成功,美将无法对中国技术封锁
- 一味宠爱|微信撤回消息为何还要提示对方?腾讯解答真相