k8s中Spring Cloud应用的配置管理

前言

最近,公司内的k8s集群逐渐完善,恰逢有一个不是非常紧急的新项目开始推进,与SA讨论后决定尝试在k8s集群中进行应用的部署,加强对服务的全面管理以及提升服务的灵活性。前段时间摸索完一些市面上常用的应用配置管理方案后,刚配合公司内的配置管理服务实现了一套JAVA SDK,自然而然的在讨论转型方案开始时第一个想到的问题就是,在k8s集群内我们是不是还需要用到这些嵌入在应用内的配置SDK呢?
其实,应用迁移到k8s集群中并不是非要做什么特殊改造,即便是最传统的进程部署的方式也只需要进行把应用容器化即可,关于配置上的改造其实可以原样保留。只不过,k8s提供了一种用于配置分离管理的模式,利用额外定义的configmap来实现应用的配置管理,应用的配置文件无需打包在应用代码中,也无需额外的部署例如nacos之类的配置管理服务。关于configmap的概念和使用,可以参考一下官方文档,文档还是描述的比较详细的,这里就不继续展开了。接下来主要围绕着两种不同的使用configmap的方式,来讨论Spring Cloud应用关于配置管理方面的改造

Spring Cloud Kubernetes

基本使用

Spring Cloud Kubernetes provides implementations of well known Spring Cloud interfaces allowing developers to build and run Spring Cloud applications on Kubernetes. While this project may be useful to you when building a cloud native application, it is also not a requirement in order to deploy a Spring Boot app on Kubernetes.

首先正如官方文档上面提到的,实际上对于Spring Boot应用而言,这并不是必须的。Spring Cloud K8s为Spring Cloud应用提供了一系列的k8s API Server的接口封装,那么我们可以利用API Server来做些什么呢?我相信大家应该都猜到了,获取分离部署的应用配置Configmap。除了Get,他还能做什么呢,那就是Watch(监听),Spring Cloud K8s实现了监听configmap的变更,使得应用程序在需要的时候可以更加方便快捷,而不需要费劲力气的去实现配置的获取并监听配置的变更。简单到开发者只需要引入如下的Maven配置,

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifa
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在K8s部署Spring Cloud服务时,配置Nacos可以按照以下步骤进行: 1. 部署Nacos集群:根据引用\[1\]提到的Nacos集群部署的方法,使用StatefulSet部署Nacos集群,并使用NFS作为PVC数据卷,同时需要进行Mysql的主从部署。 2. 配置Spring Cloud服务的注册心:在Spring Cloud服务的配置文件,指定Nacos作为注册心。可以通过配置`spring.cloud.nacos.discovery.server-addr`来指定Nacos的地址。 3. 注册服务到Nacos:在Spring Cloud服务的启动类上添加`@EnableDiscoveryClient`注解,以将服务注册到Nacos。 4. 配置服务的元数据:在Spring Cloud服务的配置文件,可以配置服务的元数据,例如服务的名称、端口等信息。可以通过配置`spring.cloud.nacos.discovery.metadata`来指定元数据。 通过以上步骤,就可以在K8s成功配置Nacos作为Spring Cloud服务的注册心。请注意,以上步骤仅为一般的配置示例,具体的配置可能会因项目的不同而有所差异。 #### 引用[.reference_title] - *1* [SpringCloud Alibaba【一】Nacos集群部署配置](https://blog.csdn.net/wangleleb/article/details/128931959)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [SpringCloud - Nacos 结合 K8s 优雅关闭服务(平滑升级)](https://blog.csdn.net/Dream_Weave/article/details/126379544)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [k8s 部署spring cloud项目](https://blog.csdn.net/ai418348851/article/details/122575057)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值