使用libguestfs在KVM上轻松创建虚拟机模板

日期: 2014-10-13 作者:Sander van Vugt翻译:张冀川 来源:TechTarget中国 英文

Linux KVM推出libguestfs已经有一段时间了。最初是作为挂载虚拟机镜像文件的工具,现在已经是一个使用virt-sysprep工具提供几种不同功能的工具集。 如果想轻松部署虚拟机,那么模板是一个很有用的工具。为配置模板,需要从虚拟机中删除所有与系统相关的属性。

Linux与系统相关的特性包括SSH主机密钥、网络配置(尤其是和MAC地址相关的配置)以及用户账号。virt-sysprep工具能够搞定这一切而且可以对虚拟机进行定制。 目前virt-sysprep只能用于Linux环境。如果想使用Windows系统,那么可以使用Windows sysprep.exe工具。

virt-syspr……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

Linux KVM推出libguestfs已经有一段时间了。最初是作为挂载虚拟机镜像文件的工具,现在已经是一个使用virt-sysprep工具提供几种不同功能的工具集。

如果想轻松部署虚拟机,那么模板是一个很有用的工具。为配置模板,需要从虚拟机中删除所有与系统相关的属性。Linux与系统相关的特性包括SSH主机密钥、网络配置(尤其是和MAC地址相关的配置)以及用户账号。virt-sysprep工具能够搞定这一切而且可以对虚拟机进行定制。

目前virt-sysprep只能用于Linux环境。如果想使用Windows系统,那么可以使用Windows sysprep.exe工具。virt-sysprep以后发行的版本已经将支持Windows操作系统列入了开发计划。

可以通过KVM主机访问virt-sysprep并用来修改客户虚拟机的磁盘镜像。最好将虚拟机设置为模板虚拟机而不是使用现有虚拟机,因为该工具会移除与虚拟机相关的配置与信息。如果在使用现有虚拟机,一定要意识到virt-sysprep将会移除计划保留的现有内容,因此应该先创建虚拟磁盘文件的备份、快照或者克隆虚拟机。

Libguestfs的virt-sysprep工具并非只能用于移除虚拟机磁盘镜像文件的文件与配置。KVM虚拟机的特定信息存储在两个不同的部分,libvirt XML代码包含如下信息,比如名字、UUID、块设备的路径以及网卡MAC地址。磁盘镜像同样存储其他信息,包括主机名、网络配置、UUID以及SSH主机密钥。

使用virt-sysprep功能选项


默认情况下,在使用virt-sysprep时整个系统已经为系统镜像做好了准备。在使用virt-sysprep时,可以选择打算使用的特定功能选项。使用命令virt-sysprep --list-operations可以获取当前版本提供的所有操作命令,其中已启用的操作用星号标记。如果想改变默认配置,可以在--operations-后追加想使用的所有操作选项。

通常并不需要更改太多,默认的功能选项会移除与虚拟机相关的所有配置。除网络配置外,将执行命令历史记录、定时任务、日志文件以及其他典型的使用痕迹删除掉也是非常重要的。

使用libguestfs的virt-sysprep工具清理完虚拟机后,可能需要增加一些新配置。通过使用--firstboot选项执行脚本可以很方便地增加新配置,这基本上和全新安装Linux后执行的操作步骤没什么差别。virt-sysprep默认会移除所有的首次引导信息。如果想在虚拟机上运行首次引导,那么在使用virt-sysprep工具执行shell脚本时可以使用--firstboot选项。

翻译

张冀川
张冀川

TechTarget中国特约专家,任职于某国企信息中心,负责数据中心硬件基础设施及信息系统运维管理工作,对虚拟化及云计算技术有浓厚兴趣,并在工作中积极应用

相关推荐