dubbo-admin dubbo-monitor 安裝


 

dubbo-admin:

因為我們不能直觀的看到dubbo和zk上到底有什么服務(提供者),所以我們需要一個可視化工具來方便我們管理每一個服務和每一個節點。
dubbo-admin 就是dubbo的管理控制台

需要的准備工作是你的Linux已經安裝了

jdk
Zookeeper
tomcat

編譯java包還需要用到Maven,安裝教程
https://www.cnblogs.com/centos2017/p/10382161.html

 

 

1、官網下載dubbo源碼

Dubbo 在2.6版本時合並了dubbox 的分支,現在dubbo-admin也遷移到一個單獨項目  apache/incubator-dubbo-ops

在這個地址只能下載  apache-dubbo-2.5.0版本,這個里面帶有admin
https://github.com/apache/incubator-dubbo/

新版本中apache-dubbo-2.7.0已經沒有dubbo-admin了

轉移到新項目 apache/incubator-dubbo-ops   https://github.com/apache/incubator-dubbo-ops

 

總結:

  • 打成war包,放到tomcat容器中,啟動,訪問,期間可能存在端口沖突,主要使用於dubbo2.5.x之前的版本
  • 打成jar包,通過java -jar xxx.jar命令啟動,訪問,dubbo2.6.0之后開始使用該方式

 

舊版本的安裝流程
1.下載
2
、編譯dubbo-admin工程,打成war包 dubbo-admin-2.5.8.war
3、進入 WEB-INF 目錄修改文件 dubbo.properties 設置zookeeper 地址 dubbo.registry.address=zookeeper://127.0.0.1:2181 dubbo.admin.root.password=root dubbo.admin.guest.password=guest 4、在tomcat 中部署dubbo-admin-2.5.8.war 5、用戶密碼都root/root

 

新版本安裝流程

### 生產環境配置

 
         

1. 下載代碼: `git clone https://github.com/apache/incubator-dubbo-ops.git`
2. 在 `dubbo-admin-server/src/main/resources/application-production.properties`中指定注冊中心地址
3. 構建

 
         

> - `mvn clean package`
4. 啟動
* `mvn --projects dubbo-admin-server spring-boot:run`
或者
* `cd dubbo-admin-distribution/target; java -jar dubbo-admin-0.1.jar`
5. 訪問 `http://localhost:8080`

 

 

 

 

 dubbo-Monitor:

dubbo-monitor-simple是dubbo提供的簡單監控中心,可以用來顯示接口暴露,注冊情況,也可以看接口的調用明細,調用時間等。

  • Simple Monitor掛掉不會影響到Consumer和Provider之間的調用,所以用於生產環境不會有風險。
  • Simple Monitor采用磁盤存儲統計信息,請注意安裝機器的磁盤限制,如果要集群,建議用mount共享磁盤。
  • charts目錄必須放在jetty.directory下,否則頁面上訪問不了。
  • 配置好了之后可以結合admin管理后台使用,可以清晰的看到服務的訪問記錄、成功次數、失敗次數。

下面是官網的安裝步驟

安裝:

git clone https://github.com/apache/incubator-dubbo-ops
cd incubator-dubbo-ops && mvn package
cd dubbo-monitor-simple/target && tar xvf dubbo-monitor-simple-2.0.0-assembly.tar.gz
cd dubbo-monitor-simple-2.0.0
配置:

vi conf/dubbo.properties
啟動:

./assembly.bin/start.sh
停止:

./assembly.bin/stop.sh
重啟:

./assembly.bin/restart.sh
調試:

./assembly.bin/start.sh debug
系統狀態:

./assembly.bin/dump.sh
總控入口:

./assembly.bin/server.sh start
./assembly.bin/server.sh stop
./assembly.bin/server.sh restart
./assembly.bin/server.sh debug
./assembly.bin/server.sh dump
標准輸出:

tail -f logs/stdout.log
命令行 [1]:

telnet 127.0.0.1 7070
help
或者:

echo status | nc -i 1 127.0.0.1 7070
訪問:

http://127.0.0.1:8080

 

 

我的安裝步驟

1. 下載源碼(托管在github上)

~]# wget https://github.com/alibaba/dubbo/archive/dubbo-2.6.0.zip
~]# unzip dubbo-2.6.0.zip
~]# cd dubbo-dubbo-2.6.0/

2. 安裝依賴
~]# yum -y install java-1.8.0-openjdk maven

maven: 用於編譯dubbo-simple-monitor
jdk: dubbo-simple-monitor是java語言所寫,故需要jdk

3. 編譯dubbo-simple-monitor
dubbo-dubbo-2.6.0]# cd dubbo-simple/dubbo-monitor-simple/
dubbo-monitor-simple]# mvn clean install

編譯成功后的目標文件為:target/dubbo-monitor-simple-2.6.0-assembly.tar.gz

進入target文件夾
可以直接下載我編譯好的包

4. 修改配置文件

我們使用dubbo-monitor-simple-2.6.0-assembly.tar.gz啟動程序,因為還有一些配置需要修改

target]# tar xf dubbo-monitor-simple-2.6.0-assemble.tar.gz -C /usr/local
target]# cd /usr/local
local]# vim dubbo-monitor-simple-2.6.0/conf/dubbo.properties

# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

dubbo.container=log4j,spring,registry,jetty
dubbo.application.name=simple-monitor
dubbo.application.owner=
#dubbo.registry.address=multicast://224.5.6.7:1234
dubbo.registry.address=zookeeper://127.0.0.1:2181 zookeeper的地址
#dubbo.registry.address=redis://127.0.0.1:6379
#dubbo.registry.address=dubbo://127.0.0.1:9090
dubbo.protocol.port=7070 dubbo.jetty.port=8080 服務啟動后訪問的端口(修改一下,不要和tomcat沖突) 
dubbo.jetty.directory=/data/monitor
dubbo.charts.directory=${dubbo.jetty.directory}/charts
dubbo.statistics.directory=/data/monitor/statistics
dubbo.log4j.file=logs/dubbo-monitor-simple.log
dubbo.log4j.level=WARN

5. 啟動服務

dubbo-monitor-simple-2.6.0]# bin/start.sh

報錯:

2018-07-06 16:18:37,135 [main] WARN  com.alibaba.dubbo.config.ServiceConfig (ServiceConfig.java:568) -  [DUBBO] lvs: lvs: Temporary failure in name resolution, dubbo version: 2.6.0, current host: 127.0.0.1
java.net.UnknownHostException: lvs: lvs: Temporary failure in name resolution
        at java.net.InetAddress.getLocalHost(InetAddress.java:1505)
        at com.alibaba.dubbo.config.ServiceConfig.findConfigedHosts(ServiceConfig.java:566)
        at com.alibaba.dubbo.config.ServiceConfig.doExportUrlsFor1Protocol(ServiceConfig.java:469)
        at com.alibaba.dubbo.config.ServiceConfig.doExportUrls(ServiceConfig.java:357)
        at com.alibaba.dubbo.config.ServiceConfig.doExport(ServiceConfig.java:316)
        at com.alibaba.dubbo.config.ServiceConfig.export(ServiceConfig.java:215)
        at com.alibaba.dubbo.config.spring.ServiceBean.onApplicationEvent(ServiceBean.java:121)
        at com.alibaba.dubbo.config.spring.ServiceBean.onApplicationEvent(ServiceBean.java:50)

解決:修改hosts文件,把服務器名稱 lvs 和 127.0.0.1 地址做一下 映射就好了

# vi /etc/hosts
加入

127.0.0.1  lvs

 

出現的錯誤

1.

# ./start.sh 
./start.sh: line 30: netstat: command not found
Starting the simple-monitor ...../start.sh: line 79: netstat: command not found
../start.sh: line 79: netstat: command not found

提示找不到netstat命令,centos7 默認不使用這個命令了。
我們安裝一下network工具包,就可以使用這個命令了

# yum install net-tools

 

2. 

訪問時無法看到圖

 解決

  • dubbo-simple-monitor配置文件中dubbo.jetty.directory中指明的目錄需要手動創建
  • 我們需要監控的服務在配置dubbo時要加入<dubbo:monitor protocol="registry"/>這項配置

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM