1

在我们的公共测试环境中,第一次连接 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

dumpStack() 显示以下内容;

javax.naming.CommunicationException [Root exception is java.net.ConnectException: t3s://xxx.xxx.xxx.xxx:nnnn: Destination unreachable; nested exception is:
    java.net.SocketException: Write failed: Broken pipe; No available router to destination]
javax.naming.CommunicationException [Root exception is java.net.ConnectException: t3s://xxx.xxx.xxx.xxx:nnnn: Destination unreachable; nested exception is:
    java.net.SocketException: Write failed: Broken pipe; No available router to destination]

在此之后,我尝试再次连接并发生这种情况;

Connecting to t3s://xxx.xxx.xxx.xxx:nnnn with userid adminuserid ...
Successfully connected to Admin Server 'ourTestServer' that belongs to domain 'ourTestDomain'.

我现在已经尝试了大约 10 次,它总是一样,第一次尝试失败,第二次尝试成功。每次我都使用 IP 而不是地址的名称。这是在带有最新安全补丁的 WLS 10.3.6 的 Linux (RHEL6) 中。

我假设服务器日志中的这一行是相关的,因为它发生在上面发布的信息行之后 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>

我很茫然,因为第一次尝试总是失败,第二次尝试成功。

4

2 回答 2

1

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

export WLST_PROPERTIES="-Djava.security.egd=file:/dev/./urandom"

或者,如果您不使用 wlst.sh 脚本来启动 JVM,则可以将等效项添加到命令行。

我在这里找到了答案: https ://community.oracle.com/thread/1036828?start=0&tstart=0

这显然归结为“低熵”机器上的随机数生成器的问题。请参阅第 11.28.8 节。 http://docs.oracle.com/cd/E14571_01/doc.1111/e14773/weblogic_server_issues.htm

我有问题的服务器机器目前使用得非常少,所以这是有道理的。

于 2015-03-03T23:19:54.330 回答
0

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

于 2014-10-07T15:26:34.503 回答