Dubbo Admin 部署

前言

大家好,今天开始给大家分享 — Dubbo 专题之 Dubbo Admin 部署。在前一个章节中我们介绍了 Dubbo 服务治理,以及我们也从架构的演进进行探讨分布式发展的背景,同时我们知道 Dubbo 中的服务治理主要作用是改变运行时服务的行为和选址逻辑、达到限流、权重配置等目的,其中 Dubbo 服务治理提供了:服务发现注册、服务监控、集群容错、负载均衡、黑白名单、标签路由、条件路由、权重调节等能力。那有的小伙伴想知道这些服务治理我们在那里可以管理和维护呢 ?那么本章节就围绕着我们要使用的服务治理管理控制台展开。下面就让我们快速开始吧!

1. Dubbo Admin 简介

下面来自于官网的简介:Dubbo Admin 在架构上采取了前后端分离的方式,前端使用 VueVuetify 分别作为 Javascript 框架和 UI 框架,后端采用 Spring Boot 框架。既可以按照标准的 Maven 方式进行打包、部署,也可以采用前后端分离的部署方式方便开发,功能上:目前具备了服务查询、服务治理以及服务测试三部分内容。我们可以简单总结为:Dubbo Admin 采用标准的 SpringBoot 和前后端分离的架构设计,同时为我们提供了:服务治理、服务查询、服务测试等功能。

2. 服务治理能力

在前面《Dubbo 服务治理简介》我们已经讨论了 Dubbo 服务治理相关话题,那么在我们的 Dubbo Admin 都提供哪些服务治理能力呢?下面我们总结了日常工作中常使用的服务治理能力:

  1. 服务管理

Tips:包括消费者/服务者的服务查询、服务上下线、元数据展示。

  1. 服务测试

Tips:基于Dubbo2.7的元数据,Dubbo Admin 实现了服务测试功能,可以通过泛化调用,在控制台上调用真实的服务提供者。

  1. 服务治理

    3.1 条件路由

Tips:通过动态的配置相关条件进行过滤符合条件的服务提供者。 可以配置服务和应用两个维度,条件路由为 yaml 格式。

 3.2 标签路由

Tips:通过给不同提供者打上标签,相同标签为同一组服务,调用端通过指定标签进行服务分组的选择。配置以应用作为维度,给不同的服务器打上不同名字的标签。注意:Dubbo 2.7 引入的新功能。

 3.3 黑白名单

Tips:条件路由的一部分,规则存储和条件路由放在一起,为了方便配置所以单独拿出来,同样可以通过服务和应用两个维度,指定黑名单和白名单。

 3.4 动态配置

Tips:动态配置是和路由规则平行的另一类服务治理治理功能,主要作用是在不重启服务的情况下,动态改变调用行为,从Dubbo2.7 版本开始,支持服务和应用两个维度的配置,采用yaml格式

 3.5 权重调整

Tips:通过动态调整服务端的权重改变服务被客户端选中的概率,从而达到流量分配的目的。

 3.6 负载均衡

Tips:通过动态调整客户端的选址逻辑,目前可选的负载均衡策略有随机,轮训和最小活跃

 3.7 服务统计

 3.8 服务统计

Tips:统计服务提供方、服务消费方调用方法 qps 和成功率等信息和线程池线程使用情况等信息。

 3.9 服务调用关系

Tips:显示我们的服务调用关系拓扑图。

 3.10 配置管理

Tips:通过注解中心或者配置中心来存储全局和应用维度的配置,分别在全局和应用范围内生效,其中应用配置也可以指定该应用中的服务级别的配置,可以在控制台中查看,修改配置规则,默认展示全局维度的配置。注意:Dubbo2.7 新增的功能

3. 示例演示

下面我们开始演示 Dubbo Admin 的快速部署。以下介绍三种部署方式:

Docker 部署

  1. 拉取镜像
docker pull apache/dubbo-admin
  1. 启动镜像
docker run -p 8080:8080 apache/dubbo-admin

Tips:这里小伙伴提前安装 Docker 相关环境,同时这里默认使用本地 zookeeper 且默认端口为2181。同时我们也可以指定外部参数改变默认行为:admin.registry.addressadmin.config-centeradmin.metadata-report.address。这里镜像最新版本为:0.1.0官网没有发布最新镜像包,这种方式不推荐使用。

  1. 访问http://localhost:8080

  2. 生成环境部署

    4.1 clone 代码: git clone https://github.com/apache/dubbo-admin.git

    4.2 在 dubbo-admin-server/src/main/resources/application.properties中指定注册中心地址

    admin.registry.address=zookeeper://127.0.0.1:2181
    

    4.3 使用 maven 构建

      `mvn clean package`
    

    4.4 启动应用

      `mvn --projects dubbo-admin-server spring-boot:run`
     或者
    
      `cd dubbo-admin-distribution/target; java -jar dubbo-admin-0.1.jar`
    

    4.5 访问 http://localhost:8080

  3. 开发环境部署

    5.1 clone 代码: git clone https://github.com/apache/dubbo-admin.git

    5.2 Idea 加载源码

    运行dubbo-admin-server项目的Main方法。由于 dubbo-admin-server是一个标准的spring boot项目, 可以在任何java IDE中运行它

    运行dubbo-admin-ui 。因为dubbo-admin-uinpm 管理和构建,在开发环境中,可以单独运行: npm run dev

    5.3 访问 http://localhost:8080

    Tips:这里需要我们安装 npm 相关环境。

当我们成功部署 Dubbo Admin 后我们可以看到如下页面:

idea

Tips:登录后台默认账户:root 密码:root

4. 小结

在本小节中我们主要学习了 Dubbo 中 Admin 服务治理平台的部署。同时知道了 Dubbo Admin 给我们服务治理提供了:服务管理、服务治理、服务治理、服务统计、配置管理等相关能力。通过 Dubbo Admin 的服务治理能力我们可以动态的管理我们的服务路由策略、负载均衡机制、容错策略、动态配置等能力。

本节课程的重点如下:

  1. 理解 Dubbo 服务治理

  2. 学习了 Dubbo Admin 的部署方式

  3. 了解 Dubbo Admin 中服务治理能力

作者

个人从事金融行业,就职过易极付、思建科技、某网约车平台等重庆一流技术团队,目前就职于某银行负责统一支付系统建设。自身对金融行业有强烈的爱好。同时也实践大数据、数据存储、自动化集成和部署、分布式微服务、响应式编程、人工智能等领域。同时也热衷于技术分享创立公众号和博客站点对知识体系进行分享。关注公众号:青年IT男 获取最新技术文章推送!

博客地址: http://youngitman.tech

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容