CN110716826B - 一种云盘升级、调度方法及云主机、调度装置和系统 - Google Patents

一种云盘升级、调度方法及云主机、调度装置和系统 Download PDF

Info

Publication number
CN110716826B
CN110716826B CN201810769541.9A CN201810769541A CN110716826B CN 110716826 B CN110716826 B CN 110716826B CN 201810769541 A CN201810769541 A CN 201810769541A CN 110716826 B CN110716826 B CN 110716826B
Authority
CN
China
Prior art keywords
cloud
upgrading
cloud host
upgrade
disk
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
CN201810769541.9A
Other languages
English (en)
Other versions
CN110716826A (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 Cloud Computing 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 CN201810769541.9A priority Critical patent/CN110716826B/zh
Publication of CN110716826A publication Critical patent/CN110716826A/zh
Application granted granted Critical
Publication of CN110716826B publication Critical patent/CN110716826B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3034Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种云盘升级、调度方法及云主机、调度装置和系统,云主机接收调度装置发送的云盘升级的指令;云主机进行云盘升级的处理,包括:对云主机中的云盘软件模块进行版本升级和监测云主机中云盘的性能参数。如云主机根据监测得到的性能参数确定发生升级故障时,对云主机中的云盘软件模块进行版本回滚,并向调度装置上报故障告警。调度装置逐批次地向待升级的云主机发送云盘升级的指令的过程中,如接收到一云主机上报的故障告警,取消后续批次的云主机的升级。本申请可以及时发生升级故障,有效控制故障对客户业务造成的影响。

Description

一种云盘升级、调度方法及云主机、调度装置和系统
技术领域
本申请涉及但不限于计算机领域,更具体地,涉及一种云盘升级、调度方法及云主机、调度装置和系统。
背景技术
在当今的互联网应用中,各种新的业务需求层出不穷,为了满足这些应用的业务需求,云计算服务提供商需要快速迭代提供服务的软件模块,因此需要频繁地升级线上环境的软件模块、同时又不影响客户业务的运行。
图1所示是一种示例性的存储和计算分离的云计算系统的架构,该云计算系统包括计算集群和存储集群,基于块存储技术的计算集群和存储集群可称为块存储计算集群和块存储存储集群。所谓集群是由多个物理云主机组成的一个集合,逻辑上作为一个整体来管理、提供计算服务(云服务器)或存储服务(云盘)。
计算集群提供云服务器资源,云服务器是云主机厂商基于云计算技术提供的,让用户能以远程登陆的方式进行操作管理的服务器,在用户使用方式上与普通的远程物理服务器一样。云服务器所需的云盘功能由计算集群的云主机连同后端的存储集群一起提供。一个计算集群包括多台云主机,云主机是物理机器,一台云主机上可以运行多个云服务器,而每个云服务器可以挂载多块云盘。云盘是建立在分布式存储系统之上的磁盘实例,在云服务器中可当作计算机磁盘一样进行读写使用。
云服务器针对云盘发起的IO操作(即读操作或写操作),从IO操作发起到IO操作结束的时间,称为IO延迟(IO Latency)时间。在图1所示的系统中,一个云盘的数据IO操作请求要经过云盘->云服务器->云主机->网络交换机->存储集群->磁盘逐级处理,再从磁盘逐级返回操作响应到云盘,这个来回处理的过程所耗费的时间即为该IO操作的IO延迟。
如图2所示,每一台云主机上有一个云盘软件模块(也可称为云盘软件系统),该云盘软件模块负责处理当前云主机上所有云服务器的所有云盘服务,包括将对云盘的IO操作请求转发到后端的存储集群,及接收后端存储集群返回的IO操作响应,因而云盘的IO延迟可以基于云盘软件模块的IO操作相关记录计算得到。
云盘热升级是对云主机上的云盘软件模块的版本升级,升级过程中不停止云盘服务和云服务器的运行。但云盘热升级会带来相应软件程序的重启操作。在软件程序重启的时间窗口内,当前云主机的所有云盘会出现短暂的IO暂停,进而造成IO延迟升高和IO毛刺现象。如果存在故障如一个软件缺陷(bug)导致升级后的云盘性能劣化,例如云盘的IO延迟超过设定的阈值,会对相应的客户业务造成极大的影响。因而需要提供一种技术方案,可以及时发现云盘热升级的故障。
此外,云盘作为公共云计算的基础存储服务,其特点是会在多区域多集群上同时大规模的部署和运行。在大规模云盘热升级的过程中,如果一台云主机因存在一个软件缺陷(bug)导致升级后的云盘性能劣化,则其他云主机也可能在热升级后出现云盘性能劣化,对大量的客户业务造成影响,带来无法估量的损失,最终引发安全生产事故。因而需要提供一种技术方案,可以有效控制云盘热升级发生故障时的影响时间、影响范围。
发明内容
本发明实施例提供了一种云盘升级方法,包括:
云主机接收调度装置发送的云盘升级的指令;
所述云主机进行云盘升级的处理,所述云盘升级的处理包括对所述云主机中的云盘软件模块进行版本升级和监测所述云主机中云盘的性能参数。
在一实施例中,所述云主机进行云盘升级的处理,还包括:所述云主机根据监测得到的性能参数确定发生升级故障时,对所述云主机中的云盘软件模块进行版本回滚,并向所述调度装置上报故障告警。
在一实施例中,所述云主机进行云盘升级的处理,还包括:所述云主机将监测得到的性能参数的信息上报所述调度装置;及,所述云主机如接收到所述调度装置根据所述监测得到的性能参数确定所述云主机发生升级故障时发送的回滚指令,对所述云主机中的云盘软件模块进行版本回滚。
在一实施例中,所述云盘升级为云盘热升级,所述性能参数包括IO延迟。
本发明实施例提供了一种云主机,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算程序时实现如本发明实施例的云盘升级方法的处理。
本发明上述实施例的云盘升级方法和云主机能够在云盘升级过程中监测云盘的性能参数,从而可以及时发现性能参数的劣化,监测得到的性能参数可用于升级故障的判决,迅速将正在升级的云盘进行软件版本回滚,从而有效控制故障对客户业务造成的影响。
本发明实施例还提供了一种云盘升级的调度方法,包括:
云盘升级的调度装置逐批次地向待升级的云主机发送云盘升级的指令;
所述调度装置如接收到一云主机根据监测得到的性能参数确定发生升级故障时上报的故障告警,取消后续批次的云主机的云盘升级。
本发明实施例还提供了一种云盘升级的调度方法,包括:
云盘升级的调度装置逐批次地向待升级的云主机发送云盘升级的指令;
所述调度装置根据一云主机上报的性能参数的信息确定所述云主机发生升级故障时,向所述云主机发送回滚指令,并取消后续批次的云主机的云盘升级,所述性能参数是所述云主机进行云盘升级的处理时监测得到的。
在一实施例中,所述云盘升级为云盘热升级,所述性能参数包括IO延迟。
本发明实施例还提供了一种云盘升级的调度装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算程序时实现如本发明实施例所述的调度方法的处理。
本发明实施例的调度方法和装置在云主机发生升级故障后可以取消后续的云盘升级,避免引发大规模的云盘升级故障。
本发明实施例还提供了一种云盘升级系统,包括云盘升级的调度装置和待升级的云主机,其中:
每一所述待升级的云主机包括:
云盘软件模块,用于实现云盘服务;
云盘升级模块,用于接收所述调度装置发送的云盘升级的指令,进行云盘升级的处理,所述云盘升级的处理包括对本云主机中的云盘软件模块进行版本升级和监测本云主机中云盘的性能参数;及,根据监测得到的性能参数确定是否发生升级故障,如发生升级故障,对本云主机中的云盘软件模块进行版本回滚,并向所述调度装置上报故障告警;
所述调度装置,用于逐批次地向所述待升级的云主机发送云盘升级的指令;及,接收到一云主机上报的升级故障后,取消后续批次的云主机的云盘升级。
本发明实施例还提供了一种云盘升级系统,包括云盘升级的调度装置和待升级的云主机,其中:
每一所述待升级的云主机包括:
云盘软件模块,用于实现云盘服务;
云盘升级模块,用于接收所述调度装置发送的云盘升级的指令,进行云盘升级的处理,所述云盘升级的处理包括对本云主机中的云盘软件模块进行版本升级和监测本云主机中云盘的性能参数;及,将监测得到的性能参数的信息上报所述调度装置;
所述调度装置,用于逐批次地向所述待升级的云主机发送云盘升级的指令;及,根据一云主机上报的性能参数的信息确定所述云主机发生升级故障时,向所述云主机发送回滚指令,并取消后续批次的云主机的云盘升级。
在一实施例中,所述云盘升级为云盘热升级,所述性能参数包括IO延迟。
本发明上述实施例的云盘升级系统在云盘升级过程中监测云盘的性能参数,可以及时发现升级故障,将正在升级的云盘进行软件版本回滚,并取消后续批次的云主机的云盘热升级。因而可以有效控制故障对客户业务造成的影响,避免引发大规模的云盘升级故障。
附图说明
图1是一种存储和计算分离的云计算架构的示意图;
图2是云主机中的云服务器和云盘软件模块的示意图;
图3是本发明实施例的云盘热升级方法的流程图;
图4是本发明实施例的云盘热升级方法对IO延迟进行监测的示意图;
图5是本发明实施例的云主机的硬件结构示意图;
图6是本发明一实施例的云盘热升级的调度方法的流程图;
图7是本发明另一实施例的云盘热升级的调度方法的流程图;
图8是本发明实施例的云盘热升级系统的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
云盘升级方法和云主机
通常,在热升级云盘的过程中,云盘升级系统并没有监测所升级云盘的性能参数如IO延迟。即使云盘热升级过程中发生故障导致IO延迟出现问题,云盘升级系统本身也不知道,因此不会暂停升级、而会继续完成整个集群云盘的热升级。云盘的IO延迟是由另外一套系统来监测,并在确定IO延迟出现问题时发出告警。但是,这类监测报警系统从问题的出现到监测到该问题有一定的延后性,从值班人员收到并开始处理到问题解决也有一定的延后性。延后的时间越长,客户的业务受影响越严重、客户的损失就越大。
为了有效控制云盘升级发生故障时对客户业务造成的影响,本发明一个示例性的实施例提供了一种云盘升级方法,如图3所示,包括:
步骤110,云主机接收调度装置发送的云盘升级的指令;
本实施例中,云盘升级是指云盘热升级。
调度装置是用于对待升级的云主机(如整个集群内的云主机但不局限于此)进行云盘升级调度的装置,可以向每一台云主机发送云盘升级的指令、取消云盘升级的指令等等。调度装置在实体上,可以单独设置,也可以与云主机或集群中的其他设备集成在一起。
步骤120,云主机进行云盘升级的处理,所述云盘升级的处理包括对所述云主机中的云盘软件模块进行版本升级和监测所述云主机中云盘的性能参数。
在一实施例中,上述所监测的云主机中云盘的性能参数包括云主机中云盘的IO延迟,但本申请不局限于此,也可以包括其他的性能参数。
云主机接收到云盘升级的指令后,开始进行云盘升级的处理。云主机对本云主机中的云盘软件模块进行版本升级时,可以从调度模块获取或者通过其他方式获取云盘软件模块的最新版本的程序。云主机用最新版本的程序替换掉旧版本的程序之后,将还未结束的读写操作挂起,并结束旧版本的程序的运行。随后,云主机将新版本的程序载入内存并运行即进行程序重启,重启后的程序继续执行挂起的读写操作。
在一实施例中,云主机对本云主机中的云盘软件模块进行版本升级之前和之后,均对云主机中云盘的性能参数进行监测。这样就可以利用进行版本升级之前和之后监测得到的性能参数的变化来确定是否发生热升级故障。
本实施例中的性能参数以IO延迟为例。可以预设一个进行版本升级之前监测用的时间窗口X和一个进行版本升级之后监测用的时间窗口Y。在时间窗口X的结束时刻可以开始进行版本升级。而时间窗口Y的开始时刻设置在版本升级完成之后。时间窗口X和时间窗口Y的长度即监测的时长可以根据需要设置,例如设置为1分钟、5分钟或10分钟等等。不同云盘的类型可以设置不同长度的时间窗口。时间窗口X和时间窗口Y的长度可以相同也可以不同。
进行版本升级之前监测云主机中云盘的IO延迟,可以包括:计算在设定的时间窗口X内开始和结束的与所述云主机中云盘相关的所有IO操作的IO延迟,根据与所述云主机中云盘相关的所有IO操作的IO延迟统计出所述云主机中云盘的IO延迟。统计出的IO延迟即为监测得到的IO延迟。统计出的IO延迟可以包括平均IO延迟和最大IO延迟中的至少一种。平均IO延迟即上述所有IO操作的IO延迟的平均值,最大IO延迟即上述所有IO操作的IO延迟中的最大值。除了统计这两个IO延迟外,也可以采用其他的统计方式,例如将IO延迟划分为多个区间,将上述所有IO操作的IO延迟归入到所属的区间后,统计所归入的IO延迟个数最多的区间,将该区间中一设定的IO延迟作为监测得到的IO延迟。
在另一实施例中,云主机对本云主机中的云盘软件模块进行版本升级之后,对云主机中云盘的IO延迟进行监测,具体的监测方法可以如上文所述。而在云主机对本云主机中的云盘软件模块进行版本升级之前,不对云主机中云盘的IO延迟进行监测。
在一实施例中,由云主机进行升级故障的判决,在执行上述步骤120之后,所述云主机执行的云盘升级的处理还包括:所述云主机根据监测得到的性能参数确定发生升级故障时,对所述云主机中的云盘软件模块进行版本回滚,并向所述调度装置上报故障告警。
在云主机对本云主机中的云盘软件模块进行版本升级之前和之后,均对云主机中云盘的性能参数进行监测的实施例中,可以利用进行版本升级之前和之后监测得到的性能参数的变化来确定是否发生热升级故障。正常情况下,进行版本升级之后监测得到的性能参数相对于进行版本升级之后监测得到的性能参数的变化不会超出一定的范围,该范围可以通过理论分析和实际测试来确定,根据该范围可以设定一个阈值,为了区别于其他阈值,这里将升级故障对应的阈值称为第一阈值,如果超出设定的第一阈值,则可以确定发生升级故障,本实施例即热升级故障,此时可立即对云主机中的云盘软件模块进行版本回滚,继续使用旧版本的云盘软件模块提供云盘服务,以避免对客户业务造成长时间影响。
在一实施例中,将IO延迟作为性能参数,如上所述,所述IO延迟可以包括平均IO延迟和最大IO延迟中的至少一种。在以下情况发生时,可以认为性能参数的变化超出了设定的第一阈值:
进行所述版本升级之后监测得到的至少一种IO延迟减去进行所述版本升级之前监测得到的该种IO延迟,得到的差大于相应设定的第一时间阈值;或者
进行所述版本升级之后监测得到的至少一种IO延迟与进行所述版本升级之前监测得到的该种IO延迟的比值大于相应设定的第一比值阈值。
例如,在监测得到的IO延迟包括平均IO延迟和最大IO延迟时,如果进行所述版本升级之后监测得到的平均IO延迟为TP1、最大IO延迟为TM1,进行所述版本升级之前监测得到的平均IO延迟为TP0、最大IO延迟为TM0,为平均IO延迟设定的第一时间阈值为△TP、为最大IO延迟设定的第一时间阈值为△TM,则在TP1-TP0>△TP、TM1-TM0>△TM中的任意一个满足时,确定发生热升级故障。容易理解,在监测得到的IO延迟只包括平均IO延迟时,则在TP1-TP0>△TP时确定发生热升级故障。在监测得到的IO延迟只包括最大IO延迟时,则在TM1-TM0>△TM时确定发生热升级故障。
考虑到云主机中云盘的性能参数具有一定的波动性,如果进行版本升级之前和之后监测得到的性能参数的变化较大,但是又不足以认定是故障导致,如可能是一次异常波动导致,随后又恢复正常。此时,可以认为发生升级异常,本实施例即热升级异常。在一实施例中,云主机进行步骤110的云盘升级的处理之后,还进行热升级异常的判决。云主机根据监测得到的性能参数确定发生热升级异常时,向所述调度装置上报异常告警。
在云主机对本云主机中的云盘软件模块进行版本升级之前和之后,均对云主机中云盘的性能参数进行监测的实施例中,可以采用类似的方式来确定是否发生热升级异常。例如,当性能参数如IO延迟的变化超出设定的第二阈值但没有超出为热升级故障设定的第一阈值时,确定发生热升级异常;所述性能参数的变化指所述云主机进行所述版本升级之后监测得到的性能参数相对于所述云主机进行所述版本升级之前监测得到的性能参数的变化。
在云主机对本云主机中的云盘软件模块进行版本升级之后,对云主机中云盘的性能参数进行监测的另一实施例中,云主机可以直接根据进行版本升级之后监测得到的性能参数确定发生热升级故障,例如,当监测得到的性能参数超出设定的第三阈值时,确定发生热升级故障。在该另一实施例中,第三阈值可设置为正常情况下不会出现的IO延迟的值,通常大于上述第一阈值,根据该IO延迟的值即可判定发生了热升级故障。容易理解,在云主机对本云主机中的云盘软件模块进行版本升级之前和之后,均对云主机中云盘的性能参数进行监测的实施例中,除了根据性能参数如IO延迟的变化确定是否发生热升级故障外,也可以使用这种判决方式,即当进行版本升级之后监测得到的性能参数超出设定的第三阈值时,确定发生热升级故障。
本实施例云盘热升级方法可结合图4来理解,在一个示例中,云主机中包括多个云盘85,每个云盘均通过云盘软件模块81实现云盘服务如IO操作,在对云盘软件模块81进行版本升级之前,在时间窗口X内对云主机中云盘IO延迟相关的数据进行统计,得到IO最大延迟和IO平均延迟。而在对云盘软件模块81进行版本升级之后,在时间窗口Y内对云主机中云盘IO延迟相关的数据进行统计,得到IO最大延迟和IO平均延迟。之后,可以根据版本升级之后的IO最大延迟和IO平均延迟相对于版本升级之前的IO最大延迟和IO平均延迟的变化来确定是否发生热升级故障。
云主机上报故障告警时,也可以将监测得到的IO延迟的信息、版本回滚的结果等信息上报调度装置,供调度装置做后续的分析、处理。如果没有发生故障,云主机也可以上报监测得到的IO延迟的信息。
在其他实施例中,由云主机上报监测得到的性能参数的信息,而由调度装置进行升级故障的判决,在执行上述步骤120之后,所述云主机执行云盘升的处理还包括:所述云主机将监测得到的性能参数的信息上报云所述调度装置;及,所述云主机如接收到所述调度装置根据所述监测得到的性能参数确定所述云主机发生升级故障时发送的回滚指令,对所述云主机中的云盘软件模块进行版本回滚。在该实施例中,云盘升级为云盘热升级。而性能参数包括IO延迟,云主机上报的监测得到的性能参数的信息可以是云主机监测得到的IO延迟的值。
在本申请的一个实施例中,还提供了一种云主机,如图5所示,包括处理器10、存储器20及存储在所述存储器20上并可在所述处理器10上运行的计算机程序,所述处理器10执行所述计算程序时实现如上述任一实施例的云盘升级方法的处理。
上述实施例的云主机和云盘热升级方法在云盘热升级过程中监测云盘的性能参数如IO延迟,因而可以及时发现性能参数的劣化。性能参数还可以用于热升级故障的判决,在确定发生热升级故障时,迅速将正在升级的云盘进行软件版本回滚,避免对客户业务产生长时间的影响。还可以由所述调度装置取消后续的云盘热升级,避免引发大规模的云盘热升级故障。
云盘升级的调度方法和调度装置
在之前的技术中,云主机并不对云盘的性能参数进行监测并确定是否发生云盘热升级故障,调度装置无法及时知道云盘热升级是否发生与性能参数方面有关的故障,因而即使一台云主机发生与性能参数方面有关的故障,调度装置也会继续后续批次的云主机的升级。由于一些云盘热升级的故障是具有普遍性的,例如,当最新版本的版本升级模块具有bug时,通常所有云主机在升级后都会存在性能降低的情况,如均出现IO延迟超过允许值的情况,其影响的客户面和业务面是非常巨大的。
在本申请的一个实施例中,提供了一种云盘升级的调度方法来避免引发大规模的云盘升级故障。如图6所示,本实施例云盘升级的调度方法包括:
步骤210,调度装置逐批次地向待升级的云主机发送云盘升级的指令;
步骤220,所述调度装置如接收到一云主机根据监测得到的性能参数确定发生升级故障时上报的故障告警,取消后续批次的云主机的云盘热升级。
本实施例中,所述云盘升级为云盘热升级,所述性能参数包括IO延迟。
本步骤中,调度装置接收到一云主机上报的故障告警,可以是任意批次的任意一台云主机上报的故障告警。
在确定发生热升级故障时,除了取消后续批次的云主机的云盘热升级,使整个升级流程终止外,所述调度装置还可以向当前批次的其他云主机发送取消云盘热升级的指令。当前批次的其他云主机收到取消云盘热升级的指令后,如果还未对云盘软件模块进行版本升级,则停止云盘升级的处理,不再对云盘软件模块进行版本升级;如果已经对云盘软件模块进行版本升级,根据策略,可以进行版本回滚,也可以不进行版本回滚。如果已有其他批次的云主机完成云盘热升级并且没有上报故障告警,可以不通知这些云主机进行版本的自动回滚。调度装置在取消后续批次的云主机的云盘热升级后,可以发出升级失败的告警,由人工介入分析故障原因后,再进行相应的处理。
在一个实施例中,云主机除了在热升级故障时上报故障报告外,还在发生热升级异常时上报异常告警。相应地,调度装置逐批次地向待升级的云主机发送云盘升级的指令的过程中,如接收到一云主机根据监测得到的性能参数确定发生热升级异常时上报的异常告警后,累计接收到的异常告警的次数并判断累计的次数是否超过允许的最大次数,如超过,取消后续批次的云主机的云盘热升级。这种方式区分了热升级异常和热升级故障两种情况,对于可能是偶然发生的性能参数变化,确定为热升级异常并上报异常告警,有助于云盘热升级的顺利完成,不至于因为偶然因素而频繁中断。而在异常次数超过允许的最大次数,如3次、5次、10次等,就可视为发生热升级故障,此时取消后续批次的云主机的云盘热升级,避免故障影响的客户业务扩大。在累计的次数超过允许的最大次数时,除了取消后续批次的云主机的云盘热升级外,调度装置也可以向当前批次的云主机发送取消云盘热升级的指令。当前批次的云主机中确定发生热升级异常的云主机自动进行版本回滚,当前批次的云主机中没有确定发生热升级异常的云主机根据策略,可以进行版本回滚,也可以不进行版本回滚。
在本申请的另一实施例中,也提供了一种云盘升级的调度方法来避免引发大规模的云盘升级故障。如图7所示,本实施例云盘升级的调度方法包括:
步骤310,调度装置逐批次地向待升级的云主机发送云盘升级的指令;
步骤320,所述调度装置根据一云主机上报的性能参数的信息确定所述云主机发生升级故障时,向所述云主机发送回滚指令,并取消后续批次的云主机的云盘升级,所述性能参数是所述云主机进行云盘升级的处理时监测得到的。
本实施例中,所述云盘升级为云盘热升级,所述性能参数包括IO延迟。
本实施例中,调度装置根据性能参数的信息确定是否发生热升级故障的方法可以与上述实施例云主机根据性能参数确定是否发生热升级故障的方法相同,这里仅举几个示例说明。
例如在上报的性能参数的信息包括所述云主机对云盘软件模块进行版本升级之前和之后,对所述云主机中云盘的性能参数进行监测得到的性能参数的信息时,所述调度装置根据一云主机上报的性能参数的信息确定所述云主机发生热升级故障,包括:当性能参数的变化超出设定的第一阈值时,确定所述云主机发生热升级故障;所述性能参数的变化指进行所述版本升级之后所述云主机监测得到的性能参数相对于进行所述版本升级之前所述云主机监测得到的性能参数的变化。在一个示例中,上述性能参数包括IO延迟,根据IO延迟确定是否发生热升级故障的方法在前述实施例中已有详细描述,这里不再重复。
又如,在上报的性能参数的信息包括所述云主机对云盘软件模块进行版本升级之后,对所述云主机中云盘的性能参数进行监测得到的性能参数的信息时,所述调度装置可以在上报的性能参数超出设定的第三阈值时,确定发生热升级故障。
所述调度装置根据一云主机上报的性能参数的信息确定所述云主机发生热升级故障时,还可以向当前批次还未上报性能参数信息的其他云主机发送取消云盘热升级的指令,对于当前批次已上报性能参数信息但没有确定其发生热升级故障的云主机,可以不发送云盘升级的指令。后续可以由人工介入,区分不同的情况进行处理。
在一实施例中,调度装置也可以根据性能参数的信息确定是否发生热升级异常。具体的方法也可以与前述实施例云主机根据性能参数确定是否发生热升级异常的方法相同。这里不再赘述。在该实施例中,所述调度装置逐批次地向待升级的云主机发送云盘升级的指令的过程中,根据一云主机上报的性能参数的信息确定所述云主机是否发生热升级异常,如确定所述云主机发生热升级异常时,累计已确定的发生热升级异常的次数并判断累计的次数是否超过允许的最大次数,如超过,取消后续批次的云主机的云盘热升级。例如,在第一个批次,调度装置根据一台云主机上报的性能参数的信息确定该云主机发生热升级异常后,暂不进行处理。如果在第二个批次,调度装置又根据其中二台云主机上报的性能参数的信息确定该二台云主机发生热升级异常,此时已确定的发生热升级异常的次数为3,假定允许的最大次数为2,则视为发生热升级故障,取消后续批次的云主机的云盘热升级。在一个示例中,调度装置在累计的次数超过允许的最大次数后,还可以向确定发生热升级异常的云主机发送回滚指令,指示这些云主机对云盘软件模块进行版本回滚。
除了上述处理外,调度装置还可以统计所有已完成批次的云主机上报的性能参数信息如IO延迟的数据情况并保存下来。在升级过程结束后,展示详细的升级流程和IO延迟的情况。
由云主机上报监测数据,在调度装置侧进行故障判决的实施例,相对于云主机进行故障判决和上报的实施例,调度装置无需将故障判决相关的策略下发给云主机。
在本申请的一个实施例中,还提供了一种云盘升级的调度装置,也可参见图5,包括处理器10、存储器20及存储在所述存储器20上并可在所述处理器10上运行的计算机程序,所述处理器10执行所述计算程序时实现如上述任一实施例的云盘升级的调度方法的处理。
本发明实施例的调度方法和装置在云主机发生热升级故障后可以取消后续的云盘热升级,避免引发大规模的云盘热升级故障。
云盘升级系统
在本申请的一实施例中,提供了一种云盘升级系统,如图8所示。图中的云主机1至云主机N为待升级的云主机8,可以是一个集群内的所有云主机,但不局限于此。每一台待升级的云主机8均可以与云盘升级的调度装置9交互。
每一云主机8内包括一个云盘软件模块81和一个云盘升级模块83,云盘软件模块81用于实现云盘服务,云盘升级模块83用于接收所述调度装置发送的云盘升级的指令,进行云盘升级的处理,所述云盘升级的处理包括对本云主机中的云盘软件模块进行版本升级和监测本云主机中云盘的性能参数;及,根据监测得到的性能参数确定是否发生升级故障,如发生升级故障,对本云主机中的云盘软件模块进行版本回滚,并向所述调度装置上报故障告警。
在一实施例中,云盘热升级系统中的云盘升级模块83执行前述实施例由云主机进行升级故障判决的云盘升级方法,所述云盘升级为云盘热升级,所述性能参数包括IO延迟。所述云盘升级模块监测所述云主机中云盘的性能参数,包括:对所述云主机中的云盘软件模块进行版本升级之前和之后,分别监测所述云主机中云盘的IO延迟;所述云盘升级模块根据监测得到的性能参数确定发生热升级故障,包括:当IO延迟的变化超出设定的第一阈值时,确定发生热升级故障;所述IO延迟的变化指进行所述版本升级之后监测得到的IO延迟相对于进行所述版本升级之前监测得到的IO延迟的变化。所述云盘升级模块进行云盘升级的处理之后,还可以用于根据监测得到的性能参数确定是否发生热升级异常,如发生热升级异常,向所述调度装置上报异常告警。云盘升级模块进行热升级故障、热升级异常的判决采用的规则可以由调度装置预先下发给云盘升级模块。云盘升级模块83执行的由云主机进行热升级故障判决的云盘升级方法见前述实施例,这里不再一一赘述。
调度装置9将待升级的云主机划分为多个批次,逐批次地向待升级的云主机发送云盘升级的指令,在当前批次的云主机完成云盘升级后,再向下一批次的云主机发送云盘升级的指令。图8中是将N台云主机划分为X个批次,每一批次可以包括一台或多台云主机。
请参见图6,云盘热升级系统中的调度装置9用于逐批次地向所述待升级的云主机发送云盘升级的指令;及,接收到一云主机上报的故障告警后,取消后续批次的云主机的云盘升级。此外,在接收到一云主机上报的升级故障后,调度装置也可以向当前批次的其他云主机发送取消云盘升级的指令,当前批次的其他云主机可以按照上文描述的方式处理。在一个实施例中,所述调度装置还可以用于在接收到一云主机上报的异常告警后,累计接收到的异常告警的次数并判断累计的次数是否超过允许的最大次数,如超过,取消后续批次的云主机的云盘升级。本实施例中,所述云盘升级为云盘热升级,云盘升级系统中的调度装置9可以执行上述云主机进行故障判决的调度方法的任何处理,这里不再一一赘述。
在本申请的另一实施例中,也提供了一种云盘升级系统,其系统架构也如图8所示。与前述实施例不同的是,故障判决在调度装置侧进行。
该实施例的云盘升级系统包括云盘升级的调度装置9和待升级的云主机8,其中:
每一所述待升级的云主机8包括:
云盘软件模块81,用于实现云盘服务;
云盘升级模块83,用于接收调度装置发送的云盘升级的指令,进行云盘升级的处理,所述云盘升级的处理包括对本云主机中的云盘软件模块进行版本升级和监测本云主机中云盘的性能参数;及,将监测得到的性能参数的信息上报所述调度装置;
所述调度装置9,用于逐批次地向所述待升级的云主机发送云盘升级的指令;及,根据一云主机上报的性能参数的信息确定所述云主机发生升级故障时,向所述云主机发送回滚指令,并取消后续批次的云主机的云盘热升级。
本实施例中,所述云盘升级为云盘热升级,所述性能参数包括IO延迟。
本实施例中,所述调度装置根据所述性能参数的信息确定发生热升级故障的方法在前述实施例中已有详细描述,这里不再重复。所述调度装置还可以用于根据性能参数确定是否发生热升级异常,在确定发生热升级异常时,累计已确定的发生热升级异常的次数并判断累计的次数是否超过允许的最大次数,如超过,取消后续批次的云主机的云盘热升级。本实施例云盘热升级系统中的调度装置9可以执行上述调度装置进行故障判决的调度方法的任何处理,这里不再一一赘述。
上述实施例的云盘热升级系统设计了一个云盘升级调度模块和一个云盘升级模块。这两个模块一起合作来精确控制整个集群云盘的升级,实现在热升级时对云盘IO延迟等性能参数的监测收集机制,如监测云盘软件模块升级前后性能参数如IO延迟的情况,确保在因为软件bug等导致IO延迟出现问题后立刻回滚版本,同时终止后续批次云主机的云盘热升级以避免影响扩散,因而可以有效控制故障对客户业务造成的影响,避免引发大规模的云盘热升级故障。
本发明实施例可以应用在具有大规模云盘的公共云中的云盘热升级,解决了传统升级方法中不能及时监测IO延迟问题并处理从而导致客户业务受影响、产生运维热升级故障的问题。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

Claims (17)

1.一种云盘升级方法,包括:
云主机接收调度装置发送的云盘升级的指令;
所述云主机进行云盘升级的处理,所述云盘升级的处理包括对所述云主机中的云盘软件模块进行版本升级和监测所述云主机中云盘的性能参数;所述云主机根据监测得到的性能参数确定发生升级故障或升级异常,并在升级故障时向所述调度装置上报故障告警,在升级异常时向所述调度装置上报异常告警;
其中,所述云盘升级的指令是由所述调度装置逐批次发送的;所述故障告警用于使所述调度装置取消后续批次的云主机的云盘升级;所述异常告警用于使所述调度装置在接收到异常告警的累计次数超过允许的最大次数时,取消后续批次的云主机的云盘升级。
2.如权利要求1所述的方法,其特征在于:
所述云主机进行云盘升级的处理,还包括:所述云主机根据监测得到的性能参数确定发生升级故障时,对所述云主机中的云盘软件模块进行版本回滚。
3.如权利要求1所述的方法,其特征在于:
所述云主机进行云盘升级的处理,还包括:所述云主机将监测得到的性能参数的信息上报所述调度装置;及,所述云主机如接收到所述调度装置根据所述监测得到的性能参数确定所述云主机发生升级故障时发送的回滚指令,对所述云主机中的云盘软件模块进行版本回滚。
4.如权利要求1或2或3所述的方法,其特征在于:
所述云盘升级为云盘热升级,所述性能参数包括IO延迟。
5.如权利要求2所述的方法,其特征在于:
所述云主机根据监测得到的性能参数确定发生升级故障,包括:当性能参数的变化超出设定的第一阈值时,确定发生升级故障;所述性能参数的变化指所述云主机进行所述版本升级之后监测得到的性能参数相对于所述云主机进行所述版本升级之前监测得到的性能参数的变化。
6.如权利要求5所述的方法,其特征在于:
所述性能参数包括IO延迟,所述IO延迟包括平均IO延迟和最大IO延迟中的至少一种;
所述性能参数的变化超出设定的第一阈值,包括:
进行所述版本升级之后监测得到的至少一种IO延迟减去进行所述版本升级之前监测得到的该种IO延迟,得到的差大于相应设定的第一时间阈值;或者
进行所述版本升级之后监测得到的至少一种IO延迟与进行所述版本升级之前监测得到的该种IO延迟的比值大于相应设定的第一比值阈值。
7.如权利要求2所述的方法,其特征在于:
所述云主机根据监测得到的性能参数确定发生升级故障,包括:当进行所述版本升级之后监测得到的性能参数超出设定的第三阈值时,确定发生升级故障。
8.如权利要求1所述的方法,其特征在于:
所述云主机根据监测得到的性能参数确定发生升级异常,包括:当性能参数的变化超出设定的第二阈值但没有超出为升级故障设定的第一阈值时,确定发生升级异常;所述性能参数的变化指所述云主机进行所述版本升级之后监测得到的性能参数相对于所述云主机进行所述版本升级之前监测得到的性能参数的变化。
9.一种云主机,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算程序时实现如权利要求1至8中任一所述的方法的处理。
10.一种云盘升级的调度方法,包括:
调度装置逐批次地向待升级的云主机发送云盘升级的指令;
所述调度装置如接收到一云主机根据监测得到的性能参数确定发生升级故障时上报的故障告警,取消后续批次的云主机的云盘升级;
所述调度装置如接收到一云主机根据监测得到的性能参数确定发生升级异常时上报的异常告警,累计接收到的异常告警的次数并判断累计的次数是否超过允许的最大次数,如超过,取消后续批次的云主机的云盘升级。
11.如权利要求10所述的方法,其特征在于:
所述云盘升级为云盘热升级,所述性能参数包括IO延迟。
12.一种云盘升级的调度方法,包括:
调度装置逐批次地向待升级的云主机发送云盘升级的指令;
所述调度装置根据一云主机上报的性能参数的信息确定所述云主机发生升级故障时,向所述云主机发送回滚指令,并取消后续批次的云主机的云盘升级,所述性能参数是所述云主机进行云盘升级的处理时监测得到的;
所述调度装置根据一云主机上报的性能参数的信息确定所述云主机发生升级异常时,累计已确定的发生升级异常的次数并判断累计的次数是否超过允许的最大次数,如超过,取消后续批次的云主机的云盘升级。
13.如权利要求12所述的方法,其特征在于:
所述调度装置根据一云主机上报的性能参数的信息确定所述云主机发生升级故障,包括:当所述性能参数的变化超出设定的第一阈值时,确定所述云主机发生升级故障;所述性能参数的变化指所述云主机进行版本升级之后监测得到的性能参数相对于所述云主机进行所述版本升级之前监测得到的性能参数的变化。
14.如权利要求12或13所述的方法,其特征在于:
所述云盘升级为云盘热升级,所述性能参数包括IO延迟。
15.一种云盘升级的调度装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算程序时实现如权利要求10至14中任一所述的方法的处理。
16.一种云盘升级系统,其特征在于,包括云盘升级的调度装置和待升级的云主机,其中:
每一所述待升级的云主机包括:
云盘软件模块,用于实现云盘服务;
云盘升级模块,用于接收所述调度装置发送的云盘升级的指令,进行云盘升级的处理,所述云盘升级的处理包括对本云主机中的云盘软件模块进行版本升级和监测本云主机中云盘的性能参数;及,根据监测得到的性能参数确定是否发生升级故障,如发生升级故障,对本云主机中的云盘软件模块进行版本回滚,并向所述调度装置上报故障告警;根据监测得到的性能参数确定是否发生升级异常,如发生升级异常,对本云主机中的云盘软件模块进行版本回滚,并向所述调度装置上报异常告警;
所述调度装置,用于逐批次地向所述待升级的云主机发送云盘升级的指令;及,接收到一云主机上报的故障告警后,取消后续批次的云主机的云盘升级;接收到一云主机上报的异常告警后,累计接收到的异常告警的次数并判断累计的次数是否超过允许的最大次数,如超过,取消后续批次的云主机的云盘升级。
17.一种云盘升级系统,其特征在于,包括云盘升级的调度装置和待升级的云主机,其中:
每一所述待升级的云主机包括:
云盘软件模块,用于实现云盘服务;
云盘升级模块,用于接收所述调度装置发送的云盘升级的指令,进行云盘升级的处理,所述云盘升级的处理包括对本云主机中的云盘软件模块进行版本升级和监测本云主机中云盘的性能参数;及,将监测得到的性能参数的信息上报所述调度装置;
所述调度装置,用于逐批次地向所述待升级的云主机发送云盘升级的指令;及,根据一云主机上报的性能参数的信息确定所述云主机发生升级故障时,向所述云主机发送回滚指令,并取消后续批次的云主机的云盘升级;根据一云主机上报的性能参数的信息确定所述云主机发生升级异常时,累计接
发生升级异常的次数并判断累计的次数是否超过允许的最大次数,如超过,
取消后续批次的云主机的云盘升级。
CN201810769541.9A 2018-07-13 2018-07-13 一种云盘升级、调度方法及云主机、调度装置和系统 Active CN110716826B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810769541.9A CN110716826B (zh) 2018-07-13 2018-07-13 一种云盘升级、调度方法及云主机、调度装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810769541.9A CN110716826B (zh) 2018-07-13 2018-07-13 一种云盘升级、调度方法及云主机、调度装置和系统

Publications (2)

Publication Number Publication Date
CN110716826A CN110716826A (zh) 2020-01-21
CN110716826B true CN110716826B (zh) 2023-11-24

Family

ID=69208494

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810769541.9A Active CN110716826B (zh) 2018-07-13 2018-07-13 一种云盘升级、调度方法及云主机、调度装置和系统

Country Status (1)

Country Link
CN (1) CN110716826B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112202909B (zh) * 2020-10-10 2021-06-04 上海威固信息技术股份有限公司 一种计算机存储系统在线升级方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102811136A (zh) * 2011-06-01 2012-12-05 南京中兴新软件有限责任公司 软件升级系统及方法
CN104780057A (zh) * 2014-01-13 2015-07-15 中兴通讯股份有限公司 版本升级处理方法及装置
CN105005487A (zh) * 2015-06-29 2015-10-28 清华大学 一种持续服务的高性能集群操作系统在线升级方法
CN107515776A (zh) * 2017-07-18 2017-12-26 深信服科技股份有限公司 业务不间断升级方法、待升级节点和可读存储介质
CN107548085A (zh) * 2016-06-24 2018-01-05 中兴通讯股份有限公司 基站版本回退方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9189224B2 (en) * 2013-07-11 2015-11-17 Oracle International Corporation Forming an upgrade recommendation in a cloud computing environment
US10235157B2 (en) * 2016-12-29 2019-03-19 Arris Enterprises Llc Method and system for analytics-based updating of networked devices

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102811136A (zh) * 2011-06-01 2012-12-05 南京中兴新软件有限责任公司 软件升级系统及方法
CN104780057A (zh) * 2014-01-13 2015-07-15 中兴通讯股份有限公司 版本升级处理方法及装置
CN105005487A (zh) * 2015-06-29 2015-10-28 清华大学 一种持续服务的高性能集群操作系统在线升级方法
CN107548085A (zh) * 2016-06-24 2018-01-05 中兴通讯股份有限公司 基站版本回退方法及系统
CN107515776A (zh) * 2017-07-18 2017-12-26 深信服科技股份有限公司 业务不间断升级方法、待升级节点和可读存储介质

Also Published As

Publication number Publication date
CN110716826A (zh) 2020-01-21

Similar Documents

Publication Publication Date Title
CN110798375B (zh) 一种增强容器集群高可用性的监控方法、系统及终端设备
US7802128B2 (en) Method to avoid continuous application failovers in a cluster
US7321992B1 (en) Reducing application downtime in a cluster using user-defined rules for proactive failover
US11481269B2 (en) Recommendation engine based on classification of virtualized workload
CN109144789B (zh) 一种重启osd的方法、装置及系统
US10983855B2 (en) Interface for fault prediction and detection using time-based distributed data
US9921877B2 (en) Intelligent auto-scaling
AU2012221821B2 (en) Network event management
CN111953566B (zh) 一种基于分布式故障监控的方法和虚拟机高可用系统
CN107453932B (zh) 一种分布式存储系统管理方法及其装置
CN111796959B (zh) 宿主机容器自愈方法、装置及系统
CN110716826B (zh) 一种云盘升级、调度方法及云主机、调度装置和系统
CN111342986B (zh) 分布式节点管理方法及装置、分布式系统、存储介质
US11290330B1 (en) Reconciliation of the edge state in a telemetry platform
US7206975B1 (en) Internal product fault monitoring apparatus and method
CN111897626A (zh) 一种面向云计算场景的虚拟机高可靠系统和实现方法
US11700178B2 (en) System and method for managing clusters in an edge network
CN112702183A (zh) 基站软件版本回退控制方法、装置及基站、可读存储介质
CN115964142A (zh) 应用服务的管理方法、设备及存储介质
CN109672573B (zh) 一种配置文件的部署方法、确定方法、服务器及存储介质
CN114510433A (zh) 光传输设备的内存管理方法、设备和存储介质
CN115562702A (zh) 控制方法、控制装置、机器可读存储介质及处理器
CN116225497A (zh) 一种流量插件升级处理方法和装置
WO2023198276A1 (en) Handling failure of an application instance
JP2015032219A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20231207

Address after: Room 1-2-A06, Yungu Park, No. 1008 Dengcai Street, Sandun Town, Xihu District, Hangzhou City, Zhejiang Province

Patentee after: Aliyun Computing Co.,Ltd.

Address before: Box 847, four, Grand Cayman capital, Cayman Islands, UK

Patentee before: ALIBABA GROUP HOLDING Ltd.