TFS的代理服务器(agent)用于持续集成编译和发布,为开发、测试团队和运维团队带来的非常便捷高效的发布和测试速度,许多企业和研发团队都在自己的研发测试平台中广泛使用这一技术。

在部署TFS代理服务器的过程中,比较常见的方案分布式部署,即根据测试和部署的需要,将TFS的应用层服务器和代理服务器部署在不同的Windows/Linux服务器上,同时实现服务器的负载均衡。这种分布式部署,通常是在企业域环境中实现的,由于所有服务器都在同一个企业域环境(或者相互信任的域)中,服务器之间通过域账户实现相互认证,部署难度大幅降低。但是在有些情况下,我们也需要工作组模式中部署TFS代理服务器,例如代理服务器在外网公有云环境中,通常情况下这样的服务器不可能加入企业域。工作组模式下的部署与域环境的部署有较大区别,本文重点介绍这种环境下的代理部署。

在部署代理服务器之前,首先需要了解几个账户的不同用途:

1. 代理池管理员(poolAdmin)

代理池管理员用于将代理服务器添加到代理池中。在部署代理之前,需要将这个账户添加到代理吃管理员中,一般我们都使用tfsadmin账户,如下图:

Figure 1 - 代理池管理员

2. TFS服务账户(tfsServiceAccount)

TFS服务账户主要用于连接TFS服务器,实现在TFS服务器上的用户认证。需要将这个账户添加到代理池的代理池服务账户中,如下图。

Figure 2 - 代理池服务账户

3. 本地服务账户(LocalServiceAccount)

本地账户建立在TFS的代理服务器上,主要用于运行本地服务(VSO Agent),在代理服务器上实现本地操作,例如编译、发布、文件复制等。这个账户的权限依赖于代理服务器在本地的操作行为,如果没有特殊安全考虑,直接将这个账户添加到本地管理员中。在工作组模式的部署过程中,我们一般创建一个域控制器上的影子账户(Shadow Account),例如本文的示例中,我创建了一个本地的.\tfsadmin账户,与域环境中的同名账户的密码相同。

接下来,我们在一台安装了Windows Server 2012 R2的服务器上安装代理

1. 下载代理程序

导航到TFS服务器根结点的控制台界面,点击下载代理按钮,保持下载的内容到本地目录,并解压缩到相应目录中,示例中我解压缩到C:\TFSAgents\Agent1

Figure 3 - 下载代理安装包

2. 安装和配置代理服务器

按照下图的操作部署代理服务器。

Figure 4 - 安装配置代理服务器

大功告成,你在TFS的管理界面中会看到已经成功的带来服务器,绿色小图标表示服务器正常运行,如下图。

Figure 5 - 查询代理服务器

【注意事项】

1. 需要使用自己创建的代理服务器账户登陆代理服务器,进行上面的操作,否则Windows系统创建的凭证与账户不一致,导致连接TFS服务器失败

2. 安装代理成功以后,编译或下载代码失败,需要检查服务器上对应的环境是否配置正确,例如tf.exe, Java JDK,Git等

http://www.cnblogs.com/danzhang/  ALM MVP 张洪君

(完)

安装TFS(2015)工作组模式代理服务器(Agent)的更多相关文章

  1. Windows2012中安装域控(DC) + SQL Server 2014 + TFS 2015

    安装域控(DC) 修改计算机名 修改固定IP 添加角色 选择“Role-based or feature-based installation” 选择本机 选择“Active Directory Do ...

  2. Team Foundation Server (TFS) 2015 安装指导

    1. 概述 微软于8月6日发布了大家期待已久的TFS 2015正式版, https://www.visualstudio.com/en-us/news/tfs2015-vs.aspx ,新版本包含的大 ...

  3. 搭建TFS 2015 Build Agent环境(四)

    在通过TFS做DI时,我们经常用到FTP文件上传.TFS发布中,提供了cURL上载文件功能.要想使用此功能,请参考下面步骤启用: 1.登录BuildAgent所在的机器 2.打开cmd(以管理员权限运 ...

  4. TFS 2015服务端安装与客户端签入项目步骤

    一.参考如下3篇文章搭建TFS2015环境 1.参考文章如下: TFS 2015(Visual Studio Team Foundation Server)的下载和安装http://www.cnblo ...

  5. 搭建TFS 2015 Build Agent环境(一)

    Download the build agent Downloading the build agent is really simple. Navigate to your TFS control ...

  6. 搭建TFS 2015 Build Agent环境(三)

    在配置时,一定要注意下面的几个地方: 1.项目集合生成服务账号 中一定要包含: 2.Build Agent机器上防止Agent的路径一定要短,不要出现特殊字符,比如:C:\Agent 3.一定要安装V ...

  7. 单机安装TFS(转载)

    一.安装操作系统:windows server 2003 + Sp2具体步骤: 1.安装windows server 2003时选用工作组(默认为workgroup).由于在工作组环境中部署,因此使用 ...

  8. TFS 2015 Update 2功能探索

    微软刚刚发布了TFS 2015 update 2的测试包,https://blogs.msdn.microsoft.com/bharry/2016/02/10/team-foundation-serv ...

  9. #VSTS日志# TFS 2015 Update 2 RC2新功能

    有段时间没有更新#VSTS日志#了,最近小编太忙,全国各地飞来飞去给各种不同的团队实施敏捷,今天冷不丁一看,呀!TFS 2015 Update 2 RC2都已经发布了.里面好东西不少,列出几个给大家瞧 ...

随机推荐

  1. tomcat安装和配置

    官网下载最新的tomcat9,解压 http://tomcat.apache.org/download-90.cgi 环境变量配置 JAVA_HOME: C:\Program Files\Java\j ...

  2. 微软Ignite大会我的Session(SQL Server 2014 升级面面谈)PPT分享

       我在首届微软技术大会的Session分享了一个关于SQL Server升级的主题,现在将PPT分享出来.     您可以点击这里下载PPT.     也非常感谢微软中国邀请我进行这次分享.

  3. Android线程管理之ExecutorService线程池

    前言: 上篇学习了线程Thread的使用,今天来学习一下线程池ExecutorService. 线程管理相关文章地址: Android线程管理之Thread使用总结 Android线程管理之Execu ...

  4. webService学习之路(二):springMVC集成CXF快速发布webService

    继上一篇webService入门之后,http://www.cnblogs.com/xiaochangwei/p/4969448.html ,现在我将我周六在家研究的结果公布出来 本次集成是基于之前已 ...

  5. 在C#里面给PPT添加注释

    平常开会或者做总结报告的时候我们通常都会用到PowerPoint演示文稿,我们可以在单个幻灯片或者全部幻灯片里面添加注释,这样观众可以从注释内容里面获取更多的相关信息. 有些朋友不清楚如何在幻灯片里面 ...

  6. ORA-01034:ORACLE not available问题的解决方法

    同时在自己电脑上装了oracle客户端和服务器,上次还能用呢,这次突然用不了. [oracle@R39i oracle]$ sqlplus scott/tiger SQL*Plus: Release ...

  7. CSS 基础篇、绝对有你想要

    本章内容: 简介 CSS 定义 四种引入方式 样式应用的顺序 选择器(Selector) * 通用元素选择器 标签选择器 class 类选择器 # ID选择器 , 多元素选择器 后代元素选择器 > ...

  8. WebComponent魔法堂:深究Custom Element 之 从过去看现在

    前言  说起Custom Element那必然会想起那个相似而又以失败告终的HTML Component.HTML Component是在IE5开始引入的新技术,用于对原生元素作功能"增强& ...

  9. 通过NPOI操作Excel

    最近在做的一个项目中需要生成Excel,通过学习使用NPOI实现了相关需求,写了一个简便操作的类,记录如下: public class NPOIHelperForExcel { #region exc ...

  10. 学会给你的类(及成员)来定制一套自己的Attribute吧

    在通过Visual Studio创建的C#程序集中,都包含了一个AssemblyInfo.cs的文件,在这个文件中,我们常常会看到这样的代码 [assembly: AssemblyTitle(&quo ...