MRS Manager 3.0.0启停页面显示依赖关系,自定义选择重启服务

举报
单调函数 发表于 2020/07/08 10:57:18 2020/07/08
【摘要】 引言:在原manager页面启停时,只能选择一个组件和全部组件两个选项,如果选择重启服务时,只需要选择重启非正常启动的服务即可。但是没有自定义选择,无法勾选,停止同理,这样大大的降低了manager操作效率。本文主要提供解决保持老接口的特性的基础上,实现自定义选择重启服务,提升manager集群管理效率。


MRS Manager 3.0.0启停页面显示依赖关系,自定义选择重启服务

 【摘要】 引言:在原manager页面启停时,只能选择一个组件和全部组件两个选项,如果选择重启服务时,只需要选择重启非正常启动的服务即可。但是没有自定义选择,无法勾选,停止同理,这样大大的降低了manager操作效率。本文主要提供解决保持老接口的特性的基础上,实现自定义选择重启服务,提升manager集群管理效率。

 

一、业务场景介绍

1. FI-om工程下的业务背景:Manager页面ZooKeeper服务重启时,会在UI上显示上层服务,如果勾选同时重启上层服务,那么HDFSYarn将会同时重启,不能选择其中之一进行重启。反之,如果不进行勾选,那么只会重启ZooKeeper服务,其他的不会重启。




2. MRS Manager 3.0.0 新特性要求在上述功能的基础上,实现自定义启停,即在重启和停止服务时候实现如下融合特性。明显可以看出可以在重启KrbServer服务的上层服务实现勾选YarnZookeeper两个部分服务,而不是全部的上层服务。


备注:重启即先停止需要重启服务依赖的最上层服务,依次而下,然后在启动需要重启服务依赖的最下层服务,依次而上。


二、技术功能实现


1. 在Body体内的APICommandStopRequest 中加入UI传来的上层服务列表信息,如下所示。

     


  2. upperServices列表传值


3.ServiceOperationCommand中实现业务功能


  与Command机制一样,先找到execute()方法,即主要执行command-task里面的每一个step,通过心跳的由agent方式发起传递。  

在对服务组件进行遍历时候,判断传来的upperServices是否为null为空。以及要保证其包含的服务组件里存在遍历的组件。

4.需要区分停止和重启的本质,不能混淆。

   重启要获取下层服务

   停止要获取上层服务

三、验证特性

在兼容原有特性的基础上,从单启,单停,全起,全停,自定义启,自定义停六个维度去验证功能是否满足业务场景要求。

如下所示:

1.单启:

2.全启:

3.自定义启:

4.单停:

5.自定义停:


6.全停:


【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。