使用 VMware 模板和克隆来配置 Linux 服务器(而不是 PXE)的影响

使用 VMware 模板和克隆来配置 Linux 服务器(而不是 PXE)的影响

使用 VMware 模板创建新虚拟机似乎具有速度优势。但是,我担心可能存在不太明显的安全性和灵活性问题。例如:

  • 首次启动生成的密钥
  • VMware 配置服务器设置(IP、主机名等)的专有方法

在一家几乎完全使用 VMware 且大多数 Linux 都是基于 RHEL 的发行版的商店中,有人在使用模板进行配置时遇到过一些陷阱吗?克隆时又有什么问题呢?

顺便说一句:无论初始配置方法如何,它主要都会被用作 Puppet 其余配置的引导程序。

答案1

根据环境和配置过程,它可能比使用 VMware 模板和从模板克隆特征。

我曾在一个大型的以 Linux 为中心的 VMware 环境中工作过,其中的部署过程并没有达到应有的自动化程度。我们依赖 RHEL 系统的 vSphere 模板,但在初始克隆之后需要进行大量手动工作。

模板优点:

  • 如果您要将其他应用程序、配置设置和超出配置管理范围的内容融入模板中,那么模板非常有用。(例如复杂的 Oracle 应用程序堆栈
  • 克隆时间取决于您的存储和 vSphere 基础架构。我曾见过非常缓慢且资源密集型的克隆作业。
  • 例如,如果使用 Red Hat/CentOS/Debian/Ubuntu,您可以利用sys-unconfig命令在模板化之前“取消配置”系统。这是与 Microsoft 相同的 Linux 版本 Sysprep,可删除网络接口规则、SSH 密钥、网络设置等。
  • VMware 的 IP 分配工具还不错,对于主流的 Linux 操作系统来说并没有出现太大的问题。

PXE/kickstart 部署优势:

  • 通常比模板/克隆更快,假设您有一个本地存储库和一个网络启动映像。
  • 更加灵活,您可以对图像/主图像进行更改,而无需将模板转换为 VM、修改、重新转换和克隆的循环。
  • 与配置管理解决方案结合使用效果最佳。

最后,这取决于您的应用程序以及初始操作系统安装后需要多少额外工作。我采用了一种混合方法,对最复杂的实例使用克隆,并通过配置系统对常规系统使用新构建。它们并不相互排斥。

答案2

具体情况取决于发行版,但我将给你一些在构建模板时需要记住的 CentOS/RHEL 事项。

  • 删除/etc/ssh/
  • 去除子系统其中/etc/udev/rules.d/70-persistent-net.rules引用了你的网卡

第一次启动时,这两者都将重新生成。

部署模板后,您需要某种方式运行更新。

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

当你修改模板时,你必须记得删除上述文件。

就我个人而言,虽然从模板部署稍微快一些,但我还是更喜欢从 PXE 配置,因为它更灵活。

答案3

看一下准备 Linux 模板虚拟机以及帖子中引用的内容,创建 Puppet 就绪映像 (CentOS/Fedora). 也许这有帮助。

顺便说一句:我真的很喜欢你的想法,部署 JeOS VM,然后使用 puppet 将其定制为 DB、Web 或任何服务器。

答案4

启动 Linux VM 的另一个优点是主机将在安装时自动进行完全修补(VM 从本地存储库获取最新的软件包)。

如果您保持模板为最新版本,您显然可以实现同样的目标,但这并不是在我工作过的环境中看到的事情。

我们的 kickstart 文件的 %post 部分(是的,我们有几个,具体取决于我们安装的系统,例如 32 位或 64 位)只安装 cfengine 代理,然后主机由 cfengine 管理。

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

对于基于 Debian 的系统我们使用固定资产投资,这也很棒。

相关内容