一次典型的TFS故障处理:域控失联
问题描述
突然收到客户报告,开发人员登录TFS系统时,出现登录异常现象。即使输入了正确的账户和密码,TFS系统任然提示重新登录的页面,导致用户无法打开TFS系统。
即使登录成功,在修改代码或者修改工作项的工程中,系统时而提示“管理员取消了操作”。
现象如下图:

处理过程
1. 接到报告后,我们立刻在多个客户端上验证,重现了用户反馈的问题,并确认问题出在TFS系统服务端,而不是个别开发人员计算机的问题。
2. 根据问题现象,迅速排查TFS服务器中的日志和配置信息,发现DNS正常,数据库和应用服务器之间的访问都正常,使用数据库客户端访问单台数据库,都可以正常访问。但是出现一些奇怪的现象:
- 使用数据库客户端访问SQL Server AlwaysOn的集群IP,系统提示提示“目标主体名称不正确。无法生产SSP1上下文”,如下图。
- TFS集群中的所有服务器出现不能访问域控服务器(AD服务器)的现象,
- TFS服务器到域控服务器之间的TCP 135端口不通。
TFS服务器系统的认证方式是通过AD服务器实现的,没有AD服务器提供的基础认证服务器,系统是不可能正常运行的。
由此,我们判断TFS系统异常的原因是由于不能访问域控导致的。结合当天运维组调整生产区和测试区的防火墙策略,初步断定是防火墙的策略导致了TFS系统和域控之间的网络隔离。

3. 我们迅速联系了运维组负责人,并将相关技术人员拉入到微信群,协同分析原因,寻求迅速解决问题的方案。
解决方案
经过运维组相关人员分析确认,当日变更的防火墙策略阻挡了TFS服务器和域控之间的135端口通信。
运维人员立即取消TFS系统和域控之间的防火墙策略。防火墙策略生效后,可以看到TFS系统可以正常访问域控服务器,TFS服务器也立刻恢复正常,服务器不需要做任何重启操作。
经过验证,TFS系统的基本功能(例如登录、修改工作项、需改代码)都恢复正常。
总结教训
这是一次比较典型的TFS服务器故障处理过程,通过总结分析本次故障的原因和处理过程,类似问题应该注意以下几点:
1. 防火墙策略调整前,需要提前(至少2-3日)通知TFS系统的负责人,以便提取做好相关的调研和预备方案
2. TFS系统依赖的系统(例如域控服务器、邮箱服务器、DNS服务器、需求管理平台等)做相关调整或升级前,需要提前通知TFS系统负责人,以便提前做好相关准备
3. 相关配置调整后、相关系统调整升级后,需要通知TFS负责人验证,是否对TFS系统产生了直接影响
微软DevOps MVP 张洪君 http://www.cnblogs.com/danzhang
--End--
一次典型的TFS故障处理:域控失联的更多相关文章
- Windows2012中安装域控(DC) + SQL Server 2014 + TFS 2015
安装域控(DC) 修改计算机名 修改固定IP 添加角色 选择“Role-based or feature-based installation” 选择本机 选择“Active Directory Do ...
- 【CTF】msf和impacket联合拿域控内网渗透-拿域控
前言 掌控安全里面的靶场内网渗透,练练手! 内网渗透拿域控 环境:http://afsgr16-b1ferw.aqlab.cn/?id=1 1.进去一看,典型的sql注入 2.测试了一下,可以爆库,也 ...
- 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)
从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnb ...
- Windows2012R2备用域控搭建
Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自己的ip,备dns:备域控的ip备域控的主dns:自己的ip,备dns:主域控的ip 客户端主dns:主域控的ip,备dns: ...
- 如何将VCSA添加到微软域控环境,并且实现微软域账号登陆vCenter
v:* { } o:* { } w:* { } .shape { } p.msonormal,li.msonormal,div.msonormal { margin: 0cm; margin-bott ...
- (转)从0开始搭建SQL Server AlwaysOn 第一篇(配置域控+域用户DCADMIN)
原文地址: http://www.cnblogs.com/lyhabc/p/4678330.html 实验环境: 准备工作 软件准备 (1) SQL Server 2012 (2) Windows S ...
- Hyper-V 2012 R2 故障转移群集之建立域控(AD DS)与加入域
Windows 2012 R2建立域控(AD DS)与加入域 Active Directory概述: 使用 Active Directory(R) 域服务 (AD DS) 服务器角 ...
- Windows Server 2008 R2 域控DOS命令
net user #查看本地用户 net localgroup ...
- Windows Server 2008 R2域控组策略设置禁用USB
问题: Windows Server 2008 R2域控服务器如何禁用客户端使用USB移动存储(客户端操作系统需要 Windows Vista以上的操作系统,XP以下的操作系统不能禁用USB移动存储) ...
随机推荐
- [Jmeter] 在jenkins上通过命令行运行时,针对单个listener生成的chart报告,并通过邮件发送出来
We need to use cmdrunner-2.0.jar Firstly, download cmdrunner-2.0.jar from here:https://jmeter-plugin ...
- Exception 异常 输出的各个方法的区别
try{ System.out.println(1/0); }catch(Exception e){ //System.out.println(e+""); //对象+字符串 = ...
- js中将斜杠\替换的方法
js中将/替换的方法replace(/\//g, '-') 中间涉及到js的一些转义问题,试了几个方法,发现这个可以,就记下来.
- 【C#】解析C#中JSON.NET的使用
目录结构: contents structure [-] JSON.NET简介 Serializing and Deserializing JSON Json Convert Json Seriali ...
- IDEA导入MySQL包
点击[Project Structure] 点击[Modules] 在点击下面的界面 找到自己下载的MySQL包就OK了
- 24、JSON与OC互相转化
一. JSON: 1. 01.JSON是一种轻量级的数据格式,一般用于数据交互 02.服务器返回给客户端的数据,一般都是JSON格式活着XML格式(文件下载除外) JSON的格式很像OC中的字典和数组 ...
- 2018.11.24 spoj New Distinct Substrings(后缀数组)
传送门 双倍经验(弱化版本) 考虑求出来heightheightheight数组之后用增量法. 也就是考虑每增加一个heightheightheight对答案产生的贡献. 算出来是∑∣S∣−heigh ...
- 2018.11.07 NOIP模拟 分糖果(贪心)
传送门 考虑 n = 2 时的情况:假定两个人分别为(a, b),(c, d),则当且仅当min(a,d) ≤ min(b,c)时,把(a, b)放在前面更优,否则把(c, d)放在前面更优 然后把n ...
- Servlet WebSocket的简易聊天室
添加依赖 <!-- websocket --> <dependency> <groupId>javax.websocket</groupId> < ...
- react创建项目报错unexpected end of json while parsing near xxx
报这个错,执行下面的命令,然后重新创建项目就可以. npm cache clean --force