管理后台

管理后台主要包括RPC服务查询、流量切换、Motan指令设置等功能,需使用ZooKeeper作为注册中心

管理后台独立于Motan其他部分,可单独部署

管理后台安装

  • 配置

修改配置文件application.properties,配置注册中心类型(zookeeper, consul)及注册中心地址,默认不使用数据库

默认的登录用户及权限如下:

  1. 管理员:用户名admin 密码admin
  2. 访客:用户名guest 密码guest

若需使用历史操作查询功能,则需配置数据库:

  • 数据库表结构位于motan-manager.sql,可直接导入

  • 数据库配置地址位于application.properties

  • 修改 MotanManagerApp 注解 @ImportResource(locations = {"classpath:spring-security.xml"}) 为+@ImportResource(locations = {"classpath:spring-mybatis.xml", "classpath:spring-security.xml"})

  • 启动

motan/motan-manager/ 下执行 mvn package, 然后 java -jar target/motan-manager.jar

管理后台使用

RPC服务查询

查询指定group的所有service状态,包括正常提供服务的Server和正在调用的Client

注:Consul注册中心暂不支持Client查询

步骤:

  • 在导航栏选择RPC服务查询,进入RPC服务查询页面

  • 下拉列表中选择要查询的服务所在的分组,如motan-demo-rpc,点击查询按钮

服务名语法 - 图1

流量切换(需要管理员权限)

对指定服务根据分组或ip地址进行动态流量调整

步骤:

以下示例演示将来自motan-demo-rpc分组中所有服务的流量切换到motan-demo-rpc2分组中

  • 在导航栏选择流量切换,进入流量切换页面

  • Step1:

来源流量的RPC分组列表中选择需要切换流量的Service所在的分组,如motan-demo-rpc

服务列表中*表示所有服务,也可输入服务名称,语法见服务名语法,点击Next

服务名语法 - 图2

  • Step2:

目标流量的RPC分组列表中选择目标流量分组,如motan-demo-rpc2

流量权重分配中根据需要按比例分配(可选范围是[0,100]),这里输入01,表示将来自motan-demo-rpc的流量全部转入motan-demo-rpc2,点击Next

服务名语法 - 图3

  • Step3:(可选)若需根据具体IP调整流量,可在此配置

RPC Client中输入来源流量的ip,RPC Server中输入目标流量的ip,点击添加后将在路由规则结果中显示

也可在路由规则结果中手动输入路由规则,路由规则见路由规则语法,点击Next

服务名语法 - 图4

  • Step4:指令预览

功能暂未启用,点击Finish完成流量切换操作

服务名语法
  • 类名支持[a-zA-Z0-9_$.*]

  • 运算符支持 () ! & |,优先级由高到低

  • 复杂示例如下

  1. (com.weibo.User* & !com.weibo.UserMapping) | com.weibo.Status*
  2. # 匹配com.weibo下以User开头的不包括UserMapping的所有服务,或以Status开头的所有服务
路由规则语法
  • 必须包含to关键字,to左右两边分别为rpc client和rpc server的ip表达式,示例如下
  1. * to 10.75.1.*
  2. 10.75.2.* to 10.73.1.*
  3. * to !10.75.1.1

指令管理

对注册中心下的所有指令信息进行增删改查操作

步骤:

  • 在导航栏选择指令查询,进入指令查询页面

  • 指令修改删除操作需要管理员权限

服务名语法 - 图5

操作记录查询(需要管理员权限)

查询指令增删改查记录

步骤:

  • 在导航栏选择操作记录查询,进入操作记录查询