##重要提示:在任何步骤开始之前,谨记下面的东西##
- 在对apollo-master这个文件进行处理的时候,要找到文件夹
scripts
下的文件build.bat
,苹果用户请找到build.sh
,并且在最开始的时候运行上述两个文件;
- 在工程文件夹下,
src--->main--->scripts--->startp.sh
,将里面的SERVER_PORT
改成自己想要的端口号,修改对用工程之后,重新运行该文件;
- 即使是注册到自己的注册中心,也需要运行三个工程文件:
apollo-adminservice
,apollo-configservice
,apollo-portal
##Apollo注册到自己的注册中心步骤##
- 在github上下载压缩包
apollo-master
,解压打开,压缩包目前是10MB左右大小,如果你下载的是50MB左右大小,说明你下载的是demo文件,下载错了;
- 用IDE打开文件夹,我用的是IDEA,如果不能显示树状的工程列表,则关闭idea,进入文件夹,删除
.idea
文件重新打开;
- 找到
scripts
下的build.bat
文件,打开进行修改,将数据库用户名密码写进响应的位置。保存,运行。运行之后会发现每个工程文件下会出现target
文件夹;
- 假设已经能够成功运行,将
apollo-adminservice
文件夹和apollo-configservice
文件夹下的bootstrap.yml
文件中的注册中心改成自己的注册中心,将apollo-portal
下的apollo-env.properties
中的local.meta
改成注册的地址;
- (我不知道是否需要这一步,反正我做了)将所有工程下的
META-INF
文件夹下的app.properties
文件中的app.id
后面改成对应的名称,与新建的AppId
相同;
- 进入数据库,
Apoolo--->apolloconfigdb--->serverconfig
第一行的value按照后面的提示改成自己的注册中心地址;
- 原有的注册中心配置文件不做改变,新增文件夹
META-INF
,在下面新增app.properties
文件,并且写上app.id
和自己的AppId;
- (这一步我也不知道需不需要做,按照网上的教程做了)打开
apollo-master
里面的apollo-configservice
工程复制粘贴metaservice
文件夹到自己的注册中心工程,解决编译问题的方法是将原工程下的几个辅助文件夹生成jar包,添加到注册中心文件夹。
-
apollo-configservice
中的ConfigServiceApplication
类的@EnableEurekaServer
註解改成@EnableEurekaClient
,如果没有就加上。
- 注册中心pom.xml引入apollo-core依赖,application.yml中的eureka.client.fetchRegistry要设为true。如:
<dependency>
<groupId>com.ctrip.framework.apollo</groupId>
<artifactId>apollo-core</artifactId>
<version>0.10.2</version>
</dependency>
##可能遇到的问题##
- pom大面积爆红,我是重新解压的文件。
- pom部分爆红,reimport
- 消费者爆出警告:long polled 啥啥啥 failed,几秒之后重新poll,意思就是
configservice
没有找到,这时候看看消费者的配置文件下apollo.meta有没有写错,应该是写到configservice
的启动端口,默认应该是8080
-
apollo-master
下的任何工程运行的时候报错:url错误,让重新找database,这类错误大概率是没有配置数据库地址或者数据库用户名密码写错,没有写错的就重新运行一下脚本文件build.bat
,然后重新startup.sh
我遇到所有的问题,都是和配置文件与脚本文件相关的,大家除了错也可以重点看这两类文件
#配置中心集群#
其实配置中心集群不难,只需要注意两个地方即可。
- 新解压一个apollo的安装包,将需要更改的文件按照上述过程更改;
-
apollo-portal
中将apollo-env.properties
里面的dev.meta
后面修改为apollo-config
注册的地址和端口号。
如果不做第二步,有可能当你打开两个portal的时候没问题,但是修改后保存会报400的错