1. 清除状态

根据参考链接 1 ,如果想要硬盘可以加入作为 OSD ,必须满足以下所有条件,才认为设备可用:

  • ​设备必须没有分区。
  • 设备不得具有任何 LVM 状态。
  • 不得安装设备。
  • 设备不得包含文件系统。
  • 设备不得包含 Ceph BlueStore OSD。
  • 设备必须大于 5 GB。

首先,可以分别执行如下命令查看当前块设备和 OSD 的绑定情况

1
2
3
lsblk      // 查看当前机器的块设备
pvdisplay // 查看物理卷
vgdisplay // 查看逻辑卷

当查看得到具体的物理卷信息和逻辑卷信息后,依次通过如下示例命令进行删除修改(先删除 vg 再删除 pv),需要确认直接 y 即可

1
2
vgremove ceph-bd47920b-c785-4e00-96ff-cdc207b18b52 
pvremove /dev/nvme0n1 /dev/nvme1n1 /dev/sda /dev/sdb

最后再运行 lsblk 命令查看下是否已经全部清除即可。

2. 重新加入集群

由于我这边集群是源码编译的,因此可以直接运行 ceph-volume 命令将其加入,示例代码如下(–data 后跟对应的块设备名称)

1
ceph-volume --cluster ceph lvm create --data /dev/sda

如没有报错即可加入。

Reference

  1. Ubuntu 20.04 LTS 使用 cephadm 部署 ceph octopus 实验记录 - Varden - 博客园 (cnblogs.com)
  2. 技术|什么是逻辑分区管理 LVM ,如何在Ubuntu中使用? (linux.cn)
  3. 如何在 Ubuntu 中管理和使用逻辑卷管理 LVM_Linux教程​
  4. 挂载硬盘,提示 mount: unknown filesystem type 'LVM2_member’的解决方案 - 553490191 - 博客园 (cnblogs.com)
  5. [BUG] Error: default OCI runtime “runc” not found: invalid argument · Issue #8227 · containers/podman (github.com)