?本站以分享各种运维经验和运维所需要的技能为主
《python零基础入门》:python零基础入门学习
《python运维脚本》:?python运维脚本实践
《shell》:shell学习
《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战
《k8》暂未更新
《docker学习》暂未更新
《ceph学习》ceph日常问题解决分享
《日志收集》ELK+各种中间件
《运维日常》运维日常
《linux》运维面试100问
当pg down,在换故障盘的时候,另外一个盘也出现问题,这时query发现,两个up的osd都挂了,只能从其他osd备用的副本上导出pg之后手动导入到故障盘更换好的新盘上进行up起来
如果osd突然挂,如果你不彻底铲除也有可能会存在pg down的情况,op卡住了。
1.在到处pg数据时,使用query查看备用副本的所在的osd
ceph pg 7.39 query
2.之后再stop该osd
systemctl stop ceph-osd@x
3.最后开始导数据
#查看是否有数据(此时是看备用副本上的osd)
ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-x?--pgid x?--op list --no-mon-config
#导出
ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-x? --pgid x --op export --file xxx --no-mon-config
#导入(导入到更换的新盘上)
ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-x?--pgid x? --op import --file xxx --no-mon-config
#将pg状态标记回完成
ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-x?--pgid x --op mark-complete --no-mon-config
4.注意找不到数据的,标记删除
ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-x?--pgid x --op remove ?--force
ceph pg xxx mark_unfound_lost revert | delete
revert: 将object revert到之前的版本(单副本运行期间写入的数据会丢失)
delete: 将object 删除