OceanBase學習之路49|最小資源引數配置是什麼?

老樹樁12發表於2023-01-18

本節以伺服器的硬體最低配置為例,提供最小資源引數的參考配置。

伺服器硬體最低配置

根據生產標準,伺服器的最低參考配置如下表所示。

伺服器配置項 描述
伺服器數量 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 引數用於指定啟動配置項。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70026075/viewspace-2932555/,如需轉載,請註明出處,否則將追究法律責任。

相關文章