首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

通过ssh在多台Windows计算机上实现python的并行处理

通过ssh在多台Windows计算机上实现Python的并行处理,可以使用以下步骤:

  1. 确保每台Windows计算机上都已安装Python解释器,并且已配置好环境变量。
  2. 在每台计算机上安装并配置OpenSSH服务器。可以使用OpenSSH for Windows或Cygwin来实现。
  3. 在主机上编写一个Python脚本,用于并行处理任务。可以使用multiprocessing或concurrent.futures模块来实现。
  4. 在主机上安装paramiko库,用于通过SSH连接到远程计算机并执行命令。
  5. 在主机上编写一个函数,用于通过SSH连接到远程计算机并执行Python脚本。可以使用paramiko库来实现。
  6. 在主机上编写一个函数,用于将任务分配给远程计算机并获取结果。可以使用paramiko库来实现。
  7. 在主机上调用函数,将任务分配给远程计算机并获取结果。

以下是一个示例代码:

代码语言:txt
复制
import paramiko
from concurrent.futures import ThreadPoolExecutor

def execute_command(ssh, command):
    stdin, stdout, stderr = ssh.exec_command(command)
    return stdout.read().decode()

def run_remote_python_script(hostname, username, password, script_path):
    ssh = paramiko.SSHClient()
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    ssh.connect(hostname, username=username, password=password)
    
    result = execute_command(ssh, f"python {script_path}")
    
    ssh.close()
    
    return result

def distribute_tasks(hostnames, username, password, script_path):
    results = []
    
    with ThreadPoolExecutor() as executor:
        for hostname in hostnames:
            result = executor.submit(run_remote_python_script, hostname, username, password, script_path)
            results.append(result)
    
    for result in results:
        print(result.result())

if __name__ == "__main__":
    hostnames = ["hostname1", "hostname2", "hostname3"]
    username = "your_username"
    password = "your_password"
    script_path = "path_to_your_python_script.py"
    
    distribute_tasks(hostnames, username, password, script_path)

在上述示例代码中,我们使用paramiko库来通过SSH连接到远程计算机并执行Python脚本。通过ThreadPoolExecutor来实现并行处理任务,并使用submit方法将任务提交给线程池。最后,我们打印每个任务的结果。

请注意,上述示例代码仅供参考,实际使用时需要根据具体情况进行修改和调整。

推荐的腾讯云相关产品:腾讯云弹性云服务器(ECS)和腾讯云云服务器(CVM)。您可以通过以下链接了解更多信息:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Windows 10计算机上安装Python最佳方法是什么?

本文中,我们将讨论Windows 10计算机上安装Python最佳方法,包括每种方法分步指南。...方法 1:使用 Microsoft Store 安装 Python Windows 10计算机上安装Python第一种方法是通过Microsoft Store。...方法 2:使用 Python 网站安装 Python Windows 10计算机上安装Python另一种方法是使用Python网站。...结论 总之,Windows 10计算机上安装Python有几种不同方法,包括使用Microsoft Store,Python网站和Anaconda Distribution。...每种方法都有自己优缺点,最适合您方法将取决于您特定需求和偏好。 按照本文中概述步骤,您可以轻松有效地 Windows 10 计算机上安装 Python

2.3K40

社交网络分析 R 基础:(四)循环与并行

循环语句 while for 循环控制 apply() 系列函数 apply() sapply() 使用 parallel 包并行处理 机上并行 多台计算机上并行 循环语句 while while...机上并行 机上处理并行计算概念很好理解,就是将需要并行处理任务分配到计算多个 CPU 内核中,这也是最常见场景。继续以“对一个矩阵行求和”为例,采用并行方式解决这个问题。...并且并行计算速度还与计算机之间通信速度有关,从机变量共享来自于主机,当网络情况不佳时,通信消耗也是不容忽视。因此多台计算机上进行并行任务时需要谨慎考虑。...多台计算机上并行机上并行区别仅在于集群创建,因此本小节将只介绍集群创建不同。...现在可以使用 parApply() 系列函数将任务并行多台计算机上运行。

1.3K10
  • Linux 下自动化工具 Parallel SSH 中文使用指南

    /libexec/bin/pssh-askpass 编号 子命令 对应功能解释 1 pssh 通过 ssh 协议多台机上并行地运行命令 2 pscp 通过 ssh 协议把文件并行地复制到多台机上...3 rsync 通过 rsync 协议把文件高效地并行复制到多台机上 4 slurp 通过 ssh 协议把文件并行地从多个远程主机复制到中心主机上 5 pnuke 通过 ssh 协议并行多个远程主机上杀死进程...1. pssh 通过 ssh 协议多台机上并行地运行命令 命令参数使用 编号 参数选项 对应参数解释 1 -h HOST_FILE 指定主机文件列表文件;内容格式为”[user@]host[:port.../script.sh; exit' 2. pscp 通过 ssh 协议把文件并行地复制到多台机上 命令参数使用 编号 参数选项 对应参数解释 1 -h HOST_FILE 指定主机文件列表文件;内容格式为...5. pnuke 通过 ssh 协议并行多个远程主机上杀死进程 命令参数使用 编号 参数选项 对应参数解释 1 -h HOST_FILE 指定主机文件列表文件;内容格式为”[user@]host[

    82060

    Linux 下自动化工具 Parallel SSH 中文使用指南

    /libexec/bin/pssh-askpass 编号 子命令 对应功能解释 1 pssh 通过 ssh 协议多台机上并行地运行命令 2 pscp 通过 ssh 协议把文件并行地复制到多台机上...3 rsync 通过 rsync 协议把文件高效地并行复制到多台机上 4 slurp 通过 ssh 协议把文件并行地从多个远程主机复制到中心主机上 5 pnuke 通过 ssh 协议并行多个远程主机上杀死进程...1. pssh 通过 ssh 协议多台机上并行地运行命令 命令参数使用 编号 参数选项 对应参数解释 1 -h HOST_FILE 指定主机文件列表文件;内容格式为”[user@]host[:port.../script.sh; exit' 2. pscp 通过 ssh 协议把文件并行地复制到多台机上 命令参数使用 编号 参数选项 对应参数解释 1 -h HOST_FILE 指定主机文件列表文件;内容格式为...5. pnuke 通过 ssh 协议并行多个远程主机上杀死进程 命令参数使用 编号 参数选项 对应参数解释 1 -h HOST_FILE 指定主机文件列表文件;内容格式为”[user@]host

    95220

    Linux 下自动化工具 Parallel SSH 中文使用指南

    parallel-ssh 是为小规模自动化而设计异步并行 SSH 库,包括 pssh、pscp、prsync、pslurp 和 pnuke工具,其源代码使用 Python语言编写开发。...只需两行代码,即可在任意数量机上运行命令 执行高效 号称是最快 Python SSH 库可用 资源使用 相比于其他 Python SSH 库,其消耗资源最少 安装 # Mac系统安装 $ brew.../libexec/bin/pssh-askpass pssh 通过 ssh 协议多台机上并行地运行命令 命令参数使用 适用范例 # Usage: pssh [OPTIONS] command [.../script.sh; exit' 2. pscp 通过 ssh 协议把文件并行地复制到多台机上 命令参数使用 适用范例 # Usage: pscp [OPTIONS] local remote.../home/irb2/foo.txt foo.txt 5. pnuke 通过 ssh 协议并行多个远程主机上杀死进程 命令参数使用 适用范例 # Usage: pnuke [OPTIONS] pattern

    1.7K40

    自动化运维之Ansible服务部署详述

    Python 无 YAML 支持命令行 SaltStack Python C/S YAML 支持命令行 Puppet Ruby C/S Ruby语法格式 通过模块实现 Ansible...默认通过SSH协议进行远程命令执行或下发配置,无需部署任何客户端代理软件,从而使得自动化环境部署变得更加简单。可同时支持多台主机并行管理,使得管理主机更加便捷。...官方title是“Ansible is Simple IT Automation”——简单自动化IT工具。 Ansible通过SSH协议实现远程节点和管理节点之间通信。...理论上说,只要管理员通过ssh登录到一台远程主机上能做操作,Ansible都可以做到。...ansible功能特性: 应用代码自动化部署 系统管理配置自动化 支持持续交付自动化 支持云计算,大数据平台环境 轻量级,无序客户端安装agent,更新时只需控制机上进行更行即可 批量任务执行可以写成脚本

    1.2K20

    【大数据实训】基于Hadoop2019年11月至2020年2月宁波天气数据分析(五)

    20 分布式计算 生成 Mapreduce Jar 包,可在虚拟机主节点或本地计算机上进行分布式计算。...用户可以不了解分布式底层细节情况下,开发分布式程序。充分利用集群威力进行高速运算和存储。它目的是从单一服务器扩展到成千上万机器,将集群部署多台机器,每个机器提供本地计算和存储。...Hadoop 框架最核心设计是 HDFS 和 MapReduce。 Hadoop 为多个节点集群上处理数据提供了有效框架,可以多台机器上运行,提供数据并行处理。...图 1.18 SSH 连接 SFTP 连接 打开 WinSCP,文件协议选择 SFTP。连接成功后,可以实现主机与虚拟机文件互传。...1.3windows搭建hadoop开发环境 1.3.1windows上搭建hadoop开发环境原因 上文中已经创建好了 Maven 工程,本文使用分布式计算框架 MapReduce 编程时,需要将

    25520

    自动化运维之PSSH

    1.PSSH简介 PSSH提供OpenSSH和相关工具并行版本。包括pssh,pscp,prsync,pnuke和pslurp。该项目包括psshlib,可以自定义应用程序中使用。...pssh是python可以并发在多台机器上批量执行命令工具,它用法可以媲美ansible一些简单用法,执行起来速度比ansible快它支持文件并行复制,远程命令执行,杀掉远程主机上进程等等。...-2.3.1-py2.6.egg-info 2.2 安装完成 使用yum安装后,只能使用pssh,但是编译安装后会包括其他命令也安装了(pscp prsync pnuke pslurp) pssh:远程多台机上并行运行命令...Example: prsync -r -h hosts.txt -l irb2 foo /home/irb2/foo pnuke:远程多台机上并行killall某一进程 Example: pnuke...-o 将输出内容重定向到一个指定文件中 -O 指定ssh参数具体配置 -e 将执行错误重定向到一个指定文件中 -t 设定命令执行超时时间 -x 传递ssh命令一些参数 -i 远程主机上执行命令完成后显示标准输出和标准错误

    2.1K30

    如何批量多台服务器上执行命令

    一些场景里,我们可能需要同时多台服务器上执行命令,如果一台台登录服务器执行嘛,这效率未免太低了。 有没有什么比较简单方式,可以实现批量多台服务器上执行命令呢。...场景2:Windows服务器批量执行命令 Windows中有很多种方式可以实现横向移动,通过系统自带命令或工具可以实现。但如果我们需要在多台服务器上执行命令,有没有一种比较简洁方式?...PsExec一行命令就可以实现: PsExec.exe @file -u administrator -p xxxx -s -i -c 1.bat 如上,PsExec将在file文件中列出每台计算机上执行...这里介绍两种简单方式,通过编写shell/python脚本快速实现批量命令执行。 (1)使用expect批量自动登录服务器并执行命令 #!...(2)使用Fabric工具实现批量命令执行 Fabric是一个使用python编写自动化运维工具,我们可以通过这个工具来编写脚本实现很多功能。

    4.4K40

    每周学点大数据 | No.69 多机配置

    王:关于 Hadoop 内容介绍最后,我们来谈谈如何把 Hadoop 配置多台计算机上。 小可 :嗯,到目前为止,所有的程序还都仅仅运行在一台计算机上。 Mr....王 :实际 Hadoop 应用中,我们使用往往是多台服务器组成服务器阵列。...有时还要使用多个机架,这些机架之间通过一个交换机相连,每个机架内部还有多台服务器核心,这些服务器之间也通过交换机相连接。...当我们要处理数据量达到一定规模时,每个机架中会有几十台计算机参与到并行计算之中。 ?... S1(S2)机器中,就在文件中输入 S1(S2)。 接下来我们让计算机之间可以通过 SSH 互相免密码登录。

    68460

    在家搭建大数据分布式计算环境!

    前言 分布式并行编程可以大幅提高程序性能,实现高效批量数据处理。分布式程序运行在大规模计算机集群上(廉价服务器),可以并行执行大规模数据处理任务,从而获得海量计算能力。...因此目前常用大数据软件都可以部署分布式计算环境种。 关于大数据概论,在前面的文章中已经详细讲解,这里就不再赘述。...安装VirtualBox 为了体验分布式计算环境,就需要有多台设备,但是家用一般也只会有1台物理机器,想体验分布式计算就需要使用虚拟机搭建多个虚拟电脑。...小结 本文通过VirtualBox构建了3台虚拟机,并在虚拟机上安装了Ubantu系统,通过设计虚拟网卡让3台虚拟机之间能够互相通信,这样虚拟机和真实分布式环境相当接近,也方便我们在家体验分布式计算环境...我们可以虚拟机上部署Mysql、Hadoop、Hive、zookeeper、kafka等大数据软件,不同软件部署方法也不尽相同,由于篇幅限制,这里我们不详细介绍这些软件安装流程。

    2K10

    自动化运维之Ansible安装部署

    初步了解Ansible ansible基于Python开发,,集合了众多运维工具优点,实现了批量运行命令,部署程序,配置系统等功能。...默认通过SSH协议进行远程命令执行或下发配置,无需部署任何客户端代理软件,从而使得自动化环境部署变得更加简单。可同时支持多台主机并行管理,使得管理主机更加便捷。...任务配置文件,即将多个任务定义一个剧本中由ansible自动执行,可以由控制主机针对多台被管理主机同时运行多个任务 Core modules 核心模块:是ansible自带模块,使用这些模块将资源分发到被管理主机...这里我使用是CentOS7操作系统,通过yum方式安装ansible,需要依赖第三方epel源。...无密码登录 为了避免ansible下发指令时输入被管理主机密码,可以通过证书签名达到SSH无密码登录效果,使用ssh-keygen产生一对密匙,使用ssh-copy-id来下发生成公匙 关闭三台服务器防火墙

    1.4K50

    Telnet,SSH1,SSH2,TelnetSSL,Rlogin,Serial,TAPI,RAW

    就会出现非常严重问题。 Telnet协议是TCP/IP协议族中一员,是Internet远程登陆服务标准协议和主要方式。它为用户提供了本地计算机上完毕远程主机工作能力。...计算机硬件和传输数据:串行连接、操作以及媒质通常意味着比較慢而简单得操作,而并行意味着较快操作。...这样暗示并不总是正确,由于串行媒质(比如,光纤电缆)可远远快于并行传输多个信号媒质。   PC中,打印机通常通过并行接口和电缆连接。从而可以较快打印。...传统计算机及其程序经常是串行工作。计算机逐个地读取程序并运行其指令,然而,一些现代计算机具有多个处理器。可并行运行指令。...创建 TCP/IPport之后,Windows将依照RFC 1759(Printer MIB),使用SNMP来查询设备对象标识符(Object Identifier。OID)。

    1.2K10

    Python远程部署利器Fabric详解-转载

    Fabric是一个Python库,它提供了丰富SSH交互接口,可以用来本地或远程机器上自动化、流水化地执行Shell命令。因此它非常适合用来做应用远程部署及系统维护。...内容索引 安装Fabric 第一个例子 执行本地命令 执行远程命令 SSH功能函数 上下文管理器 错误处理 并行执行 补充 安装Fabric 首先Python版本必须是2.7以上,可以通过下面的命令查看当前...它通过SSH实现,你需要脚本中配置远程机器地址及登录信息: from fabric.api import run, env env.hosts = [‘example1.com’, ‘example2...hello 另外,多台机器任务是串行执行,关于并行任务执行我们之后会介绍。...我们介绍执行远程命令时曾提到过多台机器任务默认情况下是串行执行

    1.1K10

    Ansible 批量部署 zabbix-agent

    Ansible简介 ansible基于python开发,集合了众多优秀运维工具优点,实现了批量运行命令、部署程序、配置系统等功能。...默认通过SSH协议进行远程命令执行或下发配置,无需部署任何客户端代理软件,从而使得自动化环境部署变得更加简单。可同时支持多台主机并进行管理,使得管理主机更加便捷。主版本大概每2个月发布一次。...Connection plugins:负责和被管理主机实现通信。除支持使用ssh连接被管理主机外, Ansible还支持其他连接方式,所以需要有连接插件将各个主机用连接插件连接到 Ansible。...Playbooks:用来集中定义 Ansible任务配置文件,即将多个任务定义一个剧本中由 Ansible自动执行,可以由控制主机针对多台被管理主机同时运行多个任务。...ansible功能特性 应用代码自动化部署 系统管理配置自动化 支持持续交付自动化 支持云计算,大数据平台环境 轻量级,无需客户端安装agent,更新时只需控制机上进行更改即可 批量任务执行可以写成脚本

    1.2K30

    Ansible 批量部署 zabbix-agent

    Ansible简介 ansible基于python开发,集合了众多优秀运维工具优点,实现了批量运行命令、部署程序、配置系统等功能。...默认通过SSH协议进行远程命令执行或下发配置,无需部署任何客户端代理软件,从而使得自动化环境部署变得更加简单。可同时支持多台主机并进行管理,使得管理主机更加便捷。主版本大概每2个月发布一次。...Connection plugins:负责和被管理主机实现通信。除支持使用ssh连接被管理主机外, Ansible还支持其他连接方式,所以需要有连接插件将各个主机用连接插件连接到 Ansible。...Playbooks:用来集中定义 Ansible任务配置文件,即将多个任务定义一个剧本中由 Ansible自动执行,可以由控制主机针对多台被管理主机同时运行多个任务。...ansible功能特性 应用代码自动化部署 系统管理配置自动化 支持持续交付自动化 支持云计算,大数据平台环境 轻量级,无需客户端安装agent,更新时只需控制机上进行更改即可 批量任务执行可以写成脚本

    1.8K20

    Ansible运维自动化平台初识

    saltstack: saltstack和ansible都是python,而且就功能上来讲,两者也极为相似,不同之处是salt stack是有客户端,并且execution模块还用0MQ实现了pub-sub...优点 轻量级,无需客户端安装agent,更新时,只需操作机上进行一次更新即可; 批量任务执行可以写成脚本,而且不用分发到远程就可以执行; 使用python编写,维护更简单,ruby语法过于复杂; 支持...· 连接插件(connection plugins):ansible基于连接插件连接到各个主机上,负责和被管理节点实现通信。...ansible采用paramiko协议库(Fabric也使用这个,基于python开发,支持SSHV2),通过ssh或者ZeroMQ等连接主机。...ansible控制主机主机将ansible模块通过ssh协议(或者Kerberos、LDAP)推送到被管节点执行,执行完之后自动删除。

    1.5K10

    资源 | 一张速查表实现Apache MXNet深度学习框架五大特征开发利用

    通过它,你可以创建卷积神经网络,LSTM 网络和其它模型。它支持多种语言,包括但不限于 Python、Scala、R和 Julia 。本文将对 MXNet 五大特征实现进行介绍。...默认情况下,MXNet 使用数据并行化以多个 GPU 间对工作负载进行划分。...多台计算机上进行训练 MXNet 是一种分布式深度学习框架,用于简化单一服务器或多个服务器中进行多 GPU 训练。...为了用多个服务器进行训练,你需要在所有计算机上安装 MXNet ,确保它们之间可以通过 SSH 进行交流,随后创建一个包含服务器 IP 文件。...你可以使用一个环境变量以整体 Python 程序中对它进行驱动。或者,你可以通过将它整合进下列代码,以程序一个子集中对它进行使用。

    79560
    领券