并行的linux批量管理工具,pypdsh 并行管理工具:向 Linux 服务器批量下发命令

在做性能测试的时候会创建很多虚机作为压力发射机,最初使用的 pdsh 这个工具,用起来不是很顺手,就用 python 写一个工具。

与 pdsh 相比,pypdsh 方便之处在于:

不需要提前设置 ssh 秘钥建立信任;

只需要在管理主机上安装好 pypdsh,可以向客户机发送文件或拉取文件;

与 pdsh 相比缺少的功能:

没有命令交互模式,只能向客户机发送命令

源码

安装 pip install pypdsh

使用介绍 -h, --help 显示帮助信息

-i IP, --ip=IP 单个IP地址或使用如下格式的IP组“192.168.1.[1-10,16,19,30-40]”

-I IP, --IP=IP CSV格式的文件,文件内容分三列:ip,username,password

-c COMMAND, --command=COMMAND 单条命令,或将命令写在TXT文件中

-f FILE, --file=FILE 向每个客户端发送文件

-g LOCALPATH, --get=LOCALPATH 从客户端获取文件并保存在LOCALPATH中,必须配合-d参数使用,获取到的文件会以各个客户端的IP作为区分

-d DESTINATION, --destination=DESTINATION 从客户端获取文件的路径,路径必须存在于每个客户端中

-p PASSWORD, --password=PASSWORD 客户端后台密码,此方式会在history中留下后台密码,如介意请使用-I参数,所有密码从CSV文件中获取,或不填写此参数,会提示输入密码,此时输入密码不会在history中留下密码信息

-u USERNAME, --username=USERNAME 客户端后台用户名,默认为root

--log-level=LOG_LEVEL 控制台输出的日志等级,可输入INFO或ERROR,默认为INFO

-v, --version pypdsh版本

使用示例:

#向ip段192.168.1.[1-10,20-30,35,38,40-50]发送“ifconfig ens33”的命令,并在控制台仅获取ERROR级别的输出(日志默认保存到当前目录,且INFO以上级别)

pypdsh -i 192.168.1.[1-10,20-30,35,38,40-50] -c "ifconfig ens33" --log-level=error

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值