您的位置:首页 > 其它

Ceph使用块设备完整操作流程

2016-06-13 15:28 651 查看
Ceph使用块存储,系统内核需要3.0及以上的内核,以支持一些ceph模块。
创建块的时候可以指定类型(type1和type2),只有type2的可以对快照进行保护,保护以后才能做克隆。

使用块设备完整操作流程:
1、创建块设备(单位是M)
rbd create yjk01 --size 1024 --pool vms--image-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/rbdmap有bug),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


本文出自 “生命不息,奋斗不止!” 博客,请务必保留此出处http://linuxnote.blog.51cto.com/9876511/1788682
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: