QEMU后端存储设置之NBD
NBD, network block device, 网络块存储,一个非常轻量,配置非常简单的远程存储,QEMU本身也支持了NBD网络协议。本文将对如何在QEMU虚机中如何使用NBD将进行详细介绍。
正常使用过程中需要进行两部分的设置,服务器端以及客户机端的设置,这也是典型的CS模式应用,当然读者需要这里要将远程块存储同分布式存储分开,NBD仍然属于传统的块设备范畴。
1. 安装 NBD server
sudo apt-get install nbd-server
1) 配置文件如下,包括用户名,用户组,配置文件目录,监听地址,以及对外输出的存储文件,配置选项一目了然,而且也可以发下,NBD在这里其实是用了一个镜像文件作为输出,非常的简单便捷,当然有时候为了更好的性能,需要将分区作为输出路径。
cat etc/nbd-server/config
[generic]
user = nbd
group = nbd
includedir = /etc/nbd-server/conf.d
listenaddr = 10.10.0.241
[export1]
exportname = /data/nbd/disk1.img
更改配置后记得要重新加载配置:
service nbd-server force-reload
2) 配置NBD使用多分区
rmmod nbd
modprobe nbd max_part=8
modprobe nbd
2) 检验NBD已经启动
sudo netstat -tlnp
2 NBD 客户端的设置
2.1 安装文件
sudo apt-get install nbd-client
2.2 连接远程存储
nbd-client 15.244.209.200 -N export1 /dev/nbd0
2.3 断开连接命令
nbd-client -d /dev/nbd0
2.4 步骤1后就可以使用 /dev/nbd0作为一个本地块设备了。
3 直接使用QEMU的NBD协议连接,就不用安装上面的NBD 客户端了
<disk type='network' device='disk'>
<driver name='qemu' type='raw'/>
<source protocol='nbd'>
<host name='s1.ws.nsrc.org' port='20001'/>
</source>
<target dev='hda' bus='ide'/>
<address type='drive' controller='0'... />
</disk>
以上就是整个的NBD设置,可以说非常的简单便捷,让你可以在分钟单位级内为虚拟机建立一个远程存储的实现。