使用VMware的模板和克隆来提供Linux服务器而不是PXE的意义

使用VMware的模板创build新的虚拟机似乎有速度的好处。 但是,我担心可能不那么明显的安全性和灵活性。 例如:

  • 首先引导生成密钥
  • VMware专有的configuration服务器设置的方法(IP,主机名等)

在一个几乎完全是VMware的商店里,大部分的Linux都是基于RHEL的发行版,在从模板configuration时有没有人遇到过一些陷阱? 克隆时如何考虑?

顺便说一句:不pipe初始configuration方法如何,它将主要用作引导Puppet的其余configuration。

根据环境和供应过程,build立比使用VMware模板和模板function克隆 可能更快。

我曾经在一个以Linux为中心的大型VMware环境中工作,在这个环境中,部署过程不像应该那样自动化。 我们依赖于RHEL系统的vSphere模板,但在初始克隆之后需要进行相当多的手动工作。

模板优点:

  • 如果您将其他应用程序,configuration设置以及超出configurationpipe理范围的事物烘焙到模板中,则模板非常有用。 ( 例如复杂的Oracle应用程序堆栈
  • 克隆时间是您的存储和vSphere基础架构的一个function。 我见过非常缓慢的资源密集型克隆工作。
  • 例如,如果使用Red Hat / CentOS / Debian / Ubuntu,则可以利用sys-unconfig命令在模板之前“取消configuration”系统。 这是Linux的等同于微软的Sysprep并删除networking接口规则,SSH密钥,networking设置等。
  • VMware的IP分配工具是可以的,并且在主stream的Linux操作系统上没有太多的问题。

PXE / kickstart部署优点:

  • 通常比模板/克隆快,假设你有一个本地存储库和一个networking启动镜像。
  • 更灵活的是,您可以更改您的图像/主模板,无需将模板转换为虚拟机,修改,重新转换和克隆。
  • 与configurationpipe理解决scheme配合使用时效果最佳

最后,这取决于您的应用程序,以及在安装初始操作系统后需要多less额外的工作。 我已经采取了一种混合方法,通过用于常规系统的供应系统为最复杂的实例和新的构build使用克隆。 它们不是相互排斥的。

细节取决于发行版,但是在构build模板时,我会给你几个CentOS / RHEL的东西。

  • 删除/etc/ssh/
  • 删除/etc/udev/rules.d/70-persistent-net.rules中涉及您的NIC的SUBSYSTEM

这两个将在您第一次启动时重新生成。

部署模板之后,需要一些运行更新的方法。

使用vSphere,您可以定义networking和主机名。 作为一个Puppet用户,我可以在我的模板中安装Puppet客户端以及一个标准的puppet.conf 。 如果我使用多个环境,那么实际上我需要为每个环境使用不同的模板。

当您修改模板时,您必须记得删除上面的文件。

就个人而言,虽然从模板部署的速度稍微快一些,但我更愿意从PXE中进行configuration,因为它更灵活。

看看准备Linux模板虚拟机和它的引用, 创build一个木偶准备图像(CentOS / Fedora的) 。 也许这有帮助。

顺便说一句:我真的很喜欢你的想法,部署JeOS虚拟机,然后使用木偶定制到数据库,networking或任何服务器。

另一个kickstarting linux虚拟机的加点是主机会在安装时自动完成补丁(虚拟机从本地仓库获取最新的软件包)。

如果你保持你的模板是最新的,那么你显然可以达到同样的效果,但这并不是我在我所处理的环境中看到的。

我们的kickstart文件的%post部分(是的,我们有几个取决于我们安装的系统,例如32或64位)只安装cfengine代理,并从那里主机由cfenginepipe理。

我还没有计时,但是一旦基础设施到位,我怀疑克隆速度会更快。 另外如果是的话,你也可以安装真实的主机;-)

对于基于debian的系统,我们使用了FAI ,这也非常棒。