我们计划将一个小型业务系统(预估数据量 500G,QPS 约 2000)从 MySQL 迁移到 OceanBase 社区版。请问在生产环境中,使用 3 台物理服务器(每台 32C 128G)搭建一个集群是否足够?在部署时,针对这种配置,memory_limit 、system_memory 和 cpu_count 应该如何初步设置
1 个赞
生产环境最好使用企业版,要不然出现问题不好解决
1 个赞
我觉得你问Ai 可能来的比较容易
1 个赞
| 评估维度 | 您的需求 | 官方推荐(生产) | 您的配置 | 评估 |
|---|---|---|---|---|
| 节点数 | 3节点 | ≥3节点 | 3节点 |
|
| CPU | QPS 2000 | 16核/节点 | 32核/节点 |
|
| 内存 | 500G数据 | 64GB/节点 | 128GB/节点 |
|
| 存储 | 500G | SSD推荐 | 需确认SSD |
|
| 参数 | 推荐值 | 计算逻辑 | 说明 |
|---|---|---|---|
| memory_limit | 100G | 128G × 78% | OB 可用内存上限 |
| system_memory | 5G | 固定值 | 预留给 OS 和系统进程 |
| cpu_count | 28 | 32 × 87.5% | OB 可用 CPU 核心数 |
| datafile_size | 600G | 500G × 1.2 | 数据文件,留20%余量 |
| log_disk_size | 150G | datafile × 25% | CLOG 日志空间 |
有个问题你打算用obd 还是单独部署 需要ocp 吗
期待大佬
根据您的需求描述,使用 3 台物理服务器(每台 32C 128G)来部署 OceanBase 集群是可以满足小型业务系统的需求的。对于这种配置,初步设置建议如下:
-
memory_limit: 内存限制,推荐设置为 128G 的 75% 左右,即 96G。这是因为 OceanBase 需要预留一部分内存给系统和其他进程。
-
system_memory: 系统内存,推荐设置为 memory_limit 的 50% 左右,即 48G。这是为了确保有足够的内存用于缓存数据和索引,提高性能。
-
cpu_count: CPU 核心数,每台服务器有 32 个核心,可以根据实际业务负载进行调整。通常情况下,可以设置为 24 核,留出部分核心给系统和其他进程。
具体设置可以通过 obd 工具在配置文件中指定。例如:
rootservice_list:
- server: 192.168.1.1:2882
memory_limit: 96G
system_memory: 48G
cpu_count: 24
- server: 192.168.1.2:2882
memory_limit: 96G
system_memory: 48G
cpu_count: 24
- server: 192.168.1.3:2882
memory_limit: 96G
system_memory: 48G
cpu_count: 24
更多信息请查看: