OCP告警obproxy守护进程不存在

【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】obproxy4.2
【 使用版本 】4.2
【问题描述】OCP告警obproxy守护进程不存在,obproxy进程是在的,目前暂时没有找到守护进程挂掉的详细原因,可否使用admin用户进入obproxy安装目录,之后执行./bin/obproxyd.sh 命令直接启动守护进程
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):

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

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

根据文档库中的信息,当 OCP 告警提示 obproxy 守护进程不存在时,您可以按照以下步骤进行处理:

  1. 确认守护进程状态

    • 使用 admin 用户登录到 obproxy 进程所在的机器。
    • 执行以下命令,查看 obproxy 守护进程的进程号:
      ps -ef | grep obproxyd.sh
      
    • 如果没有输出或输出中没有 obproxyd.sh 进程,说明守护进程确实不存在。
  2. 启动守护进程

    • 进入 obproxy 安装目录,通常为 /opt/taobao/install/obproxy
    • 执行以下命令启动守护进程:
      ./bin/obproxyd.sh -c start -r /home/admin/logs/obproxy -n ODPT2 -p 2883
      
    • 这里的 -r 参数指定了日志目录,-n 参数指定了节点名称,-p 参数指定了监听端口。请根据实际情况调整这些参数。
  3. 验证守护进程是否启动成功

    • 再次执行以下命令,确认守护进程已启动:
      ps -ef | grep obproxyd.sh
      
    • 如果输出中包含 obproxyd.sh 进程,说明守护进程已成功启动。
  4. 检查 obproxy 进程状态

    • 执行以下命令,查看 obproxy 进程的进程号:
      ps -ef | grep obproxy
      
    • 确认 obproxy 进程是否存在,并且运行正常。
  5. 进一步排查

    • 如果守护进程启动后仍然存在问题,建议捞取 obproxy 进程的错误日志和 coredump 文件,联系 OceanBase 技术支持人员进行进一步排查。

以上步骤可以帮助您处理 OCP 告警提示 obproxy 守护进程不存在的问题。如果问题依然存在,建议使用 OceanBase 敏捷诊断工具 obdiag 收集诊断信息,以便更好地定位问题。 [2], [3], [5], [1], [6]

更多信息请查看:

  1. obproxyd_process_stop OBProxy 守护进程停止
  2. obproxy_process_stop OBProxy 进程停止
  3. obproxyd_process_dead OBProxy 守护进程不存在
  4. 停止 OBProxy
  5. 基本操作
  6. ODP 服务高可用
  7. (可选)部署 OBProxy
  8. 重启 OBProxy

1、可以按照小助手的提示 进行排查一下
2、可以把ocp的日志发一下

./bin/obproxyd.sh -c start -r /home/admin/logs/obproxy -n ODPT2 -p 2883 目前没有详细报错原因的信息,请教一下,这个命令只会启动守护进程把,不会影响obproxy进程把

根据文档库中的信息,执行 ./bin/obproxyd.sh -c start -r /home/admin/logs/obproxy -n ODPT2 -p 2883 命令只会启动 obproxy 的守护进程(obproxyd.sh),而不会直接影响正在运行的 obproxy 进程。以下是详细解释:

  1. 守护进程的作用

    • obproxyd.sh 是 obproxy 的守护脚本,负责启动和监控 obproxy 进程。
    • 如果 obproxy 进程意外退出,obproxyd.sh 会在短时间内自动重新启动 obproxy 进程,确保服务的高可用性。
  2. 启动守护进程的命令

    • ./bin/obproxyd.sh -c start -r /home/admin/logs/obproxy -n ODPT2 -p 2883 命令的参数含义如下:
      • -c start:指定启动操作。
      • -r /home/admin/logs/obproxy:指定日志目录。
      • -n ODPT2:指定节点名称。
      • -p 2883:指定监听端口。
  3. 命令的影响

    • 执行该命令只会启动或重启守护进程 obproxyd.sh,而不会直接影响已经运行的 obproxy 进程。
    • 如果 obproxy 进程已经在运行,守护进程会检测到这一点并继续监控 obproxy 进程的状态。
  4. 验证守护进程是否启动成功

    • 执行以下命令,确认守护进程已启动:
      ps -ef | grep obproxyd.sh
      
    • 如果输出中包含 obproxyd.sh 进程,说明守护进程已成功启动。
  5. 验证 obproxy 进程状态

    • 执行以下命令,确认 obproxy 进程仍在运行:
      ps -ef | grep obproxy
      
    • 如果输出中包含 obproxy 进程,说明 obproxy 进程仍在运行且未受影响。

综上所述,执行 ./bin/obproxyd.sh -c start -r /home/admin/logs/obproxy -n ODPT2 -p 2883 命令只会启动守护进程,不会直接影响正在运行的 obproxy 进程。您可以放心执行该命令来恢复守护进程。[2], [6]

更多信息请查看:

  1. 基本操作
  2. ODP 服务高可用

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

  1. 停止 OBProxy
  2. 基本操作
  3. 使用 OBD 部署 ODP
  4. ODP 服务高可用
  5. 重启 OBProxy

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

不影响,因为在ocp白屏重启obproxy会影响业务,可以手动拉起 OBProxy 守护进程。OBProxy 进程停止之后会被守护进程(obproxyd.sh)拉起,如果守护进程不能启动,将无法保证 OBProxy 意外退出后被拉起,业务受损时间会被延长。

应尽量保证 OBProxy 在线并提供服务,减少业务受损时长。

1 个赞