本次最佳实践结合Java示例代码,分别描述了在构建的Maven应用添加ACM配置管理或Nacos Config配置管理的详细过程。
背景信息
在传统的应用中修改变量值需要修改代码或配置文件,从而导致需要重新打包部署应用,这样不仅增加了运维的工作量,同时频繁部署应用容易导致业务中断,可能造成重大的业务影响。因为ACM、Nacos Config配置管理能实现实时修改变量及动态推送,使修改的变量值加载到Spring环境中,于是微服务应用集成ACM或Nacos Config配置管理功能变得极其有价值。
EDAS支持原生Spring Cloud微服务框架。您可直接将应用部署到EDAS上,无须修改代码、添加配置,即可获取EDAS企业级的应用托管、微服务治理(服务查询、金丝雀发布、离群实例摘除、无损下线)、监控报警和应用诊断等能力,帮助您全面提升应用的稳定性和安全性。
微服务应用集成ACM或Nacos Config功能部署至EDAS后,EDAS控制台提供可视化界面通过key value的形式修改应用中的变量值。本次最佳实践第三章节有详细步骤指导EDAS控制台配置管理操作、确认通过EDAS控制台配置管理修改的变量值是否实时在应用中生效以及通过结果验证步骤验证ACM或Nacos Config的配置管理功能是否被正确集成。使微服务在需要频繁修改的变量时,无需再修改代码或配置文件打包部署变更应用的琐碎操作,并减小微服务在变更中导致业务中断的重大影响。
组件介绍
-
Spring Cloud Alibaba ACM
Spring Cloud Alibaba ACM是阿里云提供的商业版应用配置管理(Application Configuration Management) 产品,在Spring Cloud应用侧的客户端实现。
Spring Cloud Alibaba ACM是Config Server和Client的替代方案,客户端和服务器上的概念与Spring Environment和PropertySource有着一致的抽象,在特殊的bootstrap阶段,配置被加载到Spring环境中。
- Spring Cloud Alibaba Nacos
在开发Spring Cloud应用时,您可以使用Nacos(https://nacos.io) 在本地实现应用的配置管理。同时,由于Nacos是应用配置管理ACM的开源版本,在将应用部署到EDAS后,对应用进行配置的管理和推送。
ACM配置管理
您可以按照以下操作完成ACM的配置。
ACM实现配置结果验证
您可以按以下操作对ACM实现配置管理的结果进行验证。
Nacos Config配置管理
因为企业版V3.9.0开始统一支持Nacos,企业版V3.8.0和V3.8.1时通过ANS支持的Spring Cloud应用需要迁移到Nacos。
您可以按照以下操作完成Nacos Config的配置。
Nacos Config实现配置结果验证
您可以按以下操作对Nacos Config实现配置管理的结果进行验证。