前言:使用dubbo rpc远程调用,对于开发者或运维来说需要监控服务或者服务治理,所以需要搭建一些dubbo监控程序。
1.部署dubbo-admin
先clone git地址: dubbo地址或者dubbox地址 :https://github.com/dangdangdotcom/dubbox.git
编译打包成功后,将dubbo-admin/target/dubbo-admin-2.8.4.war 复制到tomcat下的webapps就算完成部署,再修改一下/WEB-INF/dubbo.properties配置文件
dubbo.registry.address=zookeeper://127.0.0.1:2181?backup=127.0.0.1:2182,127.0.0.1:2183
dubbo.admin.root.password=root #用户名
dubbo.admin.guest.password=guest #密码
再访问地址就ok了。
2.部署dubbo keeper
先clone git 地址:https://github.com/dubboclub/dubbokeeper.git
支持三个存储 mongodb lucene mysql,我这里采用 mysql,先执行根目录下的 install-mysql.bat
发现target目录有有mysql-dubbokeeper-server 和mysql-dubbokeeper-ui,第一个是一个dubbo服务,用于保存监控数据,第二个是才是管理和监控的web。
首先先启动mysql-dubbokeeper-server服务,再启动监控ui web服务
创建一个dubbo-monitor库
CREATE TABLE `application` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(100) NOT NULL DEFAULT '',
`type` varchar(50) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
UNIQUE KEY `应用名词索引` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
在target目录下找到 /mysql-dubbokeeper-server/mysql-server/conf修改dubbo-mysql.properties配置
dubbo.application.name=mysql-monitor
dubbo.application.owner=bieber
dubbo.registry.address=zookeeper:// #zookeeper地址
dubbo.protocol.name=dubbo
dubbo.protocol.port=20884
monitor.collect.interval=10000
#usered netty4
dubbo.provider.transporter=netty4
#监控数据持久化周期,默认是一分钟,单位是秒
monitor.write.interval=60
#mysql
dubbo.monitor.mysql.url=jdbc:mysql://localhost:3306/dubbo-monitor #数据库地址
dubbo.monitor.mysql.username=root
dubbo.monitor.mysql.password=root
dubbo.monitor.mysql.pool.max=10
dubbo.monitor.mysql.pool.min=10
找到lib目录 ,用当前的dubbox版本,也就是 dubbo-2.8.4.jar这个包替换原先的jar
最后到bin目录启动 start-mysql.bat
接下来再部署ui
将dubbokeeper-ui-1.0.1.war 拖到tomcat里运行,解压之后修改WEB-INF\classes里的dubbo.properties配置文件
#monitor的应用名,可根据自己情况自定义
dubbo.application.name=monitor-ui
#应用的拥有者
dubbo.application.owner=bieber
#连接的dubbo注册中心地址,保持部署监控数据存储的zk地址一样
dubbo.registry.address=zookeeper://localhost:2181
#use netty4
dubbo.reference.client=netty4
#peeper config
#监控的zookeeper连接列表,多个通过‘,’(英文逗号)隔开。
peeper.zookeepers=localhost:2181
#监控的zookeeper连接会话超时时间
peeper.zookeeper.session.timeout=60000
#被监控端同步监控数据周期时间,可不配置,默认是一分钟同步一次
monitor.collect.interval=60000
#logger
#dubbokeeper的日志目录
monitor.log.home=/usr/dev/op_disk/monitor-log
访问地址就 可以了
比如还有
dubbo-monitor-simple
dubbo-monitor-x
我就不弄了
博客地址:http://my.oschina.net/wangnian
来源:oschina
链接:https://my.oschina.net/u/2408834/blog/668175