Virtual Machine Manager 内的服务模板构建基块

原文链接: https://blogs.technet.com/b/privatecloud/archive/2012/03/14/the-building-blocks-of-service-templates-within-virtual-machine-manager.aspx

在 System Center 2012 Virtual Machine Manager 技术先行体验计划 (TAP) 早期与客户合作时,我已经被问了好几次,如何有效地构建服务模板 (Service Template) 呢?目标是首先创建标准化的“构建基块”,然后通过在现有菜单中选择各种组件,用它来快速构建服务模板。将它想象为用餐馆的菜单点菜:

我将选用中型硬件配置文件, Windows Server 2008 R2 Enterprise Contoso.com  域、 Web Server 角色和 Stock Trader Shopping Cart Web Deploy 应用程序包 并且我将选用这四个,请 …”

第一个构建基块——基本 OS 映像

过去,基本 OS 映像并不是那么基本。几乎每个所需的应用程序和 OS 设置都必须包括在 OS 映像中。有了 System
Center 2012,这一切都改变了……

首先,您可以从尽可能基本的 OS 映像开始。只包括核心 OS 设置和安全补丁。我只建议您在 OS 映像内部署一个第三方应用程序,前提是它对每个 VM 都是常用的,并且它的更新非常少。对于在 Windows
Server 2008 R2 上标准化的环境,我们一般从虚拟硬盘 (VHD) 格式的两个具有完整补丁的 OS 映像开始:

1) Windows Server 2008 R2(选择您的版本)

2) 遵循该指南 (https://technet.microsoft.com/en-us/library/ee210664.aspx) 用sysprep 处理过的 Windows Server 2008 R2 与 SQL Server 2008 R2。

构建完成后,只需将 VHD 文件上传到 VMM Library。对于 VMware 环境,将 vCenter VM Template 导入 VMM。

第二个构建基块——硬件配置文件

接下来,我们希望创建一组可重用的硬件配置文件。这些硬件配置文件定义 Hyper-V、ESX Server 或 XenServer 等云功能设置,以及虚拟 CPU、内存、视频适配器(包括您的 VDI 解决方案的 Microsoft RemoteFX 3D 适配器)、SCSI 适配器、可用性等硬件设置。此外,我们确定每个硬件配置文件需要多少网络适配器,但暂时还不需要连接到网络。

我通常从 3~4 个硬件配置文件开始:小型、中型、大型和 SQL。因为 SQL 通常需要独特的内存配置,我找到了一个在大部分环境中都能正常工作的专用 SQL 硬件配置文件。

请注意,我们没有真正将任何虚拟硬盘附加到硬件配置文件中,我们将在稍后执行该操作。

第三个构建基块——OS 配置文件

我们还要创建一组可重用的 OS 配置文件。像 VMM 2008 R2 一样,OS 配置文件定义计算机命名约定、本地管理帐户、产品密钥、时区、域/工作组设置等。作为 System Center 2012 VMM 的新特性,OS 配置文件现在包括将角色和特性添加到 Windows Server 2008 R2 和新的来宾操作系统的功能。

我建议您为常用部署场景(如文件服务器、应用服务器和 Web 服务器)创建 OS 配置文件。创建一个用于处理一次性场景的通用 OS 配置文件,这通常是一个好主意。

第四个构建基块——应用程序配置文件

作为 VMM 的新特性,应用程序配置文件的设计专门为了支持 SQL Server 数据层应用程序、虚拟应用程序以及 Web 应用程序的部署,同时也支持应用程序脚本。然而,您通过一个通用的预安装脚本就几乎可以部署所有应用程序。我已经发现,如果某应用程序支持静默安装并且无需重新启动,那么通常可以通过一个应用程序配置文件来安装它。

我通常创建“starter”应用程序配置文件来部署 Server App-V 和 Web Deploy 客户端。在创建服务模板时,这些应用程序配置文件可以实现简单的更新,因为部署 Server App-V 和 Web Deploy 包的准备工作可以一致地应用到所有服务模板。此外,我建议为普通部署的应用程序创建应用程序配置文件。

第五个构建基块——SQL Server 配置文件

同样是 VMM 的新特性,SQL Server 配置文件完成由两个步骤组成的 SQL Server sysprep 过程。这包括 SQL Server 实例名称、安全设置、远程连接设置和服务帐户设置等。我建议您至少创建一个 SQL Server 配置文件。

连接构建基块与 VM 模板

OS 映像、硬件配置文件和 OS 配置文件被结合用于创建 VM 模板,然后它将用于创建服务模板。您可以有选择性地将应用程序配置文件和 SQL Server 配置文件添加到 VM 模板中。如果我经常使用同一个应用程序配置文件来创建不同的服务模板,但我也可以在 Service Template Designer 中直接选择这些配置文件,我觉得这是有价值的。

此处的目标是创建可采用一个基本 OS 映像和部署多种标准 VM 配置的多个选项,其中包括硬件与核心 OS 设置,从而最大限度减少 OS 映像的创建和管理流程。

是时候构建服务模板了……

现在,所有构建基块都已准备就绪,我们可以快速创建服务模板了。建议通过服务模板来部署每个 VM(即使是单层的、单 VM 部署也是如此),因为这样服务的更新可以利用在 System Center 2012 中内置的发行版管理功能。

在 Service Template Designer 中,您可以命名您的服务模板,选择层数,并且只需将之前创建的 VM 模板按需要拖到某层的顶部,即可设定适当的 OS 映像、硬件配置文件和 OS 配置文件设置。除了 VMM Library 中的任意其他应用程序之外,此时您也可以轻松地添加应用程序配置文件和 SQL Server 配置文件。此处的目标是将最后的服务模板创建过程变得非常简单,只需从之前创建的项列表中选择各个组件。

最后,是否记得我们在硬件配置文件中还没有将虚拟网络适配器连接到逻辑网络?在大部分私有云部署中都存在若干个逻辑网络,为每个逻辑网络都创建一个或多个硬件配置文件是低效的选择。在 VMM 中,我最喜欢的“快速”特性之一是 Service Template Designer 中的 Connector 工具。只需将逻辑网络添加到服务模板,并使用功能区中的 Connector 工具连接这两个对象。在我最近创建的一个四层服务模板中,这个小特性只需 6 步就可以完成所有虚拟网络适配器的连接(这为我节省了 14 个重复的步骤)……

David Stoker 美国私有云卓越中心负责人

Microsoft Services | dstoker@microsoft.com