CN111008035B - 一种软件运维方法、电子设备及存储介质 - Google Patents

一种软件运维方法、电子设备及存储介质 Download PDF

Info

Publication number
CN111008035B
CN111008035B CN201911184879.9A CN201911184879A CN111008035B CN 111008035 B CN111008035 B CN 111008035B CN 201911184879 A CN201911184879 A CN 201911184879A CN 111008035 B CN111008035 B CN 111008035B
Authority
CN
China
Prior art keywords
maintenance
software
component
target
component instance
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
Application number
CN201911184879.9A
Other languages
English (en)
Other versions
CN111008035A (zh
Inventor
易存道
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baolande Software Co ltd
Original Assignee
Beijing Baolande Software Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baolande Software Co ltd filed Critical Beijing Baolande Software Co ltd
Priority to CN201911184879.9A priority Critical patent/CN111008035B/zh
Publication of CN111008035A publication Critical patent/CN111008035A/zh
Application granted granted Critical
Publication of CN111008035B publication Critical patent/CN111008035B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例提供一种软件运维方法、电子设备及存储介质,所述方法包括:接收服务器发送的、针对待运维软件的运维处理消息;所述运维处理消息携带运维对象和与其对应的运维动作类型;根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系。所述电子设备及所述存储介质执行上述方法。本发明实施例提供的软件运维方法、电子设备及存储介质,通过第一映射关系执行针对运维对象的、与运维动作类型相对应的运维动作,减少了用户手动操作,进而能够提高软件运维效率。

Description

一种软件运维方法、电子设备及存储介质
技术领域
本发明涉及软件技术领域,尤其涉及一种软件运维方法、电子设备及存储介质。
背景技术
随着云计算技术得到越来越广泛的应用,相应配套的运维技术也得到越来越大的重视。在对软件进行运维时,常常遇到有的软件会在多台机器上启动多个异构进程,并作为一个整体,有的作为管理进程,例如某企业应用服务器的DMS、Node、WebLogic的域的AdminServer和WebSphere的dmgr、nodeagent;有的作为业务进程,例如某企业应用服务器的Instance、WebLogic的域的ManagedServer、和WebSphere的server。
现有技术的软件运维方法是:通过软件自身提供的管理平台完成运维动作,或者针对每一种软件根据业务系统写一套脚本,实际的运维动作通过这套脚本完成。但是,随着业务扩大,运维的实例可能会需要扩容,可能需要建立多个域才能满足业务需求,这样会导致维护的实例和域不断增多,运维工作量不断增大,通过软件自身提供的管理平台的手工点击操作,难以保证快速有效地运维,根据业务系统编写的脚本也会越来越复杂,使得软件运维效率低下。
发明内容
针对现有技术存在的问题,本发明实施例提供一种软件运维方法、电子设备及存储介质。
本发明实施例提供一种软件运维方法,包括:
接收服务器发送的、针对待运维软件的运维处理消息;所述运维处理消息携带运维对象和与其对应的运维动作类型;
根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系。
其中,所述根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作,包括:
若所述运维对象为应用组件,则确定针对所述运维对象的、与所述运维动作类型相对应的运维动作为针对所述应用组件、组流水和组件实例的运维动作;其中,所述应用组件对应所述待运维软件的整体、所述组流水对应所述待运维软件的配置、所述组件实例对应所述待运维软件的进程;
若所述运维对象为所述组件实例,则确定针对所述运维对象的、与所述运维动作类型相对应的运维动作为针对所述组件实例的运维动作。
其中,所述运维对象和与其对应的运维动作类型包括创建组件实例和/或卸载应用组件;相应的,所述软件运维方法还包括:
根据第二映射关系确定在执行所述创建组件实例之前,先执行安装应用组件;所述第二映射关系反映所述运维动作类型在执行过程中的顺序关系;
和/或,根据所述第二映射关系确定在执行所述卸载应用组件之前,先执行删除组件实例。
其中,所述运维处理消息还携带所述待运维软件的软件标识,相应的,所述软件运维方法还包括:
确定与所述软件标识对应的应用适配器,并根据所述应用适配器将所述运维动作转化为所述待运维软件的可执行运维动作指令;所述应用适配器预存储有预设软件标识、预设可执行运维动作指令和预设运维动作类型之间的对应关系。
本发明实施例提供一种软件运维方法,包括:
发送针对待运维软件的运维处理消息至目标终端;所述运维处理消息携带运维对象和与其对应的运维动作类型;其中,所述目标终端是经由用户确定的、执行运维动作的终端;
若接收到所述目标终端针对所述运维处理消息返回的反馈消息,则发送第一映射关系至所述目标终端,以供所述目标终端根据所述第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系。
其中,所述运维对象包括组件实例;相应的,所述软件运维方法还包括:
获取各组件实例对应的域,并根据所述域的类型对所有组件实例进行聚类,以使各组件实例集群中的所有组件实例对应相同类型的域。
其中,所述软件运维方法还包括:
获取与所述待运维软件相对应的调度适配器,并根据所述调度适配器适配所述待运维软件在多个目标终端运行;其中,所述调度适配器根据预先获取到的各组件实例集群,为不存在目标组件实例相对应的域的目标终端调度与所述目标组件实例相对应的域、所述目标组件实例与执行运维动作相对应。
其中,所述调度与所述目标组件实例相对应的域,包括:
确定所述目标组件实例所在的目标组件实例集群,并从所述目标组件实例集群中获取在所述多个目标终端中的、除不存在与所述目标组件实例相对应的域的目标终端之外的其他目标终端中的域;
控制所述其他目标终端开启所述目标组件实例相对应的域,以使不存在与所述目标组件实例相对应的域的目标终端使用已开启的、与目标组件实例相对应的域。
本发明实施例提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,
所述处理器执行所述程序时实现如下方法步骤:
接收服务器发送的、针对待运维软件的运维处理消息;所述运维处理消息携带运维对象和与其对应的运维动作类型;
根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系;
或者,发送针对待运维软件的运维处理消息至目标终端;所述运维处理消息携带运维对象和与其对应的运维动作类型;其中,所述目标终端是经由用户确定的、执行运维动作的终端;
若接收到所述目标终端针对所述运维处理消息返回的反馈消息,则发送第一映射关系至所述目标终端,以供所述目标终端根据所述第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系。
本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如下方法步骤:
接收服务器发送的、针对待运维软件的运维处理消息;所述运维处理消息携带运维对象和与其对应的运维动作类型;
根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系;
或者,发送针对待运维软件的运维处理消息至目标终端;所述运维处理消息携带运维对象和与其对应的运维动作类型;其中,所述目标终端是经由用户确定的、执行运维动作的终端;
若接收到所述目标终端针对所述运维处理消息返回的反馈消息,则发送第一映射关系至所述目标终端,以供所述目标终端根据所述第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系。
本发明实施例提供的软件运维方法、电子设备及存储介质,通过第一映射关系执行针对运维对象的、与运维动作类型相对应的运维动作,减少了用户手动操作,进而能够提高软件运维效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明软件运维方法实施例流程图;
图2为运维对象与运维动作类型之间对应关系的示意图;
图3为本发明实施例第一映射关系示意图;
图4为本发明实施例第二映射关系示意图;
图5为本发明实施例调度适配器和应用适配器使用示意图;
图6为本发明软件运维方法实施例流程图;
图7为本发明实施例提供的电子设备实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明软件运维方法实施例流程图,如图1所示,本发明实施例提供的一种软件运维方法,包括以下步骤:
S101:接收服务器发送的、针对待运维软件的运维处理消息;所述运维处理消息携带运维对象和与其对应的运维动作类型。
具体的,接收服务器发送的、针对待运维软件的运维处理消息;所述运维处理消息携带运维对象和与其对应的运维动作类型。执行该方法步骤的可以是计算机设备,具体可以是确定用于执行针对待运维软件的运维动作的目标终端。服务器可以是运维管理服务器。
对运维对象作如下具体说明:
(1)application,应用
这是多个相似应用组件(可以是类型相似,不作具体限定)的合集,每一个应用可以包含多个应用组件。
(2)unit,应用组件
每一个应用组件可以对应一种软件,一般会做成一个应用组件对应一类功能相近的进程。一个应用组件可以包含多个应用组件版本。一个应用组件可以包含多个组。
(3)unit version,应用组件版本
每一个应用组件版本一般对应一种软件的版本。
(4)group,组
每一个组包含软件的多套配置,每一套配置做成一个组流水。
(5)group flow,组流水
每一个组流水包含软件的一种配置。
(6)instance,组件实例
每一个组件实例对应一个具体的进程,或依附在一个具体进程上的功能。一个组件实例都具有、且可以有一个应用组件版本和一种配置。
(7)cluster,组件实例集群
一个组件实例集群可以包含对应相同类型的域的多个组件实例。这些组件实例可以是多个不相同的应用组件的实例。
图2为运维对象与运维动作类型之间对应关系的示意图,如图2所示,对运维动作类型作如下具体说明:
(1)install_unit,安装应用组件
这个动作是把软件的一个版本安装到机器(对应终端)上。
(2)upgrade_unit,升级应用组件
这个动作是把机器上的软件进行版本升级。
(3)uninstall_unit,卸载应用组件
这个动作是把机器上的软件进行卸载。
(4)create_unit_instance,创建组件实例
这个动作是把机器上的软件进行启动进程前的配置。比如配置好应用服务器的域,配置好应用服务器的实例。
(5)start_unit_instance,启动组件实例
这个动作是启动软件的进程。比如启动应用服务器的域,启动应用服务器的实例。
(6)stop_unit_instance,停止组件实例
这个动作是停止软件的进程。比如停止应用服务器的域,停止应用服务器的实例。
(7)destroy_unit_instance,删除组件实例
这个动作是把创建组件实例产生的相关配置删除。例如删除应用服务器的域,删除应用服务器的实例。
(8)upgrade_unit_instance,升级组件实例
这个动作是更新组件实例的相关介质。例如更新部署在应用服务器的域的网络应用。
(9)set_group_config,变更应用组件配置
这个动作是修改一个组下的组件实例的配置。例如把修改域的实例的启动参数。
S102:根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系。
具体的,根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系。图3为本发明实施例第一映射关系示意图,如图3所示,对运维对象在待运维软件中的层级关系举例说明如下:应用组件对应软件整体层级(对应图3中的复杂软件);组流水对应软件配置层级(对应图3中的复杂软件的配置);组件实例对应软件进程层级(对应图3中的复杂软件的进程)。参照图3需要说明的是,如果运维对象为应用组件,则确定针对运维对象的、与运维动作类型相对应的运维动作为针对应用组件、组流水和组件实例的运维动作;如果运维对象为组件实例,则确定针对运维对象的、与运维动作类型相对应的运维动作为针对组件实例的运维动作。即本发明实施例根据运维对象所在的层级不同,所采用的运维动作类型和运维动作数量也不同。
执行针对运维对象的、与运维动作类型相对应的运维动作可参照图2的说明。
本发明实施例提供的软件运维方法,通过第一映射关系执行针对运维对象的、与运维动作类型相对应的运维动作,减少了用户手动操作,进而能够提高软件运维效率。
在上述实施例的基础上,所述根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作,包括:
具体的,若所述运维对象为应用组件,则确定针对所述运维对象的、与所述运维动作类型相对应的运维动作为针对所述应用组件、组流水和组件实例的运维动作;其中,所述应用组件对应所述待运维软件的整体、所述组流水对应所述待运维软件的配置、所述组件实例对应所述待运维软件的进程。可参照上述说明,不再赘述。
具体的,若所述运维对象为所述组件实例,则确定针对所述运维对象的、与所述运维动作类型相对应的运维动作为针对所述组件实例的运维动作。可参照上述说明,不再赘述。
本发明实施例提供的软件运维方法,通过第一映射关系,并按照运维对象所在层级顺序执行针对运维对象的、与运维动作类型相对应的运维动作,减少了用户手动操作,进而能够提高软件运维效率。
在上述实施例的基础上,所述运维对象和与其对应的运维动作类型包括创建组件实例和/或卸载应用组件;相应的,所述软件运维方法还包括:
具体的,根据第二映射关系确定在执行所述创建组件实例之前,先执行安装应用组件;所述第二映射关系反映所述运维动作类型在执行过程中的顺序关系。图4为本发明实施例第二映射关系示意图,如图4所示,在执行初始安装时,先执行安装应用组件,再执行创建组件实例。
和/或,具体的,根据所述第二映射关系确定在执行所述卸载应用组件之前,先执行删除组件实例。如图4所示,在执行卸载时,先执行删除组件实例,再执行卸载应用组件。即本发明实施例通过顺序关系依次有序地执行各运维动作。
本发明实施例提供的软件运维方法,通过顺序执行创建组件实例和/或卸载应用组件的运维动作,进一步能够提高软件运维效率。
在上述实施例的基础上,所述运维处理消息还携带所述待运维软件的软件标识,相应的,所述软件运维方法还包括:
具体的,确定与所述软件标识对应的应用适配器,并根据所述应用适配器将所述运维动作转化为所述待运维软件的可执行运维动作指令;所述应用适配器预存储有预设软件标识、预设可执行运维动作指令和预设运维动作类型之间的对应关系。图5为本发明实施例调度适配器和应用适配器使用示意图,如图5所示,针对在目标终端中使用的应用适配器,即ApplicationAdaptor,这是运行在节点机器(即多个目标终端)上的功能。每一个应用适配器对应一种软件的运维,以便多个软件在做同一运维动作类型的运维动作时,可以通过调用多个应用适配器,将同一运维动作类型的运维动作转换为对应软件的可执行运维动作指令。例如,创建组件实例,对于tomcat的来说,是把一个tomcat配置好;对于某企业应用服务器的域来说,是把某企业应用服务器的域配置好。
软件标识,即软件ID,即可以根据预设软件标识和上述软件标识,确定相应的应用适配器。例如,对于一个软件的创建应用实例(对应具体预设软件标识的和具体预设运维动作类型),可以根据上述对应关系,将其转化为把一个tomcat配置好(对应具体预设可执行运维动作指令)。
本发明实施例提供的软件运维方法,通过应用适配器实现了针对不同软件、同一运维动作类型的适配,进一步能够提高软件运维效率。
图6为本发明软件运维方法实施例流程图,如图6所示,本发明实施例提供的一种软件运维方法,包括以下步骤:
S601:发送针对待运维软件的运维处理消息至目标终端;所述运维处理消息携带运维对象和与其对应的运维动作类型;其中,所述目标终端是经由用户确定的、执行运维动作的终端。
具体的,发送针对待运维软件的运维处理消息至目标终端;所述运维处理消息携带运维对象和与其对应的运维动作类型;其中,所述目标终端是经由用户确定的、执行运维动作的终端。执行该方法步骤的可以是计算机设备,具体可以是运维管理服务器,以下简称服务器。目标终端的确定,可以具体包括:服务器若检测到用户触发的选择目标终端及确认针对运维对象的运维动作类型的动作,则发送运维处理消息至目标终端,目标终端可以为一个或多个,其他内容的具体说明可参照上述实施例,不再赘述。
S602:若接收到所述目标终端针对所述运维处理消息返回的反馈消息,则发送第一映射关系至所述目标终端,以供所述目标终端根据所述第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系。
具体的,若接收到所述目标终端针对所述运维处理消息返回的反馈消息,则发送第一映射关系至所述目标终端,以供所述目标终端根据所述第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系。反馈消息可以是目标终端确认接收到运维处理消息的响应消息。即本发明实施例中的第一映射关系(对应图3)、第二映射关系(对应图4)、运维对象与运维动作类型之间对应关系(对应图2),以及图5中的调度适配器都可以预先存储在服务器中,并可以在服务器中对其进行维护,例如增加、删除和修改其中节点;增加、删除和修改其中连接边等。其他内容的具体说明可参照上述实施例,不再赘述。
本发明实施例提供的软件运维方法,通过确定目标终端,并控制目标终端第一映射关系执行针对运维对象的、与运维动作类型相对应的运维动作,减少了用户手动操作,进而能够提高软件运维效率。
在上述实施例的基础上,所述运维对象包括组件实例;相应的,所述软件运维方法还包括:
具体的,获取各组件实例对应的域,并根据所述域的类型对所有组件实例进行聚类,以使各组件实例集群中的所有组件实例对应相同类型的域。域即是应用程序域。参照图3,例如:组件实例集群1中可以包括10个组件实例,这10个组件实例对应相同类型的域a、组件实例集群2中可以包括15个组件实例,这15个组件实例对应相同类型的域b。
本发明实施例提供的软件运维方法,通过使各组件实例集群中的所有组件实例对应相同类型的域,实现了对与组件实例相对应的域的集群管理,有效保证了软件运维效率。
在上述实施例的基础上,所述软件运维方法还包括:
具体的,获取与所述待运维软件相对应的调度适配器,并根据所述调度适配器适配所述待运维软件在多个目标终端运行;其中,所述调度适配器根据预先获取到的各组件实例集群,为指定目标终端适配与目标组件实例相对应的域、所述指定目标终端为不存在所述目标组件实例相对应的域的目标终端、所述目标组件实例与执行运维动作相对应。调度适配器,即DispatchAdaptor,这是运行在服务器上的功能。每一个调度适配器对应一种软件的运维,以便可以适配软件在多台目标终端上运行的情况。例如,经过调度适配器的协调,在目标终端A上启动某企业应用服务器的域,在目标终端B上启动这个某企业应用服务器的域管理的实例。
举例说明如下:用户选择了在目标终端A、目标终端B和目标终端C上执行针对某待运维软件的目标组件实例X的启动组件实例,如果目标终端B为指定目标终端,即不存在与目标组件实例X相对应的域a,则根据上述组件实例集群与相同类型的域的对应关系,确定组件实例集群1为目标组件实例集群,如果在组件实例集群1中都存在目标终端A、目标终端B和目标终端C,且如果目标终端A中存在目标组件实例X相对应的域,则控制目标终端A开启目标组件实例X相对应的域,以使指定目标终端B使用已开启的、与目标组件实例X相对应的域。
如果目标终端A中不存在目标组件实例X相对应的域,则继续遍历组件实例集群1,如果目标终端C中存在目标组件实例X相对应的域,则控制目标终端C开启目标组件实例X相对应的域,以使指定目标终端B使用已开启的、与目标组件实例X相对应的域。
如果目标终端C中也不存在目标组件实例X相对应的域,则继续遍历组件实例集群1,将第一个查找到的、存在目标组件实例X相对应的域的终端D(虽然该终端D不是目标终端)开启,并控制终端D开启目标组件实例X相对应的域,以使指定目标终端B使用已开启的、与目标组件实例X相对应的域。
本发明实施例提供的软件运维方法,通过调度适配器实现了多个目标终端中针对同一软件的运维动作的适配,进一步能够提高软件运维效率。
在上述实施例的基础上,所述为指定目标终端适配与目标组件实例相对应的域,包括:
具体的,确定所述目标组件实例所在的目标组件实例集群,并从所述目标组件实例集群中获取在所述多个目标终端中的、除所述指定目标终端之外的其他目标终端中的域。参照上述说明获取在所述多个目标终端中的、除所述指定目标终端之外的其他目标终端的数量可以为一个,但不做具体限定。
具体的,控制所述其他目标终端开启所述目标组件实例相对应的域,以使所述指定目标终端使用已开启的、与目标组件实例相对应的域。可参照上述说明,不再赘述。
本发明实施例提供的软件运维方法,进一步能够提高软件运维效率。
本发明实施例的有益效果包括:针对不同的复杂软件及业务进行了运维对象的抽象,在用户运维时,需要对运维对象做简单的运维动作,无需改动脚本,从而提升运维效率。参照图5,本发明实施例已经在CloudLink Ops中得到有效的应用。
图7为本发明实施例提供的电子设备实体结构示意图,如图7所示,所述电子设备包括:处理器(processor)701、存储器(memory)702和总线703;
其中,所述处理器701、存储器702通过总线703完成相互间的通信;
所述处理器701用于调用所述存储器702中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:接收服务器发送的、针对待运维软件的运维处理消息;所述运维处理消息携带运维对象和与其对应的运维动作类型;
根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系;
或者,发送针对待运维软件的运维处理消息至目标终端;所述运维处理消息携带运维对象和与其对应的运维动作类型;其中,所述目标终端是经由用户确定的、执行运维动作的终端;
若接收到所述目标终端针对所述运维处理消息返回的反馈消息,则发送第一映射关系至所述目标终端,以供所述目标终端根据所述第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:接收服务器发送的、针对待运维软件的运维处理消息;所述运维处理消息携带运维对象和与其对应的运维动作类型;
根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系;
或者,发送针对待运维软件的运维处理消息至目标终端;所述运维处理消息携带运维对象和与其对应的运维动作类型;其中,所述目标终端是经由用户确定的、执行运维动作的终端;
若接收到所述目标终端针对所述运维处理消息返回的反馈消息,则发送第一映射关系至所述目标终端,以供所述目标终端根据所述第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系。
本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:接收服务器发送的、针对待运维软件的运维处理消息;所述运维处理消息携带运维对象和与其对应的运维动作类型;
根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系;
或者,发送针对待运维软件的运维处理消息至目标终端;所述运维处理消息携带运维对象和与其对应的运维动作类型;其中,所述目标终端是经由用户确定的、执行运维动作的终端;
若接收到所述目标终端针对所述运维处理消息返回的反馈消息,则发送第一映射关系至所述目标终端,以供所述目标终端根据所述第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (7)

1.一种软件运维方法,其特征在于,包括:
接收服务器发送的、针对待运维软件的运维处理消息;所述运维处理消息携带运维对象和与其对应的运维动作类型;
根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系;
所述根据第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作,包括:
若所述运维对象为应用组件,则确定针对所述运维对象的、与所述运维动作类型相对应的运维动作为针对所述应用组件、组流水和组件实例的运维动作;其中,所述应用组件对应所述待运维软件的整体、所述组流水对应所述待运维软件的配置、所述组件实例对应所述待运维软件的进程;
若所述运维对象为所述组件实例,则确定针对所述运维对象的、与所述运维动作类型相对应的运维动作为针对所述组件实例的运维动作。
2.根据权利要求1所述的软件运维方法,其特征在于,所述运维对象和与其对应的运维动作类型包括创建组件实例和/或卸载应用组件;相应的,所述软件运维方法还包括:
根据第二映射关系确定在执行所述创建组件实例之前,先执行安装应用组件;所述第二映射关系反映所述运维动作类型在执行过程中的顺序关系;
和/或,根据所述第二映射关系确定在执行所述卸载应用组件之前,先执行删除组件实例。
3.根据权利要求1所述的软件运维方法,其特征在于,所述运维处理消息还携带所述待运维软件的软件标识,相应的,所述软件运维方法还包括:
确定与所述软件标识对应的应用适配器,并根据所述应用适配器将所述运维动作转化为所述待运维软件的可执行运维动作指令;所述应用适配器预存储有预设软件标识、预设可执行运维动作指令和预设运维动作类型之间的对应关系。
4.一种软件运维方法,其特征在于,包括:
发送针对待运维软件的运维处理消息至目标终端;所述运维处理消息携带运维对象和与其对应的运维动作类型;其中,所述目标终端是经由用户确定的、执行运维动作的终端;
若接收到所述目标终端针对所述运维处理消息返回的反馈消息,则发送第一映射关系至所述目标终端,以供所述目标终端根据所述第一映射关系执行针对所述运维对象的、与所述运维动作类型相对应的运维动作;其中,所述第一映射关系反映所述运维对象在所述待运维软件中的层级关系;
所述运维对象包括组件实例;相应的,所述软件运维方法还包括:
获取各组件实例对应的域,并根据所述域的类型对所有组件实例进行聚类,以使各组件实例集群中的所有组件实例对应相同类型的域;
所述软件运维方法还包括:
获取与所述待运维软件相对应的调度适配器,并根据所述调度适配器适配所述待运维软件在多个目标终端运行;其中,所述调度适配器根据预先获取到的各组件实例集群,为指定目标终端适配与目标组件实例相对应的域、所述指定目标终端为不存在所述目标组件实例相对应的域的目标终端、所述目标组件实例与执行运维动作相对应。
5.根据权利要求4所述的软件运维方法,其特征在于,所述为指定目标终端适配与目标组件实例相对应的域,包括:
确定所述目标组件实例所在的目标组件实例集群,并从所述目标组件实例集群中获取在所述多个目标终端中的、除所述指定目标终端之外的其他目标终端中的域;
控制所述其他目标终端开启所述目标组件实例相对应的域,以使所述指定目标终端使用已开启的、与目标组件实例相对应的域。
6.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至3任一项所述方法的步骤;或者如权利要求4或5所述方法的步骤。
7.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述方法的步骤;或者如权利要求4或5所述方法的步骤。
CN201911184879.9A 2019-11-27 2019-11-27 一种软件运维方法、电子设备及存储介质 Active CN111008035B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911184879.9A CN111008035B (zh) 2019-11-27 2019-11-27 一种软件运维方法、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911184879.9A CN111008035B (zh) 2019-11-27 2019-11-27 一种软件运维方法、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN111008035A CN111008035A (zh) 2020-04-14
CN111008035B true CN111008035B (zh) 2023-07-04

Family

ID=70113386

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911184879.9A Active CN111008035B (zh) 2019-11-27 2019-11-27 一种软件运维方法、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN111008035B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016023268A1 (zh) * 2014-08-13 2016-02-18 中兴通讯股份有限公司 集中运维的方法、装置及存储介质
CN107368365A (zh) * 2017-07-25 2017-11-21 携程旅游信息技术(上海)有限公司 云平台自动运维方法、系统、设备及存储介质
CN109740934A (zh) * 2018-12-29 2019-05-10 深圳前海微众银行股份有限公司 运维作业控制方法、装置、设备及计算机可读存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101483836A (zh) * 2009-01-15 2009-07-15 中兴通讯股份有限公司 远程运维系统和方法
US8719515B2 (en) * 2010-06-21 2014-05-06 Microsoft Corporation Composition of locks in software transactional memory
US8869114B2 (en) * 2011-07-18 2014-10-21 Salesforce.Com, Inc. Mechanism for facilitating customized data overriding for software programs in an on-demand services environment
US9262133B2 (en) * 2012-01-27 2016-02-16 Amx Llc Mapping and formatting input commands to a third party protocol
CN108536447B (zh) * 2018-04-11 2021-07-16 上海掌门科技有限公司 运维管理方法
CN109189758B (zh) * 2018-07-26 2021-02-09 新华三技术有限公司 运维流程设计方法、装置和设备、运行方法、装置和主机
CN110311361B (zh) * 2019-07-12 2021-04-27 国网福建省电力有限公司 一种基于关键词模糊匹配以及超时判断的保护跳闸报文采集的方法
CN110489142B (zh) * 2019-07-12 2020-05-22 中国人民解放军63961部队 设备软件升级的评估方法及装置、存储介质、终端
CN110430073B (zh) * 2019-07-30 2022-06-21 中国工程物理研究院计算机应用研究所 一种基于抽象业务原子操作的异构系统自动化运维方法
CN110457620A (zh) * 2019-08-15 2019-11-15 深圳乐信软件技术有限公司 一种页面访问的方法、装置、设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016023268A1 (zh) * 2014-08-13 2016-02-18 中兴通讯股份有限公司 集中运维的方法、装置及存储介质
CN107368365A (zh) * 2017-07-25 2017-11-21 携程旅游信息技术(上海)有限公司 云平台自动运维方法、系统、设备及存储介质
CN109740934A (zh) * 2018-12-29 2019-05-10 深圳前海微众银行股份有限公司 运维作业控制方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN111008035A (zh) 2020-04-14

Similar Documents

Publication Publication Date Title
US10171377B2 (en) Orchestrating computing resources between different computing environments
CN109120678B (zh) 用于分布式存储系统的服务托管的方法和装置
CN107769949B (zh) 一种应用组件部署方法及部署节点
US20180067830A1 (en) Healing cloud services during upgrades
CN102427481B (zh) 用于对云计算服务进行管理的系统及云计算管理方法
CN111045854B (zh) 用于管理服务容器的方法、设备和计算机可读介质
KR20060051932A (ko) 소프트웨어를 실행 동안 업데이트하는 시스템, 방법 및컴퓨터-판독가능 매체
US9542173B2 (en) Dependency handling for software extensions
CN113434283B (zh) 服务调度方法及装置、服务器、计算机可读存储介质
CN103473287A (zh) 一种自动分发、运行和更新可执行程序的方法及系统
CN111262908A (zh) 基于jenkins的任务构建方法及系统
JP7161560B2 (ja) 人工知能開発プラットフォームの管理方法及び装置、媒体
WO2016026329A1 (zh) 终端的升级方法及装置
CN107463390B (zh) 一种软件升级方法及升级服务器
CN110119279B (zh) 一种应用及其升级的方法和装置
CN111008035B (zh) 一种软件运维方法、电子设备及存储介质
CN110377298B (zh) 一种分布式集群升级方法及分布式集群
CN111741102A (zh) 分布式微服务应用的升级方法及装置
CN109032674B (zh) 一种多进程管理方法、系统及网络设备
EP3340048A1 (en) System and method for content - application split
US11269615B2 (en) Automatically orchestrating deployments of software-defined storage stacks
CN111984275A (zh) 基于cpu架构类型的系统部署方法、系统、终端及存储介质
CN112579247A (zh) 确定任务状态的方法和装置
US20130081007A1 (en) Providing continuous application availability during application update
CN113297158B (zh) 一种云安全产品管理方法、装置、设备及存储介质

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