apollo源码打包及部署

Posted zjfjava

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了apollo源码打包及部署相关的知识,希望对你有一定的参考价值。

1. 通过源码打包

到携程Apollo地址 https://github.com/ctripcorp/apollo 下载Apollo源码,可在源码中进行自定义配置日志路径及端口等,之后打包。

技术图片

打包完成后在 target 目录下的 apollo-configservice-1.3.0-github.zip 即为可部署的服务包

技术图片

apollo-configservice-1.3.0-github.zip 内容如下

技术图片

上面以apollo-configservice为例,部署所需的另外两个模块apollo-adminservice,apollo-portal的打包步骤相同。

当然,如果不需要特别定制开发,Release 也提供了预先打包好的安装包,可以到 https://github.com/ctripcorp/apollo/releases 下载使用。

2. 部署数据库

Apollo服务端共需要两个数据库:ApolloPortalDB 和 ApolloConfigDB,创建这两个数据库,1.3.0版本开始为了支持Flyway,sql位置和命名已修改,位置如下。

技术图片

注意:需配置数据库大小写不敏感

技术图片

另外需要注意的是ApolloPortalDB只需要在生产环境部署一个即可,而ApolloConfigDB需要在每个环境部署一套,如dev、uat和pro分别部署3套ApolloConfigDB。但是ApolloPortalDB.serverconfig表中需要把可支持的环境列表配置到apollo.portal.envs字段上。

 技术图片

 3. 部署服务

3.1 部署apollo-configservice

将对应环境的apollo-configservice-x.x.x-github.zip上传到服务器上,解压,核对修改scripts/startup.sh中的配置,数据库、JVM配置、日志、端口等都可以在这里再次进行配置。

  • 如果需要修改JVM参数,可以修改scripts/startup.sh的JAVA_OPTS部分。
  • 如要调整服务的日志输出路径,可以修改scripts/startup.sh和apollo-configservice.conf中的LOG_DIR。
  • 如要调整服务的监听端口,可以修改scripts/startup.sh中的SERVER_PORT。另外apollo-configservice同时承担meta server职责,如果要修改端口,注意要同时ApolloConfigDB.ServerConfig表中的eureka.service.url配置项以及apollo-portal和apollo-client中的使用到的meta server信息。
  • 如果ApolloConfigDB.ServerConfig的eureka.service.url只配了当前正在启动的机器的话,在启动apollo-configservice的过程中会在日志中输出eureka注册失败的信息,如com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused。需要注意的是,这个是预期的情况,因为apollo-configservice需要向Meta Server(它自己)注册服务,但是因为在启动过程中,自己还没起来,所以会报这个错。后面会进行重试的动作,所以等自己服务起来后就会注册正常了。

如下为pro环境的配置

技术图片

 如果配置多个环境,需要另外单独部署 apollo-configservice的服务和ApolloConfigDB数据库,同时脚本中修改meta。

技术图片

执行scripts/startup.sh即可启动configservice服务。如需停止服务,执行scripts/shutdown.sh

访问ip:9001验证服务是否启动。

技术图片

3.2 部署apollo-adminservice

将对应环境的apollo-adminservice-x.x.x-github.zip上传到服务器上,解压后执行scripts/startup.sh即可。如需停止服务,执行scripts/shutdown.sh。

自定义启动脚本中的参数。

技术图片

如果配置多个环境,需要另外单独部署 apollo-adminservice的服务和ApolloConfigDB数据库,同时脚本中修改meta。

执行scripts/startup.sh即可启动adminservice服务。如需停止服务,执行scripts/shutdown.sh。

访问ip:9002,如果页面出现 apollo-adminservice 即为启动成功。

3.3 部署apollo-portal

将apollo-portal-x.x.x-github.zip上传到服务器上,解压后执行scripts/startup.sh即可。如需停止服务,执行scripts/shutdown.sh.

自定义启动脚本中的参数。

技术图片

执行scripts/startup.sh即可启动portal服务。如需停止服务,执行scripts/shutdown.sh。

访问ip:9003出现登录页面即为启动成功,超级管理用户为apollo/admin,进入即可进行配置。

技术图片

 

以上是关于apollo源码打包及部署的主要内容,如果未能解决你的问题,请参考以下文章

docker,k8s部署Apollo

五分钟带你玩转apollodocker部署详解

五分钟带你玩转apollodocker极简部署,楼主亲测

SpringBoot实现动态配置及项目打包部署上线

vue项目打包部署后请求地址及请求问题

我下载了RCP源码,如图,怎么部署到eclipse上?修改了源码后,怎么打包发布?