本文仅针对oceanbase 社区版4.5.0_20260203版本,不确定其他版本是否存在
由于我个人在模拟实验过程中,尝试本地部署oceanbase社区版,却总是提示内存6g不足,让我陷入了深度怀疑,于是前前后后不断地修改内存配置,发现总是提示小于6G,于是发觉这个问题并不寻常
目录
1.硬件配置
2.ob1命令行操作
3.web操作
4.问题复现
5.分析原因
6.解决方案
下面来描述一下我的问题的复现步骤
1. 硬件配置
操作系统为统一Centos7.9,关闭防火墙,关闭宽容,固定IP
| 主机名 | 预装服务 | IP | |
|---|---|---|---|
| ob1 | 16(OCP+OBserver+obproxy) | 18.200 | |
| ob2 | 10(observer) | 18.201 | |
| ob3 | 10(observer) | 19.202 |
2.ob1命令行操作
ob1 ,安装oceanbase all in one 安装包,解压安装
wget -c https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/download-center/opensource/oceanbase-all-in-one/7/x86_64/oceanbase-all-in-one-4.5.0_20260203.el7.x86_64.tar.g
####
vi /etc/security/limits.d/nofile.conf
* soft nofile 655350
* hard nofile 655350
######
vi /etc/security/limits.conf
* soft nofile 655350
* hard nofile 655350
* soft stack unlimited
* hard stack unlimited
* soft nproc 655360
* hard nproc 655360
* soft core unlimited
* hard core unlimited
####安装obd,执行obd web
[admin@ob1 bin]$ pwd
/home/admin/oceanbase-all-in-one/bin
[admin@ob1 bin]$ ./install
[admin@ob1 bin]$ source ~/.oceanbase-all-in-one/bin/env.sh
[admin@ob1 bin]$ obd web
start OBD WEB in 0.0.0.0:8680
please open http://192.168.18.200:8680
3.web界面操作
# OB1 配置如下
[admin@ob1 ~]$ cat .obd/cluster/myocp/config.yaml
user:
username: admin
password: Zhou123
port: 22
oceanbase-ce:
version: 4.2.1.8
release: 108000022024072217.el7
package_hash: 499b676f2ede5a16e0c07b2b15991d1160d972e8
192.168.18.200:
zone: zone1
datafile_maxsize: 48G
192.168.18.201:
zone: zone2
datafile_maxsize: 54G
192.168.18.202:
zone: zone3
datafile_maxsize: 54G
servers:
- 192.168.18.200
- 192.168.18.201
- 192.168.18.202
global:
appname: myocp
root_password: Zhou123_
mysql_port: 2881
rpc_port: 2882
home_path: /home/admin/oceanbase
data_dir: /home/admin/data/1
redo_dir: /home/admin/data/log1
obshell_port: 2886
memory_limit: 8GB
ocp_meta_tenant:
tenant_name: ocp_meta
max_cpu: 2.0
memory_size: 2G
ocp_meta_username: root
ocp_meta_password: Zhou123_
ocp_meta_db: meta_database
ocp_monitor_tenant:
tenant_name: ocp_monitor
max_cpu: 2.0
memory_size: 2G
ocp_monitor_username: root
ocp_monitor_password: Zhou123_
ocp_monitor_db: monitor_database
cluster_id: 1778203781
proxyro_password: zWh8Eyxaoy
ocp_root_password: qYrz4inZeH
ocp_meta_tenant_log_disk_size: 8G
enable_syslog_wf: false
max_syslog_file_count: 16
production_mode: false
datafile_size: 22G
system_memory: 1G
log_disk_size: 22G
cpu_count: 8
datafile_next: 5G
obproxy-ce:
version: 4.3.5.0
package_hash: f17b277b681adb1c86bfc3cfda369ad88896da9d
release: 3.el7
servers:
- 192.168.18.200
global:
home_path: /home/admin/obproxy
prometheus_listen_port: 2884
listen_port: 2883
enable_obproxy_rpc_service: false
proxy_mem_limited: 1GB
obproxy_sys_password: vsGS6EScnw
skip_proxy_sys_private_check: true
enable_strict_kernel_release: false
enable_cluster_checkout: false
depends:
- oceanbase-ce
192.168.18.200:
proxy_id: 1748
client_session_id_version: 2
ocp-server-ce:
version: 4.4.0
package_hash: f673d693677a2c640f925ad2127a604aaebf00bf
release: 20251114143405.el7
servers:
- 192.168.18.200
global:
home_path: /home/admin/ocp
soft_dir: /home/admin/software
log_dir: /home/admin/logs
ocp_site_url: http://192.168.18.200:8080
port: 8080
admin_password: Zhou123_
memory_size: 2G
manage_info:
machine: 10
depends:
- oceanbase-ce
- obproxy-ce
4. 问题现象
[注意]
!!! 前提一定要有自动修复,可以将ob2 和ob3 的内存设置为8G来复现问题
全新安装部署OCP
配置memory_limit为8G
在预检查结束时,仅出现了2项报错,但是可以被自动修复
当点击自动修复后,再次复检会出现一项关于memory_limit内存不足的报错
5.分析原因
这个配置文件里的memory_limit会在点击 自动修复 后的前一段时间内消失
然后过了一段时间,自动被重置为6G ,导致修复后的再次检查报错。
###查看命令
cat .obd/cluster/myocp/config.yaml | grep memory_limit
6. 解决方案
1.避免点击自动修复,在第一次自动修复后,返回上一步,重新设置memory_limit
2.重新执行预检,确认没有自动修复项,然后部署
3.如果ob2和ob3内存小于8G的,不要使用自动修复,直接扩大内存,跳过此步骤
总结:避免使用自动修复,提前解决各类问题,避免预检环节报错,可稳定安装




