1.检查pg对应的哪三个osd
$ceph -w
$ceph osd find #查找第一个primary的osd
2.停止osd服务
$systemctl stop ceph-osd@OSD_ID
3.查看pg 1.1主副本里面的对象数,假设主本对象数多,则到主本所在osd节点执行
$ ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-0/ --journal-path /var/lib/ceph/osd/ceph-0/journal --pgid 1.1 --op export --file /home/pg1.1
4.将/home/pg1.1 scp到副本所在节点(有多个副本,每个副本都要这么操作),然后到副本所在节点执行
$ ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-1/ --journal-path /var/lib/ceph/osd/ceph-1/journal --pgid 1.1 --op import --file /home/pg1.1
5.mark complete
$ ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-1/ --journal-path /var/lib/ceph/osd/ceph-1/journal --pgid 1.1 --op mark-complete
6.最后启动osd
$ systemctl start ceph-osd@OSD_ID
请珍惜劳动成果,支持原创,欢迎大家交流,谢谢。欢迎点赞或者关注收藏,你每一次的点赞和收藏都是作者的动力,内容如有问题请私信随时联系作者,谢谢!
本文详细介绍了在Ceph集群中进行OSD数据迁移的具体步骤,包括检查PG对应的OSD、停止OSD服务、导出并导入PG数据、标记完成及重启OSD服务等关键流程。
3301





