如果你经常需要在多台服务器上执行相同或不同的SSH命令,你可能会觉得这是一件很繁琐和耗时的事情。你需要一个一个地登录到每台服务器上,然后输入或粘贴命令,然后等待结果,然后重复这个过程。有没有一种方法可以让你一次性地在多台服务器上执行SSH命令,并且能够异步地获取结果呢?答案是有的,那就是parallel-ssh这个工具。parallel-ssh是一个异步的并行SSH客户端库,它可以让你在数百或数十万台服务器上同时执行SSH命令,并且对客户端主机的系统负载很小。它基于C库实现了高性能的原生代码客户端,与其他Python SSH库相比有很多优势。本文将为你介绍如何安装和使用parallel-ssh这个工具,以及一些示例和注意事项。
它与其他替代方案、其他库和更高级的框架(如Ansible或Chef)在几个方面有所区别:
-
可扩展性 – 可以扩展到数百、数千、数万个主机甚至更多。 -
易用性 – 只需两行代码即可在任意数量的主机上运行命令。 -
速度 – 是最快的Python SSH库,可以查看性能比较。 -
资源利用 – 在所有Python SSH库中,它使用的CPU和内存资源最少。 -
还有其他更多特点。
您可以使用 pip 安装 parallel-ssh。
linuxmi@linuxmi:~/www.linuxmi.com$ pip install parallel-ssh
参数:
-
-p:将给定的数字作为并发连接的最大数量。 -
-h:从给定的主机文件中读取主机。 -
-i:显示每个主机的stdout和stderr。 -
-l:连接的用户。 -
-I::读取输入并发送给每个ssh进程。
示例:在主机文件中定义的服务器上执行命令
parallel-ssh -p10 -h
示例:远程执行本地脚本
parallel-ssh -p10 -i -h
parallel-ssh 并不像 Ansible 那样功能强大或功能齐全,但对于日常操作来说非常有用,且学习曲线较低!
通过本文,你已经了解了如何安装和使用parallel-ssh这个工具,以及一些示例和注意事项。你可以使用这个工具来提高你在多台服务器上执行SSH命令的效率和便利性,实现各种自动化和批处理的任务。当然,这只是parallel-ssh提供的众多功能和选项中的一部分,如果你想深入学习parallel-ssh和Linux系统管理,还需要不断地探索和实践。希望本文能够对你的学习和工作有所帮助,也欢迎你分享你自己使用或发现的其他实用的parallel-ssh技巧。
以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !