GaussDB-资源池管理
操作场景
用户可以通过资源池管理功能查看、创建、编辑、删除组资源池或业务资源池,为后续数据库用户绑定资源池实现用户粒度的资源管控做准备。
前提条件
- 创建资源池需要赋予用户创建资源池权限。
- 编辑资源池需要赋予用户编辑资源池权限。
- 删除资源池需要赋予用户删除资源池权限。
- 查看资源池需要赋予用户删除查询资源管理信息权限。
注意事项
- 在开启了资源负载管理功能之后,系统会自动创建默认资源池default_pool,当一个用户没有指定关联的资源池时,都会被默认关联到default_pool。default_pool默认绑定DefaultClass:Medium控制组,并且不限制所关联的业务的并发数。
- 默认资源池default_pool不可以编辑或删除。
- 已经绑定了用户的资源池不允许被删除。
- 如果删除组资源池,其业务资源池都将被删除。
- 有业务资源池的组资源池不允许切换控制组。
- 组资源池和业务资源池的上下层所属关系由控制组决定,因此对于CPU资源,所有业务资源池的分配不得超过上层所属组资源池的上限,但内存、IO、连接数、并发数四种资源每个资源池都是独立的,分配时无包含和所属关系。
操作步骤
-
单击具体实例名称,进入“实例管理”详情页。
-
选择“数据库管理 > 资源管理 > 资源池管理”,显示“资源池管理”页面,默认显示组层级的资源池。
图1 显示所有组资源池
-
单击“创建资源池”。
-
资源池类型选择“组资源池”:填写资源池名称,选择要绑定的子class控制组名称(用以对CPU资源进行管控),然后依次填写IO资源上限、IO优先级、最大并发数、最大连接数、最大动态内存、最大共享内存,最后单击“确认”,即可创建一个组资源池。
图2 资源池管理-创建组资源池
-
资源池类型选择“业务资源池”:填写资源池名称,选择某个子class控制组后,选择该子class控制组下的某个workload控制组,然后依次填写IO资源上限、IO优先级、最大并发数、最大连接数、最大动态内存、最大共享内存,最后单击“确认”,即可创建一个业务资源池。
图3 资源池管理-创建业务资源池
-
-
单击某个组资源池旁的“+”,可以查看当前组资源池下的所有业务资源池。
图4 查看某一组资源池下的所有业务资源池
参数名称 参数解释 资源类型 资源池名称 资源池的名称。default_pool为默认资源池,不允许修改和删除。 - 资源池类型 资源池的类型。有组资源池和业务资源池两种类型。 - CPU控制组名称 资源池绑定的控制组名称。资源池对CPU资源的管控是通过绑定控制组实现的。组资源池绑定子class控制组,业务资源池绑定workload控制组。 CPU 最大动态内存的大小 用来限制资源池允许使用的最大动态内存值。该参数的取值范围为-1~max_dynamic_memory。-1表示在操作系统默认配置允许的范围内不做限制,所有资源池最大动态内存大小相加不得超过max_dynamic_memory。参数max_dynamic_memory计算方式(返回结果为KB)如下:连接任一DN执行以下SQL:**SELECT memorymbytes FROM pg_total_memory_detail where memorytype='max_dynamic_memory';**max_dynamic_memory = (memorymbytes - memorymbytes / 10) * 1024 内存 最大共享内存的大小 用来限制资源池允许使用的最大共享内存值。该参数的取值范围为-1~shared_buffers。-1表示在操作系统默认配置允许的范围内不做限制。所有资源池的最大共享内存相加不得超过max_dynamic_memory。参数shared_buffers计算方式(分布式、集中式:单个DN查询结果)如下:连接任一DN执行以下SQL:**show shared_buffers;**查询到的shared_buffers单位为KB:shared_buffers = shared_buffers / 8****shared_buffers = (shared_buffers - shared_buffers / 10) * 8查询到的shared_buffers单位为MB:shared_buffers = shared_buffers * 1024 / 8****shared_buffers = (shared_buffers - shared_buffers / 10) * 8查询到的shared_buffers单位为GB:shared_buffers = shared_buffers * 1024 * 1024 / 8****shared_buffers = (shared_buffers - shared_buffers / 10) * 8 IO资源上限 资源池每秒可触发的I/O次数上限。该参数的取值范围为0~INT_MAX。0表示在操作系统默认配置允许的范围内不做限制,INT_MAX = 2147483647(每个资源池的IO资源上限相互独立,互不影响)。 IO IO资源优先级 I/O利用率高达90%时,重消耗I/O作业进行I/O资源管控时关联的优先级等级。包括四档可选:无、低、中和高。默认为无,表示不限制。 最大连接数 用来限制资源池允许使用的最大连接数。该资源的取值范围为-1~max_connections。-1表示在操作系统默认配置允许的范围内不做限制,所有资源池最大连接数相加不得超过max_connections。参数max_connections计算方式如下:连接任一DN和任一CN执行以下SQL,取两次查询结果的最小值:show max_connections; 连接数 最大并发数 用来限制资源池允许使用的最大并发数。该参数的取值范围为-1~INT_MAX。-1表示在操作系统默认配置允许的范围内不做限制,INT_MAX = 2147483647(每个资源池的最大并发数相互独立,互不影响)。 并发数 资源池绑定的用户 该资源池绑定的用户的名称。 - 操作 可编辑或删除。 - -
单击“编辑”,可以编辑选中的组资源池或业务资源池的信息。若要编辑的资源池为“组资源池”,可以切换其绑定的子class控制组,并修改其控制IO、内存、并发数、连接数资源的参数。
图5 编辑资源池
更多详情请参考GaussDB 文档中心:doc.hcs.huawei.com/db/zh-cn/ga…