Autosys(CA Workload Automation AE)学习总结

Autosys,现在的完整名字应该是CA Workload Automation AE,其中AE指的就是Autosys Edition。它是一个类似于CRON的自动化作业控制系统,分布式架构。

注意:本文后续所有提到Autosys的地方,实际上指的都是“CA Workload Automation AE”。

实例(Instance):Autosys在服务器端运行的软件就是一个实例。每一个实例都独立拥有自己的调度器、应用服务器和事件服务器。一台服务器上可以安装多个实例,但需要为它们指定不同的实例ID。同一台服务器上只需一套软件便可以支持多实例,并且不会导致实例间互相干扰。

Autosys架构包含几个主要的组成内容:事件服务器(即数据库)、应用服务器、Web服务器、调度器、代理

事件服务器(即数据库),其中存储了Autosys需要使用到的所有对象。
应用服务器作为事件服务器与客户端工具间沟通接口使用。
Web服务器提供Web服务。
调度器用来解析事件,并根据作业定义,通过代理进行初始化相关活动。它是Autosys的工作引擎。
代理用来执行任务,并把作业的执行结果状态回发给调度器。代理需要安装在作业所在的服务器上,这样它就会帮助我们完成运行脚本、命令、传输文件、监控状态等工作。
客户端工具与SDK的作用是帮助用户完成与应用服务器交互,从而达到规划调度方案与监控的目的。

       +-------------+          +----------------+
       |             |          |                |
       |    Agent    <---------->   Scheduler    |
       |             |          |                |
       +------^------+          +--------^-------+
              |                          |
              |                          |
              |                          |
      +-------v--------+        +--------v-------+
      |  Windows/Unix  |        |  Event Server  |        +--------------+
      |----------------|        |----------------|        |              |
      |      JOBS      |        |                <-------->  Web Server  |
      +----------------+        |   (Database)   |        |              |
                                |                |        +--------------+
                                +--------^-------+
                                         |
                                         |
                                         |
                                         |
    +-----------------+         +--------v-------+
    |                 |         |                |
    | Client Utility  |         |   Application  |
    |                 <--------->                |
    | SDK Application |         |     Server     |
    |                 |         |                |
    +-----------------+         +----------------+
作业(job)的定义是在一台安装了代理的电脑上可以执行的一个动作。内容可以是独立的一条命令语句、可执行文件、脚本文件或批处理文件。要想运行一个作业,必须事先定义好作业,指明作业的用途、什么时候运行以及在什么地方运行。
事件(event):Autosys是一个事件驱动的工作系统,事件会促使调度器初始化一个动作。Autosys会在某种条件下触发一个事件,当然用户也可以通过手工运行命令的方式触发事件。
警告(alarm):警告是一种特殊的事件,用来通知操作者需要注意某种情况。
工具(Utility):Autosys采用它自己独有的一种编程语言(JIL)和客户端工具来定义、控制和汇报作业。
命令(Command):用途是作业的定义、监控、管理;系统配置与控制。

jil命令与JIL(Job Information Language)语言
Job Information Language(JIL)是一种脚本语言,用来定义和修过诸如作业、全局变量、机器、作业类型、外部实例和二进制大对象这样资源。
jil命令则是用来运行可以解析JIL语言的处理器。
通过以下两种方法可以定义和修改资源内容。
例一:执行jil命令后就会出现JIL命令行提示符。在提示符下一次可以键入一条子命令。在退出命令行提示符时,JIL语言处理器便会开始解析并把相关内容装载到数据库中去。
例二:创建一个JIL脚本,并在其中编辑好子命令。接下来把JIL脚本重定向到jil命令中去。这时jil命令就开始启动语言处理器,解析脚本中的命令并把相关内容装载到数据库中去。
此外,CA WCC(CA Workload Control Center)也可以用来定义作业,CA WCC GUI与JIL的子命令和属性相对应,而且还支持日历、全局变量和监控管理作业。

机器(machine):在规划作业前,必须为Autosys定义好目标机器。所谓的机器可以是真实的、虚拟的或是真实的机器池。注意:不用使用命令insert_machine:localhost来定义机器,因为localhost是系统保留的名字。
真实机器:满足后面三个条件的机器就是真实机器。Autosys可以网络中访问得到;已经安装了代理或CA AutoSys WA Connect Option或CA NSM或CA UAJM,能够让Autosys在其之上运行作业;它对Autosys的定义是一台使用JIL的真实机器。
虚拟机器:虚拟机器的定义引用了一个或多个真实机器的定义。其作用是为了可以在多机环境中应用高阶的运行时资源策略(或约束),并且Autosys会自动运行这些策略。
真实机器池:与虚拟机器类似,其引用一个或多个既存的真实机器定义。它用来与CA Automation Suite for Data Center配合使用来进行负载平衡。

机器状态:真实机器有一个实时状态的属性,用于反应出机器是否可用。如果一个已经规划好的作业所对应的机器处于离线(Offline)状态,那么作业状态就会被设置为PEND_MACH,直至机器重新恢复在线(Online)状态。
Online:机器在线可用,可用接收作业
Offline:机器被手动从服务中移除,不能接收作业
Missing:调度器已经证实机器无响应,自动将其从服务中移除,机器不能接收作业
Unqualified:调度器正处于将机器状态从Online切换至Missing的工作状态,相关机器不能接收作业
Empty:虚拟机器或真实机器池没有引用任何机器。针对该机器的作业无法运行。

消息:Autosys中有三种消息,每种消息都有着自己的消息字符串信息、原因以及对应的方案建议。第一种是信息性质的消息,只是用于显示,无需采取任何措施;第二种是警告消息,报告潜在的错误,需要我们采取相应的措施;最后是错误消息,用于通知我们采取必要措施解决问题。
消息示例:CAUAJM_[IWE]_XXXXX,IWE三个字母任选其一,代表着information/warning/error,最后的XXXXX代表五个数字,为消息编号。

关于官方文档的阅读:以下是所有的官方文档,对于开发人员来说,只要掌握基本的jil/JIL即可,对于Autosys服务器以及它的代理配置只做了解即可。
WA_AE_Admin_ENU.pdf|Autosys服务器管理,管理员需要深入学习
WA_AE_Message_Ref_ENU.pdf|消息参考手册,管理员及开发人员在需要的时候可以作为参考
WA_AE_Overview_ENU.pdf|Autosys整体架构说明,开发人员需要了解
WA_AE_Release_ENU.pdf|Release说明,可以不看,新特性、软硬件及数据库的支持说明以及注意事项
WA_AE_User_ENU.pdf|开发人员必看,作业的常见操作命令以及各种作业类型说明与案例解释
WA_Agent_for_UNIX_Linux_Windows_Impl_ENU.pdf|代理的具体配置说明,管理员需要深入学习
WA_Agent_for_UNIX_Linux_Windows_Release_ENU.pdf|Release说明,可以不看
WA_Common_Components_Release_ENU.pdf|Release说明,可以不看
WA_WCC_Release_ENU.pdf|Release说明,可以不看

你可能感兴趣的:(Autosys(CA Workload Automation AE)学习总结)