一、问题说明
有一个集群原理装过ceph,后来应为系统崩溃,重装了系统,所以ceph已经不存在了。我查看了/var/lib目录,/etc目录,确实没用ceph的文件(重装了当然没有)。
现在的问题是查看块设备 lsblk 发现有磁盘被占用,和正常装ceph时候一样,要重新使用这块硬盘需解决此问题。
lsblk -f命令可以查看块设备的文件系统,如图,被占用的sdb没用文件系统。
lsblk -l可以查看块设备的类型。
- NAME:块设备名
- MAJ:MIN:本栏显示主要和次要设备号
- RM:显示可移动设备。0表示非移动设备,1表示可移动设备
- SIZE:块设备的空间大小
- RO:是否只读,0表示非只读,1表示只读
- TYPE:块设备类型,比如disk磁盘,part分区,lvm逻辑卷,rom只读存储
- MOUNTPOINT:设备挂载点
如果新插一个磁盘,它的type应该是disk,且没有文件系统。现在sdb的type是lvm-逻辑卷,意思是划分给了ceph,但是没用挂载点。
要解决此问题应该要格式化磁盘
二、解决问题
[root@cslave2 dev]# mkfs.xfs /dev/sdb
mkfs.xfs: cannot open /dev/sdb: Device or resource busy
格式化报错,设备被占用,查此问题,发现一篇博客和我们遇到同样的问题,以前装过ceph的机器显示磁盘被占用。
参考博客
解决方法:
dmsetup ls 查看谁在占用,找到ceph-**字样(ceph-**为lsblk显示的块设备具体信息)
[root@cslave2 dev]# dmsetup ls
centos00-home (253:3)
centos00-swap (253:1)
centos00-root (253:0)
ceph--a56518ac--089c--4567--8000--7084c8fe9624-osd--block--ca074b77--a560--434d--86da--f329f21d018e (253:2)
使用dmsetup 删除字样
dmsetup remove ceph-**
lsblk 查看设备信息,可以看到ceph-**等标识等标识消失
[root@cslave2 dev]# dmsetup remove ceph--a56518ac--089c--4567--8000--7084c8fe9624-osd--block--ca074b77--a560--434d--86da--f329f21d018e
[root@cslave2 dev]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 1.8T 0 disk
├─sda1 8:1 0 500M 0 part /boot
└─sda2 8:2 0 1.8T 0 part
├─centos00-root 253:0 0 50G 0 lvm /
├─centos00-swap 253:1 0 31.4G 0 lvm [SWAP]
└─centos00-home 253:3 0 1.8T 0 lvm /home
sdb 8:16 0 1.8T 0 disk
sdc 8:32 0 279.4G 0 disk
闹了半天,结果发现根本不用也不能格式化磁盘,直接dmsetup remove 占用的设备 就行。
dmsetup https://www.cnblogs.com/yanling-coder/p/12971951.html。所以问题的原因是sdb以前被分给了一个逻辑卷,重装系统后这个信息没被清除,所以清除就行。
在这篇博客最后,看到ceph.conf详解,关于OSD可以设置格式化文件系统类型
osd mkfs type= xfs #格式化系统类型
https://blog.csdn.net/qq_37242520/article/details/108101060?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2aggregatepagefirst_rank_v2~rank_aggregation-1-108101060.pc_agg_rank_aggregation&utm_term=ceph+%E7%89%88%E6%9C%AC%E7%9A%84%E9%80%89%E6%8B%A9&spm=1000.2123.3001.4430
其他参考:
https://www.cnblogs.com/xd502djj/p/6008463.html
https://blog.csdn.net/yhao2014/article/details/44648199