CN113778535A - 一种云主机操作校验的方法、***、设备和存储介质 - Google Patents

一种云主机操作校验的方法、***、设备和存储介质 Download PDF

Info

Publication number
CN113778535A
CN113778535A CN202110912842.4A CN202110912842A CN113778535A CN 113778535 A CN113778535 A CN 113778535A CN 202110912842 A CN202110912842 A CN 202110912842A CN 113778535 A CN113778535 A CN 113778535A
Authority
CN
China
Prior art keywords
cloud host
verification
verifier
checker
check
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.)
Granted
Application number
CN202110912842.4A
Other languages
English (en)
Other versions
CN113778535B (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.)
Inspur Jinan data Technology Co ltd
Original Assignee
Inspur Jinan data Technology 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 Inspur Jinan data Technology Co ltd filed Critical Inspur Jinan data Technology Co ltd
Priority to CN202110912842.4A priority Critical patent/CN113778535B/zh
Publication of CN113778535A publication Critical patent/CN113778535A/zh
Application granted granted Critical
Publication of CN113778535B publication Critical patent/CN113778535B/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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/442Shutdown
    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

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

Abstract

本发明提出了一种云主机操作校验的方法、***、设备和存储介质,该方法包括将云主机中待校验的参数,逐一封装成校验器,并为每个校验器分配代码;将云主机中所有操作写入配置文件,为每个操作配置校验表达式;解析校验表达式中的自定义运算符,根据校验器代码调用对应的校验逻辑;根据云主机的当前操作类型在配置文件中查找相应的校验配置,解析当前校验配置对应的校验表达式,然后再通过校验器校验当前操作类型的每个参数。基于该方法,还提出了一种云主机操作校验的***,设备和存介质。本发明增加了云主机的可维护性,云主机增加操作或者特殊属性需要校验时,不用改动原有的代码,只要新增校验器,修改一下配置文件,提高了***的健壮性。

Description

一种云主机操作校验的方法、***、设备和存储介质
技术领域
本发明属于主平台云主机技术领域,特别涉及一种云主机操作校验的方法、***、设备和存储介质。
背景技术
随着云计算与大数据时代的到来,很多的业务不再部署在自己的机房某个服务器中,而是将服务器进行虚拟化成很多的虚拟资源,这种演变使资源按需非配,减少了资源浪费,实现运维可视化。随着越来越多的业务***部署在了云平台上,云平台的业务也不仅仅局限于创建云主机供业务***使用,需要更加丰富的功能。比如应用编排、服务目录、容灾、GPU云主机、直通盘云主机等等,进而衍生出很多具有特殊属性的云主机,这些云主机在进行一些操作的时候和普通的云主机是不一样的。比如应用编排云主机不能随意删除、GPU云主机不能更改配置、容灾云主机不能随意开关机等等。
作为云平台的开发者,在对这些云主机做限制的时候原来的做法是针对每一种操作做限制,比如删除云主机,先判断一下是不是应用编排的云主机,再判断是不是服务目录的云主机,再判断是不是有GPU,再判断有没有直通盘,其他操作也是如此,如图1给出了现有技术中云平台下云主机操作校验流程图。这样做的缺点就是如果需求变更或者新增加一种限制条件需要在每一种操作都要做变更,比如:新开发一种有特殊CPU指令集的云主机,而这种云主机只能开关机,不支持其他高级操作,就要在其他的操作里面增加对这种云主机的限制,而云主机的操作目前有几十种,很难全部排查过来。工作量是非常大的,很容易引发其他的问题。
发明内容
为了解决上述技术问题,本发明提出了一种云主机操作校验的方法、***、设备和存储介质。本发明增加了云主机的可维护性,云主机新增加一种操作或者一种特殊属性需要校验时,不用改动原有的代码,只要新增校验器,修改一下配置文件就可以实现校验功能。降低了修改原有代码带来的影响,提高了***的健壮性。
为实现上述目的,本发明采用以下技术方案:
一种云主机操作校验的方法,包括以下步骤:
将云主机中待校验的参数,逐一封装成校验器,并为每个校验器分配唯一代码;所述校验器用于校验封装的参数;
将云主机中所有操作写入配置文件,为每个操作配置校验表达式;解析所述校验表达式中的自定义运算符,根据所述校验器代码调用对应的校验逻辑;
根据云主机的当前操作类型在配置文件中查找相应的校验配置,解析当前校验配置对应的校验表达式,然后再通过校验器校验当前操作类型的每个参数
进一步的,所述根据所述校验器代码调用对应的校验逻辑的方法为:根据校验器代码通过java反射机制,调用对应的校验逻辑。
进一步的,所述云主机的当前操作类型包括删除、增加业务逻辑、增加操作和需求变更。
进一步的,当云主机执行删除操作时:首先根据操作类型删除在配置文件中查找相应的校验配置checkType then checkGpu;其次解析校验配置的校验表达式内容;最后执行checkType校验和执行checkGpu校验,当两次校验均通过执行删除操作,任意一个失败则校验失败。
进一步的,当云主机执行增加业务逻辑操作时,设置CPU字符集;所述CPU字符集用于在云主机开关机时操作,除开关机之外的操作需要进行校验;
设置校验CPU字符集的字符校验器,其中字符校验器用于校验CPU字符集的逻辑,然后在配置文件中将字符校验配置至除开关机之外其他操作中。
进一步的,当云主机执行增加操作时,在配置文件中配置所增加操作的校验器、编排云主机的校验器、服务实例的校验器,然后调用公共校验器,将所增加操作传入。
进一步的,当云主机执行需求变更操作时,将编排云主机校验器删除掉。
本发明还提出了一种云主机操作校验的***,所述***包括封装模块、写入模块和校验模块;
所述封装模块用于将云主机中待校验的参数,逐一封装成校验器,并为每个校验器分配唯一代码;所述校验器用于校验封装的参数;
所述写入模块用于将云主机中所有操作写入配置文件,为每个操作配置校验表达式;解析所述校验表达式中的自定义运算符,根据所述校验器代码调用对应的校验逻辑;
所述校验模块用于根据云主机的当前操作类型在配置文件中查找相应的校验配置,解析当前校验配置对应的校验表达式,然后再通过校验器校验当前操作类型的每个参数。
本发明还提出了一种设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现所述的方法步骤。
本发明还提出了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述的方法步骤。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
本发明提出了一种云主机操作校验的方法、***、设备和存储介质,该方法包括将云主机中待校验的参数,逐一封装成校验器,并为每个校验器分配唯一代码;校验器用于校验封装的参数;将云主机中所有操作写入配置文件,为每个操作配置校验表达式;解析所述校验表达式中的自定义运算符,根据校验器代码调用对应的校验逻辑;根据云主机的当前操作类型在配置文件中查找相应的校验配置,解析当前校验配置对应的校验表达式,然后再通过校验器校验当前操作类型的每个参数。本发明中云主机的操作包括但不限于删除、增加业务逻辑、增加操作和需求变更等。本发明优化了云主机各种操作时校验云主机的逻辑,将校验逻辑和云主机操作的业务逻辑分开,将每一种校验设计成一个一个的校验器,通过配置文件的方式和统一校验器来实现在云主机操作时调用各种校验器。简化了开发过程,不用在每一种操作中编写校验逻辑。本发明带来的最大好处是可维护性,云主机新增加一种操作或者一种特殊属性需要校验时,不用改动原有的代码,只要新增校验器,修改一下配置文件就可以实现校验功能。降低了修改原有代码带来的影响,提高了***的健壮性。
基于一种云主机操作校验的方法,本发明还提出了一种云主机操作校验的***、设备和存储介质,同样具有上述方法的作用,在此不做赘述。
附图说明
如图1为现有技术中云平台下云主机操作校验流程图;
如图2为本发明实施例1一种云主机操作校验的方法流程图;
如图3为本发明实施例2一种云主机操作校验的***示意图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
实施例1
本发明实施例1提出了一种云主机操作校验的方法,云主机的操作校验做了改进,通过将每一种校验设计成一个一个的校验器,而将云主机的每一种操作配置上校验器的表达式,在进行每一种操作时通过解析表达式的方式来调用校验器里的校验逻辑。将校验和具体的每一种操作解耦,新增加一种校验逻辑就增加一个校验器,再将校验器配置到每一个操作的表达式中,不用改动原有的业务代码就可以实现将新的校验逻辑放到任何一个操作中。
如图2为本发明实施例1一种云主机操作校验的方法流程图;图2中只是以开机、删除、改配置、挂起、暂停这几种操作来举例说明本发明的思路,对于其他的操作也一样适用。
将云主机中待校验的参数,逐一封装成校验器,并为每个校验器分配唯一代码;校验器用于校验封装的参数;该步骤中,将需要校验的参数封装成一个一个的校验器,颗粒度尽可能小,这样方便调用,并且为每一个校验器分配唯一CODE。比如:GPU校验器(checkGpu),就是校验云主机上有没有GPU,如果有就抛错不允许操作,如果没有就通过。因为要求颗粒度尽可能小,所以可以将有一个参数封装至一个校验器。
将云主机中所有操作写入配置文件,为每个操作配置校验表达式;解析所述校验表达式中的自定义运算符,根据所述校验器代码调用对应的校验逻辑;比如:开机:checkStatus then checkGpu。这里自定义了一些运算符,比如then表示校验的顺序,if表示如果下一个校验器不通过不会终止,继续调用下一个校验器等等。
删除checkType then checkGpu;改配置checkDisk and checkGpu;
挂起checkType then checkCpu;暂停checkType ifcheckGpu
编写校验表达式解析器,这里类似于设计模式中的解释器模式,解析表达式中自定义的运算符,然后根据校验器的CODE通过java反射机制,调用对应的校验逻辑。
根据云主机的当前操作类型在配置文件中查找相应的校验配置,解析当前校验配置对应的校验表达式,然后再通过校验器校验当前操作类型的每个参数。
当云主机执行删除操作时:首先根据操作类型删除在配置文件中查找相应的校验配置checkType then checkGpu;其次解析校验配置的校验表达式内容;最后执行checkType校验和执行checkGpu校验,当两次校验均通过执行删除操作,任意一个失败则校验失败。
当云主机执行增加业务逻辑操作时,设置CPU字符集;CPU字符集用于在云主机开关机时操作,除开关机之外的操作需要进行校验;设置校验CPU字符集的字符校验器,其中字符校验器用于校验CPU字符集的逻辑,然后在配置文件中将字符校验配置至除开关机之外其他操作中。
当新增加了一种业务逻辑,引入了一种特殊的CPU字符集,有这种字符集的云主机只能开关机操作,其他的都要校验。这时候需要增加一个校验器checkCpuxxx,在校验器中编写校验次字符集的逻辑,然后在配置文件中奖此校验器配置到除了开关机之外的其他操作中,不用改动原来的业务代码就实现了此功能,符合开闭原则
当云主机执行增加操作时,在配置文件中配置所增加操作的校验器、编排云主机的校验器、服务实例的校验器,然后调用公共校验器,将所增加操作传入。
当云主机新增加了一种操作,比如设置蓝屏策略,而此操作只能在云主机开关机状态,且不是编排云主机,不是服务实例云主机,这个时候操作校验逻辑就是在配置文件中配置上蓝屏策略对应开关机的校验器、编排云主机的校验器、服务实例的校验器,然后调用一下公共校验器,将蓝屏策略传入即可。减少了工作量和重复代码量。
云主机执行需求变更操作时,将编排云主机校验器删除掉,如果有需求变更,编排云主机不要做任何限制了,所有操作都可以执行,如果不使用本发明就会很崩溃,在每一种操作的代码中将限制编排云主机这块代码去掉。使用来了本发明只需要改一下配置文件,将编排云主机校验器去掉即可,不用改动代码。
本发明将每一种校验逻辑封装成一个一个的校验器,然后将云主机的所有操作配置到配置文件中,并且为每一种操作配置校验器的表达式,在云主机进行某种操作的时候,调用统一的解析器来解析表达式,并且调用对应的校验器。
实施例2
基于本发明实施例1提出的一种云主机操作校验的方法,本发明实施例2还提出了一种云主机操作校验的***,如图3为本发明实施例2一种云主机操作校验的***示意图,该***包括封装模块、写入模块和校验模块;
封装模块用于将云主机中待校验的参数,逐一封装成校验器,并为每个校验器分配唯一代码;所述校验器用于校验封装的参数;
写入模块用于将云主机中所有操作写入配置文件,为每个操作配置校验表达式;解析所述校验表达式中的自定义运算符,根据所述校验器代码调用对应的校验逻辑;
校验模块用于根据云主机的当前操作类型在配置文件中查找相应的校验配置,解析当前校验配置对应的校验表达式,然后再通过校验器校验当前操作类型的每个参数。
校验模块执行的过程包括:当云主机执行删除操作时:首先根据操作类型删除在配置文件中查找相应的校验配置checkType then checkGpu;其次解析校验配置的校验表达式内容;最后执行checkType校验和执行checkGpu校验,当两次校验均通过执行删除操作,任意一个失败则校验失败。
当云主机执行增加业务逻辑操作时,设置CPU字符集;CPU字符集用于在云主机开关机时操作,除开关机之外的操作需要进行校验;设置校验CPU字符集的字符校验器,其中字符校验器用于校验CPU字符集的逻辑,然后在配置文件中将字符校验配置至除开关机之外其他操作中。
当新增加了一种业务逻辑,引入了一种特殊的CPU字符集,有这种字符集的云主机只能开关机操作,其他的都要校验。这时候需要增加一个校验器checkCpuxxx,在校验器中编写校验次字符集的逻辑,然后在配置文件中奖此校验器配置到除了开关机之外的其他操作中,不用改动原来的业务代码就实现了此功能,符合开闭原则
当云主机执行增加操作时,在配置文件中配置所增加操作的校验器、编排云主机的校验器、服务实例的校验器,然后调用公共校验器,将所增加操作传入。
当云主机新增加了一种操作,比如设置蓝屏策略,而此操作只能在云主机开关机状态,且不是编排云主机,不是服务实例云主机,这个时候操作校验逻辑就是在配置文件中配置上蓝屏策略对应开关机的校验器、编排云主机的校验器、服务实例的校验器,然后调用一下公共校验器,将蓝屏策略传入即可。减少了工作量和重复代码量。
云主机执行需求变更操作时,将编排云主机校验器删除掉,如果有需求变更,编排云主机不要做任何限制了,所有操作都可以执行,如果不使用本发明就会很崩溃,在每一种操作的代码中将限制编排云主机这块代码去掉。使用来了本发明只需要改一下配置文件,将编排云主机校验器去掉即可,不用改动代码。
实施例3
本发明还提出了一种设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现方法步骤如下:
将云主机中待校验的参数,逐一封装成校验器,并为每个校验器分配唯一代码;校验器用于校验封装的参数;该步骤中,将需要校验的参数封装成一个一个的校验器,颗粒度尽可能小,这样方便调用,并且为每一个校验器分配唯一CODE。比如:GPU校验器(checkGpu),就是校验云主机上有没有GPU,如果有就抛错不允许操作,如果没有就通过。因为要求颗粒度尽可能小,所以可以将有一个参数封装至一个校验器。
将云主机中所有操作写入配置文件,为每个操作配置校验表达式;解析所述校验表达式中的自定义运算符,根据所述校验器代码调用对应的校验逻辑;比如:开机:checkStatus then checkGpu。这里自定义了一些运算符,比如then表示校验的顺序,if表示如果下一个校验器不通过不会终止,继续调用下一个校验器等等。
删除checkType then checkGpu;改配置checkDisk and checkGpu;
挂起checkType then checkCpu;暂停checkType ifcheckGpu
编写校验表达式解析器,这里类似于设计模式中的解释器模式,解析表达式中自定义的运算符,然后根据校验器的CODE通过java反射机制,调用对应的校验逻辑。
根据云主机的当前操作类型在配置文件中查找相应的校验配置,解析当前校验配置对应的校验表达式,然后再通过校验器校验当前操作类型的每个参数。
当云主机执行删除操作时:首先根据操作类型删除在配置文件中查找相应的校验配置checkType then checkGpu;其次解析校验配置的校验表达式内容;最后执行checkType校验和执行checkGpu校验,当两次校验均通过执行删除操作,任意一个失败则校验失败。
当云主机执行增加业务逻辑操作时,设置CPU字符集;CPU字符集用于在云主机开关机时操作,除开关机之外的操作需要进行校验;设置校验CPU字符集的字符校验器,其中字符校验器用于校验CPU字符集的逻辑,然后在配置文件中将字符校验配置至除开关机之外其他操作中。
当新增加了一种业务逻辑,引入了一种特殊的CPU字符集,有这种字符集的云主机只能开关机操作,其他的都要校验。这时候需要增加一个校验器checkCpuxxx,在校验器中编写校验次字符集的逻辑,然后在配置文件中奖此校验器配置到除了开关机之外的其他操作中,不用改动原来的业务代码就实现了此功能,符合开闭原则
当云主机执行增加操作时,在配置文件中配置所增加操作的校验器、编排云主机的校验器、服务实例的校验器,然后调用公共校验器,将所增加操作传入。
当云主机新增加了一种操作,比如设置蓝屏策略,而此操作只能在云主机开关机状态,且不是编排云主机,不是服务实例云主机,这个时候操作校验逻辑就是在配置文件中配置上蓝屏策略对应开关机的校验器、编排云主机的校验器、服务实例的校验器,然后调用一下公共校验器,将蓝屏策略传入即可。减少了工作量和重复代码量。
云主机执行需求变更操作时,将编排云主机校验器删除掉,如果有需求变更,编排云主机不要做任何限制了,所有操作都可以执行,如果不使用本发明就会很崩溃,在每一种操作的代码中将限制编排云主机这块代码去掉。使用来了本发明只需要改一下配置文件,将编排云主机校验器去掉即可,不用改动代码。
需要说明:本发明技术方案还提供了一种电子设备,包括:通信接口,能够与其它设备比如网络设备等进行信息交互;处理器,与通信接口连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的一种云主机操作校验的方法,而所述计算机程序存储在存储器上。当然,实际应用时,电子设备中的各个组件通过总线***耦合在一起。可理解,总线***用于实现这些组件之间的连接通信。总线***除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。本申请实施例中的存储器用于存储各种类型的数据以支持电子设备的操作。这些数据的示例包括:用于在电子设备上操作的任何计算机程序。可以理解,存储器可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,ReadOnly Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,RandomAccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random AccessMemory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random AccessMemory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本申请实施例描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。上述本申请实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、DSP(Digital Signal Processing,即指能够实现数字信号处理技术的芯片),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器,处理器读取存储器中的程序,结合其硬件完成前述方法的步骤。处理器执行所述程序时实现本申请实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
实施例4
本发明还提出了一种可读存储介质,可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现方法步骤如下:
将云主机中待校验的参数,逐一封装成校验器,并为每个校验器分配唯一代码;校验器用于校验封装的参数;该步骤中,将需要校验的参数封装成一个一个的校验器,颗粒度尽可能小,这样方便调用,并且为每一个校验器分配唯一CODE。比如:GPU校验器(checkGpu),就是校验云主机上有没有GPU,如果有就抛错不允许操作,如果没有就通过。因为要求颗粒度尽可能小,所以可以将有一个参数封装至一个校验器。
将云主机中所有操作写入配置文件,为每个操作配置校验表达式;解析所述校验表达式中的自定义运算符,根据所述校验器代码调用对应的校验逻辑;比如:开机:checkStatus then checkGpu。这里自定义了一些运算符,比如then表示校验的顺序,if表示如果下一个校验器不通过不会终止,继续调用下一个校验器等等。
删除checkType then checkGpu;改配置checkDisk and checkGpu;
挂起checkType then checkCpu;暂停checkType ifcheckGpu
编写校验表达式解析器,这里类似于设计模式中的解释器模式,解析表达式中自定义的运算符,然后根据校验器的CODE通过java反射机制,调用对应的校验逻辑。
根据云主机的当前操作类型在配置文件中查找相应的校验配置,解析当前校验配置对应的校验表达式,然后再通过校验器校验当前操作类型的每个参数。
当云主机执行删除操作时:首先根据操作类型删除在配置文件中查找相应的校验配置checkType then checkGpu;其次解析校验配置的校验表达式内容;最后执行checkType校验和执行checkGpu校验,当两次校验均通过执行删除操作,任意一个失败则校验失败。
当云主机执行增加业务逻辑操作时,设置CPU字符集;CPU字符集用于在云主机开关机时操作,除开关机之外的操作需要进行校验;设置校验CPU字符集的字符校验器,其中字符校验器用于校验CPU字符集的逻辑,然后在配置文件中将字符校验配置至除开关机之外其他操作中。
当新增加了一种业务逻辑,引入了一种特殊的CPU字符集,有这种字符集的云主机只能开关机操作,其他的都要校验。这时候需要增加一个校验器checkCpuxxx,在校验器中编写校验次字符集的逻辑,然后在配置文件中奖此校验器配置到除了开关机之外的其他操作中,不用改动原来的业务代码就实现了此功能,符合开闭原则
当云主机执行增加操作时,在配置文件中配置所增加操作的校验器、编排云主机的校验器、服务实例的校验器,然后调用公共校验器,将所增加操作传入。
当云主机新增加了一种操作,比如设置蓝屏策略,而此操作只能在云主机开关机状态,且不是编排云主机,不是服务实例云主机,这个时候操作校验逻辑就是在配置文件中配置上蓝屏策略对应开关机的校验器、编排云主机的校验器、服务实例的校验器,然后调用一下公共校验器,将蓝屏策略传入即可。减少了工作量和重复代码量。
云主机执行需求变更操作时,将编排云主机校验器删除掉,如果有需求变更,编排云主机不要做任何限制了,所有操作都可以执行,如果不使用本发明就会很崩溃,在每一种操作的代码中将限制编排云主机这块代码去掉。使用来了本发明只需要改一下配置文件,将编排云主机校验器去掉即可,不用改动代码。
本申请实施例提供的一种云主机操作校验的设备和存储介质中相关部分的说明可以参见本申请实施例1提供的一种云主机操作校验的方法中对应部分的详细说明,在此不再赘述。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。另外,本申请实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制。对于所属领域的技术人员来说,在上述说明的基础上还可以做出其它不同形式的修改或变形。这里无需也无法对所有的实施方式予以穷举。在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

Claims (10)

1.一种云主机操作校验的方法,其特征在于,包括以下步骤:
将云主机中待校验的参数,逐一封装成校验器,并为每个校验器分配唯一代码;所述校验器用于校验封装的参数;
将云主机中所有操作写入配置文件,为每个操作配置校验表达式;解析所述校验表达式中的自定义运算符,根据所述校验器代码调用对应的校验逻辑;
根据云主机的当前操作类型在配置文件中查找相应的校验配置,解析当前校验配置对应的校验表达式,然后再通过校验器校验当前操作类型的每个参数。
2.根据权利要求1所述的一种云主机操作校验的方法,其特征在于,所述根据所述校验器代码调用对应的校验逻辑的方法为:根据校验器代码通过java反射机制,调用对应的校验逻辑。
3.根据权利要求1所述的一种云主机操作校验的方法,其特征在于,所述云主机的当前操作类型包括删除、增加业务逻辑、增加操作和需求变更。
4.根据权利要求3所述的一种云主机操作校验的方法,其特征在于,当云主机执行删除操作时:首先根据操作类型删除在配置文件中查找相应的校验配置checkType thencheckGpu;其次解析校验配置的校验表达式内容;最后执行checkType校验和执行checkGpu校验,当两次校验均通过执行删除操作,任意一个失败则校验失败。
5.根据权利要求3所述的一种云主机操作校验的方法,其特征在于,当云主机执行增加业务逻辑操作时,设置CPU字符集;所述CPU字符集用于在云主机开关机时操作,除开关机之外的操作需要进行校验;
设置校验CPU字符集的字符校验器,其中字符校验器用于校验CPU字符集的逻辑,然后在配置文件中将字符校验配置至除开关机之外其他操作中。
6.根据权利要求3所述的一种云主机操作校验的方法,其特征在于,当云主机执行增加操作时,在配置文件中配置所增加操作的校验器、编排云主机的校验器、服务实例的校验器,然后调用公共校验器,将所增加操作传入。
7.根据权利要求3所述的一种云主机操作校验的方法,其特征在于,当云主机执行需求变更操作时,将编排云主机校验器删除掉。
8.一种云主机操作校验的***,其特征在于,所述***包括封装模块、写入模块和校验模块;
所述封装模块用于将云主机中待校验的参数,逐一封装成校验器,并为每个校验器分配唯一代码;所述校验器用于校验封装的参数;
所述写入模块用于将云主机中所有操作写入配置文件,为每个操作配置校验表达式;解析所述校验表达式中的自定义运算符,根据所述校验器代码调用对应的校验逻辑;
所述校验模块用于根据云主机的当前操作类型在配置文件中查找相应的校验配置,解析当前校验配置对应的校验表达式,然后再通过校验器校验当前操作类型的每个参数。
9.一种设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任意一项所述的方法步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述的方法步骤。
CN202110912842.4A 2021-08-10 2021-08-10 一种云主机操作校验的方法、***、设备和存储介质 Active CN113778535B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110912842.4A CN113778535B (zh) 2021-08-10 2021-08-10 一种云主机操作校验的方法、***、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110912842.4A CN113778535B (zh) 2021-08-10 2021-08-10 一种云主机操作校验的方法、***、设备和存储介质

Publications (2)

Publication Number Publication Date
CN113778535A true CN113778535A (zh) 2021-12-10
CN113778535B CN113778535B (zh) 2024-02-23

Family

ID=78837200

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110912842.4A Active CN113778535B (zh) 2021-08-10 2021-08-10 一种云主机操作校验的方法、***、设备和存储介质

Country Status (1)

Country Link
CN (1) CN113778535B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160105456A1 (en) * 2014-10-13 2016-04-14 Vmware, Inc. Virtual machine compliance checking in cloud environments
CN106612204A (zh) * 2015-10-27 2017-05-03 阿里巴巴集团控股有限公司 业务校验方法及装置
US20180006904A1 (en) * 2016-06-29 2018-01-04 International Business Machines Corporation Orchestration process template for generation of orchestration process to tolerate errors
CN109062870A (zh) * 2018-06-29 2018-12-21 平安科技(深圳)有限公司 服务器、业务数据校验的方法及存储介质
CN109284198A (zh) * 2017-07-21 2019-01-29 北京京东尚科信息技术有限公司 一种校验数据的方法和装置
CN110309125A (zh) * 2019-06-24 2019-10-08 招商局金融科技有限公司 数据校验方法、电子装置及存储介质
CN110502363A (zh) * 2019-08-05 2019-11-26 苏州浪潮智能科技有限公司 一种业务规则的校验方法、设备及可读介质
CN111563075A (zh) * 2020-05-06 2020-08-21 政采云有限公司 一种业务校验***、方法及设备和存储介质
WO2021008122A1 (zh) * 2019-07-15 2021-01-21 创新先进技术有限公司 基于区块链的虚拟资源分配方法及装置、电子设备
CN112272218A (zh) * 2020-10-16 2021-01-26 苏州浪潮智能科技有限公司 云平台实例资源操作方法、装置、计算机设备及存储介质
CN112543109A (zh) * 2019-09-20 2021-03-23 上海数荃数据科技有限公司 一种云主机创建方法、***、服务器及存储介质
WO2021072861A1 (zh) * 2019-10-17 2021-04-22 平安科技(深圳)有限公司 应用服务处理方法、装置、终端及存储介质
US20210149763A1 (en) * 2019-11-15 2021-05-20 Intel Corporation Systems and methods for error detection and control for embedded memory and compute elements

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160105456A1 (en) * 2014-10-13 2016-04-14 Vmware, Inc. Virtual machine compliance checking in cloud environments
CN106612204A (zh) * 2015-10-27 2017-05-03 阿里巴巴集团控股有限公司 业务校验方法及装置
US20180006904A1 (en) * 2016-06-29 2018-01-04 International Business Machines Corporation Orchestration process template for generation of orchestration process to tolerate errors
CN109284198A (zh) * 2017-07-21 2019-01-29 北京京东尚科信息技术有限公司 一种校验数据的方法和装置
CN109062870A (zh) * 2018-06-29 2018-12-21 平安科技(深圳)有限公司 服务器、业务数据校验的方法及存储介质
CN110309125A (zh) * 2019-06-24 2019-10-08 招商局金融科技有限公司 数据校验方法、电子装置及存储介质
WO2021008122A1 (zh) * 2019-07-15 2021-01-21 创新先进技术有限公司 基于区块链的虚拟资源分配方法及装置、电子设备
CN110502363A (zh) * 2019-08-05 2019-11-26 苏州浪潮智能科技有限公司 一种业务规则的校验方法、设备及可读介质
CN112543109A (zh) * 2019-09-20 2021-03-23 上海数荃数据科技有限公司 一种云主机创建方法、***、服务器及存储介质
WO2021072861A1 (zh) * 2019-10-17 2021-04-22 平安科技(深圳)有限公司 应用服务处理方法、装置、终端及存储介质
US20210149763A1 (en) * 2019-11-15 2021-05-20 Intel Corporation Systems and methods for error detection and control for embedded memory and compute elements
CN111563075A (zh) * 2020-05-06 2020-08-21 政采云有限公司 一种业务校验***、方法及设备和存储介质
CN112272218A (zh) * 2020-10-16 2021-01-26 苏州浪潮智能科技有限公司 云平台实例资源操作方法、装置、计算机设备及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
XIAOJUN ZHANG ET AL: "LDVAS: Lattice-Based Designated Verifier Auditing Scheme for Electronic Medical Data in Cloud-Assisted WBANs", 《IEEE ACCESS》, vol. 8 *
王伟等: "基于物联网技术的医用气体供应监视***", vol. 6, no. 7 *
范晋文;周云松;黄维雄;: "基于FPGA的安全启动与配置文件安全存储方案", 电子与封装, no. 08 *

Also Published As

Publication number Publication date
CN113778535B (zh) 2024-02-23

Similar Documents

Publication Publication Date Title
CN112328435B (zh) 目标数据备份和恢复的方法、装置、设备及存储介质
US11210132B2 (en) Virtual machine migration in virtualization environment having different virtualization systems
US10228993B2 (en) Data dump for a memory in a data processing system
CN108509215B (zh) 一种***软件的更换方法、装置、终端设备及存储介质
CN112667246B (zh) 应用功能扩展的方法、装置及电子设备
WO2024113717A1 (zh) 基于zns ssd的文件***控制方法、装置及设备
CN111651219A (zh) 一种多模块项目配置文件管理的方法及设备
CN114138405A (zh) 一种虚拟机创建方法、装置及电子设备和存储介质
CN114371914A (zh) 容器ip地址配置方法、装置、存储介质及电子设备
CN114756290A (zh) 一种操作***安装方法、设备及可读存储介质
CN113778535A (zh) 一种云主机操作校验的方法、***、设备和存储介质
CN113312003B (zh) 一种基于Go语言的物理裸机磁盘存储管理方法
CN116450165A (zh) 一种快速搭建环境及部署程序的方法、***、终端及存储介质
CN113835625B (zh) 一种基于子路径的数据存储方法、装置、设备及存储介质
CN115774742A (zh) 私有云的数据存储新增方法、装置、设备、介质及产品
CN115760391A (zh) 区块链中智能合约更改方法、装置、电子设备及存储介质
CN115185847A (zh) 一种故障测试方法、装置、存储介质及电子设备
CN114979303A (zh) 网络数据包的服务质量处理方法、装置、设备和可读介质
CN110661852B (zh) 云环境中的业务处理方法及装置
CN113938527A (zh) Api网关的扩展处理方法、计算设备及存储介质
CN112269677A (zh) 一种异构云平台下的回滚操作装置、方法、设备及介质
CN112463032A (zh) 一种存储***的重删模块的性能优化方法、***及装置
CN114968264B (zh) 一种网络处理器交互***、方法、电子设备及存储介质
CN113806011B (zh) 集群资源控制方法和装置、集群、计算机可读存储介质
CN113206760B (zh) 用于vrf资源分配的接口配置更新方法、装置与电子设备

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