分布式存储ceph——(3)ceph 添加/删除osd

2019-08-08  本文已影响0人  WickJohn

一、添加osd:

当前ceph集群中有如下osd,现在准备新添加osd:

image.png

(1)选择一个osd节点,添加好新的硬盘:

(2)显示osd节点中的硬盘,并重置新的osd硬盘:

列出节点磁盘:ceph-deploy disk list rab1

擦净节点磁盘:ceph-deploy disk zap rab1 /dev/sbd(或者)ceph-deploy disk zap rab1:/dev/vdb1

(3)准备Object Storage Daemon:

ceph-deploy osd prepare rab1:/var/lib/ceph/osd1

(4)激活Object Storage Daemon:

ceph-deploy osd activate rab1:/var/lib/ceph/osd1

image

二、删除osd:

现在要将 rab1中的 osd.4 删除:

image.png

(1)把 OSD 踢出集群

ceph osd out osd.4

(2)在相应的节点,停止ceph-osd服务

systemctl stop ceph-osd@4.service

systemctl disable ceph-osd@4.service

image.png

(3)删除 CRUSH 图的对应 OSD 条目,它就不再接收数据了

ceph osd crush remove osd.4

image.png

(4)删除 OSD 认证密钥

ceph auth del osd.4

(5)删除osd.4

ceph osd rm osd.4

image.png

三、ceph osd故障硬盘更换

正常状态:

image.png

故障状态:

image.png image.png

实施更换步骤:

(1)关闭ceph集群数据迁移:

osd硬盘故障,状态变为down。在经过mod osd down out interval 设定的时间间隔后,ceph将其标记为out,并开始进行数据迁移恢复。为了降低ceph进行数据恢复或scrub等操作对性能的影响,可以先将其暂时关闭,待硬盘更换完成且osd恢复后再开启:

for i in noout nobackfill norecover noscrub nodeep-scrub;do ceph osd set $i;done

(2)定位故障osd

ceph osd tree | grep -i down

(3)进入osd故障的节点,卸载osd挂载目录

[root@node3 ~]# umount /var/lib/ceph/osd/ceph-5

(4)从crush map 中移除osd

[root@node1 ~]# ceph osd crush remove osd.5

removed item id 5 name 'osd.5' from crush map

image.png

(5)删除故障osd的密钥

[root@node1 ~]# ceph auth del osd.5

updated

(6)删除故障osd

[root@node1 ~]# ceph osd rm 5

removed osd.5

image.png

(7)更换完新硬盘后,注意新硬盘的盘符,并创建osd

image.png

(8)在部署节点,切换为cent用户,添加新的osd

[cent@deploy ceph]$ ceph-deploy osd create --data /dev/sdd node3

image.png

(9)待新osd添加crush map后,重新开启集群禁用标志

for i in noout nobackfill norecover noscrub nodeep-scrub;do ceph osd unset $i;done

ceph集群经过一段时间的数据迁移后,恢复active+clean状态

image.png image.png
上一篇 下一篇

猜你喜欢

热点阅读