IBM主机作业的自动生成方法、系统、装置及存储介质与流程

文档序号:20916680发布日期:2020-05-29 13:37阅读:209来源:国知局
IBM主机作业的自动生成方法、系统、装置及存储介质与流程

本发明涉及计算机应用技术领域,更为具体而言,涉及一种基于模板引擎的ibm主机作业的自动生成方法、系统、装置及存储介质。



背景技术:

ibm主机系统以其强大的功能、坚实的可靠性、封闭的安全性等优点被金融行业所青睐。然而在如今自动化运维乃至人工智能运维的浪潮中,封闭安全反而使ibm主机运维停滞不前,仍然处于手工任务繁琐,效率低下,可靠性不高的“刀耕火种”阶段。伴随着业务增长,业务系统对主机平台运维效率和质量的要求不断提高,主机运维标准化和自动化需求也日益强烈。

目前,大型主机在生产环境标准变更实施的运维场景下,主机运维人员通常通过手工编辑并执行一个或一系列jcl作业完成变更实施工作。一般情况下,运维人员使用z/os操作系统提供的ispfedit编辑器创建或编辑jcl作业。该编辑器功能强大,命令集丰富,但存在学习曲线陡峭,容易误操作等缺点。通过该方式实施生产变更对运维人员的要求高,需要运维人员熟练掌握相关语言的知识,同时,不同运维人员编写的作业在编码规范、编码风格和健壮性方面存在巨大差异,使作业难以统一管理。且手工编写的方式存在实施效率低、安全隐患大等缺点。

此外,运维人员也可以使用配置文件配合执行rexx脚本动态生成jcl作业,但其数据类型过于单一,缺少常见的数据类型和数据结构支持。另一方面,相较于当下流行的高级程序语言,rexx可读性差,维护困难,缺乏高效直观的跟踪调试、错误定位工具。rexx难以实现复杂变更流程的完全自动化,受限于功能及操作系统接口限制,基于rexx的自动化流程通常需要人工干预。同时,复杂的流程通常意味着更复杂的逻辑和代码量,rexx可读性差,维护困难的弊端将进一步放大。



技术实现要素:

为了解决现有技术中存在的上述问题,本发明提供了一种ibm主机作业的自动生成方法、系统、服务器及存储介质,提升了运维标准化程度和运维工作效率,降低了主机系统的运维门槛。

根据本发明的实施方式,提供了一种ibm主机作业的自动生成方法,所述生成方法包括:获取待生成的作业的操作类型和操作参数集合;根据所述操作类型匹配出相应的作业模板;根据匹配出的所述作业模板和所述操作参数通过模板引擎生成作业。

在本发明的一些实施方式中,所述作业模板根据预设的编写标准统一格式编写,包括通用语句和唯一标签集合;其中,所述作业模板的静态部分由所述通用语句构成,动态部分由所述唯一标签集合中的唯一标签进行标记。

在本发明的一些实施方式中,所述操作参数集合包括多个参数值;其中,每个所述参数值具有参数名,且对应一种所述唯一标签;每个所述参数值对应的唯一标签互相不同。

在本发明的一些实施方式中,所述根据匹配出的所述作业模板和所述操作参数通过模板引擎生成作业包括:通过所述模板引擎扫描所述作业模板,遇到所述唯一标签时,查找所述操作参数集合;获取所述操作参数集合中与所述作业模板中的唯一标签相同的唯一标签所对应的参数值;用获取的所述参数值替换所述作业模板中的唯一标签。

同时,本发明提供了一种ibm主机作业的自动生成系统,所述生成系统包括:获取模块,用于获取待生成的作业的操作类型和操作参数集合;匹配模块,用于根据所述操作类型匹配出相应的作业模板;生成模块,用于根据匹配出的所述作业模板和所述操作参数通过模板引擎生成作业。

在本发明的一些实施方式中,所述作业模板根据预设的编写标准统一格式编写,包括通用语句和唯一标签集合;其中,所述作业模板的静态部分由所述通用语句构成,动态部分由所述唯一标签集合中的唯一标签进行标记。

在本发明的一些实施方式中,所述操作参数集合包括多个参数值;其中,每个所述参数值具有参数名,且对应一种所述唯一标签;每个所述参数值对应的唯一标签互相不同。

在本发明的一些实施方式中,所述生成模块用于:通过所述模板引擎扫描所述作业模板,遇到所述唯一标签时,查找所述操作参数集合;获取所述操作参数集合中与所述作业模板中的唯一标签相同的唯一标签所对应的参数值;用获取的所述参数值替换所述作业模板中的唯一标签。

此外,本发明实施方式提供了一种ibm主机作业的自动生成装置,包括存储器和处理器,所述存储器用于存储一条或多条计算机可读指令;所述处理器用于执行所述一条或多条计算机可读指令从而实现前述任一项实施方式所述的方法。

本发明实施方式还提供了一种计算机存储介质,存储有一条或多条计算机程序,所述一条或多条计算机程序在执行时实现前述任一项实施方式所述的方法。

本发明通过提供统一的作业模板,运维人员只需输入相关参数即可自动生成作业,优化了主机作业准备工艺,提升了运维标准化程度和运维工作效率,降低了主机系统的运维门槛,有效改善了主机作业编码风格各异、维护困难以及版本管理混乱等问题。且统一的作业模板有效减少手工任务和人工干预操作,大大减少了安全隐患。

附图说明

为了便于理解本发明,以下通过具体实施方式并结合附图对本发明进行具体说明。

图1是根据本发明一种实施方式的ibm主机作业的自动生成方法的流程示意图;

图2是根据图1中的处理102的一种实施方式的流程示意图;

图3是根据本发明一种实施方式的ibm主机作业的自动生成系统的框图。

具体实施方式

以下结合附图和具体实施方式对本发明的各个方面进行详细阐述。其中,众所周知的模块、单元及其相互之间的连接、链接、通信或操作没有示出或未作详细说明。并且,所描述的特征、架构或功能可在一个或一个以上实施方式中以任何方式组合。本领域技术人员应当理解,下述的各种实施方式只用于举例说明,而非用于限制本发明的保护范围。还可以容易理解,本文所述和附图所示的各实施方式中的模块或单元或处理方式可以按各种不同配置进行组合和设计。

首先对本发明涉及的各类缩写进行解释:

ibm:internationalbusinessmachine,国际商业机器公司;

z/os:运行在ibm大型机的操作系统;

ispf:interactivesystemproductivityfacility,主机交互子模块;

jcl:jobcontrollanguage,作业控制语言;

rexx:restructuredextendedexecutor,主机平台自动化脚本语言。

图1是根据本发明一种实施方式的ibm主机作业的自动生成方法的流程示意图,在本发明的实施方式中,参照图1,该方法包括:

100:获取待生成的作业的操作类型和操作参数集合;

101:根:操作类型匹配出相应的作业模板;

102:根据匹配出的作业模板和操作参数通过模板引擎生成作业。

由于传统手工编写作业的方式中,大量由不同运维人员编写的作业碎片化分布在主机系统中,不同的运维人员在实施相同的操作时,可能会使用不同的作业,使整个作业流程缺少标准化管理。基于此,可能导致操作结果的不确定,安全风险随之而来。随着时间的推移,这些问题将被不断放大。

因此,在本发明的实施方式中,提供了统一的作业模板。该作业模板根据预设的编写标准统一格式编写,包括通用语句和唯一标签集合;其中,该作业模板的静态部分由通用语句构成,动态部分由唯一标签集合中的唯一标签进行标记。

具体而言,将主机运维操作中的标准操作流程(例如:磁盘加卷流程、网络通道启停流程)使用的作业模板统一格式编写,再向运维人员提供用户友好的web界面,运维人员只需输入操作类型和操作参数,无需关注作业的具体内容,即可通过系统的模板引擎模块自动生成作业发送至主机端执行。

在本发明的实施方式中,操作参数集合包括多个参数值;其中,每个参数值具有参数名,且对应一种唯一标签,且每个参数值对应的唯一标签互相不同。

由此,通过唯一标签的对应关系实现作业模板动态部分的填充替换,继而生成作业。

参照图2,在本发明的实施方式中,给出了一种实现处理102的方法,具体如下:

103:通过模板引擎扫作业模板,遇到唯一标签时,查找操作参数集合;

104:获取操作参数集合中与作业模板中的唯一标签相同的唯一标签所对应的参数值;

105:用获取的参数值替换作业模板中的唯一标签。

对于操作流程可包含多个操作步骤的流程,可以使每一个操作步骤对应一个作业,只需要定义这些操作步骤的前后依赖关系,即可实现多操作步骤流程的作业生成。在本发明的实施方式中,可以使用系统提供流程图绘制和json文件导入的方式完成前后依赖关系的定义。

下面将结合具体例子对本实施方式所提供的ibm主机作业的自动生成方法进行描述。

以配置“标准磁盘加卷流程”为例,该流程有两个步骤,在此分别命名为“step1”和“step2”,定义二者间的执行顺序。

接收“标准磁盘加卷流程”所需要的操作参数集合,该操作参数集合包括参数名分别为“sysname”、“sgname”、“volname”和“status”的4类参数,每类参数对应一种唯一标签,且互相不同。确定操作类型为“标准磁盘加卷流程”后,上述两个作业会匹配出模板“addvol”用于生成作业。

模板引擎是整个作业生成过程中的核心,模板引擎中首先定义了一套适用于主机jcl作业的唯一标签用于标记作业模板的动态部分,例如,使用“@”、“&”等特殊符号作为唯一标签。

下面给出了一种带有唯一标签的作业模板:

/*

//voladddd*

updhlvlscds(y)

@foreach(&tin&tuplelist)

scdsname(‘sms.&{t.sys}.scds’)vol(&t.vol)sg(&t.sg)statusall(&t.sta)

@end

/*

//volaltdd*

/*

在获取到操作参数集合后,首先对操作参数集合进行数据格式预处理和校验,处理完毕后与匹配出的作业模板一起送至模板语法解释器。解释器扫描作业模板,遇到唯一标记则查找操作参数集合中与唯一标记对应的参数值完成参数替换。

上述作业模板经过参数替换后生成的作业如下:

/*

//voladddd*

updhlvlscds(y)

scdsname(‘sms.sys01.scds’)vol(n0001)sg(sgsys01t)statusall(enable)

scdsname(‘sms.sys01.scds’)vol(n0002)sg(sgsys01t)statusall(enable)

/*

//volaltdd*

/*

作业生成后,将作业按照预先定义的执行顺序发送至主机端进行执行,在本发明的实施方式中,该方式可以通过调用z/osmf(z/osmanagementfacility)的restapi完成。由于z/osmf的作业返回结果同样通过http请求返回,因此,还可以开启监听端口监听作业返回结果。

由此,本发明通过提供统一的作业模板,运维人员只需输入相关参数即可自动生成作业,优化了主机作业准备工艺,提升了运维标准化程度和运维工作效率,降低了主机系统的运维门槛,有效改善了主机作业编码风格各异、维护困难以及版本管理混乱等问题。且统一的作业模板有效减少手工任务和人工干预操作,大大减少了安全隐患。

图3是根据本发明一种实施方式的ibm主机作业的自动生成系统1的框图,参照图3,该生成系统1包括:获取模块11,用于获取待生成的作业的操作类型和操作参数集合;匹配模块12,用于根据操作类型匹配出相应的作业模板;生成模块13,用于根据匹配出的作业模板和操作参数通过模板引擎生成作业。

在本发明的实施方式中,作业模板根据预设的编写标准统一格式编写,包括通用语句和唯一标签集合;其中,作业模板的静态部分由通用语句构成,动态部分由唯一标签集合中的唯一标签进行标记。

在本发明可选的实施方式中,操作参数集合包括多个参数值;其中,每个参数值具有参数名,且对应一种唯一标签;每个参数值对应的唯一标签互相不同。

在本发明的实施方式中,生成模块13用于通过模板引擎扫描作业模板,遇到唯一标签时,查找操作参数集合;获取操作参数集合中与作业模板中的唯一标签相同的唯一标签所对应的参数值;用获取的参数值替换作业模板中的唯一标签。

可选的,本发明实施方式提供了一种ibm主机作业的自动生成装置,该装置包括存储器,用于存储一条或多条计算机可读指令;处理器,用于执行所述一条或多条计算机可读指令从而实现本发明前述实施方式或实现方式所提供的ibm主机作业的自动生成方法。可选地,在本发明实施方式的一种实现方式中,所述装置还可以包括用于进行数据通信的输入输出接口。例如,所述装置可以是计算机、智能终端、服务器等。

本发明实施方式还提供了一种计算机存储介质,存储有一条或多条计算机程序,用于在执行时实现本发明前述实施方式或实现方式提供的ibm主机作业的自动生成方法。例如,所述存储介质可以包括硬盘、软盘、光盘、磁带、磁盘、优盘、闪存等。

本文所公开的具体实施方式仅用于举例说明本发明,对于本领域技术人员而言,显然可以根据本文的教导进行各种修改,可以采用各种等同的方式实施本发明,因此,本发明上述公开的特定的实施方式仅仅是示例性的,其保护范围不受在此公开的结构或设计的细节所限,除非在权利要求中另有说明。因此,上述公开的特定的示例性的实施方式可进行各种替换、组合或修改,其所有的变形都落入本文公开的范围内。在缺少本文没有具体公开的任何元件或缺少本文公开的任选的部件的情况下,本文示例性公开的ibm主机作业的自动生成方法、系统、装置及存储介质仍可适当地实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件结合硬件平台的方式来实现。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施方式或者实施方式的某些部分所述的方法。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1