部署和配置生成服务器

要通过本地 Team Foundation Server 使用 Team Foundation Build (TFBuild),则必须至少部署一台生成服务器。

提示

如果您的团队项目集合在 Visual Studio Online 上托管,并且您的团队需求可由单个标准生成代理满足,则可使用托管生成控制器,而不用部署您自己的生成代理。

每个生成服务器将作为一个团队项目集合工作。 事实上,虽然您在运行 Team Foundation Build Service 的计算机上直接配置、修改和管理生成服务器,但配置数据存储在团队项目集合中。

生成服务器拓扑选项

在生成服务器上,可以运行:

  1. 单个生成控制器

  2. 一个或多个生成代理

  3. 单个生成控制器和一个或多个生成代理

您可以在用作 Team Foundation 应用层服务器的同一台计算机上承载生成服务器,但在大多数情况下,此生成服务器不应承载任何生成代理。 生成代理会对处理器施加大量需求,这可能会显著降低应用层的性能。 此外,您可能希望避免在应用层上运行生成服务器组件,以避免增加受攻击面。 有关可行的生成系统拓扑的更详细的示例,请参见扩展生成系统

必需的权限

您必须是生成服务器上 Windows Administrators 组的成员,还必须是您团队项目集合上的“项目集合生成管理员”组的成员。 请参见 Team Foundation Server 权限参考

您希望做什么?

  • 了解安全风险

  • 部署生成服务器

  • 开始配置生成服务器

  • 将生成服务器连接到团队项目集合

  • 指定服务帐户

  • 在交互模式下运行生成服务器

  • 采取后续步骤

了解安全风险

安装 Team Foundation 生成服务会增加计算机的受攻击面。 例如,由于开发人员会被视为生成系统中受信任的实体,因此恶意用户可能构造生成定义,以运行用于控制服务器并从 Team Foundation Server 窃取数据的任意代码。 欢迎客户遵循安全性最佳做法并部署深入防御措施以确保生成环境是安全的。 这包括开发人员工作站。 有关安全性最佳做法的详细信息,请参见 TechNet 文章安全指南

部署生成服务器

您可以通过安装 Team Foundation 生成服务部署生成服务器。 在开始此进程前,有一些提示需要注意:

  • 可以将 TFBuild 2010 或 TFBuild 2012 服务器连接到本地 Visual Studio Team Foundation Server 2013 应用层服务器。

  • 无法在同一台计算机上像运行 TFBuild 2012 或 TFBuild 2010 一样运行 Visual Studio Team Foundation Server 2013 TFBuild。

  • 如果您安装了生成服务并以**“项目集合管理员”**成员的身份登录,则安装过程会自动将生成服务帐户添加到“项目集合生成服务帐户”组,因此您不再需要手动执行

  • 您可以通过将现有生成服务器的配置复制到新的生成服务器来替换现有生成服务器。 请参见安装 Team Foundation Build Service

  • 您可以在任何具有足够的处理和存储能力的客户端或服务器计算机上设置临时生成服务器。 例如,如果开发人员有一台多余的计算机,则可将它设置为生成服务器。

  • 您可以在物理计算机或虚拟机上部署生成服务器。

有关部署生成服务器的分步说明,请参见安装 Team Foundation Build Service

开始配置生成服务器

在部署您的生成服务器后,可对其进行配置以满足您团队的需求。

  1. 登录到要配置的生成服务器。

  2. 从 Windows 的**“开始”菜单运行“Team Foundation 管理控制台”**。

    此时将出现“Team Foundation 管理控制台”。

  3. 在树窗格中,展开服务器的名称。

  4. 选择**“生成配置”**节点。

    管理控制台:生成服务器配置

    备注

    如果出现消息配置已安装功能“配置已安装的功能”而不是生成控制器或生成代理(如上所示),请参见部署生成服务器。

  5. 选择**“属性”**。

    生成服务器配置

    此时将显示**“生成服务属性”**对话框。

    “生成服务属性”对话框

    在您可以配置生成服务器之前,必须选择**“停止服务”**链接。 有关如何配置生成服务器的详细信息,请参见下面的各节。

将生成服务器连接到团队项目集合

在**“通信”下的“为项目集合提供生成服务”旁边,选择“浏览”**按钮,以将生成服务器连接到本地 Team Foundation ServerVisual Studio Online 上的团队集合项目。

您可以通过配合使用安全超文本传输协议 (HTTPS) 和安全套接字层 (SSL) 来增强安全性。 请参见为 Team Foundation Server 设置 HTTPS 及安全套接字层 (SSL)

指定服务帐户

在**“使用以下身份运行服务”**下,可以指定允许生成服务器提供其服务的帐户。

指定生成服务帐户

您可以直接在**“使用以下身份运行服务”**下指定生成服务帐户。

NETWORK SERVICE 帐户

在大多数情况下,最佳设置为 NT AUTHORITY\NETWORK SERVICE。

生成服务帐户:NETWORK SERVICE 帐户

此方法的一个优点是,如果有人更改用户帐户密码(某些网络管理员需要定期进行此类更改),生成服务器不会脱机。

用户帐户

有时,您可能需要指定用户帐户,如 NORTHAMERICA\FABBUILD。

生成服务帐户:用户帐户

您必须指定用户帐户的情况的示例包括:

  • 您需要在交互模式下运行生成服务器,如下所述。

  • 您的 Team Foundation Server 位于防火墙之内,但生成服务器位于防火墙之外。

无论您指定什么帐户,生成服务帐户必须属于“项目集合生成服务帐户”组

指定用于连接到您的 Team Foundation Server 的帐户

您通常可以将第二个文本框留空。 但是,在以下情况中,生成服务器不能使用生成服务帐户连接到您的 Team Foundation Server。

域信任差异:Team Foundation Server 的域不信任生成服务器的域。 例如,生成服务器位于 domainb 中,且 Team Foundation Server 位于不信任 domainb 的 domaina 中。 您可以在第一个框中指定生成服务帐户,在第二个框中指定 domaina 中的帐户:

生成服务帐户与 Connect 帐户不同

在 Visual Studio Online 上托管的团队项目集合:当您将本地生成服务器连接到 Visual Studio Online 时,将自动清除**“使用与 Windows 服务相同的身份”**复选框,同时将在该复选框下指定用于连接到 Visual Studio Online 的帐户(例如,Windows Live 帐户)。

在交互模式下运行生成服务器

在大多数情况下,应将生成服务器作为 Windows 服务运行,这是默认设置。 但是,对于一些任务,例如运行编码的 UI 测试对 Windows 应用商店应用程序运行测试,生成代理只能在作为交互进程运行的生成服务器上执行它们。

在交互模式下运行生成服务器

  1. 标识要用作生成服务帐户的用户帐户。 生成服务帐户必须:

  2. 在**“生成服务属性”对话框中,选择“停止服务”**。

  3. 在**“使用以下身份运行服务”下,选择“更改”**,然后指定生成服务帐户的凭据。

  4. 选择**“以交互方式运行服务”**。

    在迭代模式下运行生成服务

  5. 选择**“开始”,再选择“确定”**。

  6. 使生成服务帐户登录到生成服务器上。

后续步骤

  • 部署和配置生成控制器
    使用生成控制器执行轻量级任务并将生成进程的大量占用处理器的工作分发到生成代理池。 您可以在生成服务器上承载一个生成控制器。

  • 部署和配置生成代理
    可使用生成代理执行生成的大量占用处理器的工作,包括从版本控制获取文件、配置工作区、编译代码和运行测试。 可在一台生成服务器上承载一个或多个生成代理。

  • 设置放置文件夹
    您可以准备并指定一个或多个放置文件夹,以便您的生成系统可以将二进制文件、测试结果和日志文件交付给您的团队。

  • 扩展 Team Foundation Build 系统
    随着您的团队和代码库的扩大,您可以相对轻松地以增量方式扩展您的生成系统。

  • 管理生成系统
    在部署您的生成服务器之后,可通过 Team Foundation 管理控制台对其进行管理。 您可以从 Team Foundation 管理控制台或 Visual Studio 管理生成控制器和生成代理。