扩容

添加OSD

备份ceph.conf文件

登录至 osd 节点;

mv /etc/ceph/ceph.conf /etc/ceph/ceph.conf.bak`date +%Y%m%d%H%M`

清空数据盘

登录至 ceph admin 节点
这里的hostname是指ceph osd 节点的hostname;
sdx是指该节点需要作为osd的设备。

ceph-deploy disk zap  $hostname:$sdx

添加osd

在admin节点/home/ceph_cluster目录中执行
这里的hostname是指ceph osd 节点的hostname;sdx是指该节点需要作为osd的设备。

ceph-deploy osd create $hostname:$sdx

将OSD添加到ceph crushmap

根据osd在主机上的分布情况,将其添加到ceph集群的crushmap中,在admin节点执行下述命令。
ID是osd号,WEIGHT是权重,POOL是pool域(这里为sas_root),RACK是rack域(这里是sas_rack01),HOST为host域

ceph osd crush add $ID $WEIGHT pool=$POOL rack=$RACK host=$HOST

中止

ceph osd set norebalance
ceph osd set nobackfill
ceph osd set norecover

crushmap备份编辑

获得默认 crushmap (加密)      [ ceph osd getcrushmap -o crushmap.dump ]
备份当前 crushmap  [ cp  crushmap.dump crushmap.dump_20151218  <- 备份这个当前 crush map ]
转换crushmap 格式(加密格式 -> 明文)  [ crushtool -d crushmap.dump -o crushmap.txt ]
转换 crushmap 格式(明文 -> 加密格式)   [ crushtool -c crushmap.txt -o crushmap.done ]
重新使用新 crushmap  [ ceph osd setcrushmap -i crushmap.done ]