Paramiko exec_command表现不如预期

时间:2017-06-02 17:24:13

标签: python weblogic paramiko

我有一个Python脚本来启动一组 WebLogic 服务器的节点管理器。这样做的主要要求如下:

stdin, stdout, stderr = client.exec_command('/app/oracle/Middleware/Oracle_Home/user_projects/domains/base_domain/bin/startNodeManager.sh')

这将启动服务器上的进程,但是当我尝试通过WLST的nmConnect()连接到节点管理器时,我收到节点管理器无法正常工作的错误。然而,一台机器工作......

我是从另一台机器上的脚本运行的。该脚本使用第三方 paramiko Python库ssh到远程计算机,然后调用上面的命令。这个问题的一个有趣的部分是该程序在ps -ef | grep nodemanager中运行。但是,当我尝试发出nmConnect()时,如果我自己从操作系统手动启动节点管理器,我就无法正常连接。

1 个答案:

答案 0 :(得分:0)

startNodeManager.sh是否可以输出多行输出?如果是这样,我的猜测是在执行期间阻止进程,因为你没有读出它的输出...

为了通过paramiko执行命令的正确方法,我建议您查看:http://stackoverflow.com/a/32758464