ceph osd因为ReplicatedBackend::recover_object crash

这篇具有很好参考价值的文章主要介绍了ceph osd因为ReplicatedBackend::recover_object crash。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这应该是ceph version 15.2.14 (cd3bb7e87a2f62c1b862ff3fd8b1eec13391a5be) octopus (stable)的一个bug。

osd会在recovery的时候挂掉。报错日志如下。因为是实际使用的环境,目前并不能对于ceph进行修复或者升级。所以只能用命令“ceph osd set norecover ”把ceph的recovery先关掉,然后再启动osd,才行。虽然会有部分object丢失了就无法找到了,但是总比osd完全起不来好。文章来源地址https://www.toymoban.com/news/detail-629467.html

-12> 2023-08-01T22:36:02.702+0800 7f4f6f5b7700 10 monclient: handle_auth_request added challenge on 0x55d3267ca400

 ceph version 15.2.14 (cd3bb7e87a2f62c1b862ff3fd8b1eec13391a5be) octopus (stable)
 1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x14c) [0x55d30e0ea261]
 2: (()+0x4df429) [0x55d30e0ea429]
 3: (()+0x8e773d) [0x55d30e4f273d]
 4: (ReplicatedBackend::recover_object(hobject_t const&, eversion_t, std::shared_ptr<ObjectContext>, std::shared_ptr<ObjectContext>, PGBackend::RecoveryHandle*)+0x16f) [0x55d30e4ead1f]
 5: (PrimaryLogPG::prep_object_replica_pushes(hobject_t const&, eversion_t, PGBackend::RecoveryHandle*, bool*)+0x559) [0x55d30e2ea2a9]
 6: (PrimaryLogPG::recover_replicas(unsigned long, ThreadPool::TPHandle&, bool*)+0x1330) [0x55d30e32d2c0]
 7: (PrimaryLogPG::start_recovery_ops(unsigned long, ThreadPool::TPHandle&, unsigned long*)+0x106) [0x55d30e334bb6]
 8: (OSD::do_recovery(PG*, unsigned int, unsigned long, ThreadPool::TPHandle&)+0x232) [0x55d30e1cde92]
 9: (ceph::osd::scheduler::PGRecovery::run(OSD*, OSDShard*, boost::intrusive_ptr<PG>&, ThreadPool::TPHandle&)+0x19) [0x55d30e40a089]
 10: (OSD::ShardedOpWQ::_process(unsigned int, ceph::heartbeat_handle_d*)+0x143a) [0x55d30e1e9e6a]
 11: (ShardedThreadPool::shardedthreadpool_worker(unsigned int)+0x5b6) [0x55d30e7d5a56]
 12: (ShardedThreadPool::WorkThreadSharded::entry()+0x10) [0x55d30e7d85a0]
 13: (()+0x7ea5) [0x7f4f73f78ea5]
 14: (clone()+0x6d) [0x7f4f72e3c8dd]

     0> 2023-08-01T22:36:02.754+0800 7f4f51cfd700 -1 *** Caught signal (Aborted) **
 in thread 7f4f51cfd700 thread_name:tp_osd_tp

 ceph version 15.2.14 (cd3bb7e87a2f62c1b862ff3fd8b1eec13391a5be) octopus (stable)
 1: (()+0xf630) [0x7f4f73f80630]
 2: (gsignal()+0x37) [0x7f4f72d74387]
 3: (abort()+0x148) [0x7f4f72d75a78]
 4: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x19b) [0x55d30e0ea2b0]
 5: (()+0x4df429) [0x55d30e0ea429]
 6: (()+0x8e773d) [0x55d30e4f273d]
 7: (ReplicatedBackend::recover_object(hobject_t const&, eversion_t, std::shared_ptr<ObjectContext>, std::shared_ptr<ObjectContext>, PGBackend::RecoveryHandle*)+0x16f) [0x55d30e4ead1f]
 8: (PrimaryLogPG::prep_object_replica_pushes(hobject_t const&, eversion_t, PGBackend::RecoveryHandle*, bool*)+0x559) [0x55d30e2ea2a9]
 9: (PrimaryLogPG::recover_replicas(unsigned long, ThreadPool::TPHandle&, bool*)+0x1330) [0x55d30e32d2c0]
 10: (PrimaryLogPG::start_recovery_ops(unsigned long, ThreadPool::TPHandle&, unsigned long*)+0x106) [0x55d30e334bb6]
 11: (OSD::do_recovery(PG*, unsigned int, unsigned long, ThreadPool::TPHandle&)+0x232) [0x55d30e1cde92]
 12: (ceph::osd::scheduler::PGRecovery::run(OSD*, OSDShard*, boost::intrusive_ptr<PG>&, ThreadPool::TPHandle&)+0x19) [0x55d30e40a089]
 13: (OSD::ShardedOpWQ::_process(unsigned int, ceph::heartbeat_handle_d*)+0x143a) [0x55d30e1e9e6a]
 14: (ShardedThreadPool::shardedthreadpool_worker(unsigned int)+0x5b6) [0x55d30e7d5a56]
 15: (ShardedThreadPool::WorkThreadSharded::entry()+0x10) [0x55d30e7d85a0]
 16: (()+0x7ea5) [0x7f4f73f78ea5]
 17: (clone()+0x6d) [0x7f4f72e3c8dd]
 NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.

到了这里,关于ceph osd因为ReplicatedBackend::recover_object crash的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 关于ceph osd auth keyring

    关于osd auth 认证 如果在删除osd时,id指定错误,错误执行了ceph auth del osd.x,此时osd工作目录还在,osd重启会因为认证无法启动。只要重新添加该osd auth认证即可 上述原理和命令对于各位运维来说应该非常熟悉,不算新鲜命令,不做展开。 上述命令从另一个角度,也可以理解

    2024年04月15日
    浏览(34)
  • ceph写满,nearfull osd解决思路

    现象:ceph写满,ceph-s 中nearfull osd 办法:调整osd weight权重,进行数据均衡 步骤:1,执行ceph osd df可以看到当前的pg在osd上分布情况以及使用率情况 2,防止数据均衡过程中,其他osd 数据out,及deep-scrub操作出现大量block IO。设置集群noout以及nodeep-scrub标签: ceph osd set noout ceph

    2024年01月18日
    浏览(34)
  • 【个人记录】ceph修改osd池副本数

    执行 ceph -s 时提示: 显示有3个池没有配置副本。 在 Ceph 中,可以使用 ceph osd pool set 命令来配置 pool 的副本规则。要配置 pool 的副本规则为双副本,可以按照以下步骤进行操作: 首先,使用以下命令列出当前的 pool 列表,找到你想要配置的 pool 的名称: 然后,使用以下命令

    2024年01月16日
    浏览(36)
  • Ceph入门到精通-OSD waring 设置建议

    以下检查表明 OSD 节点存在问题。 1 在 /var/lib/ceph/osd 中找到的多个ceph_fsid值。 这可能意味着您正在托管许多集群的 OSD 此节点或某些 OSD 配置错误以加入 您期望的集群。 2 设置可能会导致数据丢失,因为如果 未达到最小值,Ceph 将不会确认对客户端的写入。 osd pool default 

    2024年02月11日
    浏览(47)
  • Ceph集群修复 osd 为 down 的问题

    由于突然断电了,导致 ceph 服务出现了问题,osd.1 无法起来 尝试重启 发现重启无望,可采用以下步骤重新格式化硬盘并将其加入 ceph 集群中 ( 注意:以下步骤会将硬盘中的所有数据抹除 ) 此步骤需要在 Down 掉的 OSD 所在节点上操作 安装 OSD 时,会将 osd.1 挂载至/var/lib/cep

    2023年04月17日
    浏览(34)
  • 【ceph】如何将osd的内容挂载出来---ceph-objectstore-tool 实现

      本站以分享各种运维经验和运维所需要的技能为主 《python零基础入门》:python零基础入门学习 《python运维脚本》: python运维脚本实践 《shell》:shell学习 《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战 《k8》暂未更新 《docker学习》暂未更新 《ceph学习》

    2024年02月02日
    浏览(39)
  • Crimson:高性能,高扩展的新一代 Ceph OSD

    随着物理硬件的不断发展,存储软件所使用的硬件的情况也一直在不断变化。 一方面,内存和 IO 技术一直在快速发展,硬件的性能在极速增加。在最初设计 Ceph 的时候,通常情况下,Ceph 都是被部署到机械硬盘上,能够提供数百 IOPS 的读写和数十 G 的磁盘容量。但是,目前最

    2024年02月12日
    浏览(49)
  • 【ceph】在虚拟环境中需要给osd所在的虚拟盘扩容操作

      本站以分享各种运维经验和运维所需要的技能为主 《python零基础入门》:python零基础入门学习 《python运维脚本》: python运维脚本实践 《shell》:shell学习 《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战 《k8》暂未更新 《docker学习》暂未更新 《ceph学习》

    2024年01月16日
    浏览(35)
  • 第⑫讲:Ceph集群OSD扩缩容中Reblanceing数据的重分布

    当集群中OSD进行扩缩容操作后,会触发一个Reblanceing数据重分布的机制,简单的理解就是将扩缩容前后OSD中的PG在每一个OSD中进行均匀分布,如下图所示: 在扩容前集群有两个OSD节点,这两个OSD中分布着十个PG,扩容后,集群中有三个OSD节点,此时就会触发Reblanceing数据重分布

    2024年04月15日
    浏览(44)
  • golang之recover

    Go语言中的 recover 函数 在Go语言中, recover 是一个内建函数,用于从 panic 中恢复并继续执行程序。 panic 是Go语言中的异常机制,当程序发生不可恢复的错误时,会引发一个 panic 。 recover 函数用于捕获这个 panic ,并进行一些处理,以防止程序崩溃。 2.1 什么是Panic? 在Go语言中

    2024年02月13日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包