先说下此片博客的上下文:部门所在的业务被集团出售,因此我们所有的计算机和服务器都得重新命名,退出当前域加入新公司的域。对于PC和其他服务器,目前不存在太大问题。但是对于Team Foundation Server (下面简称TFS)却是相对麻烦, 尤其是在集成了Window SharePoint Service (下面简称WSS)时。

经过近一个月的研究与实验,基本上搞定了迁移工作。下面就详细说下迁移步骤:

1.首先不能在没有把握的情况下在生产环境中搞,且生产环境一直在提供服务。我们的TFS是在Hyper-V虚拟机上运行,平时用Windows Server Backup Tool (Windows Server 2008以上自带)这个工具做的虚机备份。首先要讲此备份还原到另外一个地方。

关于如何使用此工具,详情请见链接(以前工作中的写的,英文版,懒得翻译了)。关于还原备份到一个新的虚拟机,中间有个小技巧,详见我的另一篇随笔 【原创】还原Hyper-V 到一个新的虚拟机。我在这一步花了些时间,原因是还原出的虚机硬盘文件(*.VHD)可能是损坏的,表现在刚还原出的虚机在刚开机时提示要检测硬盘,等进入操作系统后,通过SQL Server Management Studio发现其中有一个主要的TFS数据库是suspend(挂起)状态。当时也尝试着去修复,但是无功而返。后来又尝试着还原虚机的备份几次,终于有一次是好了,至于原因,我也说不出为什么。

还有就是在还原成功后,需要创建一个新的虚机来挂这个VHD文件,再创建虚机时要注意:不要启用网络功能,否则到时会跟生产环境里虚机冲突,造成生产事故(很有可能有人的计算机连到这台测试TFS)。

2.到这一步,已经有还原出一个和最新的TFS一样的虚机来随便测试了,此时建议检查下还原出的虚机各项服务是否正常,测试项:

  1. TFS Project collection web sites(http://localhost:8080/tfs )

  2. WSS site(http://localhost)

  3. WSS Central Adminhttp://localhost:17012

  4.用TFS上的VS(如果有装)链接TFS

如果确认各项功能没有问题,此时强烈必须建议做一个虚机快照,用于在以后随时还原到此状态。

3. 用一个服务器本地账号(我这里叫 tfs-service-admin)来登录服务器,确保该账号拥有以下权限:

  1. Servers: Administrators (local Administrators group or equivalent)
  2. TFS: Team Foundation Administrators and Admin Console Users
  3. SQL Server: sysadmin
  4. SharePoint Products: Farm Administrators (if your TFS deployment integrates with SharePoint Products

4. 创建一个测试域,且我在该测试域所在的服务器启用了DNS服务,为了测试环境能够相互通过域名通信。

5. 下面的步骤就是要真正开始做迁移工作了,首先重命名此服务器(新名:CNXA1ERES-VM99),并退域加入工作组,这个步骤的目的有两个:

  1.因为在计算机加入新公司的域,很有可能会被要求重命名(大公司的计算机都有一定的命名规则)。

  2.避免在连上网络后,跟生产TFS服务器冲突。

6. 这一步非必须,停掉其他跟生产有关的非TFS服务,如CC.NET,因为我们的TFS服务器上还跑build服务,这样做是为了减少对生产环境的影响。

7. 启用虚拟的网络功能,从DHCP服务器获得IP,手动修改DNS为刚才所建的DNS服务器,如上所示,手动指定DNS是为了测试TFS能找到新的域服务器。

8. 这时就可以通过远程桌面连接测试TFS了,通过tfs-service-admin账号。

9.因为TFS服务器命名了,对应的数据库实例名也要修改,打开SQL Server Management Studio,:

  1. 实例名:CNXA1ERES-VM99
  2. Execute the following cmd in a new query.

    exec sp_dropserver 'cnxa1eres-vm31'

    go

    exec sp_addserver 'cnxa1eres-vm99',local

    go

  3.Restart SQL server service.

  4.execute “select @@servername” to check, it should be the new name.

10. 如果之前很多服务(Windows 服务和IIS应用程序缓冲池所用到的)都用的是一个域账号,请给予新的域账号同样的数据库权限。

11.修改TFS config文件中的服务器名,文件所在路径:C:\Program Files\Microsoft Team Foundation Server 11.0\Application Tier\Web Services\web.config.

12.将新的域账号加到如下组:Local AdministratorWSS_WPGWSS_ADMIN & IIS_WPG

13. 更新WSS的一些配置:

 Run cmd as admin.

  1. Cd C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN
  2. stsadm –o renameserver –oldservername cnxa1eres-vm31 –newservername cnxa1eres-vm99
  3. stsadm -o updatefarmcredentials -userlogin Touchpoint\administrator -password Password1
  4. stsadm -o updateaccountpassword –noadmin -userlogin Touchpoint\administrator -password Password1
  5. stsadm.exe -o spsearch -farmserviceaccount Touchpoint\administrator -farmservicepassword Password1 (execute failed)
  6. stsadm.exe -o spsearch -farmcontentaccessaccount Touchpoint\administrator –farmcontentaccesspassword Password1(execute failed)
  7. stsadm.exe -o editssp -title SharedServicesProviderName -ssplogin Touchpoint\administrator -ssppassword Password1(execute failed)
  8. stsadm.exe -o osearch -farmserviceaccount Touchpoint\administrator -farmservicepassword Password1(execute failed)
  9. stsadm -o migrateuser -oldlogin DOMAIN\user -newlogin DOMAIN\user -ignoresidhistory

14.修改IIS应用程序缓冲池中的对应账号,重启IIS

15.修改服务中对应的账号,变成新的域账号。

16.Change the Service account to CNXA1ERES-VM99\Tfs-service-admin in Team foundation server administration console, and then restart the server.

17.Change the URLs in TFS console, to http:\\cnxa1eres-vm99.touchpoint.net:8080/tfs, test succeed.

18.Migrate TFS account

  1. Cd C:\Program Files\Microsoft Team Foundation Server 11.0\Tools

TFSConfig Identities /change /fromdomain:OldDomainName /todomain:NewDomainName /account:OldAccountName /toaccount:NewAccountName

转载于:https://www.cnblogs.com/successliwei/p/5718071.html

【原创】Team Foundation Server 域环境迁移相关推荐

  1. 安装python报错0x80072ee7_tfs2018官方版下载-team foundation server 2018 v2018.1 官方最新版 - 安下载...

    tfs2018(team foundation server 2018)是一款可以为小型团队以及企业提供支持开发和持续部署软件的服务和工具,新版本支持TFS代理中的GVFS缓存,TFS代理可用作Git ...

  2. 谈谈Team Foundation Server Proxy

    好久没来这里更新了,锄锄草 :) Team Foundation Server的配置管理是可以远程访问的,对于有异地开发的团队来说,这一点非常重要!并且,还不仅仅只是能够访问,这里还有一个重要的组件T ...

  3. TFS(Team Foundation Server)介绍和入门

    在本文的两个部分中,我将介绍Team Foundation Server的一些核心特征,重点介绍在本产品的日常应用中是如何将这些特性结合在一起使用的. 作为一名软件开发人员,在我的职业生涯中,我经常会 ...

  4. Visual Studio 和 Team Foundation Server 产品维护及周期策略

    1 适用于 Visual Studio 和 Team Foundation Server 2012 - 2017 这些产品遵循 Microsoft 10 年支持生命周期策略(5 年主流支持和 5 年扩 ...

  5. Team Foundation Server 2010 安装、部署与配置(五):用户权限管理 .

    在把TFS正式地用起来之前,先要清楚各项使用权限如何设置,比如说,如何限制某一类用户的使用权限,如何增加一名新的Project管理员,如何增减用户组中的用户,等等. 这些设置全都是在GUI下进行,非常 ...

  6. Team Foundation Server 2010 安装、部署与配置(二):安装之前的预备工作 .

    上一篇文章我们说到,TFS2010 的安装有好几种场景,其中场景三(在域环境.多服务器环境)是最典型的应用场景.下面我们准备部署这样的一个环境. 假设我们已经具备的环境是: Windows Serve ...

  7. 单服务器配置部署Visual Studio 2005 Team Foundation Server步骤

    最近我所带的开发部部门要采用TFS管理,另外TFS也是在微软的MSF组队模型中非常重要的: Microsoft 解决方案框架 (MSF) 组队模型描述了微软如何通过构建人员以及人员的行为来实现项目成功 ...

  8. Team Foundation Server Beta3 安装指南

    Team Foundation Server Beta3 安装指南 发布日期: 11/11/2005 | 更新日期: 12/15/2005 本页内容 1.概述 2.安装的安全 3.单服务器的安装过程 ...

  9. TFS - Team Foundation Server 的安装记录

    因为要准备全面进入DotNET开发,所以首先就要构建一个环境. 微软推出的 Team Foundation Server 用于支持团队开发,自然纳入学习范围之中. 安装之前,查看了一些资料表明,安装它 ...

最新文章

  1. php expat+DOM+SimpleXML XML读取
  2. 如何解决Beyond Compare内容相同仍然标示红色
  3. pythonexcelweb交互插件_来一次Python与Excel的完美交互
  4. apache 版本_Apache Hudi 0.5.1版本重磅发布
  5. U25%(1,16) and U25%(1,168)on《C4.5:programs for machine learning》
  6. 7. Reverse Integer(反转整数)
  7. 自动为数字千位数,百万位数添加逗号
  8. .第一天.net 学习理论
  9. 中国移动笔试题——转自MOP
  10. Java创建数组的方法
  11. Nginx反向代理有什么用?
  12. oracle如何修改redo,修改oracle redo
  13. 服务器端查看图片库 eog display Xforwarding
  14. 报错 [Error] expected primary-expression before ‘)‘ token
  15. 图解在EXCEL中,通过身份证自动获得出生日期和性别。
  16. 计算机谱子勇敢爱,【数字乐谱大全流行歌曲】流行歌曲勇敢爱乐谱及歌词.doc...
  17. python查看excel所有sheetname
  18. 大学期间的副业赚钱之道
  19. ffmpeg 编译 for android
  20. 多伦多大学计算机相关专业,多伦多大学计算机专业的研究方向

热门文章

  1. sqoop把mysql数据导入hbase-完整记录
  2. fit,fit_generator的使用区别
  3. 等式约束和不等式约束下的KKT条件求法
  4. 线性及非线性方程组的解法
  5. telnet或SQLplus下命令输入错误如何删掉重新输入
  6. AOP概述及实现原理
  7. Xtract 实现 VMware Vsphere 迁主机到 Nutanix cluster
  8. Java获取文件路径获取访问路径、域名、项目名、请求入参
  9. java使用jeids实现redis2.6的list操作(4)
  10. 防止按钮重复点击 模型转字典 接口传参不能用汉字,要转码