我正在尝试为Visual Studio 2013 Web性能测试设置控制器和代理,并且在配置代理时收到错误消息"无法向测试控制器注册此测试代理。连接到测试控制器MyController:6901失败,因为测试控制器可访问或服务未运行。"
日志中的详细错误消息是:" System.Net.Sockets.SocketException(0x80004005):没有这样的主机已知"
我下载了#34; Microsoft Visual Studio 2013代理商,"来自http://www.microsoft.com/en-us/download/details.aspx?id=40750
控制器MyController是运行Windows 7 Professional SP1的64位物理机。 MyDomain \ MyUser是此计算机的管理员。 Windows防火墙未启用。
我以MyDomain \ MyUser身份登录控制器计算机并运行控制器安装。我将登录帐户指定为MyDomain \ MyUserName并选中"配置测试控制器以进行负载测试。"
安装完成后我发现:
尝试配置代理时出现问题。
代理计算机是运行Windows 7 Professional SP1的64位虚拟机。 MyDomain \ MyUser是此计算机的管理员。 Windows防火墙未启用。
我以MyDomain \ MyUser身份登录代理计算机并运行代理程序安装。在安装结束时,配置测试代理"出现对话框。它提出了两个问题:
错误消息为"无法向测试控制器注册此测试代理。连接到测试控制器MyController:6901失败,因为测试控制器可访问或服务未运行。"
测试代理具有详细的错误日志。以下是相关部分:
I,2015/03 / 26,09:35:57.872,AgentConfiguration:未在任何控制器上配置Found代理。 I,2015/03 / 26,09:35:57.872,获取有关控制器的信息:MyController:6901。 I,2015/03 / 26,09:35:57.872,创建频道 I,2015/03 / 26,09:35:57.997,CreateControllerObject:ControllerVersion:12.0 I,2015/03 / 26,09:36:02.943,CreateControllerObject:尝试0,System.Net.Sockets.SocketException(0x80004005):没有这样的主机已知
服务器堆栈跟踪: 在System.Net.Dns.GetAddrInfo(String name) 在System.Net.Dns.InternalGetHostByName(String hostName,Boolean includeIPv6) 在System.Net.Dns.GetHostAddresses(String hostNameOrAddress) 在System.Runtime.Remoting.Channels.RemoteConnection.CreateNewSocket() 在System.Runtime.Remoting.Channels.RemoteConnection.GetSocket() 在System.Runtime.Remoting.Channels.SocketCache.GetSocket(String machinePortAndSid,Boolean openNew) 在System.Runtime.Remoting.Channels.Tcp.TcpClientTransportSink.SendRequestWithRetry(IMessage msg,ITransportHeaders requestHeaders,Stream requestStream) 在System.Runtime.Remoting.Channels.Tcp.TcpClientTransportSink.ProcessMessage(IMessage消息,ITransportHeaders requestHeaders,Stream requestStream,ITransportHeaders& responseHeaders,Stream& responseStream) 在System.Runtime.Remoting.Channels.BinaryClientFormatterSink.SyncProcessMessage(IMessage msg)
我重启MyAgent并得到同样的错误。
从MyAgent我可以成功ping MyController。
从MyAgent我可以telnet MyController 6901并获得空白屏幕(这意味着端口已打开)。
我尝试了此处提到的修复(http://support.microsoft.com/en-us/kb/2823477),将控制器计算机域的DSN后缀附加到控制器计算机和代理计算机上的NIC的TCP \ IP设置。由于MyAgent和MyController能够仅使用机器名称相互ping通,因此我不希望此解决方案起作用,并且它不起作用。
我在Windows 7 64位物理计算机(而不是虚拟机)上重复了此代理安装,并收到完全相同的错误。
以前版本的Visual Studio有一些修补程序(例如http://support.microsoft.com/en-us/kb/2643086),但VS 2013没有。
答案 0 :(得分:0)
我们的代理机器与控制器机器位于不同的子网上。
当我们将控制器移动到与代理机器相同的子网中的机器时,它开始工作。
这可能是因为为控制器使用物理机器而代理商使用的是虚拟机,但这是猜测。