關於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}