CN110196722B - 云主机批量管理方法、系统、设备及存储介质 - Google Patents
云主机批量管理方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN110196722B CN110196722B CN201910375069.5A CN201910375069A CN110196722B CN 110196722 B CN110196722 B CN 110196722B CN 201910375069 A CN201910375069 A CN 201910375069A CN 110196722 B CN110196722 B CN 110196722B
- Authority
- CN
- China
- Prior art keywords
- cloud host
- agent
- server
- cloud
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000007726 management method Methods 0.000 title claims abstract description 118
- 238000013515 script Methods 0.000 claims abstract description 150
- 238000012545 processing Methods 0.000 claims abstract description 25
- 238000009434 installation Methods 0.000 claims description 50
- 238000000034 method Methods 0.000 claims description 16
- 238000012546 transfer Methods 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/62—Uninstallation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45508—Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
- G06F9/45512—Command shells
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及云技术领域,公开了一种云主机批量管理方法,包括以下步骤:批处理服务器将待执行的脚本文件上传至文件服务器;获取待执行的云主机列表,所述云主机列表中包含有多个云主机信息;根据所述云主机列表中的各云主机信息,确定各云主机所在区域以及各云主机所在区域的Agent服务器;通过Agent服务器下发脚本执行命令至对应云主机,以供云主机基于所述脚本执行命令从所述文件服务器下载对应脚本文件并执行。本发明还公开了一种云主机批量管理系统、设备及计算机可读存储介质。本发明实现了对海量云主机的批量管理,不仅提升了云主机管理效率,同时增强了云主机管理灵活性。
Description
技术领域
本发明涉及云技术领域,尤其涉及一种云主机批量管理方法、系统、设备及计算机可读存储介质。
背景技术
目前市面上的云服务商,例如阿里云、腾讯云等都存在云主机管理问题。面对上万台的云主机,管理海量云主机已成为当前云服务商一个比较棘手的问题。尽管现有技术中存在某些云主机管理工具可以实现云主机的一些基本管理功能,但管理功能不够完善、管理操控的自由度不高且效率低,并且还需要一定的使用费用。
发明内容
本发明的主要目的在于提供一种云主机批量管理方法、系统、设备及计算机可读存储介质,旨在解决现有云主机管理效率低的技术问题。
为实现上述目的,本发明提供一种云主机批量管理方法,所述云主机批量管理方法包括以下步骤:
批处理服务器将待执行的脚本文件上传至文件服务器;
获取待执行的云主机列表,所述云主机列表中包含有多个云主机信息;
根据所述云主机列表中的各云主机信息,确定各云主机所在区域以及各云主机所在区域的Agent服务器;
通过Agent服务器下发脚本执行命令至对应云主机,以供云主机基于所述脚本执行命令从所述文件服务器下载对应脚本文件并执行。
可选地,在所述通过Agent服务器下发脚本执行命令至对应云主机的步骤之后,还包括:
云主机通过注册的Agent服务接收批处理服务器通过Agent服务器下发的脚本执行命令;
根据所述脚本执行命令中指定的脚本文件名,从所述文件服务器下载对应脚本文件并执行;
生成脚本执行结果并通过Agent服务返回至对应的Agent服务器,以供通过Agent服务器将所述脚本执行结果转发至批处理服务器。
可选地,在所述生成脚本执行结果并通过Agent服务返回至对应的Agent服务器的步骤之后,还包括:
Agent服务器将各云主机返回的脚本执行结果转发至批处理服务器以及保存到预置数据库或缓存中;
批处理服务器接收各Agent服务器转发的由各云主机返回的脚本执行结果,并生成本次云主机批量管理对应的执行结果文档。
可选地,所述云主机批量管理方法还包括:
Agent服务器监测是否存在云主机发起的Agent服务注册请求,所述Agent服务注册请求中包含有云主机信息;
若存在,则生成云主机的Agent服务信息,并将所述Agent服务信息与云主机信息关联保存;
其中,所述Agent服务信息中包含有云主机的AgentManager服务信息以及Agent服务的版本信息。
可选地,所述云主机批量管理方法还包括:
Agent服务器创建定时任务并每隔预设时长检测各云主机注册的Agent服务的状态以及版本信息;
若存在低于当前最新版本的Agent服务,则通过AgentManager服务下发更新命令至对应云主机;
若存在未开启的Agent服务,则通过AgentManager服务下发安装命令至对应云主机。
可选地,所述云主机批量管理方法还包括:
云主机通过AgentManager服务接收Agent服务器下发的更新命令或安装命令;
当接收到更新命令时,从所述文件服务器下载用于更新的脚本文件和更新包并进行更新;
当接收到安装命令时,从所述文件服务器下载用于安装的脚本文件和安装包并进行安装;
通过AgentManager服务将更新结果或安装结果返回至云主机所在区域的Agent服务器。
进一步地,为实现上述目的,本发明还提供一种云主机批量管理系统,所述云主机批量管理系统包括:云管区、公共服务区以及用户区,各区域相互之间物理隔离;所述云管区部署有批处理服务器,用于对所有云主机进行批量管理;所述公共服务区部署有文件服务器和多个Agent服务器,所述文件服务器用于保存各种脚本文件,所述Agent服务器用于实现批处理服务器与各云主机之间的信息中转;所述用户区划分为多个子用户区域,每个子用户区域部署有多个云主机;
所述批处理服务器用于:
将待执行的脚本文件上传至文件服务器;获取待执行的云主机列表;根据所述云主机列表中的各云主机信息,确定各云主机所在区域以及各云主机所在区域的Agent服务器;通过Agent服务器下发脚本执行命令至对应云主机,以供云主机基于所述脚本执行命令从所述文件服务器下载对应脚本文件并执行,所述云主机列表中包含有多个云主机信息;
所述云主机用于:
通过注册的Agent服务接收批处理服务器通过Agent服务器下发的脚本执行命令;根据所述脚本执行命令中指定的脚本文件名,从所述文件服务器下载对应脚本文件并执行;生成脚本执行结果并通过Agent服务返回至对应的Agent服务器,以供通过Agent服务器将所述脚本执行结果转发至批处理服务器;
所述Agent服务器用于:将各云主机返回的脚本执行结果转发至批处理服务器以及保存到预置数据库或缓存中;
所述批处理服务器还用于:接收各Agent服务器转发的由各云主机返回的脚本执行结果,并生成本次云主机批量管理对应的执行结果文档。
可选地,所述Agent服务器还用于:
监测是否存在云主机发起的Agent服务注册请求;若存在,则生成云主机的Agent服务信息,并将所述Agent服务信息与云主机信息关联保存;其中,所述Agent服务信息中包含有云主机的AgentManager服务信息以及Agent服务的版本信息,所述Agent服务注册请求中包含有云主机信息;
所述Agent服务器还用于:
创建定时任务并每隔预设时长检测各云主机注册的Agent服务的状态以及版本信息;若存在低于当前最新版本的Agent服务,则通过AgentManager服务下发更新命令至对应云主机;若存在未开启的Agent服务,则通过AgentManager服务下发安装命令至对应云主机;
所述云主机还用于:
通过AgentManager服务接收Agent服务器下发的更新命令或安装命令;当接收到更新命令时,从所述文件服务器下载用于更新的脚本文件和更新包并进行更新;当接收到安装命令时,从所述文件服务器下载用于安装的脚本文件和安装包并进行安装;通过AgentManager服务将更新结果或安装结果返回至云主机所在区域的Agent服务器。
进一步地,为实现上述目的,本发明还提供一种云主机批量管理设备,所述云主机批量管理设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的云主机批量管理程序,所述云主机批量管理程序被所述处理器执行时实现如上述任一项所述的云主机批量管理方法的步骤。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有云主机批量管理程序,所述云主机批量管理程序被处理器执行时实现如上述任一项所述的云主机批量管理方法的步骤。
本发明使用脚本实现云主机批量管理,由于脚本在不同操作系统、不同版本的相同操作系统都可共用,进而能够支持不同操作系统批量更新Agent服务。本发明还可以自动从文件服务器下载所需的更新包(同时支持上传更新包或者第三方软件),批量对各种操作系统的云主机进行软件安装、更新以及脚本执行等批量管理。从而实现完善了云主机管理功能,提升了管理操控自由度和管理效率。
附图说明
图1为本发明实施例方案涉及的云主机批量管理设备运行环境的结构示意图;
图2为本发明云主机批量管理方法第一实施例的流程示意图;
图3为本发明云主机批量管理方法第二实施例的流程示意图;
图4为本发明云主机批量管理方法第三实施例的流程示意图;
图5为本发明云主机批量管理方法第四实施例的流程示意图;
图6为本发明云主机批量管理方法第五实施例的流程示意图;
图7为本发明云主机批量管理方法第六实施例的流程示意图;
图8为本发明云主机批量管理系统一实施例的功能模块部署架构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供一种云主机批量管理设备。
参照图1,图1为本发明实施例方案涉及的云主机批量管理设备运行环境的结构示意图。
如图1所示,该云主机批量管理设备包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的云主机批量管理设备的硬件结构并不构成对云主机批量管理设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及云主机批量管理程序。其中,操作系统是管理和控制云主机批量管理设备和软件资源的程序,支持云主机批量管理程序以及其它软件和/或程序的运行。
在图1所示的云主机批量管理设备的硬件结构中,网络接口1004主要用于接入网络;用户接口1003主要用于侦测确认指令和编辑指令等,而处理器1001可以用于调用存储器1005中存储的云主机批量管理程序,并执行以下云主机批量管理方法的各实施例的操作。
基于上述云主机批量管理设备硬件结构,提出本发明云主机批量管理方法的各个实施例。
参照图2,图2为本发明云主机批量管理方法第一实施例的流程示意图。本实施例中,所述云主机批量管理方法包括以下步骤:
步骤S110,批处理服务器将待执行的脚本文件上传至文件服务器;
本实施例中,批处理服务器将需要执行的脚本文件上传到文件服务器存储,其中,文件服务器位于中间层,批处理服务器以及云主机都可进行访问。
本实施例中,脚本文件为可执行脚本文件,通过执行脚本文件可实现对应功能。本实施例对脚本文件的具体功能不限,具体根据实际需要进行设置。比如,获取主机CPU,内存和磁盘的负载情况、安装/卸载云主机上的第三方服务组件、执行自定义命令脚本(可适用于Linxu、Windows操作系统)、更新证书、检测软件/硬件可用性等。
步骤S120,获取待执行的云主机列表,所述云主机列表中包含有多个云主机信息;
本实施例中,在执行批处理操作之前,批处理服务器先获取待执行的云主机列表,该列表中记录有多个云主机的相关信息,比如云主机名称、MAC地址、IP地址等信息。
步骤S130,根据所述云主机列表中的各云主机信息,确定各云主机所在区域以及各云主机所在区域的Agent服务器;
本实施例中,云管理区(包括批处理服务器)通过中间公共服务区Agent服务器集群的Agent服务实现对用户区的云主机进行批量管理。为便于对海量云主机进行管控,因此,Agent服务器集群划分为多个区域,每个区域的Agent服务器对应多个云主机。
例如,Agent服务器集群划分为A、B、C区三个区域,若云主机在A区的Agent服务器注册,则该云主机属于A区并对应A区的Agent服务器,Agent服务器实现批处理服务器与各云主机之间的信息中转。比如,云主机列表中有a、b1、b2三个云主机,通过查找注册信息,进而确定各云主机所在区域以及各云主机所在区域对应的Agent服务器:云主机a在A区并对应A区的Agent服务器,b1和b2在B区并对应B区的Agent服务器。
步骤S140,通过Agent服务器下发脚本执行命令至对应云主机,以供云主机基于所述脚本执行命令从所述文件服务器下载对应脚本文件并执行。
本实施例中,批处理服务器通过调用Agent服务器的Agent服务接口,进而通过Agent服务接口下发脚本执行命令到各自对应的云主机上,然后由各云主机基于脚本执行命令,从文件服务器下载批处理服务器预先上传的脚本文件并执行,从而实现批处理器对海量云主机的批量管理。
本实施例通过不断调试修改,进而获得可在不同操作系统、不同版本的相同操作系统都可共用的一套安装和更新脚本,进而能够支持不同操作系统批量更新Agent服务以及支持在云主机上安装/更新/删除第三方服务组件。
本实施例针对不同种类的操作系统,包括Linux和Windows,还可以自动从文件服务器下载所需的更新包(同时支持上传更新包或者第三方软件),从而实现批量对Linux或Windows云主机进行软件安装、更新以及脚本执行等管理。此外,本实施例还可利用云主机上暴露的接口来自定义命令脚本,以对云主机进行各种自定义操作,实现特定管理功能,从而完善云主机管理功能,提升管理操控自由度和管理效率。
参照图3,图3为本发明云主机批量管理方法第二实施例的流程示意图。基于上述方法第一实施例,本实施例中,在上述步骤S140之后还包括:
步骤S150,云主机通过注册的Agent服务接收批处理服务器通过Agent服务器下发的脚本执行命令;
步骤S160,根据所述脚本执行命令中指定的脚本文件名,从所述文件服务器下载对应脚本文件并执行;
步骤S170,生成脚本执行结果并通过Agent服务返回至对应的Agent服务器,以供通过Agent服务器将所述脚本执行结果转发至批处理服务器。
Agent是一类能在特定环境下感知环境,并能灵活、自主地运行以实现一系列设计目标的、自主的计算实体或程序。本实施例中,为便于对云主机进行批量管理,需要云主机预先在Agent服务器进行注册以安装Agent服务,通过Agent服务代理云主机,进而实现特定管理操作。
本实施例中,每一个云主机都在Agent服务器注册有Agent服务,进而批处理服务器可通过Agent服务器实现对海量云主机的批量管理。云主机通过自身注册的Agent服务,接收批处理服务器通过Agent服务器下发的脚本执行命令,然后根据脚本执行命令中指定的脚本文件名,到文件服务器下载对应的脚本文件并执行;最后再生成脚本执行结果,并通过Agent服务返回至对应的Agent服务器,以供通过Agent服务器转发至批处理服务器。
参照图4,图4为本发明云主机批量管理方法第三实施例的流程示意图。基于上述方法第二实施例,本实施例中,在上述步骤S170之后还包括:
步骤S180,Agent服务器将各云主机返回的脚本执行结果转发至批处理服务器以及保存到预置数据库或缓存中;
步骤S190,批处理服务器接收各Agent服务器转发的由各云主机返回的脚本执行结果,并生成本次云主机批量管理对应的执行结果文档。
本实施例中,Agent服务器用于实现批处理服务器与各云主机之间的信息中转。当Agent服务器接收到各云主机返回的脚本执行结果时,将各云主机返回的脚本执行结果转发给批处理服务器,批处理服务器进一步生成本次云主机批量管理对应的执行结果文档,比如云主机A执行了更新操作且更新成功,云主机B安装了第三方软件且安装成功,云主机C卸载了第三方软件且卸载成功。
本实施例中,Agent服务器还进一步将云主机返回的脚本执行结果保存到预置数据库或缓存中,便于留档以供后续统计分析或进行其他用途。
参照图5,图5为本发明云主机批量管理方法第四实施例的流程示意图。本实施例中,所述云主机批量管理方法还包括:
步骤S210,Agent服务器监测是否存在云主机发起的Agent服务注册请求,所述Agent服务注册请求中包含有云主机信息;
步骤S220,若存在,则生成云主机的Agent服务信息,并将所述Agent服务信息与云主机信息关联保存;若不存在,则返回步骤S210。
本实施例中,在部署新云主机时,为便于后续对云主机进行批量管理,因此需要云主机主动向Agent服务器发起Agent服务注册请求。当Agent服务器监测到Agent服务注册请求时,生成云主机注册的Agent服务信息,并将Agent服务信息以及云主机信息关联保存。
本实施例中,Agent服务信息中包括云主机的AgentManager服务信息、各Agent服务的版本信息。其中,AgentManager服务是云主机在注册时必须安装的一个特殊的Agent服务,而其他Agent为可选服务,AgentManager服务用于管理云主机上其他的Agent服务。
参照图6,图6为本发明云主机批量管理方法第五实施例的流程示意图。本实施例中,所述云主机批量管理方法还包括:
步骤S310,Agent服务器创建定时任务;
步骤S320,每隔预设时长检测各云主机注册的Agent服务的状态以及版本信息;
步骤S330,若存在低于当前最新版本的Agent服务,则通过AgentManager服务下发更新命令至对应云主机;否则返回步骤S320;
步骤S340,若存在未开启的Agent服务,则通过AgentManager服务下发安装命令至对应云主机,否则返回步骤S320。
本实施例是基于Agent服务实现云主机批量管理,因此,为便于对云主机进行管理,需要获得云主机上安装的Agent服务的状态以及版本信息。
如果把检测新版本或Agent状态的工作放在云主机上,一方面云主机的负载会加重,另一方面如果用户不小心把检测的进程删除,用户将没有办法进行自动更新而需要手动更新,而解决上面的问题的方法是加一个定时任务检测更新进程是否存在,如果不存在,自动从文件服务器下载最新的版本进行更新。而若定时任务也被删除,则自更新服务还是无法正常工作。
基于上述问题的考量,本实施例将检测云主机的Agent状态和版本信息的工作放到Agent服务器上,并通过执行定时任务方式进行检测,一来可以解决用户误删的问题,二来可以集中管理云主机的版本和运行状态等信息。
本实施例中,通过定时检测各云主机注册的Agent服务的状态以及版本信息,从而保证Agent服务在线、Agent服务能够正常运行,进而使得批处理服务器能够实现对海量云主机的批量管理。
参照图7,图7为本发明云主机批量管理方法第六实施例的流程示意图。本实施例中,所述云主机批量管理方法还包括:
步骤S350,云主机通过AgentManager服务接收Agent服务器下发的更新命令或安装命令;
步骤S360,当接收到更新命令时,从所述文件服务器下载用于更新的脚本文件和更新包并进行更新;
步骤S370,当接收到安装命令时,从所述文件服务器下载用于安装的脚本文件和安装包并进行安装;
步骤S380,通过AgentManager服务将更新结果或安装结果返回至云主机所在区域的Agent服务器。
本实施例中,云主机通过AgentManager服务接收Agent服务器下发的更新命令或安装命令,然后根据更新/安装命令,到文件服务器下载对应的用于更新/安装的脚本文件和更新/安装包并进行更新/安装;最后再将更新/安装结果通过AgentManager服务返回至对应的Agent服务器。其中,AgentManager服务是云主机在注册时必须安装的一个特殊的Agent服务,而其他Agent为可选服务,AgentManager服务用于管理云主机上其他的Agent服务。
本实施例中,批处理服务器在对云主机进行批量管理时,只需将对应的脚本执行命令下发给对应的云主机即可,各云主机将根据各自接收到的命令自发下载脚本文件进行安装或更新,进而大幅提升了海量云主机批量管理的效率,同时也降低了批处理服务器的性能压力。
本发明还提供一种云主机批量管理系统。
参照图8,图8为本发明云主机批量管理系统一实施例的功能模块部署架构示意图。本实施例中,所述云主机批量管理系统包括:
(一)云管区
如图8所示,在云管区部署有批处理服务器10,用于对所有云主机进行批量管理。
(二)公共服务区
如图8所示,在公共服务区部署有文件服务器20和多个Agent服务器30,文件服务器20用于存储各种脚本文件,而Agent服务器30则用于实现批处理服务器10与各云主机40之间的信息中转。
(三)用户区
如图8所示,用户区划分为多个子用户区域,在每个子用户区域都署有多个云主机40,而云主机40用于对外提供各种云服务,比如云计算服务、云存储服务等。
本实施例中,各区域相互之间物理隔离,所有主机都是双网卡,一个网卡属于云管网络,另一个网卡属于用户VPC网络,两个网络是物理隔离,连接在不同的交换机,用防火墙隔离,保证网络的安全性。
本实施例中,批处理服务器10具体用于:
将待执行的脚本文件上传至文件服务器;获取待执行的云主机列表;根据所述云主机列表中的各云主机信息,确定各云主机所在区域以及各云主机所在区域的Agent服务器;通过Agent服务器下发脚本执行命令至对应云主机,以供云主机基于所述脚本执行命令从所述文件服务器下载对应脚本文件并执行,所述云主机列表中包含有多个云主机信息;
本实施例中,云主机40具体用于:
通过注册的Agent服务接收批处理服务器10通过Agent服务器30下发的脚本执行命令;根据所述脚本执行命令中指定的脚本文件名,从所述文件服务器20下载对应脚本文件并执行;生成脚本执行结果并通过Agent服务返回至对应的Agent服务器10,以供通过Agent服务器30将所述脚本执行结果转发至批处理服务器10;
本实施例中,Agent服务器30具体用于:将各云主机40返回的脚本执行结果转发至批处理服务器10以及保存到预置数据库或缓存中;
本实施例中,批处理服务器10还用于:接收各Agent服务器30转发的由各云主机40返回的脚本执行结果,并生成本次云主机批量管理对应的执行结果文档。
基于与上述本发明云主机批量管理方法相同的实施例说明内容,因此本实施例对云主机批量管理系统的实施例内容不做过多赘述。
本实施例使用脚本实现云主机批量管理,由于脚本在不同操作系统、不同版本的相同操作系统都可共用,进而能够支持不同操作系统批量更新Agent服务以及支持在云主机上安装/更新/删除第三方服务组件。本发明还可以自动从文件服务器下载所需的更新包(同时支持上传更新包或者第三方软件),批量对各种操作系统的云主机进行软件安装、更新以及脚本执行等批量管理。此外,本实施例还利用云主机上暴露的接口来自定义命令脚本,进而可对云主机进行各种自定义操作,从而实现完善了云主机管理功能,提升了管理操控自由度和管理效率。
进一步地,在本发明云主机批量管理系统另一实施例中,所述Agent服务器30还用于:
监测是否存在云主机40发起的Agent服务注册请求;若存在,则生成云主机40的Agent服务信息,并将所述Agent服务信息与云主机信息关联保存;其中,所述Agent服务信息中包含有云主机的AgentManager服务信息以及Agent服务的版本信息,所述Agent服务注册请求中包含有云主机信息;
此外,Agent服务器30还用于:
创建定时任务并每隔预设时长检测各云主机40注册的Agent服务的状态以及版本信息;若存在低于当前最新版本的Agent服务,则通过AgentManager服务下发更新命令至对应云主机40;若存在未开启的Agent服务,则通过AgentManager服务下发安装命令至对应云主机40;
本实施例中,云主机40还用于:
通过AgentManager服务接收Agent服务器30下发的更新命令或安装命令;当接收到更新命令时,从所述文件服务器20下载用于更新的脚本文件和更新包并进行更新;当接收到安装命令时,从所述文件服务器20下载用于安装的脚本文件和安装包并进行安装;通过AgentManager服务将更新结果或安装结果返回至云主机40所在区域的Agent服务器30。
本发明还提供一种计算机可读存储介质。
本实施例中,所述计算机可读存储介质上存储有云主机批量管理程序,所述云主机批量管理程序被处理器执行时实现如上述任一项实施例中所述的云主机批量管理方法的步骤。其中,云主机批量管理程序被处理器执行时所实现的方法可参照本发明云主机批量管理方法的各个实施例,因此不再过多赘述。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,这些均属于本发明的保护之内。
Claims (10)
1.一种云主机批量管理系统,其特征在于,所述云主机批量管理系统包括:云管区、公共服务区以及用户区,各区域相互之间物理隔离;所述云管区部署有批处理服务器,用于对所有云主机进行批量管理;所述公共服务区部署有文件服务器和多个Agent服务器,所述文件服务器用于保存各种脚本文件,所述Agent服务器用于实现批处理服务器与各云主机之间的信息中转;所述用户区划分为多个子用户区域,每个子用户区域部署有多个云主机;
所述批处理服务器用于:
将待执行的脚本文件上传至文件服务器;获取待执行的云主机列表;根据所述云主机列表中的各云主机信息,确定各云主机所在区域以及各云主机所在区域的Agent服务器;通过Agent服务器下发脚本执行命令至对应云主机,以供云主机基于所述脚本执行命令从所述文件服务器下载对应脚本文件并执行,所述云主机列表中包含有多个云主机信息;
所述云主机用于:
通过注册的Agent服务接收批处理服务器通过Agent服务器下发的脚本执行命令;根据所述脚本执行命令中指定的脚本文件名,从所述文件服务器下载对应脚本文件并执行;生成脚本执行结果并通过Agent服务返回至对应的Agent服务器,以供通过Agent服务器将所述脚本执行结果转发至批处理服务器;
所述Agent服务器用于:将各云主机返回的脚本执行结果转发至批处理服务器以及保存到预置数据库或缓存中;
所述批处理服务器还用于:接收各Agent服务器转发的由各云主机返回的脚本执行结果,并生成本次云主机批量管理对应的执行结果文档。
2.如权利要求1所述的云主机批量管理系统,其特征在于,所述Agent服务器还用于:
监测是否存在云主机发起的Agent服务注册请求;若存在,则生成云主机的Agent服务信息,并将所述Agent服务信息与云主机信息关联保存;其中,所述Agent服务信息中包含有云主机的AgentManager服务信息以及Agent服务的版本信息,所述Agent服务注册请求中包含有云主机信息;
所述Agent服务器还用于:
创建定时任务并每隔预设时长检测各云主机注册的Agent服务的状态以及版本信息;若存在低于当前最新版本的Agent服务,则通过AgentManager服务下发更新命令至对应云主机;若存在未开启的Agent服务,则通过AgentManager服务下发安装命令至对应云主机;
所述云主机还用于:
通过AgentManager服务接收Agent服务器下发的更新命令或安装命令;当接收到更新命令时,从所述文件服务器下载用于更新的脚本文件和更新包并进行更新;当接收到安装命令时,从所述文件服务器下载用于安装的脚本文件和安装包并进行安装;通过AgentManager服务将更新结果或安装结果返回至云主机所在区域的Agent服务器。
3.一种云主机批量管理方法,其特征在于,所述云主机批量管理方法应用于权利要求1或权利要求2所述的云主机批量管理系统,所述云主机批量管理方法包括以下步骤:
批处理服务器将待执行的脚本文件上传至文件服务器;
获取待执行的云主机列表,所述云主机列表中包含有多个云主机信息;
根据所述云主机列表中的各云主机信息,确定各云主机所在区域以及各云主机所在区域的Agent服务器;
通过Agent服务器下发脚本执行命令至对应云主机,以供云主机基于所述脚本执行命令从所述文件服务器下载对应脚本文件并执行。
4.如权利要求3所述的云主机批量管理方法,其特征在于,在所述通过Agent服务器下发脚本执行命令至对应云主机的步骤之后,还包括:
云主机通过注册的Agent服务接收批处理服务器通过Agent服务器下发的脚本执行命令;
根据所述脚本执行命令中指定的脚本文件名,从所述文件服务器下载对应脚本文件并执行;
生成脚本执行结果并通过Agent服务返回至对应的Agent服务器,以供通过Agent服务器将所述脚本执行结果转发至批处理服务器。
5.如权利要求4所述的云主机批量管理方法,其特征在于,在所述生成脚本执行结果并通过Agent服务返回至对应的Agent服务器的步骤之后,还包括:
Agent服务器将各云主机返回的脚本执行结果转发至批处理服务器以及保存到预置数据库或缓存中;
批处理服务器接收各Agent服务器转发的由各云主机返回的脚本执行结果,并生成本次云主机批量管理对应的执行结果文档。
6.如权利要求4或5所述的云主机批量管理方法,其特征在于,所述云主机批量管理方法还包括:
Agent服务器监测是否存在云主机发起的Agent服务注册请求,所述Agent服务注册请求中包含有云主机信息;
若存在,则生成云主机的Agent服务信息,并将所述Agent服务信息与云主机信息关联保存;
其中,所述Agent服务信息中包含有云主机的AgentManager服务信息以及Agent服务的版本信息。
7.如权利要求6所述的云主机批量管理方法,其特征在于,所述云主机批量管理方法还包括:
Agent服务器创建定时任务并每隔预设时长检测各云主机注册的Agent服务的状态以及版本信息;
若存在低于当前最新版本的Agent服务,则通过AgentManager服务下发更新命令至对应云主机;
若存在未开启的Agent服务,则通过AgentManager服务下发安装命令至对应云主机。
8.如权利要求7所述的云主机批量管理方法,其特征在于,所述云主机批量管理方法还包括:
云主机通过AgentManager服务接收Agent服务器下发的更新命令或安装命令;
当接收到更新命令时,从所述文件服务器下载用于更新的脚本文件和更新包并进行更新;
当接收到安装命令时,从所述文件服务器下载用于安装的脚本文件和安装包并进行安装;
通过AgentManager服务将更新结果或安装结果返回至云主机所在区域的Agent服务器。
9.一种云主机批量管理设备,其特征在于,所述云主机批量管理设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的云主机批量管理程序,所述云主机批量管理程序被所述处理器执行时实现如权利要求3-8中任一项所述的云主机批量管理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有云主机批量管理程序,所述云主机批量管理程序被处理器执行时实现如权利要求3-8中任一项所述的云主机批量管理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910375069.5A CN110196722B (zh) | 2019-05-07 | 2019-05-07 | 云主机批量管理方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910375069.5A CN110196722B (zh) | 2019-05-07 | 2019-05-07 | 云主机批量管理方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110196722A CN110196722A (zh) | 2019-09-03 |
CN110196722B true CN110196722B (zh) | 2023-11-28 |
Family
ID=67752476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910375069.5A Active CN110196722B (zh) | 2019-05-07 | 2019-05-07 | 云主机批量管理方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110196722B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113542322A (zh) * | 2020-04-15 | 2021-10-22 | 北京京东尚科信息技术有限公司 | 用于活动目录程序的安装方法、装置、计算设备及介质 |
CN111740859B (zh) * | 2020-06-12 | 2022-09-13 | 百度在线网络技术(北京)有限公司 | 一种测试环境的部署方法、装置、电子设备及存储介质 |
CN111786906B (zh) * | 2020-08-06 | 2023-02-03 | 成都西加云杉科技有限公司 | Ap管理方法、装置和电子设备 |
CN111966379A (zh) * | 2020-08-19 | 2020-11-20 | 中国人民解放军战略支援部队信息工程大学 | 一种拟态web云服务系统软件集群更新方法及系统 |
CN114531467B (zh) | 2020-11-04 | 2023-04-14 | 中移(苏州)软件技术有限公司 | 一种信息处理方法、设备和系统 |
CN112527381B (zh) * | 2020-12-07 | 2021-12-07 | 南京能云电力科技有限公司 | 多平台软件版本管理及更新系统 |
CN113572833B (zh) * | 2021-07-21 | 2024-05-14 | 北京百度网讯科技有限公司 | 一种云手机的维护方法、装置、电子设备和存储介质 |
CN114979096A (zh) * | 2022-05-19 | 2022-08-30 | 浪潮软件集团有限公司 | 一种国产CPU和Os的脚本任务批量下发平台及方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202798798U (zh) * | 2012-07-17 | 2013-03-13 | 江西省电力公司信息通信分公司 | 基于云计算技术的高可用系统 |
CN103152414A (zh) * | 2013-03-01 | 2013-06-12 | 四川省电力公司信息通信公司 | 一种基于云计算的高可用系统及其实现方法 |
CN103368997A (zh) * | 2012-03-28 | 2013-10-23 | 上海地面通信息网络有限公司 | 一种新型云计算管理系统 |
CN106657413A (zh) * | 2017-02-28 | 2017-05-10 | 腾讯科技(深圳)有限公司 | 文件传输方法、装置和系统 |
CN107707424A (zh) * | 2017-09-11 | 2018-02-16 | 厦门集微科技有限公司 | 负载状态的控制方法及系统 |
CN107979493A (zh) * | 2017-11-21 | 2018-05-01 | 平安科技(深圳)有限公司 | 平台即服务paas容器平台的构建方法、服务器及存储介质 |
CN108776611A (zh) * | 2018-06-07 | 2018-11-09 | 郑州云海信息技术有限公司 | 一种基于云管理平台的云主机管理方法及装置 |
CN109672722A (zh) * | 2018-10-23 | 2019-04-23 | 平安科技(深圳)有限公司 | 数据部署方法及装置、计算机存储介质和电子设备 |
-
2019
- 2019-05-07 CN CN201910375069.5A patent/CN110196722B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103368997A (zh) * | 2012-03-28 | 2013-10-23 | 上海地面通信息网络有限公司 | 一种新型云计算管理系统 |
CN202798798U (zh) * | 2012-07-17 | 2013-03-13 | 江西省电力公司信息通信分公司 | 基于云计算技术的高可用系统 |
CN103152414A (zh) * | 2013-03-01 | 2013-06-12 | 四川省电力公司信息通信公司 | 一种基于云计算的高可用系统及其实现方法 |
CN106657413A (zh) * | 2017-02-28 | 2017-05-10 | 腾讯科技(深圳)有限公司 | 文件传输方法、装置和系统 |
CN107707424A (zh) * | 2017-09-11 | 2018-02-16 | 厦门集微科技有限公司 | 负载状态的控制方法及系统 |
CN107979493A (zh) * | 2017-11-21 | 2018-05-01 | 平安科技(深圳)有限公司 | 平台即服务paas容器平台的构建方法、服务器及存储介质 |
CN108776611A (zh) * | 2018-06-07 | 2018-11-09 | 郑州云海信息技术有限公司 | 一种基于云管理平台的云主机管理方法及装置 |
CN109672722A (zh) * | 2018-10-23 | 2019-04-23 | 平安科技(深圳)有限公司 | 数据部署方法及装置、计算机存储介质和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110196722A (zh) | 2019-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110196722B (zh) | 云主机批量管理方法、系统、设备及存储介质 | |
CN110149409B (zh) | 云主机元数据服务管理方法、系统、设备及存储介质 | |
CN110196731B (zh) | 一种运维系统、方法及存储介质 | |
US10348804B2 (en) | System to automatically process components on a device | |
US7558867B2 (en) | Automatic firmware upgrade for a thin client using one or more FTP servers | |
US8924920B2 (en) | Providing a software appliance based on a role | |
JP4286798B2 (ja) | ハードドライブにドライバファイルをインストールする方法、コンピュータ及びコンピュータ読取可能な記憶媒体 | |
US11249744B2 (en) | Application deployment method, apparatus, and system | |
CN111475180A (zh) | 更新客户端缓存的方法和系统 | |
US8196137B2 (en) | Remote auto provisioning and publication of applications | |
JP2021533454A (ja) | コンフィギュレーション・シナリオ順守のためのモバイル・デバイスによるコンプライアンス設定の実装 | |
JP5248657B2 (ja) | デバイス上におけるレジストリベースの自動インストール及びコンポーネントハンドリングのためのシステム | |
US10404568B2 (en) | Agent manager for distributed transaction monitoring system | |
CN107479984B (zh) | 基于消息的分布式空间数据处理系统 | |
CN108563472B (zh) | 基于多开应用的服务插件加载方法及装置 | |
CN113434230A (zh) | H5页面的跳转控制方法、装置、存储介质及电子装置 | |
CN104468811A (zh) | 升级方法及装置 | |
CN108920157B (zh) | Nginx软件的安装方法、装置、计算机设备及存储介质 | |
CN113778477A (zh) | 文件处理方法及装置、计算机可读存储介质、电子设备 | |
JP2015099547A (ja) | ソフトウェア更新方法、ソフトウェア更新装置、ソフトウェア更新プログラム、及びソフトウェア更新システム | |
CN114662102A (zh) | 一种文件处理方法、装置及存储介质 | |
CN112416698B (zh) | 监控系统的扩展方法及装置、存储介质及电子设备 | |
US8412769B2 (en) | Scalably imaging clients over a network | |
JP4882291B2 (ja) | モジュール更新プログラム | |
JP6504000B2 (ja) | データ配信制御プログラム、データ配信制御方法及びデータ配信装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |