obd-2002错误

【 使用环境 】 测试环境

【 4.3.0】
【问题描述】OBD-2002: Failed to start 127.0.0.1 observer
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):

【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)

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

根据您提供的信息,您遇到了 OBD-2002 错误,具体错误信息为“Failed to start 127.0.0.1 observer”,这表明在尝试启动某个组件时出现了问题。根据文档库中的信息, [1] 这类错误通常有几个可能的原因:

  1. 网络不通:确保 obd 与目标机器之间的网络是连通的。如果网络存在问题,请自行修复网络连接。

  2. 组件进程问题:对应的组件进程可能已经退出或者不提供服务。您可以尝试再次启动组件,如果依旧启动失败,请参考启动失败的错误信息进行排查。例如,您可以通过 obd cluster start demo --wop 命令来尝试启动组件,尽管您提到的 --wop 参数不存在,可能是您记错了参数名。

  3. 账号密码不匹配:常见原因是用户直接执行 SQL 命令修改了密码,导致账号密码与配置文件中存储的不同。这种情况下有两种解决办法:

    • 执行 SQL 命令将密码改回与 obd 储存的密码一致。
    • 修改对应的密码使其与组件中实际密码一致。您可以通过 vi ~/.obd/cluster/<deploy name>/config.yaml 命令来修改密码。

此外,从您提供的日志信息来看,还有一些其他的警告信息,比如关于文件描述符数量、最大进程数、核心文件大小等的建议值与当前值不符。这些也可能会影响组件的正常启动。建议您按照以下步骤进行调整:

  • 设置 fs.aio-max-nr 为 1048576(当前值为 131072)
  • 设置文件描述符数量为 655350(当前值为 65535)
  • 设置最大用户进程数为 655350(当前值为 127891)
  • 设置核心文件大小为不限制(当前值为 0)
  • 设置栈大小为不限制(当前值为 8192)

这些设置可以通过编辑 /etc/security/limits.conf 文件来实现,增加如下内容:

* soft nofile 655350
* hard nofile 655350
* soft nproc 655350
* hard nproc 655350

最后,重启系统让更改生效:

sudo sysctl -p

综上所述,您可以先尝试调整上述系统参数,然后再重新启动组件,看是否能够解决问题。如果问题依旧存在,请根据具体的错误信息进一步排查。

检索到的文档如下:

  1. 错误码
  2. OceanBase 安装部署工具 V1.3.3
  3. OceanBase 安装部署工具 V2.0.1
  4. OceanBase 数据库 TPC-H 测试

observer.log (686.6 KB)
错误信息

您上传了一个名为 observer.log 的日志文件,但由于我目前无法直接解析或查看上传的文件内容,因此无法直接从该文件中提取信息。不过,根据您之前描述的情况以及常见的 OBD-2002 错误处理经验,我们可以进一步探讨可能的解决方案。

常见的 OBD-2002 错误排查步骤

  1. 检查系统资源限制

    • 检查系统级别的资源限制是否满足 OceanBase 的需求。您之前提到的日志信息中提到了一些系统参数的推荐值与当前值不匹配,如 fs.aio-max-nr, open files, max user processes, core file size, stack size 等。请确保这些参数已经按照建议进行了调整,并且系统已经重启以使更改生效。
  2. 查看详细的 obd 日志

    • 您可以通过运行 obd display-trace <trace_id> 命令来查看更详细的 obd 日志信息。您之前的操作记录中提供了两个 trace ID:ef81510c-6abc-1lef-ad10-005056b507edf4ac4e3e-6abc-1lef-a620-005056b507ed。尝试运行这两个命令,看看是否能提供更多有用的信息。
  3. 检查 observer 日志

    • 如果您能够访问 observer 的日志文件,通常位于 observer 的安装目录下的 log 文件夹中,查看这些日志可能会提供更多关于为什么 observer 启动失败的具体原因。
  4. 检查 observer 的健康状态

    • 您可以尝试通过 obd cluster status demo 命令来检查集群的状态,看看是否有其他组件也存在问题。
  5. 检查 observer 的配置文件

    • 确认 observer 的配置文件(通常是 ~/.obd/cluster/<cluster_name>/config.yaml)中的设置是否正确。特别是端口配置、数据目录、日志目录等是否正确无误。
  6. 联系技术支持

    • 如果以上步骤都不能解决问题,建议联系 OceanBase 的技术支持团队寻求帮助。他们可能需要您提供更多的诊断信息,如 obdiag 收集的诊断报告等。

希望以上建议对您有所帮助。如果您能提供更多具体的错误信息或日志内容,我们或许能更准确地定位问题所在。

更多信息请查看:

  1. 使用 LOAD DATA 语句导入数据
  2. 设置日志恢复源
  3. 设置 Server 级配置
  4. 4000 ~ 4499
  5. 查看归档参数
  6. syslog_level
  7. log_archive_concurrency
  8. max_syslog_file_count
  9. 查看归档进度

(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)

你好,麻烦把obd日志发过来一份,demo的yaml文件也发一份

demo集群是个供新手测试使用的临时集群,容易出问题,建议黑屏化根据自己系统规格再配置一个

现在要数据恢复了,在重新配置,不知道怎么操作

单独启动数据库试试obd cluster start demo -c oceanbase-ce

试了,不行

提供一份obd日志
你试试命令行是否能登录ob数据库了

1、obd的日志
observer (1).log (70.9 KB)
2、OceanBase-ce 启动不了,obclint 无法登录数据库
3、 obd display-trace 8821be90-6b37-11ef-bba9-005056b507ed

请问之前集群是正常关闭的么

麻烦提供一下ob版本,操作系统版本,是否为生产环境

集群的yaml文件是否手动修改过除内存外的其他参数

你好,问题解决了么