Ceph使用塊設備完整操作流程

Ceph使用塊存儲,系統內核需要3.0及以上的內核,以支持一些ceph模塊。

創建塊的時候可以指定類型(type1type2),只有type2的可以對快照進行保護,保護以後才能做克隆。

 

使用塊設備完整操作流程:

1、創建塊設備(單位是M)

rbd create yjk01 --size 1024 --pool vms--p_w_picpath-format 2
rbd info yjk01 --pool vms
rbd map yjk01 --pool vms
rbd showmapped
mkfs.ext4 /dev/rbd0
mount /dev/rbd0 /mnt

 

2、自動掛載

先寫入fstab(blkid查看相應磁盤的UUID)

UUID=        /mnt        ext4   defaults,noatime,_netdev       0  0

再添加以下內容到/etc/rc.local

rbd map yjk01 --pool vms
mount -a

 

3、塊擴容

rbd resize vms/yjk01 --size 2048
resize2fs /dev/rbd0

 

4  塊刪除

umount /dev/rbd0

刪除/etc/ceph/rbdmap/etc/fstab/etc/rc.local中的相關內容

rbd unmap /dev/rbd0
rbd rm yjk01 --pool vms

 

只有先map後才能掛載,重啓後不會自動map(/etc/init.d/rbdmapbug)fstab啓動的優先級高於自動map的優先級

以下腳本可以確保系統重啓的時候不會卡死,以及開機正常自動掛載塊設備。

腳本要做以下操作:

# cp auto_unmap /etc/rc.d/init.d/
# chmod +x /etc/rc.d/init.d/auto_unmap
# chkconfig --add auto_unmap
# chkconfig auto_unmap on


內容

#!/bin/bash
#
#
# chkconfig: 02345  99 1
# Description:          delete all service pid and lockfile
#
#######################readme#########################################
# cp auto_unmap /etc/rc.d/init.d/
# chmod +x /etc/rc.d/init.d/auto_unmap
# chkconfig --add auto_unmap
# chkconfig auto_unmap on
#######################readme#########################################
function action_start () {
echo 'automap_info_in_rc.local'
}
function action_stop () {
mount_devices=`rbd showmapped|sed '2,$p' -n|awk '{print $5}'`
for i in $mount_devices
do
umount $i
rbd unmap $i
done
}
case "$1" in
start)
;;
stop)
action_stop
echo 'Auto-unmap is OK'
;;
status)
;;
*)
echo "Usage: $0 {start}"
        exit 1
esac


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章