技术领域
[0001] 本
发明属于指令
接口封装领域,具体涉及基于配置的指令适配方法。
背景技术
[0002] 随着网络技术的快速发展,在http、https、snmp、ssh、jdbc、tcp、telnet等协议接口的
请求封装成rest接口执行结果中,各种
云服务产品,例如阿里云服务、腾讯云服务、华为云服务等,同类产品存在多个厂商,但是各个厂商的对外接口各有差异,其实质完成的功能是相同的。在对接不同厂商提供的类似产品时往往需要投入大量的人
力专职对接,存在大量的代码,业务开发量大。因此,在
现有技术中存在对接同类产品效率低下,结果输出不统一,对结果的辨识度不高的
缺陷。
发明内容
[0003] 本发明提供了基于配置的指令适配方法,解决了现有同类云服务产品技术中存在对接同类产品效率低下,结果输出不统一,对结果的辨识度不高的缺陷的问题。
[0004] 本发明所采用的技术方案为:
[0005] 基于配置的指令适配方法,包括以下步骤,
[0006] S1、统一建模:建立多种类型的配置规则,配置规则包括产品服务目录配置、虚拟化平台对象资源配置、调度规则配置以及指令模板配置;
[0007] S2、任务接收:接收服务订单,分解服务订单为多个子定单,再将子定单拆解为可执行的指令实例;
[0008] S3、调度控制:根据步骤S1中多种类型的配置规则中的调度规则配置进行任务单的拆分和调度,生成工单,给每个工单及其包含的业务资源动作实例分配相应的调度序号;
[0009] S4、指令生成:接受工单,根据指令模板适配规则进行指令模板的适配,再依据指令模板的配置,通过指令参数标识表达式进行映射相应的指令参数,指令参数通过与通信资源规格关联,通信资源规格与业务资源动作包含资源关联,获取到指令参数对应的资源属性值,对指令序列列表进行指令实例化;
[0010] S5、指令执行:在指令实例化后,根据工单中提供的信息获取虚拟化云平台的标识,通过虚拟化云平台的标识获取到虚拟化平台相关的接口地址与认证信息;通过工单中指令动作和平台标识获取需要执行的指令集,根据指令集以及所述接口地址与认证信息执行指令,最后返回指令执行结果;
[0011] S6、调度竣工:判断订单的所有子定单状态以及工单状态,子定单以及工单执行成功,则将子工单执行结果合并为工单执行结果并反馈至上级,完成订单的竣工和归档。
[0012] 通过预制指令适配引擎
基础指令,指令模板一次配置重复利用无需投入人力开发,减少对接同种产品的开发工作,本方法通过统一建模、任务接收、调度控制、指令生成、指令执行、调度竣工多个环节适配预制配置,使得指令可重复使用,而且指令统一,结果辨识度高,解决现有同类云服务产品技术中存在对接同类产品效率低下,结果输出不统一,对结果的辨识度不高的缺陷的问题。
[0013] 根据上述方案优选的,在步骤S1中建立多种类型的配置规则的产品服务目录配置用于提供专业服务目录,以及对专业服务目录进行配置规则定义。
[0014] 根据上述方案优选的,在步骤S1中建立多种类型的配置规则的虚拟化平台对象资源配置用于定义任意虚拟化平台的资源对象,并配置好各个对象资源的资源属性,以及各资源对象的关联关系。
[0015] 根据上述方案优选的,虚拟化平台的资源对象包括云主机、云盘、网络、
数据中心、资源池、集群、主机以及模板。
[0016] 根据上述方案优选的,在步骤S1中建立多种类型的配置规则的调度规则配置用于针对各操作进行执行顺序的定义,以便平台在执行时进行调度。
[0017] 根据上述方案优选的,在步骤S1中建立多种类型的配置规则的调度规则配置的指令模板配置用于根据预先定义的专业服务和业务资源动作的关系条件制定指令模板规则。
[0018] 根据上述方案优选的,在步骤S4中,对指令序列列表进行指令实例化是将指令执行原始结果反馈到指令实例,并根据指令结果解析规则中设定的指令结果解析规则关键字和同包含相关指令模板信息的指令结果解析规则要素进行匹配,获得指令实例中的指令结果解析规则编码,完成指令实例化的过程。
[0019] 根据上述方案优选的,在步骤S6中,如果工单执行失败,则回馈异常原因以及每个业务资源动作的执行结果。
[0020] 根据上述方案优选的,在步骤S2任务接收中,接收来自客户关系管理维护的微服务发起的服务订单,通过用于服务开通的微服务将服务订单分解为子定单并启动相应的流程,流转到各个环节,用于服务开通的微服务,将子定单下发到适配器执行配置,并记录执行结果到工单。
[0021] 根据上述方案优选的,在步骤S5指令执行时,通过虚拟化云平台提供的标准化接口信息同虚拟化云平台的映射中,虚拟化云平台提供标准化接口信息的方法是,接收请求指令,根据所述虚拟化平台对象资源配置执行模板替换,替换完成之后去执行指令,对应需要认证的接口,获取认证信息之后供后续接口请求使用;重复该动作直到指令全部执行完成,或者到某条指令执行失败后跳过后续指令的执行返
回执行结果。
[0022] 本发明具有如下的优点和有益效果:
[0023] 1、本发明通过预制指令适配引擎基础指令,指令模板一次配置重复利用无需投入人力开发,每个环节实现配置化管理,降低学习成本,提升实际交付效率;减少对接同种产品的开发工作,本方法通过统一建模、任务接收、调度控制、指令生成、指令执行、调度竣工多个环节适配预制配置,使得指令可重复使用,而且指令统一,结果辨识度高,解决现有同类云服务产品技术中存在对接同类产品效率低下,结果输出不统一,对结果的辨识度不高的缺陷的问题;
具体实施方式
[0024] 为使本发明的目的、技术方案和优点更加清楚明白,下面结合
实施例,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
[0025] 应当理解,术语第一、第二等仅用于区分描述,而不能理解为指示或暗示相对重要性。尽管本文可以使用术语第一、第二等等来描述各种单元,这些单元不应当受到这些术语的限制。这些术语仅用于区分一个单元和另一个单元。例如可以将第一单元称作第二单元,并且类似地可以将第二单元称作第一单元,同时不脱离本发明的示例实施例的范围。
[0026] 应当理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,单独存在B,同时存在A和B三种情况,本文中术语“/和”是描述另一种关联对象关系,表示可以存在两种关系,例如,A/和B,可以表示:单独存在A,单独存在A和B两种情况,另外,本文中字符“/”,一般表示前后关联对象是一种“或”关系。
[0027] 应当理解,在本发明的描述中,术语“上”、“竖直”、“内”、“外”等指示的方位或
位置关系,是该发明产品使用时惯常摆放的方位或位置关系,或者是本领域技术人员惯常理解的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
[0028] 应当理解,当将单元称作与另一个单元“连接”、“相连”或“耦合”时,它可以与另一个单元直相连接或耦合,或中间单元可以存在。相対地,当将单元称作与另一个单元“直接相连”或“直接耦合”时,不存在中间单元。应当以类似方式来解释用于描述单元之间的关系的其他单词(例如,“在……之间”对“直接在……之间”,“相邻”对“直接相邻”等等)。
[0029] 在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
[0030] 本文使用的术语仅用于描述特定实施例,并且不意在限制本发明的示例实施例。如本文所使用的,单数形式“一”、“一个”以及“该”意在包括复数形式,除非上下文明确指示相反意思。还应当理解术语“包括”、“包括了”、“包含”、和/或“包含了”当在本文中使用时,
指定所
声明的特征、整数、步骤、操作、单元和/或组件的存在性,并且不排除一个或多个其他特征、数量、步骤、操作、单元、组件和/或他们的组合存在性或增加。
[0031] 实施例1:
[0032] 本实施例提供了基于配置的指令适配方法,包括以下步骤,
[0033] S1、统一建模:建立多种类型的配置规则,配置规则包括产品服务目录配置、虚拟化平台对象资源配置、调度规则配置以及指令模板配置;
[0034] S2、任务接收:接收服务订单,分解服务订单为多个子定单,再将子定单拆解为可执行的指令实例;
[0035] S3、调度控制:根据步骤S1中多种类型的配置规则中的调度规则配置进行任务单的拆分和调度,保证工单按照一定顺序及时处理。工单包含要激活的业务资源、动作类型、资源和属性等信息,并按照激活就绪过程预先配置的调度规则,给每个工单及其包含的业务资源动作实例分配相应的调度序号;
[0036] S4、指令生成:通过接受多云管理平台的工单,根据指令模板适配规则进行指令模板的适配,再依据指令模板的配置,通过指令参数标识表达式进行映射相应的指令参数,指令参数通过与通信资源规格关联,通信资源规格与业务资源动作包含资源关联,获取到指令参数对应的资源属性值,对指令序列列表进行指令实例化;
[0037] S5、指令执行:在指令实例化后,根据工单中提供的信息获取虚拟化云平台的标识,通过虚拟化云平台的标识获取到虚拟化平台相关的接口地址与认证信息;通过工单中指令动作和平台标识获取需要执行的指令集,根据指令集以及所述接口地址与认证信息执行指令,最后返回指令执行结果;在施工,将执行结果反馈到指令实例、工单包含业务资源动作、工单中,工单,指令实例等的结果由子工单的结果合并得出。
[0038] S6、调度竣工:判断订单的所有子定单、工单状态,子定单、工单执行成功,则将子工单执行结果合并为工单执行结果并反馈至上级,完成订单的竣工和归档。
[0039] 具体实施时,统一建模,采用
自上而下,逐级深入的设计方法和
自下而上验证方法;信息模型首先从模型的总体要求出发进行总体设计,多云管理平台需要使用的所有数据,描述主要数据实体以及实体间的关系,将它们按主题域进行划分,进一步分析出这些数据的归属关系,然后针对归属于“通福云多云管理平台”的数据自上而下进行设计,逐步将设计内容细化,完成综合云管涉及的各个主题域的概念模型和详细的逻辑模型。
[0040] 逻辑模型设计完成后,对于重要的数据模型,尤其是新引入的概念,例如产品域、事件域、服务域、资源域、参与人域、产品目录、产品动作、动作类型、产品实例、产品、调度规则、指令模板、指令、适配规则、业务动作、产品订单、资源定单、可执行工单、资源配置、业务资源和模型采用实例进行自下而上的验证,通过实例验证逻辑模型的正确性和完整性,从而确保整个自动激活数据模型能够满足实际系统的需求。
[0041] 多云纳管对接流程化,通过配置化操作适配各类业务流程:
[0042] 例如最终用户需要
申请云主机
叠加云盘,同时加装其他产品时,将会在自服务
门户界面(客户关系管理维护的微服务),发起服务订单,发送给自门户的另一个重要的微服务(服务开通微服务),经过该微服务,将服务订单分解为子定单并启动相应的流程,流转到各个环节,用于服务开通的微服务,服务开通微服务将子定单下发到适配器执行,并记录执行结果到工单。
[0043] 通过预制指令适配引擎基础指令,指令模板一次配置重复利用无需投入人力开发,减少对接同种产品的开发工作,本方法通过统一建模、任务接收、调度控制、指令生成、指令执行、调度竣工多个环节适配预制配置,使得指令可重复使用,而且指令统一,结果辨识度高,解决现有同类云服务产品技术中存在对接同类产品效率低下,结果输出不统一,对结果的辨识度不高的缺陷的问题。
[0044] 具体实施时,在步骤S1中建立多种类型的配置规则的产品服务目录配置用于提供专业服务目录,以及对专业服务目录进行配置规则定义。
[0045] 具体实施时,在步骤S1中建立多种类型的配置规则的虚拟化平台对象资源配置用于定义任意虚拟化平台的资源对象,并配置好各个对象资源的资源属性,以及各资源对象的关联关系。虚拟化平台的资源对象包括云主机、云盘、网络、数据中心、资源池、集群、主机以及模板。具体实施时,其他各类虚拟化平台对象资源均按照类似配置方法进行资源的配置,例如OPENTSCK,负载均衡、路由器、网络、公网IP等等。
[0046] 具体实施时,在步骤S1中建立多种类型的配置规则的调度规则配置用于针对各操作进行执行顺序的定义,以便平台在执行时进行调度。具体实施是,用户申请云主机,同时设置网络、IP、更改密码等、另挂载云盘,对于多云管理平台来说,首先是需要在指定的虚拟化云主机上创建云主机,然后设置网路、IP地址等,再虚拟化平台反馈回具体的云主机信息,则进行挂载云盘调度,则需要对申请云主机的一系列动作需要根据操作顺序来进行,故而需针对各操作进行执行顺序的定义,以便平台在执行时进行调度。
[0047] 根据上述方案优选的,在步骤S1中建立多种类型的配置规则的调度规则配置的指令模板配置用于根据预先定义的专业服务和业务资源动作的关系条件制定指令模板规则。
[0048] 根据上述方案优选的,在步骤S4中,对指令序列列表进行指令实例化是将指令执行原始结果反馈到指令实例,并根据指令结果解析规则中设定的指令结果解析规则关键字和同包含相关指令模板信息的指令结果解析规则要素进行匹配,获得指令实例中的指令结果解析规则编码,完成指令实例化的过程。
[0049] 根据上述方案优选的,在步骤S6中,如果工单执行失败,则回馈异常原因以及每个业务资源动作的执行结果。
[0050] 根据上述方案优选的,在步骤S2任务接收中,接收来自客户关系管理维护的微服务发起的服务订单,通过用于服务开通的微服务将服务订单分解为子定单并启动相应的流程,流转到各个环节,用于服务开通的微服务,将子定单下发到适配器执行配置,并记录执行结果到工单。
[0051] 根据上述方案优选的,在步骤S5指令执行时,通过虚拟化云平台提供的标准化接口信息同虚拟化云平台的映射中,虚拟化云平台提供标准化接口信息的方法是,接收请求指令,根据所述虚拟化平台对象资源配置执行模板替换,替换完成之后去执行指令,对应需要认证的接口,获取认证信息之后供后续接口请求使用;重复该动作直到指令全部执行完成,或者到某条指令执行失败后跳过后续指令的执行返回执行结果。
[0052] 具体实施时,首先适配层提供封装了http、https、snmp、ssh、jdbc、tcp、telnet协议接口的实现,请求接口获取响应报文。
[0053] 每个环节实现配置化管理,降低学习成本,提升实际交付效率。
[0054] 指令适配引擎支持多条指令的顺序执行,根据相应的条件跳过指令执行,循环执行指令,延时执行指令,对应需要认证的接口,适配器还支持请求认证接口,拿到认证信息之后供后续接口请求使用。
[0055] 在顺序执行指令的过程中会得到一些输出参数,这些输出参数可以带入到后续的指令执行当中去替换需替换的值,替换完成之后再次去执行指令。重复该动作直到指令全部执行完成,或者到某条指令执行失败后跳过后续指令的执行返回执行结果。
[0056] 默认提供了统一封装成json的封装方法,对于特殊的字段支持jsonpath、正则、动态脚本语言提取相应的字段信息。
[0057] 以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何
修改、等同替换、改进等,均应包含在本发明的保护范围之内。