OceanBase学习之路49|最小资源参数配置是什么?

本节以服务器的硬件最低配置为例,提供最小资源参数的参考配置。

服务器硬件最低配置

根据生产标准,服务器的最低参考配置如下表所示。

服务器配置项 描述
服务器数量 3 台
CPU 8 Core
内存 64 GB
磁盘 建议使用 SSD,内存大小的 4 倍以上(建议 1 TB)
网卡 万兆互联及以上
操作系统 Red Hat Enterprise Linux Server 7.2 版本(内核 Linux 3.10.0 版本及以上)
文件系统 建议使用 EXT4 戓 XFS

最大可使用内存

配置说明

memory_limit 参数可用于调整 OBServer 的最大可使用内存数。由于最低内存配置为 64 GB,预留部分给系统使用,则建议 OBServer 独占 58 GB,即系统租户内存与程序内存共 58 GB。

配置值

建议配置为  58G

配置方法

在集群启动时,通过指定启动配置项  memory_limit 进行设置。

系统租户内存

配置说明

根据建议的最低内存配置为 64 GB,且 OBServer 独占 58 GB,则系统租户的可使用内存需要配置为 4 GB。

配置值

建议配置为  4G

配置方法

执行以下命令进行配置。

obclient> ALTER RESOURCE UNIT sys_unit_config MEMORY_SIZE='4G';

程序运行内存

配置说明

system_memory 参数用于配置租户 ID 为  500 的租户的内存,即程序运行内存。

配置值

建议配置为  22G

配置方法

在集群启动时,通过指定启动配置项  system_memory 进行设置。

单个线程执行栈内存

配置说明

stack_size 用于配置单个线程执行栈的内存。

配置值

建议配置为  1M。对于追求内存最小化的环境,配置为  512K 也可以,但风险也会略有增加。

配置方法

在集群启动时,通过指定启动配置项  stack_size 进行设置。

Libeasy 可使用的最大内存

配置说明

__easy_memory_limit 参数可用于配置网络框架内存。

说明

由于  __xx_xx 格式的参数为隐藏参数,无法通过  SHOW PARAMETERS 语句来查询,您可以通过以下 SQL 语句查看该参数。

obclient> SELECT * FROM oceanbase.__all_virtual_sys_parameter_stat WHERE name='__easy_memory_limit';

配置值

建议配置为  4G

配置方法

在集群启动时,通过指定启动配置项  __easy_memory_limit 进行设置。

最大连接数

配置说明

_resource_limit_spec 中的  max_session_count 参数可用于配置最大连接数。

配置值

请根据实际情况配置,建议不超过  10000

配置方法

在集群启动时,通过指定启动配置项  _resource_limit_spec 来配置最大连接数,同时还需要开启资源限制检查( _enable_resource_limit_spec),默认资源限制检查未开启。

最大请求并发数

配置说明

_resource_limit_spec 中的  max_concurrent_query_count 参数可用于配置最大请求并发数。

配置值

请根据实际情况配置,建议不超过  5000

配置方法

在集群启动时,通过指定启动配置项  _resource_limit_spec 来配置最大请求并发数,同时还需要开启资源限制检查( _enable_resource_limit_spec),默认资源限制检查未开启。

工作线程数

配置说明

工作线程数主要由  cpu_count 与  workers_per_cpu_quota 参数共同决定。

配置值

  • cpu_count:对于 64 GB 环境,不宜配置过大,建议配置为 16~32。

  • workers_per_cpu_quota:对于 64 GB 环境,建议配置为  10

配置方法

在集群启动时,通过指定启动配置项  cpu_count 和  workers_per_cpu_quota 来设置。

参数配置示例

集群启动时,通过启动参数来设置相应配置项的示例如下:

[admin@hostname oceanbase]$./bin/observer -i eth0 -p 2881 -P 2882 -n test2 -z zone1 -d /home/admin/oceanbase/store/test2 -l info -o'rootservice_list=172.30.135.203:2882:2881,\
config_additional_dir=/data/1/test2/etc2,/data/1/test2/etc3,cluster_id=11,stack_size=1M,__easy_memory_limit=4G,\
cpu_count=16,\
workers_per_cpu_quota=10'

其中:

  • -p 参数用于指定直连端口号。

  • -P 参数用于指定 RPC 端口号。

  • -n 参数用于指定集群名。

  • -z 参数用于指定启动的 Zone。

  • -d 参数用于指定数据的存储目录。

  • -l 参数用于指定日志打印级别。

  • -o 参数用于指定启动配置项。


请使用浏览器的分享功能分享到微信等