如何使用 vmbuilder 创建和导出 vmware 映像

如何使用 vmbuilder 创建和导出 vmware 映像

我一直在使用 vmbuilder 来构建 kvm 映像,如下所示:

vmbuilder kvm ubuntu \
    -v \
    --suite=precise \
    --libvirt=qemu:///system \
    --arch=amd64 \
    --cpus=2 \
    --mem=1024 \
    --swapsize=1024 \
    --rootsize=10240 \
    --flavour=server \
    --hostname=hostnamehere \
    --ip=X.X.X.X \
    --mask=X.X.X.X \
    --net=X.X.X.X \
    --bcast=X.X.X.X \
    --gw=X.X.X.X \
    --dns='X.X.X.X X.X.X.X' \
    --bridge=br0 \
    --mirror=http://archive.ubuntu.com/ubuntu \
    --components='main,universe' \
    --addpkg=openssh-server,acpid \
    --user=username \
    --pass=password \
    --dest=/vmname \
    --tmpfs=-

然而最近我收到一个构建 VMWare 映像的请求,尽管我过去曾使用多个 VMWare 工具完成此操作,但我最近读到这也可以使用 vmbuilder 来实现,我该如何创建一个可以提供给客户并且他可以导入到 VMWare 的 vmware 映像呢?

另外,我还需要向映像添加第二个磁盘,如何添加另一个 vmdk?

答案1

虽然有脚本可以转换它们,但我不相信它们,所以我将在这里向你展示手动路线


最简单的方法是直接使用 QEMU。关闭客户机,然后运行命令qemu-img -O vmdk /path/to/guest/disk /path/to/new/disk.vmdk来转换磁盘格式(见下文)。

接下来,使用virsh dumpxml vmname转储出客户的 XML 描述。

现在,在 vSphere Client 中创建新的 VM 时,只需尝试使硬件至少尽可能接近 XML,而不必创建新的磁盘映像,只需添加qemu-img上述命令生成的 vmdk 即可。

这应该可以满足你的要求


qemu 版本问题

在 Ubuntu 12.04 上运行这些命令将给你带来无数令人困惑的版本问题。根据我的经验,1.5.3 给出了良好的结果。按照说明这里(显然要改变顺序和命令来适应你的情况),如果你遇到困难的话。

相关内容