KVM虚拟化开源高可用方案sheepdog
2012-09-03 15:06:58 来源:WEB开发网 Sheepdog是为kvm虚拟化量身定做的分布式文件系统,针对kvm系统做了深入的优化,是kvm虚拟化分布式文件系统的终极解决方案,目前版本0.4,如果要在生产环境中使用,还有很多工作要做,需要等待更成熟的版本发布。
说明:
设计目的:
1. 集群设计虚拟机容量70-100台,占用1个机柜,全部由1U服务器组成,每台服务器6台,300G*8;
sheepdog集群架构:
1. 组成,存储服务器通过哈希算法,可以弹性增加或者减少,并实现冗余;
2. 存储服务器每台机器至少需要4块网卡,如果机器只有板载的2块网卡,需要在加1块双口网卡,做4块网卡的绑定,这样可以提高网络带宽;
3. 每台服务器是存储节点也是计算节点;
sheepdog集群搭建:
注意事项:本文介绍在centos 6.3的安装,如果要使用libvirt需要在在fedora17上安装。
1 安装
安装epel源
rpm -Uvh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-7.noarch.rpm
yum install corosynclib-devel
如果是centos6.x 需要先卸载corosync,因为系统携带的版本过旧
yum remove corosync corosynclib corosynclib-devel
需要源代码安装
yum install nss-devel -y
git clone git://github.com/corosync/corosync.git
cd corosync
git checkout -b flatiron origin/flatiron
./autogen.sh
./configure --enable-nss
make install
修改corosync配置文档
# Please read the corosync.conf 5 manual page
cat << EOF >/etc/corosync/corosync.conf
compatibility: whitetank
aisexec {
user: root
group: root
}
service {
name: pacemaker
ver: 0
}
totem {
version: 2
secauth: off
threads: 0
interface {
ringnumber: 0
bindnetaddr: 你的ip网段,比如192.168.1.0
mcastaddr: 226.94.1.1
mcastport: 5405
ttl: 64
}
}
logging {
fileline: off
to_stderr: no
to_logfile: yes
to_syslog: no
logfile: /var/log/cluster/corosync.log
debug: off
timestamp: on
logger_subsys {
subsys: AMF
debug: off
}
}
amf {
mode: disabled
}
EOF
service corosync restart
安装最新的qemu
git clone git://git.sv.gnu.org/qemu.git
cd qemu
./configure
make install
cd ..
安装sheepdog
源代码安装
rpm -Uvh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-7.noarch.rpm
yum install userspace-rcu-devel -y
cd /root
git clone git://github.com/collie/sheepdog.git
cd sheepdog
./autogen.sh
./configure
make install
cd ..
安装最新的libvirt(需要比较新的内核支持)
yum install device-mapper-devel -y
yum install python-devel -y
yum install libnl-devel -y
yum install lib-xml2 -y
yum install -y gnutls-devel
git clone git://libvirt.org/libvirt.git
cd libvirt
./autogen.sh
make
make install
2 使用
mkdir -p /var/lib/sheepdog
需要有个块设备或者分区供sheepdog使用,这里是一个lv
mount /dev/vg_datap/lv_for_sheep /var/lib/sheepdog
启动服务
/etc/init.d/sheepdog start
或者
sheep /var/lib/sheepdog
/var/lib/sheepdog是sheepdog的存储位置,这个目录必须是xattr ext3 ext4格式之一
增加一个用户给sheepdog使用
- ››KVM虚拟化开源高可用方案sheepdog
- ››KVM虚拟化linux系统模版制作步骤
- ››开源平台Meego和Android之间的对弈
- ››开源的Kingthy.Mail邮件组件库
- ››开源飞信Openfetion最新发布v1.8版
- ››开源重复数据删除技术纵览
- ››开源的 iPhone 杀手终于到来
- ››开源有优势:Android首超Windows Mobile
- ››开源只不过是个幌子 揭示 Android 的真面目
- ››开源面向对象数据库 db4o 之旅,第 1 部分: 初识 ...
- ››开源面向对象数据库 db4o 之旅,第 2 部分: db4o ...
- ››开源面向对象数据库 db4o 之旅,第 3 部分: 深入d...
更多精彩
赞助商链接