從2010年開始,我們遇到了TFS 2015安裝問題,我們遇到了以下問題。這涉及到空運行,所以我們在同一臺服務器上安裝所有的東西,我們知道這不是一個首選的方法。創建後無法在構建/部署定義(vnext)中選擇TFS 2015機器組
•與Windows Server安裝新的虛擬服務器2012 R2
•添加IIS的功能
•安裝了SQL Server 2014
•安裝在服務器上的SharePoint Foundation 2013
•安裝Visual studio 2015在服務器上
•安裝了所有必需的.NET目標框架小號
•安裝,如MS的先決條件構建工具2015年,爲Microsoft Visual Studio代理2015年
•恢復TFS2010備份到新的SQL Server
•安裝TFS 2015年和跑在 '升級' 選項設置
•耗時配置中的所有的步驟,如添加生成控制器,並建立劑
•Dowloaded的VSO劑和跑「ConfigureAgent.cmd」
•配置了TFS中的代理池和隊列
•添加了一個額外的團隊項目集合。因此,我們有傳統的升級項目的集合,從2010年,再加上新的團隊集合項目
•下轄團隊項目,團隊成員等
•創建XAML構建定義,構建完成正確的服務器,如果我試圖創造出一個新的(非XAML)使用部署模板(見圖片)建立定義測試執行
然而,
。 當我們想要選擇「測試機羣/ Azure資源組」時,就會出現問題,例如選擇測試位置時。選擇列表是空的。 所以我們使用'管理'選項添加機器組,並且機器組可用。然而,即使在刷新之後,機器組的下拉列表仍然爲空(請參閱圖像)。
接下來我們檢查了事件日誌堡壘他的問題。
首先:
- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
- <System>
<Provider Name="Microsoft-Team Foundation Server" Guid="{80761876-6844-47D5-8106-F8ED2AA8687B}" />
<EventID>0</EventID>
<Version>3</Version>
<Level>2</Level>
<Task>1</Task>
<Opcode>10</Opcode>
<Keywords>0x8000000000000001</Keywords>
<TimeCreated SystemTime="2016-04-12T09:09:21.717163200Z" />
<EventRecordID>59666</EventRecordID>
<Correlation ActivityID="{6AD40FD3-10BA-4A7E-B6D9-F6926072DAB4}" />
<Execution ProcessID="3376" ThreadID="6484" />
<Channel>Microsoft-Team Foundation Server/Debug</Channel>
<Computer>KTBSV021.KTB.local</Computer>
<Security UserID="S-1-5-21-2105344776-4230907741-261866850-3716" />
</System>
- <UserData>
- <Info TraceId="{00000001-0001-0001-0000-000000000000}" xmlns="http://schemas.microsoft.com/TeamFoundation/2010/Framework">
<Tracepoint>0</Tracepoint>
<ServiceHost>{87670F79-6386-4363-9960-73B634419263}</ServiceHost>
<ContextId>10085</ContextId>
<ProcessName>w3wp</ProcessName>
<Username>KTB\tmpadmin</Username>
<VSID>{9E83242F-9944-4CBD-AF10-EF2D449A03B1}</VSID>
<Service>Web-Api</Service>
<Method>TaskDefinitionWebApiProxy.QueryEndpoint</Method>
<Area>DistributedTask</Area>
<Layer>WebApiProxy</Layer>
<UserAgent>Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko</UserAgent>
<Uri>/tfs/Default/_apis/distributedtask/endpoint</Uri>
<Path />
<UniqueIdentifier>{A9646429-41CB-4137-A39A-D4E29EDDC389}</UniqueIdentifier>
<UserDefined />
<ExceptionType>System.Net.WebException</ExceptionType>
<Message>System.Net.WebException: The remote server returned an error: (401) Unauthorized. at System.Net.HttpWebRequest.GetResponse() at Microsoft.TeamFoundation.DistributedTask.Server.WebApiProxy.HttpRequestProxy.ExecuteRequest(HttpRequestMessage requestMessage, IList`1 sourceDefinitions, DataSource dataSource)</Message>
</Info>
</UserData>
</Event>
二:
- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
- <System>
<Provider Name="Microsoft-Team Foundation Server" Guid="{80761876-6844-47D5-8106-F8ED2AA8687B}" />
<EventID>0</EventID>
<Version>3</Version>
<Level>2</Level>
<Task>1</Task>
<Opcode>10</Opcode>
<Keywords>0x8000000000000001</Keywords>
<TimeCreated SystemTime="2016-04-12T09:09:21.717163200Z" />
<EventRecordID>59667</EventRecordID>
<Correlation ActivityID="{6AD40FD3-10BA-4A7E-B6D9-F6926072DAB4}" />
<Execution ProcessID="3376" ThreadID="6484" />
<Channel>Microsoft-Team Foundation Server/Debug</Channel>
<Computer>KTBSV021.KTB.local</Computer>
<Security UserID="S-1-5-21-2105344776-4230907741-261866850-3716" />
</System>
- <UserData>
- <Info TraceId="{00000001-0001-0001-0000-000000000000}" xmlns="http://schemas.microsoft.com/TeamFoundation/2010/Framework">
<Tracepoint>103200</Tracepoint>
<ServiceHost>{87670F79-6386-4363-9960-73B634419263}</ServiceHost>
<ContextId>10082</ContextId>
<ProcessName>w3wp</ProcessName>
<Username>KTB\tmpadmin</Username>
<VSID>{9E83242F-9944-4CBD-AF10-EF2D449A03B1}</VSID>
<Service>Web-Api</Service>
<Method>TaskDefinitionWebApiProxy.QueryEndpoint</Method>
<Area>DistributedTask</Area>
<Layer>TaskDefinitionWebApiProxy</Layer>
<UserAgent>Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko</UserAgent>
<Uri>/tfs/Default/_apis/distributedtask/endpoint</Uri>
<Path />
<UniqueIdentifier>{A9646429-41CB-4137-A39A-D4E29EDDC389}</UniqueIdentifier>
<UserDefined />
<ExceptionType>Microsoft.TeamFoundation.DistributedTask.WebApi.ServiceEndpointQueryFailedException</ExceptionType>
<Message>Microsoft.TeamFoundation.DistributedTask.WebApi.ServiceEndpointQueryFailedException: The remote server returned an error: (401) Unauthorized. at Microsoft.TeamFoundation.DistributedTask.Server.WebApiProxy.HttpRequestProxy.ExecuteRequest(HttpRequestMessage requestMessage, IList`1 sourceDefinitions, DataSource dataSource) at Microsoft.TeamFoundation.DistributedTask.Server.Controllers.TaskDefinitionWebApiProxyController.QueryEndpoint(TaskDefinitionEndpoint endpoint) at lambda_method(Closure , Object , Object[]) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.<GetExecutor>b__9(Object instance, Object[] methodParameters) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken) --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.AuthorizationFilterAttribute.<ExecuteAuthorizationFilterAsyncCore>d__2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.AuthorizationFilterAttribute.<ExecuteAuthorizationFilterAsyncCore>d__2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ExceptionFilterResult.<ExecuteAsync>d__0.MoveNext()</Message>
</Info>
</UserData>
</Event>
提琴手報告它下面的請求失敗:
在下拉列表的刷新以下的條目在事件日誌中做POST http://localhost:8080/tfs/Default/_apis/distributedtask/endpoint HTTP/1。1
•PowerShell Remote已在服務器上啓用。
•服務帳戶已添加到代理池中的角色。
這顯然是一個安全問題。我們忘記或做錯了什麼?
所以錯誤是: System.Net.WebException:遠程服務器返回錯誤:(401)未經授權。在System.Net.HttpWebRequest.GetResponse()在Microsoft.TeamFoundation.DistributedTask.Server.WebApiProxy.HttpRequestProxy.ExecuteRequest(HttpRequestMessage requestMessage,IList'1 sourceDefinitions,DataSource dataSource) –