首批通过分布式安全可靠测评,为关键业务系统打造
修改资源池
更新时间:2023-07-28 10:45:58
修改资源池属性,即是调整资源池配置的 UNIT、UNIT_NUM、ZONE_LIST 等参数信息。
使用限制
OceanBase 数据库 V4.0 版本后,系统不再支持租户多个资源池的 Unit 数目异构。当资源池分配给租户后,无法单独调整某个资源池的 UNIT_NUM,只能同时调整该租户下所有资源池的 UNIT_NUM,且当前仅支持调大租户下所有资源池的 UNIT_NUM。
操作步骤
使用
root用户登录集群的sys租户。执行以下语句,修改资源池。
语句如下:
ALTER RESOURCE POOL pool_name UNIT [=] unit_name, UNIT_NUM [=] unit_num [DELETE UNIT = (unit_id_list)], ZONE_LIST [=] ('zone'[, 'zone' ...]);语句使用说明:
修改资源池的命令每次仅支持修改一个参数。
UNIT_NUM表示指定修改每个 Zone 下的资源单元个数,取值需要小于等于对应 Zone 中的 OBServer 节点的个数。当资源池未分配给租户时,可以使用
ALTER RESOURCE POOL语句单独调大或调小资源池的UNIT_NUM;当资源池分配给租户后,只能使用ALTER RESOURCE TENANT语句同时调整租户下所有资源池的UNIT_NUM。资源池分配给租户后,调整租户下所有资源池的
UNIT_NUM的语句如下:ALTER RESOURCE TENANT tenant_name UNIT_NUM [=] unit_num;ZONE_LIST表示指定资源池的使用范围。
假设当前环境中存在如下所示的资源单元和资源池。
obclient> CREATE RESOURCE UNIT unit1 MAX_CPU 6,MIN_CPU 6, MEMORY_SIZE '36G', MAX_IOPS 1024, MIN_IOPS 1024, IOPS_WEIGHT 0, LOG_DISK_SIZE '2G'; obclient> CREATE RESOURCE POOL pool1 UNIT 'unit1', UNIT_NUM 2, ZONE_LIST ('z1','z2','z3');修改资源池的示例如下:
修改资源池
pool1的资源单元,修改后,unit2替代unit1属于资源池pool1。obclient> CREATE RESOURCE UNIT unit2 MAX_CPU 8, MIN_CPU=8, MEMORY_SIZE '40G'; obclient> ALTER RESOURCE POOL pool1 unit='unit2';资源池分配给租户后,将租户内所有资源池中每个 Zone 下的资源单元个数修改为 3 个。
obclient> ALTER RESOURCE TENANT pool1 UNIT_NUM = 3;修改资源池
pool1, 使资源池pool1中ZONE_LIST的范围扩大到'z1','z2','z3','z4'。obclient> ALTER RESOURCE POOL pool1 ZONE_LIST=('z1','z2','z3','z4');每次只能修改资源池的一个参数,同时修改资源池的两个参数时,系统会报错。
obclient> ALTER RESOURCE POOL pool1 unit='unit1', zone_list=('HANGZHOU_1'); ERROR 1235 (0A000): alter unit_num, resource_unit, zone_list in one cmd not supported