Dubbo 之三 Dubbo 管理与监控中心的安装

Github 项目地址

前言

与以前相比,Incubator Dubbo Ops 项目中 master 分支的代码进行了大量重构,重构之后的代码目前在 develop 分支;同时 develop 分支的部署方式发生了不少变化,主要体现在 develop 分支采用了前后端分离的部署方式,下面将会分别详细介绍 master 与 develop 分支具体的部署方式。此教程的创建日期为 2018-12-20,由于官方项目正在不断迭代开发中,因此此教程在日后可能与官方的最新代码不同步,一切以官方的 Github 说明文档为准。

incubator-dubbo-ops master 分支(截止 2018-12-20)

incubator-dubbo-ops-master

  • 项目说明

    1. 项目是标准的 Spring Boot 工程
    2. 主线代码已经进行了重构,官方建议使用 develop 分支
  • 构建准备

    1. 本地安装并启动 Zookeeper 服务端
    2. 本地安装 Maven,并配置 Maven 的环境变量
  • 构建步骤

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    # 克隆master分支的代码
    # git clone -b master https://github.com/apache/incubator-dubbo-ops.git

    # 代码的目录结构
    incubator-dubbo-ops-master
    ├── dubbo-admin
    ├── dubbo-monitor-simple
    ├── dubbo-registry-simple
    ├── pom.xml
    └── README.md

    # 进入项目根目录
    $ cd incubator-dubbo-ops-master

    # 修改注册中心地址
    $ vim dubbo-admin/src/main/resources/application.properties
    dubbo.registry.address=zookeeper://127.0.0.1:2181

    # 使用maven命令进行打包
    $ mvn clean package
  • 构建结果

    1. 在 incubator-dubbo-ops-master/dubbo-admin/target 目录中生成 dubbo-admin-0.0.1-SNAPSHOT.jar
    2. 在 incubator-dubbo-ops-master/dubbo-monitor-simple/target 目录中生成 dubbo-monitor-simple-2.0.0-assembly.tar.gz,解压缩后可以找到用于启动或停止监控的 shell 脚本。
    3. 在 incubator-dubbo-ops-master/dubbo-registry-simple/target 目录中 dubbo-registry-simple-2.0.0-assembly.tar.gz,解压缩后可以找到用于启动或停止注册的 shell 脚本。
  • 运行 dubbo-admin(图形化的服务管理后台)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    # 进入构建目标目录
    $ cd incubator-dubbo-ops-master/dubbo-admin/target

    # 前台运行
    $ java -jar dubbo-admin-0.0.1-SNAPSHOT.jar

    # 或者后台运行
    $ nohup java -jar dubbo-admin-0.0.1-SNAPSHOT.jar &

    # 浏览器访问,登录的用户名和密码均为guest
    http://127.0.0.1:7001

    # 停止运行
    $ sudo pkill -9 java
  • dubbo-admin(图形化的服务管理后台)Web 界面
    dubbo-ops-master-admin-ui

  • 运行 dubbo-monitor-simple(图形化的监控后台)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    # 进入构建目标目录
    $ cd incubator-dubbo-ops-master/dubbo-monitor-simple/target

    # 解压文件
    $ tar -xvf dubbo-monitor-simple-2.0.0-assembly.tar.gz

    # 修改注册中心地址
    $ vim dubbo-monitor-simple-2.0.0/conf/dubbo.properties
    dubbo.registry.address=zookeeper://127.0.0.1:2181

    # 运行服务(默认后台运行)
    $ ./dubbo-monitor-simple-2.0.0/assembly.bin/start.sh

    # 浏览器访问
    http://127.0.0.1:8080

    # 停止服务
    $ ./dubbo-monitor-simple-2.0.0/assembly.bin/stop.sh
  • dubbo-monitor-simple(图形化的监控后台)Web 界面
    dubbo-ops-master-monitor-ui

  • 解决 Spring 应用添加 <dubbo:monitor protocol=”registry”/> 配置后,无法连接 dubbo-monitor 的问题

    1
    2
    3
    # 配置本机ipv4的ip + 用户主机名,即添加如下一行内容,将其中的xxx替换为本机真实的IP地址,例如192.168.1.198
    $ sudo vim /etc/hosts
    xxx.xxx.xxx.xxx centos7

incubator-dubbo-ops develop 分支(截止 2019-02-23)

incubator-dubbo-ops-develop

  • 前端说明

    1. 依赖 NPM 进行管理和构建
    2. 使用 Vue.js 作为 Javascript 框架,Vuetify 作为 UI 框架
    3. 在开发环境中,可以按照此文档的步骤进行构建
    4. 采用前后端分离的部署方式,前端支持热加载,任何页面的修改都可以实时反馈,不需要重启应用
  • 后端说明

    1. 项目是标准的 Spring Boot 工程,可以在任何 Java IDE 中运行
    2. 支持 Swagger,部署完成后可以访问 http://localhost:8080/swagger-ui.html 来查看所有的 Restful API
  • 构建准备

    1. 本地安装并启动 Zookeeper 服务端
    2. 本地安装 Maven,并配置 Maven 的环境变量
    3. 本地安装 NodeJS,并配置 NodeJS 的环境变量(非必需,Maven 插件会自动安装 NodeJS)
  • 构建步骤

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    # 克隆develop分支的代码
    $ git clone -b develop https://github.com/apache/incubator-dubbo-ops.git

    # 代码目录结构
    incubator-dubbo-ops
    ├── codestyle
    ├── DISCLAIMER
    ├── doc
    ├── dubbo-admin-distribution
    ├── dubbo-admin-server
    ├── dubbo-admin-ui
    ├── LICENSE
    ├── mvnw
    ├── mvnw.cmd
    ├── NOTICE
    ├── pom.xml
    ├── README.md
    └── README_ZH.md

    # 进入项目根目录
    $ cd incubator-dubbo-ops

    # 修改注册中心地址,更多配置可参考:https://github.com/apache/incubator-dubbo-ops/wiki/Dubbo-Admin%E9%85%8D%E7%BD%AE%E8%AF%B4%E6%98%8E
    $ vim dubbo-admin-server/src/main/resources/application.properties
    admin.registry.address=zookeeper://127.0.0.1:2181
    admin.config-center=zookeeper://127.0.0.1:2181
    admin.metadata-report.address=zookeeper://127.0.0.1:2181

    # 使用maven命令进行打包
    $ mvn clean package
  • 运行 dubbo-admin-server(图形化的服务管理后台)

    1
    2
    3
    4
    5
    6
    7
    8
    # 进入目录
    $ cd incubator-dubbo-ops

    # 通过maven插件运行应用
    $ mvn --projects dubbo-admin-server spring-boot:run

    # 浏览器测试访问
    http://localhost:8080
  • dubbo-admin-server(图形化的服务管理后台)Web 界面
    dubbo-ops-develop-admin-ui