Apollo配置中心源码编译及搭建

阅读文本大概需要3分钟。

       Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。服务端基于Spring Boot和Spring Cloud开发,打包后可以直接运行,不需要额外安装Tomcat等应用容器。目前从官网看Apollo提供了Java和.Net的客户端接入sdk。

https://github.com/ctripcorp/apollo/

0x01:下载Apollo源码并导入eclipse

使用如下命令下载源码

git clone https://github.com/ctripcorp/apollo/

导入eclipse

0x02:创建数据库

Apollo服务端共需要两个数据库:ApolloPortalDB和ApolloConfigDB。所需的SQL脚本位于如下目录

ApolloPortalDB如下:

ApolloConfigDB如下:

0x03: 手动打包

      先手动对Apollo进行一次打包,把对应的jar都安装到本地Maven,方便下一步进行Apollo启动,修改apollo-configservice、apollo-adminservice和apollo-portal的pom.xml,注释掉spring-boot-maven-plugin和maven-assembly-plugin,在根目录下执:

mvn clean package -pl apollo-assembly -am -DskipTests=true

0x04:Apollo Config Service和Apollo Admin Service启动

      在本地开发时,一般会在IDE中同时启动apollo-configservice和apollo-adminservice。Apollo可以同时启动apollo-configservice和apollo-adminservice,同时启动时使用ApolloApplication类

com.ctrip.framework.apollo.assembly.ApolloApplication

     另外,如果希望独立启动apollo-configservice和apollo-adminservice,可以把Main Class分别换成:

com.ctrip.framework.apollo.configservice.ConfigServiceApplication
com.ctrip.framework.apollo.adminservice.AdminServiceApplication

配置com.ctrip.framework.apollo.assembly.ApolloApplication类

配置

Vm options 配置

-Dapollo_profile=github
-Dspring.datasource.url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8
-Dspring.datasource.username=root
-Dspring.datasource.password=root
-Dlogging.file=d:/log/apollo-assembly.log
  • datasource相关配置替换成你自己的数据库连接信息,注意数据库是ApolloConfigDB

  • 程序默认日志输出为/opt/logs/100003171/apollo-assembly.log,如果需要修改日志文件路径,可以增加logging.file参数,如下:

-Dlogging.file=d:/log/apollo-assembly.log

Program arguments 配置

--configservice --adminservice

启动完后,打开http://localhost:8080可以看到apollo-configservice和apollo-adminservice都已经启动完成并注册到Eureka。

0x05:启动Apollo-Portal

启动Apollo-Portal需要用到PortalApplication类

com.ctrip.framework.apollo.portal.PortalApplication

配置PortalApplication类

配置:

-Dapollo_profile=github,auth
-Ddev_meta=http://localhost:8080/
-Dserver.port=8070
-Dspring.datasource.url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8
-Dspring.datasource.username=root
-Dspring.datasource.password=root

       默认ApolloPortalDB中导入的配置只会展示DEV环境的配置,所以这里配置了dev_meta属性,如果你希望在本地展示其它环境的配置,需要在这里增加其它环境的meta服务器地址,如fat_meta。启动完后,打开http://localhost:8070就可以看到Apollo配置中心界面了,默认账号密码apollo/admin。

登录后

参考:https://github.com/ctripcorp/apollo/wiki/Apollo开发指南

往期精彩

01 Sentinel如何进行流量监控

02 Nacos源码编译

03 基于Apache Curator框架的ZooKeeper使用详解

04 spring boot项目整合xxl-job

05 互联网支付系统整体架构详解

关注我

每天进步一点点

喜欢!在看☟

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BUG弄潮儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值