没有合适的资源?快使用搜索试试~ 我知道了~
首页Springboot整合Spring Cloud Kubernetes读取ConfigMap支持自动刷新配置的教程
Springboot整合Spring Cloud Kubernetes读取ConfigMap支持自动刷新配置的教程
15 下载量 77 浏览量
更新于2023-05-11
评论
收藏 199KB PDF 举报
主要介绍了Springboot整合Spring Cloud Kubernetes读取ConfigMap支持自动刷新配置,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
资源详情
资源评论
资源推荐
Springboot整合整合Spring Cloud Kubernetes读取读取ConfigMap支持自动刷新配置的教程支持自动刷新配置的教程
主要介绍了Springboot整合Spring Cloud Kubernetes读取ConfigMap支持自动刷新配置,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的
朋友可以参考下
1 前言前言
欢迎访问南瓜慢说 www.pkslow.com获取更多精彩文章!
Docker & Kubernetes相关文章:容器技术
之前介绍了Spring Cloud Config 的用法,但对于Kubernetes应用,可能会需要读取ConfigMap的配置,我们看看Springboot是如何方便地读取ConfigMap和Secret。
2 整合整合Spring Cloud Kubenetes
Spring Cloud Kubernetes提供了Spring Cloud应用与Kubernetes服务关联,我们也可以自己写Java程序来获取Kubernetes的特性,但Spring又为我们做了。
2.1 项目代码
引入依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-kubernetes-config</artifactId>
</dependency>
只需要Springboot Web和Spring Cloud Kubernetes Config 即可,很简单。
Springboot启动类:
@SpringBootApplication
public class ConfigMapMain {
public static void main(String[] args) {
SpringApplication.run(ConfigMapMain.class, args);
}
}
准备一个EndPoint来展示所读到的配置信息:
@RestController
public class PkslowController {
@Value("${pkslow.age:0}")
private Integer age;
@Value("${pkslow.email:null}")
private String email;
@Value("${pkslow.webSite:null}")
private String webSite;
@Value("${pkslow.password:null}")
private String password;
@GetMapping("/pkslow")
public Map<String, String> getConfig() {
Map<String, String> map = new HashMap<>();
map.put("age", age.toString());
map.put("email", email);
map.put("webSite", webSite);
map.put("password", password);
return map;
}
}
默认是为空的,password是从Secret读取,其它从ConfigMap读取。
应用的配置文件如下:
server:
port: 8080
spring:
application:
name: spring-cloud-kubernetes-configmap
cloud:
kubernetes:
config:
name: spring-cloud-kubernetes-configmap
这里的spring.cloud.kubernetes.config.name是重点,后续要通过它来找ConfigMap。
加密密码:
$ echo -n "pkslow-pass" | base64
cGtzbG93LXBhc3M=
创建Kubernetes Secret:
kind: Secret
apiVersion: v1
metadata:
name: spring-cloud-kubernetes-secret
namespace: default
data:
pkslow.password: cGtzbG93LXBhc3M=
type: Opaque
ConfigMap的内容如下:
kind: ConfigMap
apiVersion: v1
metadata:
name: spring-cloud-kubernetes-configmap
namespace: default
labels:
app: scdf-server
data:
application.yaml: |-
pkslow:
age: 19
email: admin@pkslow.com
webSite: www.pkslow.com
要注意的是,这里的名字与前面配置的是一致的,都是spring-cloud-kubernetes-configmap。
接着完成Dockerfile和K8s部署文件就可以了。注意要将Secret的值映射到环境变量:
weixin_38711972
- 粉丝: 6
- 资源: 903
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- RTL8188FU-Linux-v5.7.4.2-36687.20200602.tar(20765).gz
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0