ceph 创建和删除osd

Posted 多看多学多记多实践

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ceph 创建和删除osd相关的知识,希望对你有一定的参考价值。

ceph 创建和删除osd

1、概述
        本次主要是使用ceph-deploy工具和使用ceph的相关命令实现在主机上指定磁盘创建和删除osd,本次以主机172.16.1.96(主机名hadoop96)为例,此主机系统盘为/dev/sda, 其他盘有/dev/sdb、/dev/sdc和/dev/sdd,这几个盘都是裸磁盘,目的是使用这几个盘的组合创建osd。
        磁盘情况如下图:
       
2、创建osd
        使用ceph-deploy(工具安装在hadoop95上)创建osd,这里创建两个osd,其中一个数据和日志在同一个磁盘上,另外的osd日志被独立到另一个盘。
        1)数据和日志在同一个磁盘上
        执行ceph-deploy  osd create hadoop96:/dev/sdb,然后在hadoop96上查看如下图:
       
        进入/var/lib/ceph/osd/ceph-4目录查看
          
        如上图可知日志目录被链接到/dev/disk/by-partuuid/17f23e99-13dc-4a15-827b-745213c5c3dd,我们查看/dev/disk/by-partuuid/17f23e99-13dc-4a15-827b-745213c5c3dd,如下图:
       
        说明/dev/sdb2被作为日志的分区使用,所以新创建的osd.4默认数据和日志都在同一个磁盘/dev/sdb上不同分区。
        2)osd日志被独立到另一个盘
        执行ceph-deploy  osd create hadoop96:/dev/sdc:/dev/sdd,然后在hadoop96上查看如下图:
       
        进入/var/lib/ceph/osd/ceph-5目录查看
       
         如上图可知日志目录被链接到/dev/disk/by-partuuid/96eb886f-4095-4cb4-90fc-2976a8869cc1,我们查看/dev/disk/by-partuuid/96eb886f-4095-4cb4-90fc-2976a8869cc1,如下图:
        
        说明/dev/sdd1被作为日志的分区使用,所以新创建的osd.5数据在/dev/sdc1,而日志则独立在另一个磁盘的分区/dev/sdd1。
3、删除osd
        删除上面创建的osd。
        1)数据和日志在同一个磁盘上的osd
        将osd.4踢出集群,执行ceph osd out 4
           
        停止此osd进程,执行systemctl stop ceph-osd@4
       
        然后执行:ceph osd crush remove osd.4,此时osd.4已经不再osd tree中了
       
        执行ceph auth del osd.4 和 ceph osd rm 4, 此时删除成功但是原来的数据和日志目录还在,也就是数据还在
       
        此时我们将/dev/sdb1磁盘umount,然后将磁盘进行擦除那么数据就会被完全删除了,执行umount /dev/sdb,然后执行ceph-disk zap /dev/sdb
       
        这时/dev/sdb又成为裸磁盘了,也就相当于彻底删除了osd.4。
        2)删除日志被独立到另一个盘的osd
        执行步骤和之前类似。
        将osd.5踢出集群,执行ceph osd out 5
       
        停止此osd进程,执行systemctl stop ceph-osd@5
       
        然后执行:ceph osd crush remove osd.5,此时osd.5已经不再osd tree中了
       
        执行ceph auth del osd.5和 ceph osd rm 5, 此时删除成功但是原来的数据和日志目录还在,也就是数据还在
       
        此时我们将/dev/sdc1磁盘umount,然后将磁盘进行擦除那么数据就会被完全删除了,执行umount /dev/sdc1,然后执行ceph-disk zap /dev/sdc      
       
        这时/dev/sdc又成为裸磁盘了,也就相当于彻底删除了osd.5,但是原来作为日志的分区/dev/sdd1还在,此时如果sdd有多个分区作为其他osd的日志分区那么就不能擦除/dev/sdd盘,但是此时/dev/sdd1分区已经没有被osd使用了所以再创建osd时要记得再利用,目前我觉得只能这样。

以上是关于ceph 创建和删除osd的主要内容,如果未能解决你的问题,请参考以下文章

ceph 创建和删除osd

ceph 删除osd的一些问题

Ceph集群块设备使用-创建和使用OSD

ceph 指定OSD创建pool

CEPH之osd批量创建

ceph修复osd为down的情况