外观
OceanBase 节点配置
配置文件结构
配置文件类型
- observer.conf:OceanBase 节点的主配置文件,包含节点的核心配置参数
- obcluster.conf:集群级别的配置文件,管理集群范围内的配置
- obtenant.conf:租户级别的配置文件,管理租户范围内的配置
配置文件位置
- 默认位置:
/home/admin/oceanbase/conf/ - 可通过启动参数指定配置文件路径
- 配置文件采用键值对格式,每行一个配置项
配置文件示例
bash
# observer.conf 示例
cluster_id=1
tenant_id=1
server_id=1
zone=zone1
listen_port=2881
rpc_port=2882
data_dir=/home/admin/oceanbase/store
log_dir=/home/admin/oceanbase/log常用配置参数
基础配置
- cluster_id:集群唯一标识符,同一集群内所有节点必须一致
- server_id:节点唯一标识符,同一集群内不可重复
- zone:节点所属的可用区
- listen_port:客户端连接端口,默认 2881
- rpc_port:节点间通信端口,默认 2882
存储配置
- data_dir:数据文件存储目录
- log_dir:日志文件存储目录
- devname:数据磁盘设备名称
- disk_size:数据磁盘大小,单位 MB
- datafile_size:数据文件大小,单位 MB
内存配置
- memory_limit:节点总内存限制,单位 MB
- system_memory:系统预留内存,单位 MB
- stack_size:线程栈大小,单位 KB
- trace_log_switch:是否开启跟踪日志
性能配置
- cpu_count:节点使用的 CPU 核心数
- io_thread_count:IO 线程数量
- net_thread_count:网络线程数量
- sstable_block_size:SSTable 块大小,单位 KB
- major_freeze_duty_time:每日合并时间窗口
配置调整方法
在线调整配置
- 使用 SQL 命令在线调整大部分配置参数
- 支持动态调整和静态调整两种方式
- 动态调整参数无需重启节点即可生效
- 静态调整参数需要重启节点才能生效
sql
-- 查看当前配置
SHOW PARAMETERS LIKE '%cpu_count%';
-- 在线调整配置
ALTER SYSTEM SET cpu_count = 32 SCOPE = BOTH;使用 OCP 调整配置
- 登录 OCP 控制台,进入集群管理页面
- 选择待调整配置的节点,点击 "配置管理" 标签页
- 找到需要调整的配置项,点击 "修改" 按钮
- 输入新的配置值,选择生效范围(当前节点或全集群)
- 确认修改,等待配置生效
直接修改配置文件
- 登录待调整配置的节点
- 备份当前配置文件
- 使用文本编辑器修改配置文件
- 重启 OceanBase 服务使配置生效
- 验证配置是否正确生效
配置最佳实践
内存配置建议
- 内存限制建议设置为节点物理内存的 80%
- 系统预留内存建议设置为总内存的 10%
- 根据节点的负载情况动态调整内存分配
存储配置建议
- 数据目录和日志目录建议分别挂载到不同的磁盘
- 数据磁盘建议使用 SSD,提高 IO 性能
- 定期清理过期日志,避免磁盘空间不足
性能配置建议
- CPU 核心数建议设置为物理 CPU 核心数的 80%
- IO 线程数量建议根据磁盘数量和性能调整
- 网络线程数量建议根据节点间通信量调整
常见问题(FAQ)
Q1: 调整配置参数后,如何验证是否生效?
A1: 可以通过以下方式验证:
- 使用 SQL 命令
SHOW PARAMETERS LIKE '%parameter_name%'查看当前配置值 - 检查 OCP 控制台的配置管理页面
- 查看节点日志,确认配置加载信息
- 通过性能监控指标验证配置调整效果
Q2: 哪些配置参数需要重启节点才能生效?
A2: 以下类型的配置参数通常需要重启节点:
- 基础网络配置(如 listen_port、rpc_port)
- 存储目录配置(如 data_dir、log_dir)
- 核心内存配置(如 memory_limit、system_memory)
- 其他标记为静态的配置参数
Q3: 如何备份和恢复节点配置?
A3: 配置备份和恢复方法:
- 定期备份配置文件到安全位置
- 使用 OCP 控制台的配置备份功能
- 恢复配置时,先停止节点服务,替换配置文件,再重启服务
- 恢复后验证配置是否正确
Q4: 配置调整后导致节点无法启动怎么办?
A4: 处理方法:
- 检查配置文件中的错误配置项
- 恢复为之前的正确配置文件
- 查看节点日志,定位启动失败原因
- 调整配置参数后重新尝试启动
Q5: 如何批量调整集群中多个节点的配置?
A5: 批量配置调整方法:
- 使用 OCP 控制台的批量配置功能
- 通过 SQL 命令设置集群级别的配置
- 使用配置管理工具(如 Ansible)批量修改配置文件
- 调整后统一验证配置生效情况
