Weblogic 到管理端口的WLST连接在第一次尝试时总是失败

Weblogic 到管理端口的WLST连接在第一次尝试时总是失败,weblogic,connect,wlst,broken-pipe,rhel6,Weblogic,Connect,Wlst,Broken Pipe,Rhel6,在我们的公共测试环境中,首次尝试在WLST中连接总是失败。然后,第二次尝试始终有效,并建立连接。我在谷歌上找不到类似的东西,所以我希望这里有人能帮我 在我第一次尝试时 <Oct 7, 2014 1:49:03 PM EEST> <Info> <Security> <BEA-090905> <Disabling CryptoJ JCE Provider self-integrity check for better startup perfor

在我们的公共测试环境中,首次尝试在WLST中连接总是失败。然后,第二次尝试始终有效,并建立连接。我在谷歌上找不到类似的东西,所以我希望这里有人能帮我

在我第一次尝试时

<Oct 7, 2014 1:49:03 PM EEST> <Info> <Security> <BEA-090905> <Disabling CryptoJ JCE Provider self-integrity check for better startup performance. To enable this check, specify -Dweblogic.security.allowCryptoJDefaultJCEVerification=true>
<Oct 7, 2014 1:49:03 PM EEST> <Info> <Security> <BEA-090906> <Changing the default Random Number Generator in RSA CryptoJ from ECDRBG to FIPS186PRNG. To disable this change, specify -Dweblogic.security.allowCryptoJDefaultPRNG=true>
Traceback (innermost last):
File "<console>", line 1, in ?
File "<iostream>", line 22, in connect
File "<iostream>", line 653, in raiseWLSTException
WLSTException: Error occured while performing connect : Error getting the initial context. There is no server running at t3s://xxx.xxx.xxx.xxx:nnnn
在这之后,我尝试再次连接,这发生了

Connecting to t3s://xxx.xxx.xxx.xxx:nnnn with userid adminuserid ...
Successfully connected to Admin Server 'ourTestServer' that belongs to domain 'ourTestDomain'.
我已经试过10次了,每次都是一样的,第一次失败,第二次成功。每次我都使用IP而不是地址的名称。这是在Linux(RHEL6)和WLS 10.3.6以及最新的安全补丁中实现的

我假设服务器日志中的这一行是相关的,因为它发生在上面发布的信息行之后29秒

####<Oct 7, 2014 1:49:32 PM EEST> <Warning> <Socket> <machinename.domain.local> <ourTestServer> <[ACTIVE] ExecuteThread: '19' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1412678972504> <BEA-000449> <Closing socket as no data read from it on xxx.xxx.xxx.xxx:nnnn during the configured idle timeout of 25 secs>
####

我不知所措,因为第一次尝试总是失败的,第二次尝试总是有效的。

在执行此操作时,您可以尝试运行TCP转储吗。是否有某种类型的负载平衡器,因为听起来好像有50%的故障,这是一致的。同时检查access.log条目,查看您是否能够访问服务器。您可以尝试的另一件事是查看/etc/hosts文件,看看您的主机名有哪些条目。

在RHEL 6.5上运行的WebLogic 11g上,我也遇到了同样的问题。在运行wlst.sh之前,这个小片段为我解决了这个问题(如果需要,可以用空格分隔其他属性):

或者,如果不使用wlst.sh脚本启动JVM,则可以在命令行中添加等效项

我在这里找到了答案:

这显然归结为“低熵”机器上随机数发生器的问题。见第11.28.8节。


我的服务器目前很少使用,所以这很有意义。

Hosts文件看起来不错,服务器的主机名和ip只有一个条目。服务器日志包含关于关闭具有匹配IP的套接字的行,在对日志进行grepping之后,我认为只有在我尝试连接时才会发生这种情况,因此请求才会转到服务器。我不确定管理员端口或任何t3(s)连接是否在access.log中结束。我正在使用的IP没有负载平衡器。我曾尝试从多台机器上通过telnet连接到该端口,这在100%的情况下都能正常工作。我将研究在测试时运行TCP转储的可能性。谢谢你的建议。我在Windows上也有同样的问题。一台管理服务器,一台主机,它总是在第二次尝试时连接。Oracle支持没有帮助,所以我们不得不在脚本中添加逻辑来捕获异常并再次尝试连接。。。祝你好运,谢谢。到目前为止,我试过一次,结果成功了。
####<Oct 7, 2014 1:49:32 PM EEST> <Warning> <Socket> <machinename.domain.local> <ourTestServer> <[ACTIVE] ExecuteThread: '19' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1412678972504> <BEA-000449> <Closing socket as no data read from it on xxx.xxx.xxx.xxx:nnnn during the configured idle timeout of 25 secs>
export WLST_PROPERTIES="-Djava.security.egd=file:/dev/./urandom"