时间:2021-05-19
服务器部署
可以按照apollo wiki 进行部署
https://github.com/ctripcorp/apollo/wiki/Quick-Start
安装 Java 环境
java
创建数据库
Apollo服务端共需要两个数据库:ApolloPortalDB和ApolloConfigDB,我们把数据库、表的创建和样例数据都分别准备了sql文件,只需要导入数据库即可。
执行两个sql文件
sql/apolloportaldb.sql
sql/apolloconfigdb.sql
会创建两个数据库
下载安装包
https://github.com/nobodyiam/apollo-build-scripts
服务器部署
将快速部署包apollo-quick-start放进服务器
解压文件
服务器配置
Apollo服务端需要知道如何连接到你前面创建的数据库,所以需要编辑demo.sh,修改ApolloPortalDB和ApolloConfigDB相关的数据库连接串信息。
#apollo config db infoapollo_config_db_url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8apollo_config_db_username=用户名apollo_config_db_password=密码(如果没有密码,留空即可)# apollo portal db infoapollo_portal_db_url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8apollo_portal_db_username=用户名apollo_portal_db_password=密码(如果没有密码,留空即可)修改服务器端口地址信息
meta server url
config_server_url=http://10.168.16.125:8080admin_server_url=http://10.168.16.125:8090portal_url=http://10.168.16.125:8070如果部署在linux服务器上需要将地址改为服务器IP地址
注意:不要修改demo.sh的其它部分
确保端口未被占用
Quick Start脚本会在本地启动3个服务,分别使用8070, 8080, 8090端口,请确保这3个端口当前没有被使用。
例如,在Linux/Mac下,可以通过如下命令检查:
lsof -i:8080
执行启动脚本
./demo.sh start
当看到如下输出后,就说明启动成功了!
==== starting service ====Service logging file is ./service/apollo-service.logStarted [10768]Waiting for config service startup.......Config service started. You may visit http://localhost:8080 for service status now!Waiting for admin service startup....Admin service started==== starting portal ====Portal logging file is ./portal/apollo-portal.logStarted [10846]Waiting for portal startup......Portal started. You can visit http://localhost:8070 now!使用Apollo配置中心
访问 服务器的IP:8070 可以进行访问
例如 :http://10.168.16.125:8070
默认 用户名密码是 apollo admin
登陆后如下界面
可以创建自己的项目
添加namespace
namespace 相当于配置文件名称
在namespace中添加属性,可以以文本形式添加
可以自己研究琢磨下
java服务整合
pom整合
官方提供的maven
<dependency> <groupId>com.ctrip.framework.apollo</groupId> <artifactId>apollo-client</artifactId> <version>0.9.1</version></dependency>发现拉不下来jar包
解决方案
下载源代码
https://github.com/ctripcorp/apollo.git
编译其中的 apollo-client 包并安装到本地
引入编译后的jar包即可
现有应用接入
在应用接入Apollo之后,这些配置是可以非常方便的迁移到Apollo的,具体步骤如下:
在Apollo为应用新建项目
在应用中配置好META-INF/app.properties
把原先配置(必须是properties格式)复制一下,然后通过Apollo提供的文本编辑模式全部粘帖到应用的application namespace,发布配置
如果原来是其它格式,如yml,请先转成properties格式
把原先的配置文件如bootstrap.properties, application.properties从项目中删除
app.properties 内容是创建项目的APPID(应用ID)如前面创建的12345
# testapp.id=12345并在resources 下加入apollo-env.properties 各环境的服务器地址
local.meta=http://10.168.16.125:8080dev.meta=http://10.168.16.125:8080fat.meta=${fat_meta}uat.meta=${uat_meta}lpt.meta=${lpt_meta}pro.meta=${pro_meta}修改环境
修改/opt/settings/server.properties(Mac/Linux)或C:\opt\settings\server.properties(Windows)文件,设置env为DEV:
env=DEVSpring 整合
apollo启动配置
<apollo:config/>apollo加载namespace配置
<apollo:config namespaces="dubbo" order="1"/>####官方配置如下
Apollo也支持和Spring整合(Spring 3.1.1+),只需要做一些简单的配置就可以了。
Apollo目前既支持比较传统的基于XML的配置,也支持目前比较流行的基于Java(推荐)的配置。
需要注意的是,如果之前有使用org.springframework.beans.factory.config.PropertyPlaceholderConfigurer的,请替换成org.springframework.context.support.PropertySourcesPlaceholderConfigurer。Spring 3.1以后就不建议使用PropertyPlaceholderConfigurer了,要改用PropertySourcesPlaceholderConfigurer。
基于XML的配置
注:需要把apollo相关的xml namespace加到配置文件头上,不然会报xml语法错误。
1.注入默认namespace的配置到Spring中
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://.xxx.xxx.service.RedisService" ref="redisService" version="${dubbo.version}"/>dubbo 默认没有不需要配置,但使用apollo后没有自动注入dubbo注册地址,需要手动声明,原因待定
<dubbo:registry address="${dubbo.registry.address}"/>以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
11月15日消息,前百度Apollo(阿波罗)产品负责人周达文近日宣布,正式加入国内长租品牌自如,担任智能家居事业部CTO,全面负责智能家居整体技术战略规划。据
亿欧12月9日消息,艺术品电商Artpollo阿波罗宣布完成A轮融资,A轮投资由红星美凯龙领投,博将资本跟投,总共筹集到资金2112万元。此前Artpollo阿
4月8日消息,亿邦动力网获悉,日前,长沙黄花综合保税区管理委员会与湖南友谊阿波罗商业股份有限公司签署战略合作。据悉,此次是黄花综保区推动“湘品出境”和“万商入湘
4月15日消息,据外媒报道,民宿短租平台爱彼迎计划再筹集10亿美元的新债务,这是该公司自上周以来的第二笔此类融资。爱彼迎这一笔债务融资的资金来自阿波罗全球管理公
4月10日消息,此前,有媒体报道称携程正在洽谈收购神州租车,并整合一嗨租车业务,做大携程租车平台,但双方暂未就合作意愿和交易金额达成一致。对此消息,今日,携程相