版本:IBM InfoSphere DataStage V11.3.1
操作系统:linux redhat 6.4
数据库:Oracle 11.2.0.4.0
问题描述
登陆DataStage客户端 报错信息如下:
无法连接至DataStage伺服器: hostname,项目: ProjectName
(连接已断开(81002)
问题诊断
这个问题可能是由于设置环境变量值不正确或者权限问题导致,诊断步骤如下,根据IBM 官网文档给出步骤执行(用root用户登陆终端):
[root@OCP ~]# ps -ef|grep dsrpc
root 2980 1 0 04:28 ? 00:00:00 /opt/IBM/InformationServer/Server/DSEngine/bin/dsrpcd
root 5782 5762 0 05:15 pts/0 00:00:00 grep dsrpc
[root@OCP ~]# kill 2980
[root@OCP ~]# ps -ef|grep dsrpc
root 5789 5762 0 05:16 pts/0 00:00:00 grep dsrpc
[root@OCP ~]# cd /opt/IBM/InformationServer/Server/DSEngine
[root@OCP DSEngine]# . ./dsenv
[root@OCP DSEngine]# nohup bin/dsrpcd -d9 > dsrpcd.out 2>&1 &
[1] 5845
###############注意此时,需要登陆客户端,印发问题重现,才会生成dsrpcd.out 文件 ###############
[root@OCP DSEngine]# cat dsrpcd.out
nohup: ignoring input
RPCPID=5845 - 05:17:59 - uvrpc_debugflag=9 (Debugging level)
RPCPID=5845 - 05:17:59 - In rpc_init()
RPCPID=5845 - 05:17:59 - address_family=2
RPCPID=5845 - 05:17:59 - address_family=10
RPCPID=5845 - 05:17:59 - Just Before Accept
RPCPID=5845 - 05:18:29 - Accepted socket is from (IP number) ::ffff:192.168.1.100
RPCPID=5845 - 05:18:29 - In read packet
RPCPID=5845 - 05:18:29 - In read message
RPCPID=5845 - 05:18:29 - Read resp: read of header ok
RPCPID=5845 - 05:18:29 - message_length=13
VERSION NUMBER SEQNO
0x6c01 0x 0
MESSAGE LENGTH
0x 13
MESSAGE Key
0x 0
HIGH VERSION COMPRESSION ENCRYPTION
0x 2 0x 0 0x 0
NW RETURN CODE
0x 0
NUM ARGS PROC NAME LEN(PROC NAME)
0x 1 0()
START OF ARG ARRAY DATA
Element 0 Length type
0x 4000000 0x 2000000
ARG DATA
RPCPID=5845 - 05:18:29 - In unpack packet
RPCPID=5845 - 05:18:29 - length of arg 0 = 4
RPCPID=5845 - 05:18:29 - type of arg 0 = 2
RPCPID=5845 - 05:18:29 - char arg(0x 17b13a0)=dscs
RPCPID=5845 - 05:18:29 - looking for service dscs
RPCPID=5845 - 05:18:29 - Found service=dscs
RPCPID=5845 - 05:18:29 - Checking host: *
RPCPID=5845 - 05:18:29 - accept: forking and execing /opt/IBM/InformationServer/Server/DSEngine/bin/dsapi_server
RPCPID=5845 - 05:18:29 - In parent child PID=5852
RPCPID=5845 - 05:18:29 - Just Before Accept
dscs: error while loading shared libraries: libUtilWSClient.so: cannot open shared object file: No such file or directory
RPCPID=5845 - 05:18:29 - waited on child 5852
1.根据上面dsrpcd.out 信息,发现无法找到 libUtilWSClient.so 文件,需要检查相应设置参数路径,错误信息如下:
dscs: error while loading shared libraries: libUtilWSClient.so: cannot open shared object file: No such file or directory
2.该文件存放路径在dsenv 共享库下LD_LIBRARY_PATH:
3. 同时打印路径LD_LIBRARY_PATH,发现没有引用ds参数信息。至此问题原因已经找到!
问题解决
之前dsenv 文件信息如下:
将共享路径设置为了Oracle导致错误,需要改写为:
注意:修改之后需要重启服务端。
此问题可参照IBM 官网提供诊断方法:
The DataStage Engine is starting normally without any errors but DataStage Clients, such as Designer and Director, fail with the error: