首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用smash clp执行python pssh

如何使用smash clp执行python pssh
EN

Stack Overflow用户
提问于 2020-02-06 01:38:11
回答 1查看 103关注 0票数 0

我正在尝试自动获取500台服务器的状态。我可以通过ssh进入服务器bmc控制台,该控制台使用有效的用户名和密码打开一个smash clp终端,然后运行命令:chassis --get power status,这将在屏幕上返回:The host status is on

我已经对服务器执行了pssh,但是在服务器关闭的情况下,我想通过BMC控制台执行pssh,并运行相同的命令来检查服务器是否可用。当我在控制台上对pssh使用与在服务器上相同的方法时,什么也没有发生。没有返回,没有错误,它一直在执行脚本,直到我强制它停止。

如何通过pssh连接到smash clp?

我的简单测试脚本:

代码语言:javascript
复制
from pssh.clients import ParallelSSHClient

hosts = ['server-con']
username='uname'
password='password'
client = ParallelSSHClient(hosts, username, password)
output = client.run_command('chassis --get power status')
for host, host_output in output.items():
    for line in host_output.stdout:
        print(line)
EN

回答 1

Stack Overflow用户

发布于 2020-02-06 01:45:57

我不知道BMC控制台或机箱,但据我所知,您正在尝试包装python ssh命令来远程运行,但遇到了问题。

我的建议是简单地使用子进程并运行它

代码语言:javascript
复制
output = subprocess.run("ssh foo chassis --get power status", shell=True, stdout=subprocess.PIPE)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60081258

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档