当前位置: 首页 > news >正文

Java-74 深入浅出 RPC Dubbo Admin可视化管理 安装使用 源码编译、Docker启动

点一下关注吧!!!非常感谢!!持续更新!!!

🚀 AI篇持续更新中!(长期更新)

AI炼丹日志-30-新发布【1T 万亿】参数量大模型!Kimi‑K2开源大模型解读与实践,持续打造实用AI工具指南!📐🤖

💻 Java篇正式开启!(300篇)

目前2025年07月16日更新到:
Java-74 深入浅出 RPC Dubbo Admin可视化管理 安装使用 源码编译、Docker启动
MyBatis 已完结,Spring 已完结,Nginx已完结,Tomcat已完结,分布式服务正在更新!深入浅出助你打牢基础!

📊 大数据板块已完成多项干货更新(300篇):

包括 Hadoop、Hive、Kafka、Flink、ClickHouse、Elasticsearch 等二十余项核心组件,覆盖离线+实时数仓全栈!
大数据-278 Spark MLib - 基础介绍 机器学习算法 梯度提升树 GBDT案例 详解

请添加图片描述

Dubbo Admin 主要功能详解

主要作用

Dubbo Admin 是一个功能强大的可视化管理和监控平台,主要用于管理和监控 Dubbo 微服务架构中的各项服务。它提供了直观的用户界面,让运维人员和开发者能够更方便地进行服务治理和运维工作。

核心功能模块

1. 服务管理

  • 服务查询:查看所有注册的服务及其提供者和消费者信息
  • 服务详情:展示服务的接口定义、方法列表、参数类型等元数据
  • 服务测试:在线测试服务接口,验证服务是否正常
  • 服务上下线:动态控制服务的启用和禁用状态

2. 路由规则

  • 条件路由:基于条件表达式配置服务路由规则
  • 标签路由:通过标签对服务进行分组和路由
  • 规则管理:创建、修改、删除和查询路由规则
  • 规则测试:模拟验证路由规则的匹配效果

3. 动态配置

  • 配置下发:动态修改服务提供者和消费者的配置参数
  • 配置覆盖:支持不同粒度的配置覆盖(应用级、服务级、方法级)
  • 配置回滚:快速恢复到之前的配置版本
  • 配置版本管理:记录配置变更历史

4. 服务降级

  • Mock设置:配置服务降级时的mock数据
  • 降级策略:设置服务不可用时的降级处理逻辑
  • 熔断规则:配置服务的熔断阈值和恢复策略
  • 降级监控:实时查看服务降级状态和统计

5. 访问控制

  • 黑白名单:设置IP或服务级别的访问权限
  • 权限认证:配置服务调用的认证机制
  • 流量限制:设置服务调用的频率限制
  • 操作审计:记录所有管理操作日志

6. 权重调整

  • 服务权重:调整不同服务实例的流量权重
  • 灰度发布:通过权重控制实现灰度发布
  • AB测试:配置不同版本服务的流量分配比例
  • 权重监控:实时观察权重调整后的流量分布

7. 负载均衡

  • 策略选择:配置各种负载均衡策略(随机、轮询、最少活跃等)
  • 自定义策略:支持用户自定义负载均衡算法
  • 策略测试:模拟验证负载均衡效果
  • 性能监控:监控不同负载均衡策略的执行效果

8. 其他功能

  • 服务依赖:可视化展示服务间的调用关系
  • Metrics监控:收集和展示各项性能指标
  • 告警配置:设置性能阈值告警
  • 日志查询:集中查询服务调用日志
  • 元数据中心:管理服务的元数据信息
  • 注册中心:查看和管理注册中心状态# Dubbo Admin 主要功能详解

主要作用

Dubbo Admin 是一个功能强大的可视化管理和监控平台,主要用于管理和监控 Dubbo 微服务架构中的各项服务。它提供了直观的用户界面,让运维人员和开发者能够更方便地进行服务治理和运维工作。

核心功能模块

1. 服务管理

  • 服务查询:查看所有注册的服务及其提供者和消费者信息
  • 服务详情:展示服务的接口定义、方法列表、参数类型等元数据
  • 服务测试:在线测试服务接口,验证服务是否正常
  • 服务上下线:动态控制服务的启用和禁用状态

2. 路由规则

  • 条件路由:基于条件表达式配置服务路由规则
  • 标签路由:通过标签对服务进行分组和路由
  • 规则管理:创建、修改、删除和查询路由规则
  • 规则测试:模拟验证路由规则的匹配效果

3. 动态配置

  • 配置下发:动态修改服务提供者和消费者的配置参数
  • 配置覆盖:支持不同粒度的配置覆盖(应用级、服务级、方法级)
  • 配置回滚:快速恢复到之前的配置版本
  • 配置版本管理:记录配置变更历史

4. 服务降级

  • Mock设置:配置服务降级时的mock数据
  • 降级策略:设置服务不可用时的降级处理逻辑
  • 熔断规则:配置服务的熔断阈值和恢复策略
  • 降级监控:实时查看服务降级状态和统计

5. 访问控制

  • 黑白名单:设置IP或服务级别的访问权限
  • 权限认证:配置服务调用的认证机制
  • 流量限制:设置服务调用的频率限制
  • 操作审计:记录所有管理操作日志

6. 权重调整

  • 服务权重:调整不同服务实例的流量权重
  • 灰度发布:通过权重控制实现灰度发布
  • AB测试:配置不同版本服务的流量分配比例
  • 权重监控:实时观察权重调整后的流量分布

7. 负载均衡

  • 策略选择:配置各种负载均衡策略(随机、轮询、最少活跃等)
  • 自定义策略:支持用户自定义负载均衡算法
  • 策略测试:模拟验证负载均衡效果
  • 性能监控:监控不同负载均衡策略的执行效果

8. 其他功能

  • 服务依赖:可视化展示服务间的调用关系
  • Metrics监控:收集和展示各项性能指标
  • 告警配置:设置性能阈值告警
  • 日志查询:集中查询服务调用日志
  • 元数据中心:管理服务的元数据信息
  • 注册中心:查看和管理注册中心状态

整体架构

┌──────────┐      REST/WebSocket        ┌──────────────┐
│  UI(Vue)<───────────────────────▶ │ Admin Server │──┐
└──────────┘                           └──────────────┘  │▼┌────────────┐   ┌─────────────┐│ Registry   │   │ Config Ctr. │└────────────┘   └─────────────┘▲                ▲(Dubbo apps)                    │Metadata        │Dynamic rulesProvider / Consumer  ──────────────┴────────────────┴───────────►
  • Admin UI:Vue3 + Vite;负责交互渲染与长轮询 / WebSocket 推送。
  • Admin Server:Spring Boot;封装 Registry、ConfigCenter、MetadataCenter 客户端,同时暴露 gRPC/REST API,供自动化脚本或 CI/CD 编排调用。
  • 可插拔存储:Zookeeper / Nacos / Etcd / Kubernetes CRD;写一次配置,多 Registry 同步。
  • 安全层:signSecret + JWT 校验,请务必生产环境修改默认 root 口令并启用 TLS。

安装步骤

源码安装(开发)

克隆项目

从仓库中克隆项目:

https://github.com/apache/dubbo-admin

修改配置

接着我们修改配置文件,我这里的路径是:

github/dubbo-admin/dubbo-admin-server/src/main/resources

可以看到路径下的内容:
在这里插入图片描述
修改 application-dev.properties 文件

admin.registry.address=zookeeper://10.10.52.38:2181
admin.config-center=zookeeper://10.10.52.38:2181
admin.metadata.address=zookeeper://10.10.52.38:2181

PS:我在IDE中修改。
在这里插入图片描述

打包项目

我们在项目的根目录下用 mvn 进行打包:

mvn clean package -Dmaven.test.skip=true

打包过程如下所示:
在这里插入图片描述

启动后端

接着我们使用 mvn 来启动服务:

mvn --projects dubbo-admin-server spring-boot:run

可以看到启动正常:
在这里插入图片描述

启动前端

我们需要进入到 UI 目录下启动:

github/dubbo-admin/dubbo-admin-ui

前端的页面对应如下:
在这里插入图片描述
使用 npm 启动前端的服务:

npm run dev

对应结果如下所示:
在这里插入图片描述

访问项目

1.访问http://IP:端口
2.输入用户名root,密码root(密码看是不是自己改的)
3.点击菜单查看服务提供者和服务消费者信息

对应的内容如下所示:
在这里插入图片描述

容器安装(推荐)

官方也提供了 Docker 容器的方式,我们可以直接运行容器来完成部署,更加快捷方便

$ docker run -itd --net=host --name dubbo-admin -v /dubbo/dubbo-admin/properties:/config apache/dubbo-admin

这里的配置文件需要从本地映射到容器中,其他步骤和上面一样的。

直接使用(推荐)

https://github.com/apache/dubbo-admin/releases

在这里插入图片描述

我们可以直接下载压缩包:https://github.com/apache/dubbo-admin/releases/download/0.3.0/apache-dubbo-admin-0.3.0-bin-release.zip

在这里插入图片描述
找到项目的配置文件

vim bin/config/application.properties

根据配置文件内容进行修改:
在这里插入图片描述
官方提供了几个脚本来帮助我们启动:
在这里插入图片描述

与 Dubbo 生态的配合

  • 观测:Admin Server 暴露 /actuator/prometheus,Grafana 导入官方 JSON 即可。
  • CI/CD:通过 Admin REST API 写灰度规则,可嵌入 GitLab Runner 或 ArgoCD。
  • Service Mesh:在 Dubbo-Kubernetes Proxyless 模式下,Admin 负责下发 xDS 路由;与 Istio 共存时只负责 Dubbo-内部流量。

优劣势 & 实战经验

优点

  • 官方维护,规则模型与 SDK 完全一致,避免多控制面割裂。
  • 支持传统 RPC 与新 Triple/gRPC 协议混用,升级成本低。
  • API 全开放,可脚本化自动化。

局限

  • UI 仍在快速演进,字段偶有英文未翻译;需要跟随 master 分支更新。
  • RBAC 目前为单租户粒度,SaaS 需要二次封装。
  • 与异构治理(如 Envoy L7 规则)仍未打通,需要手工同步。
http://www.dtcms.com/a/282505.html

相关文章:

  • 【Android】TextView的使用
  • 【Fedora 42】Linux内核升级后,鼠标滚轮失灵,libinput的锅?
  • 颠覆NLP十年范式!OpenCSG中文数据集助推CMU无分词器模型登顶SOTA
  • Jetpack Compose 中 Kotlin 协程的使用
  • 重学SpringMVC一SpringMVC概述、快速开发程序、请求与响应、Restful请求风格介绍
  • 【iOS】源码阅读(六)——方法交换
  • Flutter基础(前端教程①①-底部导航栏)
  • 中医舌诊学习软件,图文视频详解
  • Flutter Web 的发展历程:Dart、Flutter 与 WasmGC
  • 2025华为ODB卷-箱子之字形摆放100分-三语言题解
  • 文字图标设计-色彩魔方:动态变色技术实现场景自适应 大学毕业论文——仙盟创梦IDE
  • 【Unity】Mono相关理论知识学习
  • 深入核心:理解Spring Boot的三大基石:起步依赖、自动配置与内嵌容器
  • Kafka——生产者压缩算法
  • IsaacLab学习记录(一)
  • opencv 值类型 引用类型
  • Hadoop架构演进:从1.0到2.0的深度对比与优化解析
  • ARCGIS PRO DSK 颜色选择控件(ColorPickerControl)的调用
  • Lumerical Charge ------ 运行 PN 结仿真
  • 74、搜索二维矩阵
  • Python+Tkinter制作音频格式转换器
  • PDF 转 Word 支持加密的PDF文件转换 批量转换 编辑排版自由
  • lua(xlua)基础知识点记录
  • 非控制器(如 Service、工具类)中便捷地获取当前 HTTP 请求的上下文信息
  • SQL,在join中,on和where的区别
  • HTTP性能优化实战
  • GeoTools 基础概念解析
  • 5-Nodejs-npm与第三方模块
  • smolagents - 如何在mac用agents做简单算术题
  • 导入无人机航拍屋顶,10分钟智能铺设光伏板