dubbo-admin项目是什么?
在dubbo架构中,包含5个节点角色。分别是Provider(暴露服务的服务提供方)、Consumer(调用远程服务的服务消费方)、Registry(服务注册和发现的注册中心)、Monitor(统计服务的调用次数和调用时间的监控中心)、Container(服务运行容器)。
在实际的微服务项目开发中,可能一个注册中心包含多个服务提供方或服务消费方等,但是并没有一个友好的可视化界面来查看这些服务,dubbo-admin项目由此诞生。
老版本的dubbo-admin项目采用war包部署,已经不再维护。
新版dubbo-admin项目采用标准前后端分离开发模式。后端框架为springboot,前端采用vue.js等,集成了swagger提供api管理功能。且支持了Dubbo2.7版本服务治理的新特性,同时兼容Dubbo2.6。
如何运行dubbo-admin项目?
项目Github地址:https://github.com/apache/dubbo-admin
将项目下载到本地:使用git命令clone项目或者在GitHub上下载压缩包。
项目分为dubbo-admin-distribution模块、dubbo-admin-server模块、dubbo-admin-ui模块。
在本地环境测试可只运行dubbo-admin-server和dubbo-admin-ui两个子模块。
dubbo-admin-server使用zookeeper作为服务注册和发现中心。故需提前启动zookeeper。截止目前最新版的zookeeper版本是3.5.5。此版本的zookeeper中提供了一个AdminServer,包含一个Jetty容器,默认启动端口是8080,和dubbo-admin-server项目中Tomcat默认的端口8080冲突了,故需修改其中一个的端口,可在zookeeper的配置文件zoo.cfg中添加一行:admin.serverPort=8888。或在dubbo-admin-server项目的application.properties文件中添加server.port=2333。
dubbo-admin-server只需找到源码包src目录下的启动类DubboAdminApplication.java,运行其main方法即可。
dubbo-admin-ui项目是vue项目,需要提前安装node环境,node的安装也很简单,Windows下基本是“傻瓜式”安装。装好node环境后,使用cmd或git bash进入命令行,切换到dubbo-admin-ui目录下,运行命令npm install,等待package.json文件中的依赖安装完成,报警告可忽略,如果一直报err错误,一般是网络原因,可尝试将项目目录下的node_modules文件夹删除后重新执行命令npm install。(这里如果使用淘宝的镜像好像依赖包不全)等待下载完成后,执行npm run dev命令启动项目,启动成功后不要将黑窗口关闭,黑窗口中会提示项目地址,在浏览器中输入地址进行访问,即可查看dubbo-admin控制台。