目錄
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