ocp 重装observe

【 使用环境 】生产环境
【 OB or 其他组件 】ocp
【 使用版本 】ocp4.2.2
【问题描述】主机observe目录损坏,使用ocp重装observe


reinstallobs.txt (8.4 KB)

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

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

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

2 个赞

日志采集场景: 集群基础信息
日志采集命令: obdiag gather scene run --scene=observer.base

为了更好地帮助您解决在生产环境中使用 OCP 4.2.2 重装 OceanBase observer 时遇到主机 observer 目录损坏(错误码 OBE10002)的问题,推荐使用 obdiag 工具进行日志采集,并且将采集到的日志提供给我们以便确认问题所在。

麻烦您提供一些信息以便我们更好地帮助您:

  1. 您能否提供更详细的报错信息或日志片段?这有助于我们更快地定位问题。
  2. 在尝试重装之前,是否有过任何异常操作或者系统故障?
  3. observer 目录损坏的具体表现是什么?例如:文件缺失、权限问题等。
  4. 是否有定期备份 observer 的相关数据和配置?如果有,请问备份是否正常可用。

附上敏捷诊断工具 obdiag 使用帮助链接

4 个赞


目录丢失

4 个赞

根据您提供的信息,您的 OceanBase observer 安装目录确实已经丢失或被删除。为了帮助您解决此问题并重新安装 observer,请按照以下步骤操作:

1. 确认当前状态

  • 您提到的 /home/admin/oceanbase 目录下只剩下 auditlogrun 文件夹,而其他必要的文件和目录(如 binlib 等)已丢失。
  • 这意味着 observer 的安装包及其相关配置文件已经被删除或损坏。

2. 停止受影响的 observer 节点

  • 在重装之前,确保该节点上的 observer 已经完全停止,并且不再参与集群的工作。可以通过 OCP 或者手动登录到该节点执行以下命令来停止 observer:
    obd cluster stop <cluster_name>
    

3. 卸载现有残留的 observer

  • 由于 observer 目录已经丢失,建议先清理残留的文件和配置。可以使用 obd 来卸载现有的 observer 实例(如果可能的话),或者手动删除残留的文件:
    obd cluster uninstall <cluster_name> -f
    
  • 如果 obd 无法正常工作,您可以尝试手动删除残留的文件和配置。请确保不要删除 auditlogrun 文件夹中的重要日志和审计信息。

4. 重新安装 observer

  • 使用 obd 重新安装 observer。确保您有正确的 RPM 包或安装源。根据您提供的日志,您正在使用社区版 4.2.1.8,因此可以使用以下命令重新安装:
    obd cluster deploy <cluster_name> -c <config_file> --without_parameter_check
    
  • 其中 <cluster_name> 是您的集群名称,<config_file> 是您的配置文件路径。如果您没有现成的配置文件,可以从备份中恢复,或者参考 OceanBase 社区版文档 创建一个新的配置文件。

5. 重新加入集群

  • 安装完成后,确保新安装的 observer 正常启动,并通过 OCP 或者 obd 将其重新加入到集群中:
    obd cluster start <cluster_name>
    
  • 确认 observer 已成功加入集群,并且集群状态正常。

6. 验证数据一致性

  • 重新加入集群后,建议进行一次全面的数据一致性检查,确保所有数据完整无误。可以使用 ob_admin 工具进行数据校验:
    ob_admin -i <observer_ip> -P <port> -u <user> -p <password> slog_tool check_data_consistency
    

7. 更新 OCP 配置

  • 如果您是通过 OCP 管理集群,确保在 OCP 中更新该节点的状态,并确认其已正确加入集群。

8. 备份与预防措施

  • 建议定期备份 observer 的安装目录和配置文件,以防止类似问题再次发生。可以使用 obdiag 工具进行定期备份:
    obdiag gather scene run --scene=observer.base
    

总结

根据文档库中的信息,当 observer 安装目录丢失时,建议按照上述步骤进行清理、重新安装和重新加入集群的操作。确保在操作过程中保留重要的日志和审计信息,并定期进行备份以防止数据丢失。

如果您在执行上述步骤时遇到任何问题,建议联系 OceanBase 的人工技术支持获取进一步的帮助。

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

  1. 遇到问题如何向技术支持同学提问
  2. 离线分析日志文件夹
  3. OceanBase 数据库概述
  4. 章节介绍
  5. 使用导数工具进行数据迁移
  6. OceanBase 生态工具介绍

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

4 个赞

您发下 ocp 里面的集群–概览—zone列表和observer列表吧。

4 个赞

4 个赞

你这个 240 是怎么了 ??
能不能把他修复正常了。

3 个赞

240 原先在zone2里面,后来删除了,加到zone4 里面,rootservice显示也不正常,怎么修复

3 个赞

直接登录 243 的 2881端口看看吧

  1. select * from dba_ob_tenants;
  2. select *from dba_ob_servers;
  3. select * from dba_ob_zones;
    –截图发出来看看
3 个赞


ob_server

zone

我现在是要删除239

3 个赞
  1. zone 4 已经没用了吧 , 里面没有observer了 , 尝试删除zone 看看能不能同步到ocp
    https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001428966

select * from dba_ob_zones ; 看下 ,等会在看下 ocp 是不是能检测到

3 个赞

zone4 是我新加的,sys 租户还没有扩容到哪里,我现在要重装zone1 的observe ,你现在意思是删除zone1?

2 个赞

助手的这次回答,虽然系统,但是好像跟问题不大配套啊

1 个赞

你说显示不正常 ,我还以为 你不用了呢。

image
你哪里是怎么 执行删除的 。我这删除 副本observer的话,报这个错误。

https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001428970


image
重装按钮尝试下

1 个赞


我这里就是重装observe,然后报错了

1 个赞


我这重装按钮的。 报错

这个报错: 说明 zone内 必须保证 有一个observer ,因为咱们的是1-1-1集群, 不能删除observer ,调整副本数才能删除。

我现在要调整sys租户的副本数是吗?我这个报错为啥不像你那样明显

我用的是4.3.2 版本比较新的原因。

调整的时候 查看 __all_rootservice_job ; 一次只能一个在运行

zone 4 是不是没有 observer ?