手机版
你好,游客 登录 注册
背景:
阅读新闻

使用Glusterfs作为KVM后端存储

[日期:2013-08-20] 来源:oschina.net  作者:kisops [字体: ]

摘要:Glusterfs已经发布到3.4版本了,据称红帽针对vm储存做了优化使其更适合用于虚拟化存储.本文测试使用Glusterfs作为kvm后端存储,通过直接调用glustefs-api,绕过fuse访问虚拟机镜像,避免了fuse带来的性能损耗。

相关阅读:

Glusterfs集群文件系统研究 http://www.linuxidc.com/Linux/2011-12/50579.htm

创建Glusterfs分布式RAID10卷 http://www.linuxidc.com/Linux/2011-12/50580.htm

Glusterfs 3.4 Beta 发布,集群文件系统 http://www.linuxidc.com/Linux/2013-05/84056.htm

Glusterfs Rebalance简析 http://www.linuxidc.com/Linux/2013-08/89104.htm

设计新Xlator扩展GlusterFS http://www.linuxidc.com/Linux/2013-08/89105.htm

1.测试环境
CentOS6.4 x86-64

gluster-3.4

qemu-1.5.2

机器:

192.168.1.100:glusterfs+kvm

192.168.1.101-103:glusterfs

2.Glusterfs存储集群部署
先部署好glusterfs集群,部署教程参考这里 http://www.linuxidc.com/Linux/2013-08/89107.htm

gluster集群部署完毕后,创建一个volume用于存放vm镜像

gluster volume create vm-images stripe 2 replica 2  192.168.1.{100,101,102,103}:/data/vm-images
gluster volume start vm-images3.虚拟化机器上安装qemu
centos6自带的qemu1.2版本并不支持glusterfs,这里要编译新版的qemu.

安装qemu前先装上glusterfs-devel

1 rpm –ivh http://download.gluster.org/pub/gluster/glusterfs/3.4/3.4.0/CentOS/epel-6Server/x86_64/glusterfs-devel-3.4.0-8.el6.x86_64.rpm安装依赖的包

1 yum install zlib-devel glib2-devel -y开始编译qemu,加上参数--enable-glusterfs

1 wget http://wiki.qemu-project.org/download/qemu-1.5.2.tar.bz2
2 tar jxvf qemu-1.5.2.tar.bz2
3 cd qemu-1.5.2
4 ./configure --enable-glusterfs  #这里加上enable-glusterfs
5 make;make install4.使用
环境安装完毕,使用qemu-img创建一个虚拟机磁盘

1 /usr/local/bin/qemu-img create -f qcow2 gluster://192.168.1.100/vm-images/disk1 10G创建一个虚拟机

qemu-system-x86_64 --enable-kvm -m 1024 -drive file=gluster://192.168.1.100/vm-images/disk1 -vnc :15 -cdrom /data/CentOS-6.4-i386-minimal.iso现在可以使用VNC连上并安装系统了.

5.后记
qemu连接glusterfs支持多种格式:

gluster://1.2.3.4/testvol/a.img
gluster+tcp://1.2.3.4/testvol/a.img
gluster+tcp://1.2.3.4:24007/testvol/dir/a.img
gluster+tcp://[1:2:3:4:5:6:7:8]/testvol/dir/a.img
gluster+tcp://[1:2:3:4:5:6:7:8]:24007/testvol/dir/a.img
gluster+tcp://server.domain.com:24007/testvol/dir/a.img
gluster+unix:///testvol/dir/a.img?socket=/tmp/glusterd.socket
gluster+rdma://1.2.3.4:24007/testvol/a.img

经过测试发现qemu连接glusterfs是支持高可用的,如gluster://1.2.3.4/testvol/a.img,1.2.3.4宕机将不会影响虚拟机运行.

另外测试过程发现gluster对xfs分区格式兼容性不是太好,会有使用空间大小不正确的现象,解决方法是:

 gluster volume set <volname> cluster.stripe-coalesce enable

linux
相关资讯       GlusterFS 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款