
sheepdog是一个专门为qemu设计的虚拟机分布式文件系统,采用完全对称的结构,没有元数据服务的中心节点,因此免除了单点故障的隐患.本文基于最新的0.8.2版本测试,介绍sheepdog的安装配置和使用,测试过的,应该是可以使用的,有什么问题,随时联系hj198708706@163.com
sheepdog的后端集群管理用于管理节点间的成员关系和消息通讯.目前可使用四种模式,分别是local driver(用于单机测试),corosync (默认), zookeeper and Accord.
分为两种模型:
– 全对称 (依赖 Corosync ,运行于 Sheepdog 的地址空间)
● 缺点:规模小 [<100]
● 优点:无需配置
– 单独的控制集群 (依赖 Accord* 或者 Zookeeper ,运行于独立地址空间)
● 缺点:需要配置控制集群
● 优点:规模大 [>1000]
本测试使用的就是默认的Corosync模式.
先做一些系统设置
安装epel源
centos6自带的版本过旧,我们需要安装新版
启动服务
sheepdog要求/var/lib/sheepdog目录所在的分区支持xattr

以上操作需要在每一台sheepdog节点执行
式化sheepdog集群并设置3个副本,只需要在其中一台节点执行,看看使用几个节点,如果只有一个节点的话,就将--copies=1,否则会出错。
查看节点状态
至此sheepdog集群已经配置完毕
由于centos6自带的qemu1.2版本并不支持sheepdog,这里要编译新版的qemu.
安装依赖的包
yum install zlib-devel glib2-devel -y编译qemu,最好用最新的,make的时间可能比较长。
git clone git://git.qemu.org/qemu.git cd qemu ./configure make make install创建磁盘
如果sheepdog运行在其他机器上,需要指定IP和端口
列出sheepdog里的镜像
将现有的镜像转换到sheepdog里
快照创建后查看镜像列表
用快照启动虚拟机
此命令会关闭所有节点的进程
4) 在libvirt文件中使用
提供一个完成的配置文件,qxl,spice,virtio的:
我的有两个node 分别是: 10.1.82.113 和10.1.82.119
有一个vdi文件是:MyFirstDisk3(虚拟机镜像)
通过下面的配置文件即可运行。sheepdog
<domain type=kvm> <name>win7-32</name> <vcpu>2</vcpu> <cpu> <topology sockets=1 cores=2 threads=1/> </cpu> <clock offset=localtime/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <memory>2048576</memory> <os> <smbios mode=sysinfo/> <type arch=x86_64>hvm</type> <boot dev=hd/> </os> <sysinfo type=smbios> <bios> <entry name=vendor>XXXX</entry> <entry name=version>6.2</entry> <entry name=date>2011-12</entry> <entry name=release>10</entry> </bios> <system> <entry name=manufacturer>XXXX</entry> <entry name=version>6.2</entry> <entry name=product>NKVS</entry> <entry name=family>NKSCLOUD</entry> </system> </sysinfo> <devices> <emulator>/usr/libexec/qemu-kvm</emulator> <span style="color:#FF0000;"> <disk type="network" device="disk"> <driver name="qemu" type="raw" /> <source protocol=sheepdog name="MyFirstDisk3"> <host name="10.1.82.113" port="7000"/> <host name="10.1.82.119" port="7000"/> </source> <target dev="vdb" bus="virtio" /> </disk> </span> <intece type=bridge> <source bridge=virbr0/> <mac address=02:00:0a:01:53:a9/> <model type=virtio/> </intece> <graphics type=spice listen=0.0.0.0 port=30006> <mouse mode=server/> </graphics> <video> <model type=qxl vram=65536 heads=1/> </video> <controller type=virtio-serial index=0/> <channel type=spicevmc> <target type=virtio name=com.redhat.spice.0/> </channel> <sound model=ich6/> <input type=tablet bus=usb/> </devices> <features> <pae/> <acpi/> <apic/> </features> </domain>
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-49631-1.html
建议先不升