ceph osd 相关命令
混合osd的部署
先部署所有的ssd
在/etc/ceph.conf中最后添加ssd做osd的block大小如下:
比如部署中有兩個(gè)ssd,則添加
[osd.0]
bluestore_block_size = xxxx
[osd.1]
bluestore_block_size = xxx
如上的size大小計(jì)算如下,如ssd容量為800G,默認(rèn)分給hdd的db,wal分別為20G,10G,則:
bluestore_block_size = (800 - 120 - 800*2%) * 1024*1024*1024
-
ssd的分區(qū)劃分
sgdisk -n 1:+2G:+sizeG /dev/sdb //該size為以上(800 - 120)的容量 sgdisk -n 2:0:+20G /dev/sdb #db sgdisk -n 4:0:+10G /dev/sdb #wal -
修改分區(qū)權(quán)限
for i in {1..3};do chmod 660 /dev/sdb$i;chown ceph:ceph /dev/sdb$i;done -
激活第一個(gè)sdd
ceph-disk -v prepare /dev/sdb1 ceph-disk -v activate /dev/sdb1
部署hdd
將db,wal分區(qū)放置在ssd上
ceph-disk -v prepare /dev/sdc --block.db /dev/sdb2 --block.wal /dev/sdb4
ceph-disk -v activate /dev/sdc1
手動(dòng)劃分分區(qū)需要修改udev規(guī)則,來(lái)讓設(shè)備重啟或者插拔盤(pán)觸發(fā)udev規(guī)則之后讓分區(qū)的typecode產(chǎn)生修改并且修改設(shè)備用戶(hù)所屬為ceph以及設(shè)備文件權(quán)限,防止重啟后查找不到udev規(guī)則,從而使用默認(rèn)uuid來(lái)分配設(shè)備文件的屬性導(dǎo)致重啟之后osd無(wú)法起來(lái)。此時(shí)需要手動(dòng)更改如下:
只針對(duì)SSD
sgdisk --typecode=1:4fbd7e29-9d25-41b8-afd0-062c0ceff05d -- /dev/sdbblock分區(qū)sgdisk --typecode=2:30cd0809-c2b2-499c-8879-2d6b78529876 -- /dev/sdbdb分sgdisk --typecode=4:5ce17fce-4087-4169-b7ff-056cc58473f9 -- /dev/sdbwal分區(qū)
查看指定磁盤(pán)udev相關(guān)的uuid
blkid -o udev -p /dev/sdc1
普通OSD的部署
-
創(chuàng)建rule規(guī)則并修改osd 的type
ceph osd crush rule create-simple rule_rep deafult osdceph osd pool create rep_pool 128 128 rule_rep -
移除規(guī)則下的osd
ceph osd crush rm osd.id -
從某個(gè)節(jié)點(diǎn)上移除osd
ceph osd crush rm osd.id $node -
設(shè)置size 和min_size
ceph osd pool set pool_name size xx ceph osd pool set pool_name min_size xx
當(dāng)OSD被踢出集群但是掛載點(diǎn)還在,為osd添加id驗(yàn)證
-
加回認(rèn)證
ceph auth add osd.12 osd 'allow *' mon 'allow rwx' mgr 'allow profile osd' -i /var/lib/ceph/osd/ceph-12/keyring -
添加到host中,如果兩個(gè)host都有的話需要添加兩次
ceph osd crush add osd.15 3.61327 root=hdd_bucket host=host6 -
設(shè)置osd設(shè)備屬性
ceph osd crush set-device-class ssd osd.${num}
測(cè)試OSD壓力
ceph tell osd.id bench
Mark osd 為down
ceph -m $mon:6789 osd down$id
OSD重構(gòu)速度
ceph tell osd.* injectargs '--osd_recovery_sleep=2'
總結(jié)
以上是生活随笔為你收集整理的ceph osd 相关命令的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: ceph 部署单机集群
- 下一篇: 完美音调电影资源