展开或更改虚拟实验室

更新:2010 年 10 月

在使用并熟悉虚拟实验室后,您可能需要以一种或多种方法扩展或更改您的实验室:

  • 将 Team Foundation Server 从一台服务器移到另一台服务器

    您可能必须更改或替换运行 Team Foundation Server 应用层的服务器。

  • 将团队项目集合从一个 Team Foundation Server 移到另一个 Team Foundation Server

    您可能希望重用初始团队项目中的计算机和其他资源并移动这些资源。

  • 添加新的库服务器并撤消旧的库服务器

    您可能会发现您需要更多的空间来存储虚拟机、模板和环境。 您可以添加更多库共享或以更大 SCVMM 库服务器上的库共享替换现有库共享。

  • 添加新的 Hyper-V 主机并撤消旧的 Hyper-V 主机

    您可能会发现您需要更多的空间来运行虚拟机和环境。 您可以向现有主机组中添加更多物理主机以透明地增加更多容量。

  • 将 System Center Virtual Machine Manager 从一台服务器移动到另一台服务器

    您可能必须更改或替换运行 SCVMM 的服务器。

  • 移动测试控制器

    您可能必须移动或替换正在运行测试控制器的计算机。

上述每项更改都需要对实验室管理工具版资源的配置进行某种修改。

将 Team Foundation Server 从一台服务器移到另一台服务器

如果将 Team Foundation Server 从一台服务器移到另一台服务器,或者不移动而是更改运行 Team Foundation Server 的服务器的名称,则必须更新实验室管理工具版组件用来与 Team Foundation Server 通信的 URL。 有关以下内容的更多信息如何移动 Team Foundation Server 的更多信息,请参见管理 Team Foundation Server

在完成 Team Foundation Server 的移动后,请在以下位置更新 Team Foundation Server URL:

  • 在运行 Team Foundation Server 应用层的计算机上,URL 显示在 Team Foundation Server 管理控制台中。 在管理控制台中,转到**“Lab Management”节点,单击“重新配置 Lab Management”,再单击“高级”选项卡。 在“实验室 URL”**文本框中,键入新的服务器名称。

  • 在安装了生成代理的计算机上,该 URL 存储在 Hyper-V 托管的注册表配置单元中。 如果运行 Team Foundation Server 的服务器已重命名,请单击此环境的**“修复工作流功能”**。 该设置将在此环境的所有虚拟机中自动更新。 由于 .lvr 文件在内部存储 Team Foundation Server 的 URL,因此必须手动修改 .lvr 文件来更新 XML。

    提示

    您无需还原快照,因为在还原到某个快照后,Team Foundation Server 会在虚拟机中更新该 URL。

将团队项目集合从一个 Team Foundation Server 移到另一个 Team Foundation Server

如果开始时通过使用组合环境或通过创建对 Team Foundation Server 进行试点测试的小型团队项目来了解实验室管理工具版,则以后您可能需要将实验室资产迁移到其他 Team Foundation Server 实例。 由于 Team Foundation Server 不支持将一个团队项目与另一个团队项目合并,因此您必须手动移动实验室资源。 有关以下内容的更多信息如何迁移源代码、工作项和生成定义的更多信息,请参见管理 Team Foundation Server

提示

只能在同一网络位置移动虚拟机,这是因为它们已配置为使用该网络位置。 如果在位于不同域中的 Team Foundation Server 实例之间移动团队项目集合,则必须移动该项目集合,为该项目集合取消配置实验室管理工具版,然后使用新的 Team Foundation Server 实例和域的设置重新对其进行配置。

由于您要在域之间移动,因此无法恢复所有内容。

从运行 Team Foundation Server 的一台服务器移到运行 Team Foundation Server 的另一台服务器

  1. 将团队项目集合移到新的应用层。 有关步骤,请参见移动团队项目集合

  2. 将团队项目集合附加到目标 Team Foundation Server 后,为该集合取消配置实验室管理工具版。 有关取消配置的步骤,请参见 TFSConfig Lab /Delete 命令

  3. 为目标 Team Foundation Server 中的集合重新配置 Lab Management。 有关配置 Lab Management 的步骤,请参见首次配置 Lab Management

添加新的库服务器并撤消旧的库服务器

如果必须扩展 System Center Virtual Machine Manager (SCVMM) 的存储空间,则可以添加新的库共享。 也可以使用具有更快处理器和/或更多硬盘的服务器上的共享来替换现有共享。 向实验室管理工具版使用的 SCVMM 添加或从中移除库共享的过程如下:

  1. 准备移到新的库共享。

  2. 移动模板。

  3. 移动虚拟环境中当前尚未使用的已导入虚拟机。

  4. 移动存储环境。

  5. 移除旧的库共享。

    提示

    此方案不会更新可能是活动 Bug 的一部分的现有 .lvr 文件。 如果有一些存储环境是重现 Bug 所需要的,则它们应保留在源库中,直到解决这些 Bug。

准备进行移动

  1. 确保新的库服务器满足 SCVMM 库服务器的系统要求。 有关以下内容的更多信息这些系统要求的更多信息,请参见 System Requirements: VMM Library Server(系统要求:VMM 库服务器)。

  2. 在新服务器上,添加新的库共享:

    1. 在 Windows 资源管理器中,创建一个新文件夹,它使用新库共享的名称。

    2. 通过将 VMM_MACHINE$ 作为参与者添加到共享新文件夹的用户列表,与 SCVMM 服务器共享此新文件夹。

    3. 在 Virtual Machine Manager 管理员控制台中,关联此库共享。

  3. 将新的库共享添加到相关团队项目集合和团队项目中。

    1. 在**“TFS 管理控制台”中,单击“TFS 服务器”。 单击“应用层”,然后单击“团队项目集合”**。

    2. 在**“Lab Management”选项卡上,单击“配置库共享”**。

    3. 添加您在 SCVMM 中创建的共享。

  4. 备份原始库共享。 有关备份库共享的步骤,请参见备份和还原 VMM 数据库

  5. 执行下列操作之一:

    将项目集合脱机。 建议(但非必需)在移动过程中将相关项目集合脱机。

    - 或 -

    联系您的系统管理员,要求他们通知所有用户在移动期间不要部署环境或者导入虚拟机或模板。

移动模板

  1. 确定与要移动的模板相关的文件。 将这些文件从源移动到目标。 对于差异磁盘 VHD,请确保移动 .vhd 的所有版本。 若要查找此模板所指向的 .vhd 的路径,请右击该模板,然后单击**“属性”。 单击“硬件配置”**。 将此 .vhd 移动到新的库共享。

  2. 在**“SCVMM 管理员控制台”中,单击“库”。 在“操作”窗格中,单击“刷新”**。 刷新旧的库共享和新的库共享。

  3. 在**“Microsoft 测试管理器”中,单击“库”。 指向新的“库共享”**,然后重新导入模板。 对每个为实验室管理工具版启用的团队项目重复此步骤。 确保为模板的新实例定义的操作系统配置文件和硬件配置文件与用于旧模板的操作系统配置文件和硬件配置文件相同。

  4. 如果库中有基于模板的环境,应手动更新环境定义。 在 Microsoft 测试管理器中,单击**“库”。 单击“环境”**,然后单击每个使用了这些模板的环境。 移除旧模板并添加新模板。

  5. 从库中删除旧模板。 在 Microsoft 测试管理器中,单击**“实验室中心”。 单击“库”选项卡,然后单击“虚拟机和模板”**。

    可以通过查看库共享列来区分旧模板和新模板。 这不会删除基础模板。

  6. 确认移动操作成功。 如果未将团队项目集合脱机,请将其中一个模板部署到主机。 这应该会成功完成而没有错误。

如果库中存在环境中当前未使用的虚拟机,则必须将这些虚拟机部署到主机,然后将这些虚拟机保存到新库中。

移动导入的虚拟机

  1. 创建新的虚拟环境

  2. 添加必须移动的所有虚拟机。 不要选择任何功能。

  3. 部署该环境,但不启动它。

    提示

    如果您尝试启动该环境,并且该环境中存在与现在要移动的虚拟机同名的正在运行的虚拟机,则该域中可能会发生名称冲突。

  4. 在**“Microsoft 测试管理器”中,单击该环境中的第一个虚拟机。 单击“存储到库”**,然后选择要存储到的目标库。 对该环境中的所有虚拟机重复此步骤。

  5. 将所有虚拟机都存储到库中后,删除该环境

  6. 删除源库中的虚拟机。

    提示

    移动之后,您将无法把虚拟机导入到其他团队项目中。

移动存储环境

  1. 在 Microsoft 测试管理器中,部署相应环境。

    无需启动该环境。

  2. 在**“环境”选项卡上,单击目标库共享上的“存储到库”**。

  3. 确认移动操作成功:

    1. 部署该环境。

    2. 拍摄快照。

    3. 还原为早期快照。

    4. 还原为最新快照。

  4. 如果可以成功还原,请从源库共享中删除该环境。

移动完成后,将团队项目集合重新联机。

如果已有的 Bug 包括了库中环境的快照,建议您在此库中保留这些环境,直到解决这些 Bug。 没有简单的方法可以查找哪些环境具有指向它们的 .lvr 文件。 因此,可行的解决方案是保留最近 60 天内创建的环境。

移除共享

  1. 从原始库共享删除虚拟机和模板:在 Microsoft 测试管理器中,单击**“实验室中心”。 单击“库”,再单击“虚拟机和模板”**,然后删除库共享中仍显示在原始库共享中的位置处的虚拟机。

    可以轻松地按库共享分组虚拟机,方法是拖动**“库共享”**列标题并将其放到标题行之上。

  2. 从团队项目中删除库共享关联:

    1. 打开命令提示。

      在命令提示符下,对与要删除的库共享关联的每个项目使用 TFSLabConfig 命令行工具。

    2. 运行命令 TFSLabConfig DeleteTeamProjectLibraryShare 以指定项目集合和项目名称以及库共享名称。

      有关以下内容的更多信息 TFSLabConfig DeleteTeamProjectLibraryShare 命令的更多信息,请参见 TFSLabConfig DeleteTeamProjectLibraryShare 命令

    3. 对每个团队项目重复此步骤。

  3. 在 Team Foundation Server 管理控制台中,从原始库共享所关联的团队项目集合中删除该原始库共享。

添加新的 Hyper-V 主机并撤消旧的 Hyper-V 主机

添加 Hyper-V 主机

  1. 在 SCVMM 管理员控制台中,向主机组添加新的 Hyper-V 服务器。 有关向主机组添加服务器的步骤,请参见 Adding Hosts(添加主机)。

  2. 在**“Team Foundation Server 管理控制台”中,单击“TFS 服务器”。 单击“Lab Management”,然后单击“主机组”。 单击“验证”**。 如果系统提示您输入用户名和密码,请提供属于新主机上“Administrators”安全组成员的用户。

  3. 不要将新虚拟机放在要从中进行迁移的主机上。

    1. 在 SCVMM 管理员控制台中,单击**“主机”。 单击要从中进行迁移的主机的名称,然后单击“属性”**。

    2. 在**“主机属性”窗口中,单击“状态”选项卡。 清除“此主机可用于放置”复选框,然后单击“确定”**。

  4. 在**“主机属性”窗口中,单击“状态”选项卡。 清除“此主机可用于放置”复选框,然后单击“确定”**。

  5. 迁移非网络隔离环境:

    1. 在 Microsoft 测试管理器中,单击**“实验室中心”。 单击“实验室”选项卡,再单击“环境”**。 确定驻留在源主机和目标主机所在的主机组中的环境。

    2. 打开每个环境,并确定其中哪些环境关闭了网络隔离功能。 这一步骤的其余部分仅适用于非网络隔离环境。

    3. 在 SCVMM 管理员控制台中,查找包含在非网络隔离环境中的虚拟机。

      为了执行此操作,可在“虚拟机”窗格的搜索框中键入环境名称。

    4. 如果在上一步中找到的虚拟机位于已停止使用的主机上,则请将这些虚拟机移动到新主机上。

  6. 迁移网络隔离环境:

    1. 在 Microsoft 测试管理器中,单击**“实验室中心”。 接着单击“实验室”选项卡,然后单击“环境”**。 确定驻留在源主机和目标主机所在的主机组中的环境。

    2. 打开每个环境,并确定其中哪些环境启用了**“网络隔离”**功能。

    3. 在**“SCVMM 管理员控制台”**中,查找包含在网络隔离环境中的虚拟机。

      为了执行此操作,可在“虚拟机”窗格的搜索框中键入环境名称。

    4. 如果任何网络隔离环境中的虚拟机位于已停止使用的主机上,则将网络隔离环境存储到团队项目库中。

      网络隔离环境中的所有虚拟机都位于相同的物理主机上。

    5. 将环境从库部署回主机组。

  7. 在 Microsoft 测试管理器中,暂停然后恢复每个环境。 这样可以验证该环境是否已成功迁移。

  8. 在 SCVMM 管理员控制台中,单击**“主机”,再单击旧主机的名称,然后单击“移除主机”**。

将 System Center Virtual Machine Manager 从一台服务器移动到另一台服务器

将 SCVMM 从一台服务器移动到另一台服务器至少存在两种情况。 第一种情况是,您已开始在临时计算机上试点使用实验室管理工具版,现在希望将功能部署到生产服务器上。 由于您要在生产模式中重新开始,因此是否保留试点测试期间使用的环境、模板和其他实验室资产并不重要。 第二种情况是,由于存在容量或可用性问题,您必须更改正在运行 SCVMM 的服务器。 因为您希望继续像以前一样工作,所以您必须保留相同的环境和相关资产。

移动 SCVMM 而不保留实验室资产

  1. 删除每个团队项目集合中的实验室对象。

    1. 在 Team Foundation Server 应用层上,打开命令提示符并键入以下命令:**Tfsconfig.exe lab /delete /collectionName:**myCollection。 您必须从正在运行 Team Foundation 应用层的服务器来运行 TFSConfig。 默认情况下,TFSConfig 位于驱动器:\Program Files\Microsoft Team Foundation Server 2010\Tools。 有关 TfsConfig Lab /Delete 命令的更多信息,请参见 TFSConfig Lab /Delete 命令

    2. 对服务器上的每个团队项目集合重复运行这一命令。

  2. 在 Team Foundation Server 管理控制台中输入新名称。

    1. 在 Team Foundation Server 管理控制台中,单击**“Lab Management”**节点。

    2. 在**“Lab Management”页上,单击“重新配置 Lab Management”**。

    3. 在**“Virtual Machine Manager”选项卡上,键入正在运行 SCVMM 的新服务器的完全限定域名。 然后,单击“测试”**以确认新服务器是可用的。

      1. 如果 Team Foundation Server 服务帐户在指定的 SCVMM 上没有相应权限,则会显示一个对话框,提示您输入用户名和密码。

      2. 请键入 SCVMM 管理员角色现有成员的用户名和密码。 Team Foundation Server 服务帐户将添加到 SCVMM 管理员角色。

    4. 单击**“确定”**。

移动 SCVMM 同时保留实验室资产

  1. 备份原始 SCVMM 的数据库:

    1. 在 SCVMM 管理员控制台中,单击**“管理”,然后单击“常规”。 在“操作”窗格中,单击“备份 Virtual Machine Manager”**。

    2. 在**“Virtual Machine Manager 备份”**对话框中,键入备份文件的目标文件夹的路径。 该文件夹不能为根目录并且必须可由 SQL Server 访问。

    提示

    可以在“作业”视图中追踪备份的状态。

  2. 将步骤 1b 中的数据库备份文件复制到新 SCVMM 计算机上的某个位置。

  3. 在新服务器上安装 SCVMM。 将向导指向当前 SCVMM 数据库,或创建一个新数据库。 有关还原备份的步骤,请参见 Backing Up and Restoring the VMM Database(备份和还原 VMM 数据库)。

  4. 在 Team Foundation Server 中更新 SCVMM 服务器名称。

    1. 打开命令提示符并运行命令:**Tfsconfig.exe lab /settings / scvmmservername:**my_new_scvmmservername /force。 您必须从正在运行 Team Foundation 应用层的服务器来运行 TFSConfig。 默认情况下,TFSConfig 位于驱动器:\Program Files\Microsoft Team Foundation Server 2010\Tools。 由于库服务器和主机组都已绑定到团队项目集合,因此您必须使用 /force 开关;除非您使用 /force 选项,否则不允许更改 SCVMM。 有关 TFSConfig Lab Settings 命令的更多信息,请参见 TFSConfig Lab /Settings 命令

    2. 在 Team Foundation Server 管理控制台中,单击**“Lab Management”节点。 单击“重新配置 Lab Management”,然后单击“VMM 服务器名称”附近的“测试”**。 这可确认 Team Foundation Server 可以连接到新 SCVMM 并具有正确的权限。

      1. 如果 Team Foundation Server 服务帐户在指定的 SCVMM 上没有相应权限,则会显示一个对话框,提示您输入用户名和密码。

      2. 请键入 SCVMM 管理员角色现有成员的用户名和密码。 Team Foundation Server 服务帐户将添加到 SCVMM 管理员角色。

    3. 在 Team Foundation Server 管理控制台中,针对每个团队项目集合执行以下操作。

      1. 单击**“Lab Management”选项卡,然后单击“配置主机组”。 选择所有主机组,然后单击“验证”**。这一操作将确认 Team Foundation Server 和新的 SCVMM 可以连接到主机并具有适当权限。

      2. 单击**“Lab Management”选项卡,然后单击“配置库共享”。 选择所有库共享,然后单击“验证”**。 这可确认 Team Foundation Server 和新的 SCVMM 可以连接到库共享并具有正确的权限。

  5. 确认移动操作成功:

    1. 在 Microsoft 测试管理器中,依次单击**“实验室中心”“环境”**。 确认您的现有环境显示在列表中并且它们处于正确的状态。

    2. 单击**“库”,然后单击“虚拟机和模板”**。 确认所有现有虚拟机和模板都显示在列表中并且它们不显示新错误。

移动测试控制器

如果必须移动或重新安装与环境关联的测试控制器(可能用于硬件升级或由于当前服务器太旧),则必须备份数据库并在新计算机上重新安装。 如果要移动用于负载测试的测试控制器,则另外还要备份和还原负载测试数据库。 您还必须转到每个代理并向新控制器重新注册它。

移动或重新安装测试控制器

  1. 找到 QTControllerConfig.XML 文件并制作一个备份副本。 

    此文件通常位于 Common7\IDE 文件夹中的 Visual Studio 安装中。

  2. 重新生成同名的计算机。

  3. 在该新计算机上重新安装测试控制器。

    此时不要配置测试控制器。

  4. 将该计算机上的默认 QTControllerConfig.XML 文件替换为在步骤 1 中备份的文件。

  5. 配置测试控制器并将其连接到它之前连接的项目集合。

  6. 重新启动该计算机。

  7. 如果更改安装了测试控制器的计算机的名称并且为环境配置了测试功能,则必须在使用该测试控制器的环境中更新该测试控制器的名称。 可使用 Microsoft 测试管理器修改环境:

    1. 停止该环境。

    2. 编辑该环境,并在**“功能”**页中更新测试控制器的设置。 使用测试控制器的新名称选择该测试控制器。

    3. 重新启动该环境。

请参见

任务

如何:为团队项目集合更改库共享

修订记录

日期

修订记录

原因

2010 年 10 月

扩充了将 SCVMM 从一台服务器移动到另一台服务器的相关信息和步骤。

信息补充。