通过SSH配置多台机器的集中式python脚本

2024-05-16 20:43:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我想要一个python脚本来自动配置一组机器。 假设:

  • 我们有3台ubuntu机器:M1M2和虚拟机VM 安装在M2上
  • M1可以通过SSH到达M2
  • M2可以通过SSH访问VM

目前,我在每台机器(m1.sh、m2.sh和vm.sh)上本地存储了一个bash脚本

  • 要从M1配置M2,我在M1.sh上运行:ssh M2 "bash m2.sh"
  • 要从M2配置VM,我在M2.sh上运行:ssh VM "bash vm.sh"

有没有任何可能的方法让一个集中式的python脚本只在M1上运行,而不必在每台机器上都有一个脚本

任何帮助都将不胜感激


Tags: 方法脚本bash机器ubuntushvmssh
3条回答

非常感谢你的帮助

我已经通过设置一些转发规则解决了我的问题,如here所述

帕拉米科是我正在使用的图书馆

具体取决于您想要配置什么,并且如果您严格限于Python,您可以使用Paramiko并从M1执行命令。或者您可以使用Landscape来配置和管理机器

Fabric library就是为这个用例设计的。它构建在pythonsh库Paramiko之上,并提供了一种远程运行Python的简单方法,而无需复制脚本

相关问题 更多 >