管理Doris租户
集群管理员通过FusionInsight Manager页面可以创建Doris租户。
创建Doris租户
- 登录FusionInsight Manager,单击“租户资源”。
- 在“租户资源管理”页面单击,打开添加租户的配置页面,参见表1为租户配置属性。
表1 租户参数介绍 参数名称
描述
名称
指定当前租户的名称,长度为3~50个字符,可包含数字、字母或下划线(_),但不支持创建仅包含数字的Doris租户名称。
根据业务需求规划租户的名称,不得与当前集群中已有的角色、HDFS目录或者Yarn队列重名。
租户类型
选择“叶子租户”。
说明:创建Doris租户,租户类型只能选择“叶子租户”。
计算资源
只创建Doris相关租户时,不选择“Yarn”。
存储资源
只创建Doris相关租户时,不选择“HDFS”。
服务
单击“关联服务”,在关联服务配置以下参数并单击“确定”:
- “服务”:选择“Doris”。
- “关联类型”:默认“共享”。
以下参数详细说明可参见表1。
- “CPU配额权重”:租户占用CPU资源的相对权重,即相对占比,竞争时生效。
- “内存限额占比”:租户最大占用内存资源的百分比,如该值设置为“10”,则当前租户在不同BE节点内存可用为:BE可用内存 * 10%。因为Doris存在默认租户normal,占用了90%,所以其他租户可设置上限为10%,若总和超过100%,Doris租户将创建失败。
- “并发数”:租户最大可运行查询任务的并发数,超过并发数的查询会进入等待队列。
- “队列长度”:租户最大等待执行的查询任务数。
- “队列等待时长(毫秒)”:租户等待执行的查询任务的最大等待时长,单位为毫秒。
- “开启内存软隔离”:默认关闭内存软隔离。如果开启内存软隔离,在资源充足时,可超额占用限额以外内存,在资源紧张时,才会释放多占用的内存。如果关闭内存软隔离,则该Workload Group为内存硬隔离,超过内存可用限额时,部分SQL将被取消或者拒绝执行。
描述
配置当前租户的描述信息。
- 单击“确定”,等待界面提示租户创建成功。
- Doris租户创建完成后,可以在“租户资源管理”列表中查看并修改租户资源。
- 在FusionInsight Manager页面,选择“租户资源”,在租户列表中选中需要查看的Doris租户,查看租户概述和资源配额。
- 选择“资源”,单击“资源详情”后的,对租户资源进行修改。
- 修改完成后,单击“确定”,返回“资源”页面,展示修改后的资源详情。
- 在“概述”的“资源配额”是静态的,并不是实时刷新,只在加载时更新。
- 因为Doris租户代表的是Workload Group,是对组内任务在单个实例节点的计算资源限制,所以“资源配额”和“图表”都是对指标均值的监控,“图表”每30秒刷新一次。
为已有的租户关联Doris服务和用户
- 在FusionInsight Manager页面,选择“租户资源”,在租户列表中选择需要操作的租户,选择“服务关联”页签,单击“关联服务”。
- 在弹出的页签中的“服务”选择“Doris”并按照业务需求配置其他参数,单击“确定”,关联Doris服务。
- 选择“用户 > 用户”,单击“关联用户”,为当前租户关联用户,单击“确定”。
- 也可参考添加用户并绑定租户,在用户列表界面新建用户或为已有用户绑定租户。
- 一个租户可以关联多个用户。
- Doris租户支持关联在Manager界面创建的人机用户和机机用户。
- 如果集群已启用Kerberos认证(安全模式),推荐关联人机用户。
- 如果集群未启用Kerberos认证(普通模式),推荐关联机机用户。
- 如果关联的是Doris普通用户(即用户绑定的角色不具备“Doris管理员权限”),关联成功后,使用对应的用户在MySQL客户端连接Doris后创建表,并查询表数据会报以下错误:
ERROR 1227 (42000): errCode = 2, detailMessage = Access denied; you need (at least one of) the USAGE/ADMIN privilege(s) to use workload group '租户名称'.
需要使用具有Doris管理员权限的用户在MySQL客户端连接Doris后,执行以下命令为当前用户赋权:
GRANT USAGE_PRIV ON workload group '租户名称' to '用户名称';
- 如果需要解除关联Doris服务,在“服务关联”的Doris服务“操作”列单击“删除”,在弹窗中单击“确定”,解除关联Doris服务。
当租户解除关联Doris服务后,对应Doris内核的Workload Group将被删除,同时绑定该租户的用户的Workload Group也将设置为normal。
添加用户并绑定租户
- 新建用户并绑定租户:登录FusionInsight Manager,选择“系统 > 权限 > 用户”,单击“添加用户”,添加一个人机用户(集群未启用Kerberos认证(普通模式)需添加机机用户),在角色中添加已创建的Doris租户。
- 为已有的用户绑定租户:登录FusionInsight Manager,选择“系统 > 权限 > 用户”,在该用户的“操作”列单击“修改”,在角色中添加已创建的Doris租户。
- 如果用户需要删除Doris租户,只需在“系统 > 用户”的用户列表中单击该用户所在行的“修改”,删除角色中绑定的Doris租户即可。
- 不支持一个用户绑定多个Doris租户。即如果user1已关联Doris租户tenant1,需要先从tenant1租户中解绑user1,再将user1关联到tenant2。
- 如果集群已启用Kerberos认证(安全模式),推荐人机用户绑定Doris租户;集群未启用Kerberos认证(普通模式),推荐机机用户绑定Doris租户。
- 如果关联的是Doris普通用户(即用户绑定的角色不具备“Doris管理员权限”),关联成功后,使用对应的用户在MySQL客户端连接Doris后创建表,并查询表数据会报以下错误:
ERROR 1227 (42000): errCode = 2, detailMessage = Access denied; you need (at least one of) the USAGE/ADMIN privilege(s) to use workload group '租户名称'.
需要使用具有Doris管理员权限的用户在MySQL客户端连接Doris后,执行以下命令为当前用户赋权:
GRANT USAGE_PRIV ON workload group '租户名称' to '用户名称';