MRS Manager 3.0.0启停页面显示依赖关系,自定义选择重启服务
MRS Manager 3.0.0启停页面显示依赖关系,自定义选择重启服务
【摘要】 引言:在原manager页面启停时,只能选择一个组件和全部组件两个选项,如果选择重启服务时,只需要选择重启非正常启动的服务即可。但是没有自定义选择,无法勾选,停止同理,这样大大的降低了manager操作效率。本文主要提供解决保持老接口的特性的基础上,实现自定义选择重启服务,提升manager集群管理效率。
一、业务场景介绍
1. FI-om工程下的业务背景:Manager页面ZooKeeper服务重启时,会在UI上显示上层服务,如果勾选同时重启上层服务,那么HDFS和Yarn将会同时重启,不能选择其中之一进行重启。反之,如果不进行勾选,那么只会重启ZooKeeper服务,其他的不会重启。
2. MRS Manager 3.0.0 新特性要求在上述功能的基础上,实现自定义启停,即在重启和停止服务时候实现如下融合特性。明显可以看出可以在重启KrbServer服务的上层服务实现勾选Yarn和Zookeeper两个部分服务,而不是全部的上层服务。
备注:重启即先停止需要重启服务依赖的最上层服务,依次而下,然后在启动需要重启服务依赖的最下层服务,依次而上。
二、技术功能实现
1. 在Body体内的APICommandStopRequest 中加入UI传来的上层服务列表信息,如下所示。
2. upperServices列表传值
3.ServiceOperationCommand中实现业务功能
与Command机制一样,先找到execute()方法,即主要执行command-task里面的每一个step,通过心跳的由agent方式发起传递。
在对服务组件进行遍历时候,判断传来的upperServices是否为null为空。以及要保证其包含的服务组件里存在遍历的组件。
4.需要区分停止和重启的本质,不能混淆。
重启要获取下层服务
停止要获取上层服务
三、验证特性
在兼容原有特性的基础上,从单启,单停,全起,全停,自定义启,自定义停六个维度去验证功能是否满足业务场景要求。
如下所示:
1.单启:
2.全启:
3.自定义启:
4.单停:
5.自定义停:
6.全停:
- 点赞
- 收藏
- 关注作者
评论(0)