obd白屏部署失败,一直卡住

【 使用环境 】生产环境
【 OB or 其他组件 】
【 使用版本 】
【问题描述】白屏部署卡住
【复现路径】用的版本是4.3.5.1

【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!

1 个赞

根据您提供的信息和文档中的内容,以下是关于 obd 白屏部署失败问题的分析与解决方法:

问题分析

  1. 内存不足
    根据 OCR 提取的文本内容,存在以下警告信息:

    [WARN] OBD-2000: (10.10.10.32) not enough memory. (Free: 9G, Need: 11G)
    

    这表明当前机器的可用内存为 9G,而 OceanBase 数据库需要至少 11G 的内存。这可能是导致白屏部署卡住的原因之一。

  2. 内核参数未满足推荐值
    OCR 提取的文本中还包含以下警告信息:

    [WARN] OBD-1007: (10.10.10.32) The recommended number of open files is 65535@ (Current value: 20000)
    [WARN] OBD-1007: (10.10.10.32) The recommended number of max user processes is 655350 (Current value: 120000)
    [WARN] OBD-1007: (10.10.10.32) The recommended number of core file size is unlimited (Current value: 0)
    [WARN] OBD-1007: (10.10.10.32) The recommended number of stack size is unlimited (Current value: 8192)
    [WARN] OBD-1017: (10.10.10.32) The value of the "vm.max_map_count" must be within [32760@, 1310720] (Current val
    [WARN] OBD-1017: (10.10.10.32) The value of the "fs.file-max" must be greater than 6573688 (Current value: 16189
    

    这些警告表明当前操作系统的内核参数未达到 OceanBase 推荐的标准。如果 production_mode 配置为 true 或者执行命令时开启了 --strict-check 选项,实例将被识别为生产环境,此时会触发错误报告并终止启动流程。

  3. 日志信息
    在第二张图片中,日志显示了以下关键信息:

    "sys_region" ZONE "zone3" SERVER "10.10.10.32:2882" execute failed
    

    这表明在初始化集群时,alter system bootstrap 命令执行失败,可能导致部署过程卡住。


解决方法

方法一:调整内存配置

根据文档片段 1 和 3 的信息:

  • 如果内存不足,请尝试释放缓存:
    sudo sysctl -w vm.drop_caches=1
    # 或
    sudo echo 1 > /proc/sys/vm/drop_caches
    
  • 如果内存仍然不足,请编辑配置文件以调整内存限制:
    obd cluster edit-config <deploy name>
    
    修改以下配置项:
    • memory_limit:确保其值不小于 6G(对于 OceanBase 4.x 版本)。
    • system_memory:确保其值小于 memory_limitmemory_limit_percentage * total_memory

方法二:调整内核参数

根据文档片段 7 的信息:

  • 如果您的环境为生产环境,请通过以下命令修改内核参数:

    sysctl -w {内核参数名}="建议值"
    # 或
    echo "内核参数名=建议值" >> /etc/sysctl.conf; sysctl -p
    

    具体参数调整如下:

    • ulimit -n:设置为 65535。
    • ulimit -u:设置为 655350。
    • ulimit -c:设置为 unlimited。
    • ulimit -s:设置为 unlimited。
    • vm.max_map_count:设置为大于等于 32760。
    • fs.file-max:设置为大于 6573688。
  • 如果您的环境为测试环境且没有权限修改内核参数,可以通过以下命令跳过系统参数检查:

    obd cluster edit-config {deployname}
    

    将配置项 production_mode 设置为 false

方法三:检查日志并重新部署

根据 OCR 提取的日志信息,alter system bootstrap 命令执行失败可能是由于网络或配置问题导致的。请按照以下步骤排查:

  1. 确保所有节点之间的网络通信正常。
  2. 检查 cluster scenario 是否正确配置为 htap
  3. 删除现有部署并重新开始:
    obd cluster destroy <deploy name>
    obd cluster deploy <deploy name> -c <config.yaml>
    

总结

根据文档库中的信息,白屏部署失败的主要原因可能包括内存不足、内核参数未满足推荐值以及日志中显示的初始化失败。建议按照上述方法逐一排查并解决问题。如果问题仍未解决,建议联系 OceanBase 的人工答疑以获取更多帮助。

具体信息可参考以下文档:

  1. 错误码
  2. 通过图形化界面变更组件
  3. OceanBase 安装部署工具 V2.10.1
  4. 单机部署 OceanBase 数据库
  5. obd
  6. 什么是 obd
  7. OceanBase 安装部署工具 V2.8.0
2 个赞

OB初始配置高些,不能按MYSQL的那种思路小配置随便跑。
显示:内存不足,内核参数没调优。

  1. 内核配置按推荐修改。
  2. 主机配置列出来。
  3. 安装配置文件列出。
1 个赞

错误提示内存不足吗,是不是配置方面配置大了

2 个赞

一看报错信息,明明写着 [WARN] OBD-2000: (10.10.10.32) not enough memory. (Free: 9G, Need: 11G)
二是思考回忆自己的参数配置
三是结合报错信息对比思考是否合理并得出结论
四是动手操作验证
五是问题解决。

1 个赞