ORAchk以后台进程的方式定时运行
ORAchk可以配置成以后台进程模式,按照用户定义的时间间隔,自动运行,同时把结果通过email的方式发送给用户。
Daemon Mode配置方法1. 配置orachk
使用orachk设置自动运行参数,有两个参数是必须设置的:AUTORUN_SCHEDULE 和NOTIFICATION_EMAIL,设置的例子:
# ./orachk –set “AUTORUN_SCHEDULE=3 * * 0 ;NOTIFICATION_EMAIL=raobing@hthorizon.com”
其中AUTORUN_SCHEDULE是运行的时间,含义是:AUTORUN_SCHEDULE=hour day month day_of_week
用*代表所有值,比如上面例子中“3 * * 0” 代表每个星期天的3点执行(0代表星期天,6代表星期六)
NOTIFICATION_EMAIL参数的值就是接受报告的邮箱地址。
2. 启动后台进程
# ./orachk –d start
这种模式需要工具expect来处理root口令,避免多次交互输入口令,这个工具的下载地址:
Expect 安装是源码安装,在linux平台上,需要tcl-devel 这个rpm包,安装expect和tcl-devel 包的过程略。
邮件相关配置ORAchk支持使用mailx和sendmail两种方式发送邮件,为了外部邮箱能够收到邮件,我使用了mailx的方式,在我的测试机上,安装的是Oracle Linux 6.5,系统自带mailx 12.4,为了保证能够让ORAchk使用mailx,需要保证系统上安装了uuencode,sharutils rpm包里面有这个工具。
另外,在/etc/mail.rc,增加下列配置行,主要是目前大部分外部smtp服务器都是需要认证才能发邮件,所以要给出认证信息:
如果一切正常,在orachk目录下的orachk_daemon.log会有类似的字样:
邮件样例第一次的邮件报告就是一份html格式的报告,后续的报告会包含上一次的报告和本次报告,以及两份报告的不同之处。
Collection ManagerORAchk的软件包里面还提供了一个web应用,用于管理健康检查的结果,应用的名字叫Collection Manager(CM),在这个应用中,一次检查被称为一个Collection。
CM是一个Oracle APEX应用,Oracle APEX显然不是这篇文章讨论的问题,关于APEX的介绍及安装部署会在其他文章介绍。
CM在导入APEX后,运行应用,登录的界面是这个样子的:
在系统中应用包含两个样例Collection,是在一个sample系统上运行的2次检查。可以很直观地看到最新一次的检查,FAIL的检查项31%,WARNING的检查项31%,PASS的检查项38%。
我们把我们实际的Collection上传两个:
直接上传zip包,系统会自动在后台解压缩并处理,需要花几分钟时间。
查看我们上传的两个不同系统的Collection:
点击图表,可以转到具体信息页面,比如我们点击4%的红色区域,会转向这个页面,除了能查看具体的检查项信息外,还可以针对问题创建Ticket:
CM应用中应该算是自带了一个事件管理系统,可以将检查后发现的配置缺陷,当作一个事件,通过CM中的事件管理功能,进行追踪管理:
另外这个应用还可以进行不同Collection的比较,也很方便。
从这个应用的内容看,官方希望的系统健康检查流程应该是这样的:
1. 客户自助或服务商现场工程师运行orachk,生成Collection
2. 上传Collection到CM应用,CM是部署在云(公有或私有)上的
3. 客户登录系统查看、管理自己系统的检查报告,不再需要服务人员提供检查结果
4. 检查出的问题可以使用CM应用来进行跟踪管理
其实要真能这样也不错,但是个人觉得目前可能实现起来还有一些障碍:
1. Orachk和CM系统都没有中文版,估计还得有服务商翻译,可能最后还是要转变成传统的交付物。
2. Orachk目前检查的内容还不能算全面,比如性能方面的数据