如何在xVM克隆基于ZFS的domain

如果你正在使用ZFS作为根文件系统,你就能利用其snapshot快照机制迅速克隆出相同配置的domain。通过对其根磁盘分区进行克隆,你就能轻松地得到多个相似的domain,而它们的主要差别仅仅是使用的存储空间不同而已。本文将介绍如何利用ZFS的clone技术来创建新的 domain。

首先,我们需要关闭正在运行的domain才能进行克隆,以保持硬盘快照的一致性,命令如下:
xm shutdown -w dom1
当然,你也可以在domain中运行sys-unconfig命令使新的克隆从重新配置开始。
完成以上操作后,我们就可以使用命令zfs snapshot pool/dom1-root@clone
为dom1的根磁盘分区创建一个快照了,再使用命令zfs clone pool/dom1-root@clone pool/dom2-root来克隆一个可写的snapshot快照。
这时如果你使用zfs list命令,应该能看见新创建的snapshot及clone。接下来,我们需要复制dom1的配置文件。使用如下命令将配置文件copy到一个新的文件:
virsh dumpxml domain1 >domain1.xml
cp domain1.xml domain2.xml
对copy的配置文件,至少需要作三处改变。
首先,你需要为克隆的domain重命名,若想命名为dom2,则将<name>dom1</name>更改为<name>dom2</name>即可;
其次,你需要删除UUID这一行,从而让virsh为domain生成一个新的配置文件。删除的部分如下:
<uuid>78cd98b5e7ab16594fa0cf1260826571</uuid>
接下来,我们需要为domain指定新的磁盘分区:
<source dev='/dev/zvol/dsk/export/dom1-root'/>更改为<source dev='/dev/zvol/dsk/export/dom2-root'/>
最后,告诉virsh新domain的存在。
virsh define domain2.xml
这时候,你就可以启动自己克隆的domain了。

This entry was posted in Solaris, 虚拟化 and tagged , , . Bookmark the permalink.

发表评论

您的电子邮箱不会被公开。 标记为 * 的区域必须填写

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>