linux安装apollo;以及springcloud采用apollo配置时使用本地配置覆盖;springboot从apollo拉取配置
Posted 好大的月亮
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux安装apollo;以及springcloud采用apollo配置时使用本地配置覆盖;springboot从apollo拉取配置相关的知识,希望对你有一定的参考价值。
springcloud采用apollo配置时使用本地配置覆盖
只需要在bootstrap.yml
中添加如下配置
apollo.bootstrap.enabled=true
然后在application.properties
文件中配置好要覆盖的内容
bootstrap.yml
中的相关配置如下
# apollo集成
# apollo 配置应用的 appid
app.id=springboot-apollo-demo1
# apollo meta-server地址,一般同config-server地址
apollo.meta=http://192.168.0.153:8080
#启用apollo配置开关
apollo.bootstrap.enabled=true
apollo.bootstrap.eagerLoad.enabled=true
# apollo 使用配置的命名空间,多个以逗号分隔
apollo.bootstrap.namespaces = application
配置说明:
app.id
:在配置中心配置的应用身份信息。apollo.bootstrap.enabled
:在应用启动阶段是否向Spring
容器注入被托管的properties
文件配置信息。apollo.bootstrap.eagerLoad.enabled
:将Apollo
配置加载提到初始化日志系统之前。apollo.bootstrap.namespaces
:配置的命名空间,多个逗号分隔,一个namespace
相当于一个配置文件。apollo.meta
:当前环境服务配置地址,生产环境建议至少双节点,可以填写多个逗号分隔,使用一个单独的域,如http://config.xxx.com
(由nginx
等软件负载平衡器支持),而不是多个IP
地址,因为服务器可能会扩展或缩小。
参考了大佬的博文
https://www.cnblogs.com/jvStarBlog/p/12188176.html
linux安装apollo
github
上的项目地址
https://github.com/apolloconfig/apollo/wiki
下载安装包
https://github.com/apolloconfig/apollo/releases/tag/v1.9.0
初始化sql
部署apollo服务端
按照上面官方文档中的配置,初始化完数据库后需要修改项目文件中的db
配置,连上我们自己的mysql
数据库;
下载这三个包
在下载的三个项目的config
目录下修改db
的链接
然后依次启动config---admin---portal
,启动的时候可能默认的/opt/logs/xxx
日志存放路径没有读写权限,简单粗暴的话加个777
的权限就行了.
登录apollo
http://localhost:8070/
修改/增加部门
直接在db里改就行了
客户端连接服务端springboot从apollo拉取配置
在apollo
上随便配置一点东西,然后点击发布
先上依赖,注意client依赖版本和server要一致
<dependency>
<groupId>com.ctrip.framework.apollo</groupId>
<artifactId>apollo-client</artifactId>
<version>1.9.0</version>
</dependency>
配置参数
# apollo集成
# apollo 配置应用的 appid
app.id=springboot-apollo-demo1
# apollo meta-server地址,一般同config-server地址
apollo.meta=http://localhost:8080
#启用apollo配置开关
apollo.bootstrap.enabled=true
apollo.bootstrap.eagerLoad.enabled=true
# apollo 使用配置的命名空间,多个以逗号分隔
apollo.bootstrap.namespaces = application
启动类上加上@EnableApolloConfig注解
第一次启动的时候看到拉取apollo
的配置文件一直拉取失败,看到控制台的报错,看到请求的ip
是我虚拟机的另一个虚拟网卡的ip
,ip
不对。
官网提供了几种方法来处理。我这里选择在jvm options
中加入参数来覆盖这个ip
.
官网提供的几种修改方式
我选择的方式
-Dapollo.configService=http://localhost:8080
成功拉取到apollo
上的配置信息
在切换集群的时候建议添加application.properties
文件,我在测试的时候发现使用yml
格式的刷新配置失败了
以上是关于linux安装apollo;以及springcloud采用apollo配置时使用本地配置覆盖;springboot从apollo拉取配置的主要内容,如果未能解决你的问题,请参考以下文章