一种基于LINUX平台的批量执行框架的实现方法及装置制造方法及图纸

技术编号:24352286 阅读:58 留言:0更新日期:2020-06-03 01:50
本发明专利技术公开了一种基于LINUX平台的批量执行框架的实现方法及装置,该方法包括S1.基于CS架构建立框架结构;S2.框架基于IPLIST的个数,创建对应个数的线程;S3.将每个对ip的请求操作放入队列中,通过异步方式对每个队列中的操作进行状态管理;本发明专利技术方法大大降低了运维的难度,对于批量机器的操作变得轻松又有效;试验验证,传统技术中手动操作一台机器需要5min,则本发明专利技术方法操作百台机器也只需要5min,高效的节省的人力成本。

Implementation method and device of batch execution framework based on Linux platform

【技术实现步骤摘要】
一种基于LINUX平台的批量执行框架的实现方法及装置
本专利技术涉及计算机数据处理
,具体而言,为一种基于LINUX平台的批量执行框架的实现方法及装置。
技术介绍
全球范围内企业基础设施更新周期的来临、CSP的强劲采购需求、软件定义所使得服务器在基础设施占比提高、对IntelPurley等新计算平台的广泛需求以及AI等新型业务系统的部署,这些因素导致全球服务器市场的增长。机器数量爆炸式增长,机器在部署上线时,经常会面临百台机器批量操作的问题,如果靠运维人员一台一台机器操作,那会严重影响机器的上线效率。而且日常管理中经常都是重复性的动作,比如配置服务器IP地址,操作繁琐,又重复单一,长期从事这些重复操作,很容易导致疲劳,从而导致误操作。目前现有的一些部署工具,又不能够完全符合企业业务要求,需要二次开发,但是企业运维人员一般又没有这个开发能力。有鉴于此,特提出本专利技术。
技术实现思路
针对现有技术中的缺陷,本专利技术提供一种基于LINUX平台的批量执行框架的实现方法及装置,降低运维的难度。为了实现上述目的,本专利技术的技术方案为:一种基于LINUX平台的批量执行框架的实现方法,包括S1.基于CS架构建立框架结构;S2.框架基于IPLIST的个数,创建对应个数的线程;S3.将每个对ip的请求操作放入队列中,通过异步方式对每个队列中的操作进行状态管理。进一步的,所述S2.基于IPLIST的个数,创建对应个数的线程,包括S21.IP信息采集;收集系统IP,将系统IP放在iplist文件中;每一行是一个ip地址,或者输入ip地址段;S22.指定操作内容;S23.获取iplist文件,读取ip;根据ip数量,生成对应的线程池,通过工具执行后续操作。进一步的,所述S22.指定操作内容包括远程批量文件上传,远程批量文件下载,远程批量执行cmd以及远程批量执行脚本。进一步的,文件上传时,通过参数选择上传到的路径,默认为/root下;将待上传文件放在upload文件夹下面,然后执行操作。进一步的,文件下载时,通过参数选择下载的路径,默认为当前目录下的download文件夹下面,然后执行操作。进一步的,S3.所述将每个对ip的请求操作放入队列中,通过异步方式对每个队列中的操作进行状态管理,包括工具执行:批量的进行操作,待操作结束后,整个工具的执行结果会放在log文件中。进一步的,所述S1.基于CS架构建立框架结构,包括安装python,PyCrypto,paramiko软件;通过connect方法实现远程ssh连接并做校验,然后通过exec_command方法,作为远程执行命令的方法。一种基于LINUX平台的批量执行框架的装置,包括处理器和存储器,存储器中存储有程序,程序被处理器运行时,执行:S1.基于CS架构建立框架结构;S2.框架基于IPLIST的个数,创建对应个数的线程,S3.将每个对ip的请求操作放入队列中,通过异步方式对每个队列中的操作进行状态管理。进一步的,程序执行S2.基于IPLIST的个数,创建对应个数的线程,包括S21.IP信息采集;收集系统IP,将系统IP放在iplist文件中;每一行是一个ip地址,或者输入ip地址段;S22.指定操作内容;S23.获取iplist文件,读取ip;根据ip数量,生成对应的线程池,通过工具执行后续操作。进一步的,程序执行S3.所述将每个对ip的请求操作放入队列中,通过异步方式对每个队列中的操作进行状态管理,包括工具执行:批量的进行操作,待操作结束后,整个工具的执行结果会放在log文件中。本专利技术的有益效果为:大大降低了运维的难度,对于批量机器的操作变得轻松又有效;试验验证,传统技术中手动操作一台机器需要5min,则本专利技术方法操作百台机器也只需要5min,高效的节省的人力成本。附图说明为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。图1为本专利技术方法基于CS架构的示意图;图2为被专利技术方法的一个具体实施例流程图;图3为本专利技术方法中配置server.txt文件的一个具体示例代码示意图;图4为本专利技术方法中文件上传的一个具体示例代码示意图;图5为本专利技术方法中文件下载的一个具体示例代码示意图;图6为本专利技术方法中操作执行的一个具体示例代码示意图;具体实施方式下面将结合附图对本专利技术技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,因此只作为示例,而不能以此来限制本专利技术的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本专利技术所属领域技术人员所理解的通常意义。首先对本专利技术中涉及的技术术语进行解释:实施例1如图1至图2,本专利技术一种基于LINUX平台的批量执行框架的实现方法,包括S1.基于CS架构建立框架结构;S2.基于IPLIST的个数,创建对应个数的线程,S3.将每个对ip的请求操作放入队列中,通过异步方式对每个队列中的操作进行状态管理。本专利技术基于CS的架构(Client/Server架构,即客户端/服务器架构),通过一个sever进行多个client的IP收集、配置管理、任务纷发、结果收集。步骤S1.用python语言来实现的,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接;仅需要在本地上安装相应的软件(包括python,PyCrypto,paramiko),对远程服务器没有配置要求,对于连接多台服务器,进行复杂的操作特别有帮助。基于Python实现的SSH远程安全连接,通过账号密码执行命令,实现远程操作的功能;Paramiko是一个用于做远程控制的模块,可以对远程服务器进行命令或文件操作,需要PyCrypto模块的支持;Paramiko提供了一个核心组件SSHClient,SSHClient类是SSH服务会话的高级表示,通过这个类能够实现传输、通道、以及SFTP的校验、建立。通过这种方式建立的框架结构可扩展性好,任何基于单机的操作/工具,只需要通过添加新的配置文件就可以变为批量操作的工具。首先通过connect方法实现远程ssh连接并做校验,然后通过exec_command方法,作为远程执行命令的方法。SFTPClient类是一个sftp的客户端对象,根据ssh传输协议的sftp会话,实现远程文件的操作,创建一个已连通的SFTP客户端通道,通过put指令和get指令将文件上传和下载到本地。如此操作,将批量管理linux服务器变得很简单,可以自动化信本文档来自技高网...

【技术保护点】
1.一种基于LINUX平台的批量执行框架的实现方法,其特征在于,包括/nS1.基于CS架构建立框架结构;/nS2.所述框架基于IPLIST的个数,创建对应个数的线程;/nS3.将每个对ip的请求操作放入队列中,通过异步方式对每个队列中的操作进行状态管理。/n

【技术特征摘要】
1.一种基于LINUX平台的批量执行框架的实现方法,其特征在于,包括
S1.基于CS架构建立框架结构;
S2.所述框架基于IPLIST的个数,创建对应个数的线程;
S3.将每个对ip的请求操作放入队列中,通过异步方式对每个队列中的操作进行状态管理。


2.根据权利要求1所述的基于LINUX平台的批量执行框架的实现方法,其特征在于,所述S2.基于IPLIST的个数,创建对应个数的线程,包括
S21.IP信息采集;收集系统IP,将系统IP放在iplist文件中;每一行是一个ip地址,或者输入ip地址段;
S22.指定操作内容;
S23.获取iplist文件,读取ip;根据ip数量,生成对应的线程池,通过工具执行后续操作。


3.根据权利要求2所述的基于LINUX平台的批量执行框架的实现方法,其特征在于,所述S22.指定操作内容包括远程批量文件上传,远程批量文件下载,远程批量执行cmd以及远程批量执行脚本。


4.根据权利要求3所述的基于LINUX平台的批量执行框架的实现方法,其特征在于,文件上传时,通过参数选择上传到的路径,默认为/root下;将待上传文件放在upload文件夹下面,然后执行操作。


5.根据权利要求3所述的基于LINUX平台的批量执行框架的实现方法,其特征在于,文件下载时,通过参数选择下载的路径,默认为当前目录下的download文件夹下面,然后执行操作。


6.根据权利要求2所述的基于LINUX平台的批量执行框架的实现方法,其特征在于,S3.所述将每个对ip的请求操作放入队列中,通过异步方式对每个队列中的操作进...

【专利技术属性】
技术研发人员:陈颖秦晓宁
申请(专利权)人:曙光信息产业北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1