关于Ceph OSD添加操做步骤以下:
node
一、建立一个OSD,即:#ceph osd create [uuid] #若没有uuid参数,则该命令自动生成一个uuid。该命令产生一个新的osd-number。
ui
二、为新的OSD建立默认的工做目录,即:#mkdir -p /var/lib/ceph/osd/ceph-{osd-number}
进程
三、为新的OSD准备一块磁盘。
rem
#mkfs.xfs -f /dev/vde
it
#mount /dev/vde /var/lib/ceph/osd/ceph-{osd-number}
集群
四、初始化新的OSD工做目录。map
#ceph-osd -i {osd-number} --mkfs --mkkey
grep
注意:在执行上述命令前要求新的OSD工做目录必须为空;
top
五、注册新的OSD认证密钥。
di
#ceph auth add osd.{osd-number} osd 'allow *' mon 'allow rwx' -i /var/lib/ceph/osd/ceph-{osd-number}/keyring
六、将新的OSD添加到Crush Map中。
#ceph osd crush add osd.{osd-number} {weight} [{bucketype}={bucket-name}......}
此步骤也能够添加buckets后再添加osd,即:
#ceph osd crush add-bucket node5 host #建立一个名字为node5的bucket
#ceph osd crush move node5 root=default #将建立出来的bucket放到root下
#ceph osd crush create-or-move osd.{osd-number} 1.0 root=default host=node5 #将新的OSD添加到node5下
七、将新的OSD信息填写到ceph.conf中,即:
[osd.{osd-number}]
host = {hostname}
devs = /dev/vde
八、启动新的OSD。即:
#/etc/init.d/ceph start osd.{osd-number}
此时经过集群状态查看命令#ceph -s能够看到OSD数量以及up和in的数量都发生了变化,此时再经过命令#ceph -w能够看到ceph通过peering状态后,最终达到active+clean状态;
关于Ceph OSD删除操做步骤以下:
一、将须要删除的OSD在集群中的状态修改成out状态(以前在集群中是up+in的状态):#ceph osd out osd.3。此时待删除的OSD仍然在集群中运行着,经过集群状态查看命令#ceph -s能够看到当前集群的in的数量比up的数量少一个,少的这一个就是刚才out出去的那个OSD,即:osd.3。
二、中止刚刚out出去的OSD进程:#/etc/init.d/ceph stop osd.3。此时经过集群状态查看命令#ceph -s能够看到当前集群的in和up的数量是同样的,比以前减小了一个。经过ps ax | grep "ceph"也能够在系统中查看到运行的ceph-osd少了一个。
三、将删除的OSD从crush map中删除:
#ceph osd crush remove osd.3 #删除指定的OSD
#ceph osd crush remove node6 #删除OSD所在的bucket(此步骤能够不作)
四、清除到OSD的认证密钥。
#ceph auth del osd.3
五、在OSD Map中清除OSD。
#ceph osd rm 3
此时经过ceph集群状态查看命令#ceph -s能够看到此时的osd总数已是正确的了;
六、从ceph.conf中清除OSD
[osd.3]
host = {hostname}