参考文档:https://blog.csdn.net/hu_zhiting/article/details/89707448

 

参考上文的文档,我在window环境搭建了了一个Apollo分布式配置中心平台,详细步骤记录一下。

 

 Apollo集成步骤

Apollo Server 配置

1)下载Apollo源码:地址:https://github.com/ctripcorp/apollo

 

2)初始化数据库

源代码项目如下,我们需要在本地mysql数据库中 运行项目源码中\scripts\db\migration\configdb和\scripts\db\migration\portaldb下的sql脚本,会生成两个数据库:ApolloConfigDB和ApolloPortalDB,用于存储一些配置信息。

Windows环境:Spring Cloud 集成Apollo分布式配置中心

本地生成的数据库:ApolloConfigDB和ApolloPortalDB



Windows环境:Spring Cloud 集成Apollo分布式配置中心


 

3)源码项目中有很多模块,我们只需要 apollo-adminservice,appllo-configservice, apollo-portal 这三个模块的jar包, 有两种方式可以获取:

方式一:直接在源码项目中修改apollo-configservice,apollo-adminservice,apollo-portal项目中的数据库连接地址(修改成本地的数据库地址,apollo-configservice 和 apollo-adminservice 对应的数据库是 apolloconfigdb,apollo-portal对应的数据库是 apolloportaldb),然后使用其提供的脚本打包。

方式二:我们也可以直接下载打包好的文件,下载地址:https://github.com/ctripcorp/apollo/releases

Windows环境:Spring Cloud 集成Apollo分布式配置中心

我使用的是第二种方式,比较简单。下载完之后,解压,分别修改每个目录文件夹中config文件夹下的application-github.properties的数据库连接地址(修改成本地数据库地址):


Windows环境:Spring Cloud 集成Apollo分布式配置中心


Windows环境:Spring Cloud 集成Apollo分布式配置中心


Windows环境:Spring Cloud 集成Apollo分布式配置中心


Windows环境:Spring Cloud 集成Apollo分布式配置中心


 

4)修改环境配置,在Apollo中,支持LOCAL, DEV, FWS, FAT, UAT, LPT, PRO, TOOLS多环境,默认使用的DEV环境,所以,我们将 \apollo-portal\config 下的 apollo-env.properties 文件的 local.meta 和 dev.meta 都修改为本地环境,该地址为Eureka的配置地址。

疑问:我是没搞清楚,配置成本地eureka有什么作用??我本来以为是需要把 apollo 服务注册到本地eureka中,但是启动本地eureka,Apollo之后,发现eureka并没有Apollo服务列表,而且不启动eureka,也是可以启动Apollo的,所以这个问题没搞懂,但是需要配置成本地eureka,否则启动Apollo会报错。


Windows环境:Spring Cloud 集成Apollo分布式配置中心


 

我们可以查看数据库,默认的环境文件应该是这个:


Windows环境:Spring Cloud 集成Apollo分布式配置中心


 


 

5)启动configservice、adminservice 和 portal 项目,执行对应script下的startup.sh脚本即可。

如何在window环境下启动shell脚本:首先需要在本地安装git,然后在startup.sh目录中,右键打开 Git Bash Here,然后在命令行输入 sh startup.sh 命令,则可以运行shell脚本,启动portal项目。一一启动 configservice、adminservice 和 portal 三个项目。


Windows环境:Spring Cloud 集成Apollo分布式配置中心


Windows环境:Spring Cloud 集成Apollo分布式配置中心


 

当然,需要在不同文件夹下执行三个shell脚本,我觉得比较麻烦,那就在一个shell脚本里执行这三个shell脚本。我创建一个新的startup.sh 脚本,只需要执行这一个脚本就可以执行刚才的三个脚本了。


Windows环境:Spring Cloud 集成Apollo分布式配置中心


Windows环境:Spring Cloud 集成Apollo分布式配置中心


#!/bin/bash
sh apollo-portal-1.5.1-github/scripts/startup.sh
sh apollo-configservice-1.5.1-github/scripts/startup.sh
sh apollo-adminservice-1.5.1-github/scripts/startup.sh

执行 sh start.sh 命令,启动了三个项目:

 Windows环境:Spring Cloud 集成Apollo分布式配置中心

 

我们还需要创建一个shutdown.sh脚本,关闭三个项目;

#!/bin/bash
sh apollo-portal-1.5.1-github/scripts/shutdown.sh
sh apollo-configservice-1.5.1-github/scripts/shutdown.sh
sh apollo-adminservice-1.5.1-github/scripts/shutdown.sh

需要注意的:

1.本地mysql必须启动,否则启动Apollo会报错,因为Apollo会从本地数据库读取一些配置信息。

2.关掉黑窗口,不一定关闭了项目,需要执行 shutdown.sh 脚本才可以关闭项目。

3.本地的eureka启动不启动无所谓,都不影响Apollo项目的启动,所以我就郁闷为啥要配置本地eureka。

 

6)Apollo使用Eureka注册服务,启动成功后,会自动注册到eureka中。注意,此eureka不是本地eureka,而且Apollo项目启动时,会自动启动一个端口号8080的eureka,我们从数据库可以看到。


Windows环境:Spring Cloud 集成Apollo分布式配置中心


我们可以查看Eureka服务状况,访问eureka地址:http://localhost:8080,如果需要修改,可在数据库中自行修改.


Windows环境:Spring Cloud 集成Apollo分布式配置中心

注意:8070、8080、8090这三个端口号不要被本地占用,因为Apollo的项目默认会使用这三个端口号,当然可以修改Apollo默认的端口号。

猜测:eureka中只注册了两个服务,config和admin,没有portal,config项目中应该启动了一个eureka,端口号是8080,并且把自己注册进了eureka中;admin 使用的是 8090 端口号,那么portal就是使用了 8070 端口号。

 

 

7)浏览器输入:http://localhost:8070 ,看到了Apollo的管理页面,使用用户apollo,密码admin登录

Windows环境:Spring Cloud 集成Apollo分布式配置中心

数据库有默认的super账号和密码:账号 apollo,密码 admin(数据库加密了)


Windows环境:Spring Cloud 集成Apollo分布式配置中心


Windows环境:Spring Cloud 集成Apollo分布式配置中心


 

登录:

Windows环境:Spring Cloud 集成Apollo分布式配置中心

 

创建一个项目


Windows环境:Spring Cloud 集成Apollo分布式配置中心


 

 

 

 

相关文章:

  • 2021-09-03
  • 2022-12-23
  • 2021-11-30
  • 2021-08-30
  • 2021-07-14
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-05-10
  • 2021-12-28
  • 2021-04-01
  • 2021-04-25
  • 2021-08-25
  • 2021-11-05
相关资源
相似解决方案