Dubbo-admin管理控制台目前尚未正式发布,可是源码已托管在github上,咱们能够自行下载使用;前端
目前的管理控制台已经发布0.1版本,结构上采起了先后端分离的方式,前端使用Vue和Vuetify分别做为Javascript框架和UI框架,后端采用Spring Boot框架。既能够按照标准的Maven方式进行打包,部署,也能够采用先后端分离的部署方式,方便开发,功能上,目前具有了服务查询,服务治理(包括Dubbo2.7中新增的治理规则)以及服务测试三部份内容。java
由于是源码,因此咱们若是是开发过程的话能够直接使用ide运行,部署则须要先进行打包node
使用git命令,或是其余任何git工具从仓库克隆获取源码linux
地址: https://github.com/apache/dubbo-admin.gitgit
克隆:github
git clone https://github.com/apache/dubbo-admin.git
文件位置:dubbo-admin-server/src/main/resources/application.properties
redis
#配置中心 统一管理公共配置 admin.config-center=zookeeper://127.0.0.1:2181 #注册中心 admin.registry.address=zookeeper://127.0.0.1:2181 #元数据中心 将元数据信息保存到独立的key-value的存储中,下降注册中心网络开销 #包括 provide和consumer中独有的信息不须要被共享 #(元数据)provider的接口信息,方法信息等 能够放在zookeeper或是redis admin.metadata-report.address=zookeeper://127.0.0.1:2181 # 默认端口8080 如需修改则添加配置 server.port=8080
#进入源码根目录下 cd dubbo-admin #打包 mvn clean package #若没法经过测试 如注册中心未启动啥的 可用下面的命令跳过测试 mvn install -DskipTests
若是是第一次打包须要下载大量的依赖包,shell
1.默认会下载node9.1.1到maven仓库,下载速度很是慢,若是下载不超过也会致使没法继续打包,咱们能够手动从镜像下载后放入maven仓库apache
镜像地址:https://mirrors.sjtug.sjtu.edu.cn/nodejs-release/v9.11.1/node-v9.11.1-darwin-x64.tar.gznpm
下载完成后将压缩包放置上图中的本地仓库路径下,而后从新执行打包
2.根据每台机器配置不一样某些路径可能没有执行权限,根据错误信息受权便可
添加执行权限:
chmod + x /Users/jerry/git/dubbo-admin/dubbo-admin-ui/node/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin/*
若打包成功则会看见maven标志性的build success
部署分为两种方式
#jar文件位置: dubbo-admin/dubbo-admin-distribution/target/dubbo-admin-0.1.jar java -jar dubbo-admin-0.1.jar
因为zookeeper使用了netty来实现网络服务,netty会占用8080端口,致使dubbo-admin中的tomcat没法启动,有两种方式指定端口
1.修改配置文件,须要从新打包部署
2.启动时添加参数指定端口
java -jar dubbo-admin-0.1.jar --server.port=8081
先后端分离能够更方便的修改前端页面,使用nodejs做为前端服务器
安装nodejs:
wget https://npm.taobao.org/mirrors/node/v9.9.0/node-v9.9.0-linux-x64.tar.gz ln -s ~/node-v9.9.0-linux-x64/bin/node /usr/bin/node ln -s ~/node-v9.9.0-linux-x64/bin/npm /usr/bin/npx ln -s ~/node-v9.9.0-linux-x64/bin/npm /usr/bin/npm
修改node配置文件:
vim ~/dubbo-admin/dubbo-admin-ui/config/index.js
部署成功后能够经过配置文件中dubbo-admin配置文件中指定的用户名和密码登陆到监控中心
咱们启动测试工程发布一个服务就能够在监控中心看见服务信息;
特别注意:在监控中心添加的配置会覆盖provide以及consumer中的配置,优先级是最高的;
使用Dubbo将前期练习项目CRM重构为分布式
重构后构架:
工程结构:
最后必需要强调的一点,若某个非内置类型的对象须要在dubbo协议中传递时(例如User,Customer)则必须保证该类型实现了Serializable接口
错误:
curator-framework版本过低
若需源码请私信