目录
Dubbo管理控制台安装
Dubbo-Admin管理控制台是一个可以直观看到并管理生产者消费者的平台.Dubbo-Admin本身就是一个java项目.
下载地址: https://github.com/alibaba/dubbo 在dubbo-admin上用mvn package就可以了
打好包后我们需要将war包解压缩到tomcat webapps的ROOT目录下.并更改配置文件,启动tomcat
配置文件:
#zookeeper地址
dubbo.registry.address=zookeeper://127.0.0.1:2181
#管理员密码 管理账号root
dubbo.admin.root.password=root
#访客密码
dubbo.admin.guest.password=guest
验证是否安装成功,访问http://localhost:8080 出现如下页面证明安装成功
Dubbo简易监控中心安装
Dubbo监控中心monitor主要是用来计数的,它所处的位置如下图,比如某个生产者被访问了多少次,当然官方提供的是一个简易的监控中心,我们也可以利用官方给出的api定制自己的监控中心.
下载:官方给的下载地址不能用了. 我上传了一份:http://download.csdn.net/download/shangmingtao/9988510
tar -xzvf dubbo-monitor-simple-2.5.3-assembly.tar.gz
然后更改dubbo-monitor-simple-2.5.3-assembly/dubbo-monitor-simple-2.5.3/conf下的dubbo.properties
dubbo.container=log4j,spring,registry,jetty
dubbo.application.name=simple-monitor
dubbo.application.owner=
#dubbo.registry.address=multicast://224.5.6.7:1234
#zookeeper地址
dubbo.registry.address=zookeeper://127.0.0.1:2181
#dubbo.registry.address=redis://127.0.0.1:6379
#dubbo.registry.address=dubbo://127.0.0.1:9090
dubbo.protocol.port=7070
#注意这里,因为我们的管理控制台用tomcat启动,tomcat默认端口8080,所以这里我们用8090,可以看出官方给的简易监控中心使用jetty启动的.
dubbo.jetty.port=8090
dubbo.jetty.directory=${user.home}/monitor
dubbo.charts.directory=${dubbo.jetty.directory}/charts
dubbo.statistics.directory=${user.home}/monitor/statistics
dubbo.log4j.file=logs/dubbo-monitor-simple.log
dubbo.log4j.level=WARN
接下来我们启动,进入dubbo-monitor-simple-2.5.3-assembly/dubbo-monitor-simple-2.5.3/bin目录,通过如下命令启动
start.sh #linux
start.bat #windows
访问:http://localhost:8090 如下页面启动成功:
这里我们通过如下箭头位置查看计数和图表.
不过打开以后发现啥都没有,第一次用我也遇到了这个情况.原因是我们要在生产者和消费者添加如下标签,意思是从注册中心发现监控中心地址
<dubbo:monitor protocol="registry"/>
Linux部署
Linux部署dubbo服务时我们遇到一个问题,我们想把服务暴露到外网去,但是dubbo默认暴露的服务地址为内网ip,而且启动dubbo服务时报错,如下图:
问题原因:dubbo在暴露服务时会在/etc/sysconfig/network找到本机名称,我的机器是Milo,然后根据机器名字在/etc/hosts中找到对应的解析出来的ip地址,并将此ip暴露服务.linux默认 /etc/hosts如下,显然找不到Milo,所以dubbo默认就将内网地址暴露出去了
vi /etc/sysconfig/network :
NETWORKING=yes
HOSTNAME=Milo
NETWORKING_IPV6=no
PEERNTP=no
GATEWAY=172.17.175.253
vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
解决办法:
更改/etc/hosts如下:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
[你的外网地址] Milo