ob集群启动报错

The value of the ulimit parameter “max user processes” must not be less than 120000 (Current value: 58776)


搭建ob集群 max user processes 已经调整到了 120000,还报错

1 个赞

@论坛小助手

根据文档库中的信息,您的问题与 OceanBase 数据库启动前的系统环境及内核参数检查有关。从您提供的信息来看,虽然您已经将 max user processes 调整到了 120000,但 obd 在启动 OceanBase 数据库前仍然报告该值不满足推荐配置。

错误原因

obd 在启动 OceanBase 数据库之前会对系统的多个内核参数进行检查,以确保它们符合推荐的配置标准。如果某些参数未达到推荐值,并且当前环境被识别为生产环境(即 production_mode=true 或者执行命令时开启了 --strict-check 选项),则会触发错误并阻止数据库启动。

解决方法

根据您的情况,建议采取以下步骤来解决问题:

方法一:调整所有不符合要求的内核参数

从您提供的日志中可以看出,除了 max user processes 外,还有其他几个参数也未达到推荐值:

  • fs.aio-max-nr
  • open files
  • stack size
  • vm.max_map_count

您可以使用如下命令逐一调整这些参数至推荐值:

# 修改临时生效
sysctl -w fs.aio-max-nr=1048576
sysctl -w vm.max_map_count=655360
ulimit -n 655350  # open files
ulimit -u 655350  # max user processes
ulimit -s unlimited  # stack size

# 修改永久生效
echo "fs.aio-max-nr=1048576" >> /etc/sysctl.conf
echo "vm.max_map_count=655360" >> /etc/sysctl.conf
echo "* soft nofile 655350" >> /etc/security/limits.conf
echo "* hard nofile 655350" >> /etc/security/limits.conf
echo "* soft nproc 655350" >> /etc/security/limits.conf
echo "* hard nproc 655350" >> /etc/security/limits.conf
echo "* soft stack unlimited" >> /etc/security/limits.conf
echo "* hard stack unlimited" >> /etc/security/limits.conf
sysctl -p

方法二:修改 obd 配置文件跳过严格检查

如果您所在的环境并非生产环境,或者暂时无法修改上述内核参数,可以通过修改 obd 的配置文件来跳过严格的系统参数检查。具体操作如下:

obd cluster edit-config {deployname}

在打开的配置文件中,将 production_mode 设置为 false,保存后重启集群即可。

以上两种方法可以根据实际情况选择其一执行。如果选择了方法一,请确保所有相关参数都已正确设置;若选择了方法二,则需注意这可能会对系统的稳定性产生一定影响,因此仅适用于非生产环境或测试环境中。

参考文档:如何通过配置 limits.conf 限制进程数量 (请注意,实际链接应指向官方文档中对应章节)

希望以上信息能够帮助到您!如果有任何疑问,欢迎继续提问。

更多信息请查看:

  1. 错误码
  2. 5000 ~ 5999
  3. 4500 ~ 4999
  4. (可选)配置 limits.conf
  5. 事务相关规范
  6. 部署 OceanBase 集群
  7. 修改集群配置项
1 个赞

图片
我这里本来就配置的不是生产模式,但是仍然报错。


临时设置也没生效

错误原因:ulimits 配置不满足要求。

解决方法:可通过修改 /etc/security/limits.d/ 目录下对应文件和 /etc/security/limits.conf 使其满足要求

附链接:https://www.oceanbase.com/product/ob-deployer/error-codes
希望能帮到你。。

执行sysctl -p了么
不是生产模式监测会跳过部分obd的yaml参数最小限制。内核参数还是正常监测的

这块过了,有三台机器,我刚才没注意IP,是另一台机器的参数有问题,现在有个新的报错信息:

创建资源池有问题,可能是你的资源不够导致的。
麻烦提供一份yaml参数文件

all-components-min.txt (15.9 KB)
配置文件

不建议部署ocp-express了,建议搭建ocp 产品。
memory_limit是ob总内存,要求>所有租户内存总和+system_memory
你当前集群的租户包括了ocp+sys租户占内存总大小最少4G了是不符合要求的



把这部分配置全部删掉吗?

你可以使用obd web白屏化部署方式进行搭建。该yaml可以作废掉。
如果想删掉,清理agent和ocp-exress和ocenabase模块的ocp租户相关即可

这个怎么清理?

obd cluster xxxxx component del

相关命令可以去查下官网
https://www.oceanbase.com/docs/community-obd-cn-1000000002023439#27-title-obd%20cluster%20component%20del

还是这个助手回复的全面