CN108319500B - 一种云计算系统的操作方法、装置及电子设备 - Google Patents

一种云计算系统的操作方法、装置及电子设备 Download PDF

Info

Publication number
CN108319500B
CN108319500B CN201710032360.3A CN201710032360A CN108319500B CN 108319500 B CN108319500 B CN 108319500B CN 201710032360 A CN201710032360 A CN 201710032360A CN 108319500 B CN108319500 B CN 108319500B
Authority
CN
China
Prior art keywords
machine group
determined
operation request
machine
machines
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
CN201710032360.3A
Other languages
English (en)
Other versions
CN108319500A (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201710032360.3A priority Critical patent/CN108319500B/zh
Publication of CN108319500A publication Critical patent/CN108319500A/zh
Application granted granted Critical
Publication of CN108319500B publication Critical patent/CN108319500B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Abstract

本申请提供一种云计算系统的操作方法、装置及电子设备;所述云计算系统的操作方法包括:当收到操作请求时,确定与所述操作请求对应的操作指令,确定与所述操作请求对应的机器组;其中,一个机器组中包含一个或多个机器;对所确定的机器组执行所确定的操作指令。本申请可以在资源动态变化的情况下自动完成运维等操作。

Description

一种云计算系统的操作方法、装置及电子设备
技术领域
本发明涉及云计算领域,尤其涉及一种云计算系统的操作方法、装置及电子设备。
背景技术
运维,是指对相关产品进行运行维护,包括对故障或异常情况进行处理、对产品进行改进或升级、对产品进行管理和资源调度等操作。传统的运维方式是基于配置的,通过配置资源地址与标识的方式查找资源,并通过推或者拉的模式下发指令。
而随着云计算的兴起,对于传统的运维方式带来了越来越多的挑战。云计算将越来越多的资源进行虚拟化,服务器可以是虚拟化的、网络可以是虚拟化的、存储可以使虚拟化的。虚拟化带来的好处就是原本实实在在的基础设施,现在可以用软件定义的方式来动态生产。而虚拟化最大的问题在于资源将会动态变化,比如只在有需求的时候才生成大量的机器与云资源,资源的数目是变化的、配置是浮动的,甚至机器所在的地域都是不同的;这对于原本在云场景下自动化程度就不高的传统运维手段来说,无疑带来了更大的难度。
发明内容
本申请提供一种云计算系统的操作方法、装置及电子设备,可以在资源动态变化的情况下自动完成运维等操作。
本申请采用如下技术方案。
一种云计算系统的操作方法,包括:
当收到操作请求时,确定与所述操作请求对应的操作指令,确定与所述操作请求对应的机器组;其中,一个机器组中包含一个或多个机器;
对所确定的机器组执行所确定的操作指令。
可选地,一个机器组中的机器的节点类型相同;所述节点类型包括以下一或多种:存储节点、计算节点、控制节点。
可选地,所述确定与所述操作请求对应的机器组包括:
确定操作请求对应的节点类型;在预先设置的机器组的信息中,查找所包含的机器的节点类型与所确定的节点类型匹配的机器组。
可选地,所述在预先设置的机器组的信息中,查找所包含的机器的节点类型与所确定的节点类型匹配的机器组之前还包括:
将静态配置的资源信息和动态生成的资源信息分别进行格式转换后合并,得到所述机器组的信息。
可选地,所述对所确定的机器组执行所确定的操作指令包括:
根据所确定的机器组的信息,登录所确定的机器组中的机器,分别向各机器下发所确定的操作指令。
可选地,所述确定与操作请求对应的机器组之前还包括:
如果判断所述操作请求是针对云资源的操作请求,则确定所述操作请求对应的云资源,对所确定的云资源执行所确定的操作指令;
如果判断所述操作请求是针对机器的操作请求,则进行所述确定与所述操作请求对应的机器组的步骤。
可选地,所述操作指令是另一种标记语言YAML模板;
所述对所确定的机器组执行所确定的操作指令包括:
运行所确定的YAML模板,驱动相应的插件对所确定的机器组执行操作。
一种云计算系统的操作装置,包括:
确定模块,用于当收到操作请求时,确定与所述操作请求对应的操作指令,确定与所述操作请求对应的机器组;其中,一个机器组中包含一个或多个机器;
执行模块,用于对所确定的机器组执行所确定的操作指令。
可选地,一个机器组中的机器的节点类型相同;所述节点类型包括以下一或多种:存储节点、计算节点、控制节点。
可选地,所述确定模块确定与所述操作请求对应的机器组包括:
所述确定模块确定操作请求对应的节点类型;在预先设置的机器组的信息中,查找所包含的机器的节点类型与所确定的节点类型匹配的机器组。
可选地,所述的操作装置还包括:
合并模块,用于将静态配置的资源信息和动态生成的资源信息分别进行格式转换后合并,得到所述机器组的信息。
可选地,所述执行模块对所确定的机器组执行所确定的操作指令包括:
所述执行模块根据所确定的机器组的信息,登录所确定的机器组中的机器,分别向各机器下发所确定的操作指令。
可选地,所述确定模块还用于在确定与操作请求对应的机器组之前,如果判断所述操作请求是针对云资源的操作请求,则确定所述操作请求对应的云资源,对所确定的云资源执行所确定的操作指令;如果判断所述操作请求是针对机器的操作请求,则确定与所述操作请求对应的机器组。
可选地,所述操作指令是另一种标记语言YAML模板;
所述执行模块对所确定的机器组执行所确定的操作指令包括:
所述执行模块运行所确定的YAML模板,驱动相应的插件对所确定的机器组执行操作。
一种进行云计算系统操作的电子设备,包括:存储器和处理器;
所述存储器用于保存进行云计算系统操作的程序;所述用于进行云计算系统操作的程序在被所述处理器读取执行时,执行以下操作:
当收到操作请求时,确定与所述操作请求对应的操作指令,确定与所述操作请求对应的机器组;其中,一个机器组中包含一个或多个机器;
对所确定的机器组执行所确定的操作指令。
本申请包括以下优点:
本申请至少一个实施例中,通过对操作请求对应的机器组按照对应的操作指令进行操作,可以在资源动态变化的情况下无需修改操作指令,且可以自动完成操作。
当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
图1是实施例一的云计算系统的操作方法的流程图;
图2是实施例一的例子的实现示意图;
图3是实施例二的云计算系统的操作装置的示意图。
具体实施方式
下面将结合附图及实施例对本申请的技术方案进行更详细的说明。
需要说明的是,如果不冲突,本申请实施例以及实施例中的各个特征可以相互结合,均在本申请的保护范围之内。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在一种配置中,进行云计算系统操作的计算设备可包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存(memory)。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。内存可能包括模块1,模块2,……,模块N(N为大于2的整数)。
计算机可读介质包括永久性和非永久性、可移动和非可移动存储介质,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM),快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
实施例一、一种云计算系统的操作方法,如图1所示,包括步骤S110~S120:
S110、当收到操作请求时,确定与所述操作请求对应的操作指令,确定与所述操作请求对应的机器组;其中,一个机器组中包含一个或多个机器;
S120、对所确定的机器组执行所确定的操作指令。
本实施例中,操作请求可以是用户(比如但不限于运维工程师)发起的,用户可以但不限于通过输入指令、在操作界面中点击菜单项或按钮等方式发起操作请求。操作请求可以但不限于包括运维的操作请求。
本实施例中,与操作请求对应的机器组可以有一个或多个;不同的操作请求对应的机器组可以不同,也有可能相同。其中,可以根据预先设置的操作请求和机器组之间的对应关系,来确定操作请求对应的机器组。
本实施例中,机器组可以是预先设置好的,可以将与同一种操作请求对应的机器放入一个机器组。本文的“预先设置”是指在执行步骤S110时已经设置好,但并不意味着不能改动。本实施例中,各机器组中机器的数量、所包含的机器、机器组的数量等都可以是动态变化的。执行步骤S110时依据当前的机器组的情况确定机器组。
本实施例中,对机器组的操作,相当于就是对该机器组中包含的所有机器的操作。资源的变化只会使机器组中的机器产生变化,而操作对象则固定为机器组,因此不用重新查找资源。对机器组的操作,实际上是对机器组中包含的所有机器的操作;比如对一个机器组进行重启操作,如果机器组中有5个机器,则相当于对这5个机器进行重启操作;如果该机器组中有20个机器,则相当于对该20个机器进行重启操作;但对于步骤S120的执行者而言,无论机器组中有5个机器还是20个机器,都是对该机器组进行重启操作,并不需要随着机器组中机器数量、地址的动态变化而变化,也不需要在资源变化时重新查找资源。
本实施例中,可以根据预先设置的操作请求和操作指令之间的对应关系,来确定操作请求对应的操作指令。操作指令可以是封装好的、标准化的、可以实现相应操作行为的代码,或代码构成的对象(如模板、插件等),这样就可以用软件定义的方式来规约操作行为。
本实施例既解决了操作过程中动态资源的查找问题,也解决了运维等操作无法标准化的问题,使传统的运维向云计算时代的运维更近了一步。
本实施例中,确定操作指令和确定机器组没有必然的前后顺序,还可以并行的执行,比如可以边确定操作指令,边确定机器组。
本实施例中,可以由已有设备或新增设备进行步骤S110~S120,比如将云计算系统中的一个或多个设备作为执行节点,进行上述步骤S110~S120。作为执行节点的设备可以是新增的、专门用于执行本实施例方法的设备,也可以复用原有的、也执行其它操作的设备。作为执行节点的设备可以只有一台,也可以有多台,采用分布式的方式分别对不同的操作请求执行上述步骤S110~S120。当有多个执行节点时,还可以用一台设备作为分发节点,根据预设策略(可以但不限于为负载均衡策略)将操作请求分发到不同的执行节点。
一种实现方式中,一个机器组中的机器的节点类型可以相同;所述节点类型可以包括以下一或多种:存储节点、计算节点、控制节点。
本实现方式中,一个机器组中包含的一个或多个机器都是实现相同功能的节点,比如均是存储节点,或均是计算节点。
其它实现方式中,也可以自行设计哪些机器归到同一个机器组,或自行设置节点类型包括哪些。
本实现方式中,所述确定与所述操作请求对应的机器组可以包括:
确定操作请求对应的节点类型;在预先设置的机器组的信息中,查找所包含的机器的节点类型与所确定的节点类型匹配的机器组。
本实现方式中,可以根据预先设置的操作请求和节点类型之间的对应关系,确定操作请求对应的节点类型;操作请求对应的节点类型可以是该操作请求会涉及到的节点类型,比如操作请求是重启系统的请求时,会涉及到计算节点和存储节点,则查找到的机器组将包括:包含作为存储节点的机器的机器组、和包含作为计算节点的机器的机器组。
本实现方式中,所确定的机器组将是一个或多个。
本实现方式中,在预先设置机器组时,可以将机器按照节点类型来划分机器组,同一节点类型的机器分入一个或多个机器组;比如作为存储节点的机器都放入机器组A(即存储节点全放入一个机器组),或放入机器组A1~Ai(i>1,即存储节点放入i个机器组),作为计算节点的机器都放入机器组B(即计算节点全放入一个机器组),或放入机器组B1~Aj(j>1,即计算节点放入j个机器组)。
本实现方式中,机器组并不是设置后就固定不变的,而是可以随着资源的变化而变化,比如假设一个机器组中原先包含2个作为存储节点的机器,分别是地址为11.230.138.236的机器和地址为11.230.138.222的机器;如果需要减少或增加存储节点的数量,则可以删除或添加该机器组中的机器,比如添加地址为11.230.138.240的机器作为存储节点;如果资源改变了,则可以修改存储节点组中包含的机器,比如将地址为11.230.138.222的机器用地址为11.230.138.240的机器代替,这个修改可以看成是在该机器组中删除一个机器,然后添加一个机器。另外,当资源发生变化时,也可以将原先设置的机器组全部用根据变化后的资源设置的机器组代替。
本实现方式中,所述在预先设置的机器组的信息中,查找所包含的机器的节点类型与所确定的节点类型匹配的机器组之前还可以包括:
将静态配置的资源信息和动态生成的资源信息分别进行格式转换后合并,得到机器组的信息。
其中,静态配置的资源信息可以是固定的、已经写死的资源的信息;动态生成的资源信息可以是通过资源编排服务等方式分配的资源的信息。比如云计算系统每个周期开始时根据需求将云资源生成机器,并分别配置成存储节点、计算节点、控制节点,从而实现资源的动态生成;在分配周期结束时删除机器,从而释放分配给这些机器的资源。上述动态生成的资源信息可以根据本周期的配置结果得到,可以至少包括:机器的地址及其节点类型。每个周期中的动态生成的资源信息会进行格式转换后,和也经过格式转换的静态配置的资源信息合并;格式转换时可以将相同节点类型的机器合并到一个机器组中,格式转换后,动态生成的资源信息和静态配置的资源信息将完全相同,合并后就可以得到机器组的信息。
其中,机器组的信息中可以包括各机器组中机器的节点类型、所包含的机器的地址等;还可以包括其它相关信息,比如登录这些机器所采用的账号和密码、机器组所在的集群(cluster)的标识等。
其它实现方式中,也可以预先设置操作请求和机器组的标识之间的对应关系,将静态配置的机器和动态生成的机器放入相应的机器组;在确定机器组时,直接根据操作请求和机器组的标识之间的对应关系确定机器组。
一种实现方式中,对所确定的机器组执行所确定的操作指令可以包括:
根据所确定的机器组的信息,登录所确定的机器组中的机器,分别向各机器下发所确定的操作指令。
本实现方式中,可以但不限于采用安全外壳(Secure Shell,SSH)协议登录机器;登录时可以根据机器组的信息中的账号和密码进行登录。
本实现方式中,当所述操作为运维操作时,所下发的操作指令可以但不限于为相应的运维脚本;不同操作指令对应的运维脚本可以不同。不同节点类型的机器拿到运维脚本后,可以进行相应的操作。
本实现方式中,机器拿到运维脚本后的处理可以和传统运维方法中相同。
其它实现方式中,也可以通过控制机器等方式执行操作指令。
一种实现方式中,所述确定与所述操作请求对应的机器组之前还可以包括:
如果判断所述操作请求是针对云资源的操作请求,则确定所述操作请求对应的云资源,对所确定的云资源执行所确定的操作指令;
如果判断所述操作请求是针对机器的操作请求,则进行所述确定与所述操作请求对应的机器组的步骤。
本实现方式中,如果操作请求是要对云资源进行操作,比如生成云资源、释放云资源等,则可以不再关心机器组,只确定操作请求对应的云资源及操作指令,并相应进行操作即可。如果是对机器进行操作,即需要将机器作为操作对象或由机器完成的操作,则进行确定操作请求对应的机器组的步骤。
一种实现方式中,所述操作指令可以是另一种标记语言(Yet Another MarkupLanguage,YAML)模板;
所述对所确定的机器组执行所确定的操作指令包括:
运行所确定的YAML模板,驱动相应的插件对所确定的机器组执行操作。
本实现方式中,可以预先设置操作请求和YAML模板之间的对应关系,确定操作请求对应的操作指令,即确定操作请求对应的YAML模板。可以将YAML模板统一保存,由执行步骤S120的设备根据操作请求去获取相应的YAML模板。
本实现方式中,执行步骤S120的设备上可以保存多个插件,不同插件对应于不同的YAML模板,用于实现不同的操作,比如有的用于登录机器和下发脚本、有的用于调用云服务提供厂商的接口操控云资源,有的用于使用预定工具来诊断系统。通过运行YAML模板可以按照统一的方式驱动各种插件,实现操作的标准化。
本实现方式中,对云资源执行所确定的操作指令时也可以采用类似的做法,即:运行所确定的YAML模板,驱动相应的插件对所确定的云资源执行操作。
其它实现方式中,操作指令也可以是其它形式的封装好的代码等。
下面用一个例子说明本实施例。本例子用于实现对系统的运维操作,实现示意图如图2所示。
本例子中,采用多个执行节点21执行上述步骤S110~S120,多个执行节点从分发节点20获得操作请求;分发节点20接收用户的操作请求,并分发到执行节点21。
本例子中,执行节点21当收到操作请求后,如果操作请求是针对机器的,则从资源中心23获取机器组的信息,并确定操作请求对应的机器组;如果操作请求是针对云资源的,则从资源中心23获取云资源的信息,并确定操作请求对应的云资源。
另外,执行节点21从模板中心24获取操作请求对应的YAML模板。在其它实现方式中,YAML模板也可以在每个执行节点21中都保存一套。
执行节点21通过运行所获取的YAML模板,驱动相应的、所保存的插件,对所确定的云资源或机器组进行操作。当对机器组进行操作时,可以采用SSH方式登录机器组中的机器,并下发和操作指令对应的运维脚本。
本例中,运维操作是通过标准化的YAML来实现的,可以将不同的命令进行封装,从而是实现通过同样的YAML模板,可以在不同节点类型的机器上执行不同的运维操作。比如执行节点运行和“重启”这个操作请求对应的YAML模板时,都是驱动SSH登录插件,登录作为存储节点和计算节点的机器并下发用于进行重启的运维脚本,但作为存储节点的机器上执行该运维脚本的结果是存储软件的重启,作为计算节点的机器上执行该运维脚本的结果是计算软件的重启。这种方式的好处就是将复杂的运维操作进行了规约,而规约的结果就是将复杂的运维操作变成了软件定义的,从而可以更好的适应云计算场景下的挑战。
本例中,资源中心23中所保存的机器组的信息,并不是单纯通过静态配置的方式得到的,而是通过动态生成与静态配置相结合的方式得到的。动态生成的部分可以通过云资源编排服务实现,静态配置的部分可以通过资源中心本地的配置方式实现。
可以将静态配置的资源信息和动态生成的资源信息都先转换成中间态资源信息;一种中间态资源信息的格式如下:
[console:children]
control
etcd
master
pool
[etcd]
etcd-1 ansible_ssh_host=11.230.138.236 my_host_alias=etcd-1
etcd-2 ansible_ssh_host=11.230.138.240 my_host_alias=etcd-2
etcd-3 ansible_ssh_host=11.230.138.222 my_host_alias=etcd-3
[master]
master ansible_ssh_host=11.230.138.230 my_host_alias=master
[pool]
node1 ansible_ssh_host=11.230.138.232 my_host_alias=node1
node2 ansible_ssh_host=11.230.138.238 my_host_alias=node2
node3 ansible_ssh_host=11.230.138.218 my_host_alias=node3
node4 ansible_ssh_host=11.230.138.225 my_host_alias=node4
node5 ansible_ssh_host=11.230.138.193 my_host_alias=node5
[control]
viper ansible_ssh_host=11.230.138.208 my_host_alias=viper
[console:vars]
ansible_ssh_user=XXX
ansible_ssh_pass=*******
ansible_sudo_pass=*******
agent_image=XXXXX
clusterId=XXXXXX
force=true
通过转换成中间态,可以将机器归入机器组,而且还提供了通过SSH方式登录各机器所需要的信息。将静态配置的资源信息和动态生成的资源信息所转换成的中间态资源信息进行合并,保存在资源中心里。
本例中,由于执行节点只需要关心机器组,而不用关心机器组中机器的细节,因此可以不受资源动态变化的影响,实现对动态资源的操作。
本例中,可以通过代码的方式实现云场景下的软件定义运维,通过代码定义的方式,可以进行定义基础设施、云资源的生成、软件的配管等运维操作,实现真正的云环境下的软件定义运维。
实施例二、一种云计算系统的操作装置,如图3所示,包括:
确定模块31,用于当收到操作请求时,确定与所述操作请求对应的操作指令,确定与所述操作请求对应的机器组;其中,一个机器组中包含一个或多个机器;
执行模块32,用于对所确定的机器组执行所确定的操作指令。
本实施例中,所述操作装置可以复用云计算系统中的原有设备,也可以是新增设备;可以是云计算系统的外部设备,也可以是云计算系统中的组成设备;可以采用单一设备实现,也可以采用多个设备采用分布式方式实现。
本实施例中,所述确定模块31是上述装置中负责确定操作指令和机器组的部分,可以是软件、硬件或两者的结合。
本实施例中,所述执行模块32是上述装置中负责对确定的机器组执行操作指令的部分,可以是软件、硬件或两者的结合。
一种实现方式中,一个机器组中的机器的节点类型可以相同;所述节点类型可以包括以下一或多种:存储节点、计算节点、控制节点。
本实现方式中,所述确定模块确定与所述操作请求对应的机器组可以包括:
所述确定模块确定操作请求对应的节点类型;在预先设置的机器组的信息中,查找所包含的机器的节点类型与所确定的节点类型匹配的机器组。
本实现方式中,所述的操作装置还可以包括:
合并模块,用于将静态配置的资源信息和动态生成的资源信息分别进行格式转换后合并,得到所述机器组的信息。
一种实现方式中,所述执行模块对所确定的机器组执行所确定的操作指令可以包括:
所述执行模块根据所确定的机器组的信息,登录所确定的机器组中的机器,分别向各机器下发所确定的操作指令。
一种实现方式中,所述确定模块还可以用于在确定与操作请求对应的机器组之前,如果判断所述操作请求是针对云资源的操作请求,则确定所述操作请求对应的云资源,对所确定的云资源执行所确定的操作指令;如果判断所述操作请求是针对机器的操作请求,则确定与所述操作请求对应的机器组。
一种实现方式中,所述操作指令是另一种标记语言YAML模板;
所述执行模块对所确定的机器组执行所确定的操作指令包括:
所述执行模块运行所确定的YAML模板,驱动相应的插件对所确定的机器组执行操作。
本实施例的操作装置的各模块的操作分别对应于实施例一中的步骤S110~S120,各模块操作的其它实现细节可参见实施例一。
实施例三、一种进行云计算系统操作的电子设备,包括:存储器和处理器;所述存储器用于保存进行云计算系统操作的程序;所述用于进行云计算系统操作的程序在被所述处理器读取执行时,执行以下操作:
当收到操作请求时,确定与所述操作请求对应的操作指令,确定与所述操作请求对应的机器组;其中,一个机器组中包含一个或多个机器;
对所确定的机器组执行所确定的操作指令。
本实施例中,用于进行云计算系统操作的程序在被处理器读取执行时,所执行的操作对应于实施例一中的步骤S110~S120;该程序所执行的操作的其它细节可参见实施例一。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
当然,本申请还可有其他多种实施例,在不背离本申请精神及其实质的情况下,熟悉本领域的技术人员当可根据本申请作出各种相应的改变和变形,但这些相应的改变和变形都应属于本申请的权利要求的保护范围。

Claims (11)

1.一种云计算系统的操作方法,包括:
当收到操作请求时,确定与所述操作请求对应的操作指令,确定当前与所述操作请求对应的机器组;其中,一个机器组中包含一个或多个机器,所述机器组中包含的机器随云计算资源的变化而变化;
对所确定的机器组执行所确定的操作指令;
其中,一个机器组中的机器的节点类型相同;机器组中机器的节点类型、所包含的机器的地址,包含在机器组的信息中;所述机器组的信息通过以下方式得到:
将静态配置的资源信息和动态生成的资源信息分别进行格式转换后合并,得到所述机器组的信息;
所述确定与所述操作请求对应的机器组包括:
确定操作请求对应的节点类型;在预先设置的机器组的信息中,查找所包含的机器的节点类型与所确定的节点类型匹配的机器组。
2.如权利要求1所述的操作方法,其特征在于:
所述节点类型包括以下一或多种:存储节点、计算节点、控制节点。
3.如权利要求1或2所述的操作方法,其特征在于,所述对所确定的机器组执行所确定的操作指令包括:
根据所确定的机器组的信息,登录所确定的机器组中的机器,分别向各机器下发所确定的操作指令。
4.如权利要求1或2所述的操作方法,其特征在于,所述确定与操作请求对应的机器组之前还包括:
如果判断所述操作请求是针对云资源的操作请求,则确定所述操作请求对应的云资源,对所确定的云资源执行所确定的操作指令;
如果判断所述操作请求是针对机器的操作请求,则进行所述确定与所述操作请求对应的机器组的步骤。
5.如权利要求1或2所述的操作方法,其特征在于:
所述操作指令是另一种标记语言YAML模板;
所述对所确定的机器组执行所确定的操作指令包括:
运行所确定的YAML模板,驱动相应的插件对所确定的机器组执行操作。
6.一种云计算系统的操作装置,其特征在于,包括:
确定模块,用于当收到操作请求时,确定当前与所述操作请求对应的操作指令,确定与所述操作请求对应的机器组;其中,一个机器组中包含一个或多个机器,所述机器组中包含的机器随云计算资源的变化而变化;一个机器组中的机器的节点类型相同;机器组中机器的节点类型、所包含的机器的地址,包含在机器组的信息中;
所述确定模块确定与所述操作请求对应的机器组包括:
所述确定模块确定操作请求对应的节点类型;在预先设置的机器组的信息中,查找所包含的机器的节点类型与所确定的节点类型匹配的机器组;
合并模块,用于将静态配置的资源信息和动态生成的资源信息分别进行格式转换后合并,得到所述机器组的信息;
执行模块,用于对所确定的机器组执行所确定的操作指令。
7.如权利要求6所述的操作装置,其特征在于:
所述节点类型包括以下一或多种:存储节点、计算节点、控制节点。
8.如权利要求6或7所述的操作装置,其特征在于,所述执行模块对所确定的机器组执行所确定的操作指令包括:
所述执行模块根据所确定的机器组的信息,登录所确定的机器组中的机器,分别向各机器下发所确定的操作指令。
9.如权利要求6或7所述的操作装置,其特征在于:
所述确定模块还用于在确定与操作请求对应的机器组之前,如果判断所述操作请求是针对云资源的操作请求,则确定所述操作请求对应的云资源,对所确定的云资源执行所确定的操作指令;如果判断所述操作请求是针对机器的操作请求,则确定与所述操作请求对应的机器组。
10.如权利要求6或7所述的操作装置,其特征在于:
所述操作指令是另一种标记语言YAML模板;
所述执行模块对所确定的机器组执行所确定的操作指令包括:
所述执行模块运行所确定的YAML模板,驱动相应的插件对所确定的机器组执行操作。
11.一种进行云计算系统操作的电子设备,包括:存储器和处理器;
其特征在于:
所述存储器用于保存进行云计算系统操作的程序;所述用于进行云计算系统操作的程序在被所述处理器读取执行时,执行以下操作:
当收到操作请求时,确定与所述操作请求对应的操作指令,确定当前与所述操作请求对应的机器组;其中,一个机器组中包含一个或多个机器,所述机器组中包含的机器随云计算资源的变化而变化;
对所确定的机器组执行所确定的操作指令;
其中,一个机器组中的机器的节点类型相同;机器组中机器的节点类型、所包含的机器的地址,包含在机器组的信息中;所述机器组的信息通过以下方式得到:
将静态配置的资源信息和动态生成的资源信息分别进行格式转换后合并,得到所述机器组的信息;
所述确定与所述操作请求对应的机器组包括:
确定操作请求对应的节点类型;在预先设置的机器组的信息中,查找所包含的机器的节点类型与所确定的节点类型匹配的机器组。
CN201710032360.3A 2017-01-16 2017-01-16 一种云计算系统的操作方法、装置及电子设备 Active CN108319500B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710032360.3A CN108319500B (zh) 2017-01-16 2017-01-16 一种云计算系统的操作方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710032360.3A CN108319500B (zh) 2017-01-16 2017-01-16 一种云计算系统的操作方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN108319500A CN108319500A (zh) 2018-07-24
CN108319500B true CN108319500B (zh) 2022-06-21

Family

ID=62891132

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710032360.3A Active CN108319500B (zh) 2017-01-16 2017-01-16 一种云计算系统的操作方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN108319500B (zh)

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2008317006A1 (en) * 2007-10-21 2009-04-30 Citrix Systems, Inc. Systems and methods to adaptively load balance user sessions to reduce energy consumption
US8886806B2 (en) * 2010-04-07 2014-11-11 Accenture Global Services Limited Generic control layer in a cloud environment
CN102811136A (zh) * 2011-06-01 2012-12-05 南京中兴新软件有限责任公司 软件升级系统及方法
CN103268261A (zh) * 2012-02-24 2013-08-28 苏州蓝海彤翔系统科技有限公司 一种适用于大规模高效能计算机的层次式计算资源管理方法
CN102646062B (zh) * 2012-03-20 2014-04-09 广东电子工业研究院有限公司 一种云计算平台应用集群弹性扩容方法
CN103324535B (zh) * 2012-03-23 2017-02-08 百度在线网络技术(北京)有限公司 一种计算资源的分配方法和装置
CN103346906B (zh) * 2013-06-19 2016-07-13 华南师范大学 一种基于云计算的智能运维方法及系统
CN103595804A (zh) * 2013-11-20 2014-02-19 北京京东尚科信息技术有限公司 一种服务器集群监控系统
CN104113430A (zh) * 2014-02-13 2014-10-22 西安未来国际信息股份有限公司 一种云计算数据中心自动化部署软件架构设计
CN104252378A (zh) * 2014-05-14 2014-12-31 温武少 一种虚拟计算机实验课室系统
CN106325998B (zh) * 2015-06-30 2020-08-25 华为技术有限公司 一种基于云计算的应用部署的方法和装置
CN105159610B (zh) * 2015-09-01 2018-03-09 浪潮(北京)电子信息产业有限公司 大规模数据处理系统及方法
CN105335273B (zh) * 2015-09-25 2018-06-26 浪潮(北京)电子信息产业有限公司 一种面向私有云的云管理平台
CN105245371A (zh) * 2015-10-12 2016-01-13 浪潮软件集团有限公司 一种基于ansible的自动化部署系统及方法
CN105653322B (zh) * 2015-12-25 2019-02-26 上海帝联信息科技股份有限公司 运维服务器和服务器事件的处理方法
CN105553737A (zh) * 2015-12-25 2016-05-04 浪潮(北京)电子信息产业有限公司 一种节点管理方法与系统
CN106059798B (zh) * 2016-05-18 2019-10-01 厦门市美亚柏科信息股份有限公司 一种基于节点集合的多层管理系统

Also Published As

Publication number Publication date
CN108319500A (zh) 2018-07-24

Similar Documents

Publication Publication Date Title
US10700947B2 (en) Life cycle management method and device for network service
US10970057B2 (en) Methods and apparatus to generate a customized application blueprint
US7823023B2 (en) Test framework for testing an application
US20150186129A1 (en) Method and system for deploying a program module
US9535754B1 (en) Dynamic provisioning of computing resources
US10581704B2 (en) Cloud system for supporting big data process and operation method thereof
US20120167081A1 (en) Application Service Performance in Cloud Computing
US11102278B2 (en) Method for managing a software-defined data center implementing redundant cloud management stacks with duplicate API calls processed in parallel
US11556369B2 (en) Virtual machine deployment method and OMM virtual machine
CN109995814B (zh) 云主机资源的迁移方法及装置、通信设备、存储介质
CN109684038B (zh) Docker服务容器日志的处理方法、装置和电子设备
US9959157B1 (en) Computing instance migration
CN108228197B (zh) 一种在集群中安装软件的方法和装置
CN114338820A (zh) 网络访问方法、装置、电子设备及存储介质
CN114237853A (zh) 应用于异构系统的任务执行方法、装置、设备、介质和程序产品
CN103051668B (zh) 一种服务器资源管理系统及管理方法
US20220229689A1 (en) Virtualization platform control device, virtualization platform control method, and virtualization platform control program
CN108319500B (zh) 一种云计算系统的操作方法、装置及电子设备
CN112764995B (zh) 一种服务器硬件资源监控方法、装置和介质
CN110661886B (zh) 一种组件安装方法及装置
US9436523B1 (en) Holistic non-invasive evaluation of an asynchronous distributed software process
CN111741097B (zh) 一种租户独占节点的方法、计算机设备及存储介质
US11477090B1 (en) Detecting deployment problems of containerized applications in a multiple-cluster environment
JP2013232035A (ja) 情報処理システム、情報処理装置、情報処理方法、及びプログラム
Zheng et al. Toward easy migration of client-server applications to the cloud

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