配置RSGroup管理RegionServer资源
操作场景
HBase服务的数据节点较多,需要根据不同的业务规模将数据节点资源分配给特定的业务,从而达到资源独占使用的目的。当AZ容灾特性被开启时,为了保证AZ容灾生效,保障业务可靠性,在为RSGroup分配RegionServer时,需遵循分配结果能使该RSGroup在每个AZ下都存在RegionServer实例的规则。
前提条件
- 已登录Manager。
- 登录角色拥有Manager管理员权限。
- 将RSGroup最小节点数设置为下述三种情况的最大值。
- 为了保证服务的可靠性,RSGroup内的RegionServer节点数量需要配置一定的冗余量,确保冗余节点数 > (RSGroup内业务表region总数/2000)* 50%。
- 如果系统表在单独的RSGroup,需要确保该RSGroup的节点数量 > 2。
- 为了不影响滚动重启功能,如果RegionServer节点总数在300以内,那么单个RSGroup的节点数量不应小于3。如果RegionServer节点总数大于等于300,那么单个RSGroup的节点数量不应小于(节点数*1%)+1。
可能的影响
- 由于RSGroup约束了Region转移可用的RegionServer节点,如果RSGroup内部分节点故障或者滚动重启,可能会触发Region超过阈值的告警,也可能会导致业务性能下降。
- 当提交修改RSGroup请求产生大量Region转移任务时,如果进行相关RSGroup操作会面临失败。需先观察WebUI页面的Region转移情况,等待转移任务结束后再进行后续操作。
配置RSGroup
创建RSGroup
- 在FusionInsight Manager界面,选择“集群 > 服务 > HBase > RSGroup管理”。
- 单击“添加RSGroup”按钮,在弹出的添加RSGroup页面填写新增的RSGroup名称,RSGroup名称包括数字、字母或下划线(_),长度为1-120个字符。然后单击“确定”。
查看RSGroup
- 选择待操作的RSGroup,在操作列单击“查看”,即可在弹出框中查看该RSGroup的RegionServers详情和Tables详情。
default RSGroup是HBase的默认RSGroup,所有已启动并且未手动添加到其他RSGroup的RegionServer节点都会添加到default RSGroup。
修改RSGroup名称
- 选择待操作的RSGroup,在操作列单击“修改名称”。在修改RSGroup名称弹出框中填写RSGroup新名称,新名称不能与已存在名称相同,单击“确定”。
修改RSGroup
- 单击待操作的RSGroup名称,跳转到修改RSGroup页面。
- 勾选欲分配的RegionServer实例,单击“下一步”。
- 一次分配操作仅允许勾选来自同一RSGroup的一个到多个RegionServer实例,且default组中的RegionServer的运行状态不为良好时不允许被勾选分配。如果想要分配来自不同RSGroup的RegionServer实例,请分多次修改操作进行分配。
- 开启跨AZ特性时,分配操作需要保证分配结果能使每个AZ中均存在该RSGroup的RegionServer实例,而且无法对开启前已分配的RSGroup进行AZ约束校验。
- 勾选欲分配的表,单击“下一步”。
- 一次分配操作仅允许勾选来自同一RSGroup的一个或多个表。如果想要分配来自不同RSGroup的RegionServer实例,请分多次修改来进行分配。
- 当修改RSGroup操作中同时勾选了分配RegionServer和表时,RegionServer和表需来自同一RSGroup。
- 当修改RSGroup操作中只勾选了分配表,且分配前该RSGroup下不存在RegionServer,则将修改失败。
- 单击“提交”。修改成功后,提示修改结果,页面将跳转至RSGroup列表展示界面。
当提示“任务入队”相关信息时,页面将跳转至RSGroup列表展示界面。此次提交的修改RSGroup请求,已进入任务队列中,请按照界面提示,观察原生界面region转移完成,确认入队任务执行成功,再进行后续操作。
删除RSGroup
- 在RSGroup管理页面,勾选需要删除的RSGroup,然后选择“删除RSGroup > 确定”。
RSGroup删除失败可能原因及解决方法:
- “default”组不允许被删除。
- 该RSGroup中仍包含RegionServer或Table,请将该RSGroup中RegionServer或Table分配给别的RSGroup组后,再进行删除。