懒人工具

来源:互联网 发布:隔音材料 知乎 编辑:程序博客网 时间:2024/04/27 17:01
记得李开复曾经说过,原话不记得了,意思是在一个技术团队内可以把一些繁琐的工作交给懒人来做,因为懒人的性格会把这些工作做得很好。
这句话说得很实在,我也很讨厌繁琐的工作,更讨厌简单的重复的工作,因此就有了这些自己编写的懒人工具。

0. 主机巡检
想象一下,如果你每日也要针对多达50+台的linux主机进行上述内容的巡检,你有什么好的简便的办法,打开xshell或者crt登陆,然后把命令的输入到所有标签连接的主机,到此为止还不算什么,接下来那你可以怎么办,怎么查看这些结果呢?逐个打开标签查看命令结果,你out了,累死你都会,为了不被逐个步骤浪费大量的时间,所以有了以下工具。

checkmain for Linux
checkinall_client for Linux

这两个小工具可以单独使用也可以配合使用,一般情况下我组合起来使用。
checkinall_client在主机上执行各项巡检内容,并将检查结果汇总合并到一个文件比如result.log,执行如下内容的检查:
Oracle数据库信息,包含:alertlog、racstatus、tablespaceinfo、dbsyncinfo、rmaninfo等;
主机信息,包含:hostname、date、uptime、platforminfo、jobs、loadinfo、meminfo、diskinfo、systemlog、filesysteminfo等;
WEB服务器,包含:tomcat、apache等;
存储,包含:HP EXDs 9100;

checkmain是负责将其他所有主机的检查结果汇总到一台服务器上,还有一个功能是可以实现远程部署,比如我通过checkmain将checkinall_client工具部署到每一台的服务器上,而这个操作我只需要在主服务器上操作即可完成,这样可以省略了登陆每台主机上传的操作步骤。

有了这么两个工具,我所做的就是这么一个过程:a、通过checkmain在主服务上将checkinall_client部署到每一台远程服务器上,并定制checkinall_client在每天早上7点30分执行;b、将checkmain部署到一台主服务器上,并定制crontab在每天早上8点0分执行;
总体来说做到这个程度已经能够每天为我节省将近40分钟的时间了,但是如果你也像我一样需要通过登录VPN远程到堡垒机之后再登录主机的话,也是很麻烦,登录VPN需要电话取得登陆码不说,万一VPN故障怎么办?如果能够在堡垒机上登陆到主服务上取得巡检结果并自动发送邮件到我邮箱多好,所以再有下面的工具:sendreport。

1. 发送巡检报告
sendreport for windows
这个工具顾名思义就是发送报告,当然你也可以用它来发送其他内容,收件人、邮件标题、邮件内容、邮件附件等都可以定制。这里面其实还有一个非常重要的步骤,就是怎么取得linux主机上的巡检报告文件,由于堡垒机是windows的,这就需要涉及到ssh或者telnet的操作了,我用的sftp协议,因为ftp并不总是开放的。总的工作流程就是在windows堡垒机上登陆到linux服务器,并下载巡检报告到本地,然后发送邮件。

承上面的步骤,这样就完美了:c、在windows堡垒机上定制sendreport程序每天8点05分执行以获取报告,然后发送我邮箱,这样到了办公室之后打开邮箱就可以针对生产环境的所有主机做一遍巡检了。

2. Oracle数据库抽取CSV
程序用于执行Oracle数据库抽取CSV操作.
extractdata from Oracle for Windows Beta 1.1.

这个工具用来帮助我从数据库中导出记录为excel的csv格式,支持多表导出,支持导出过滤条件(但是还未实现每个表定制条件)。以往的操作方法往往是通过第3方工具比如PL/SQL DEV来执行导出。

3. Oracle数据库导出
程序用于执行Oracle数据库导出操作.
expdata from Oracle for Windows Beta 1.1.

这个工具是在没有什么技术含量,纯粹把玩一下,不过如果你身边的同事也是对Oracle不怎么熟悉的话,让他或者她执行一个带条件的导出都有问题的话,何尝不是一个解决问题的小工具,支持用户或者表模式,支持多表导出,支持条件过滤。

4. 平面文件导入到Oracle数据库
程序用于将平面文件导入到Oracle数据库.
txtimport to Oracle for Windows Beta 1.0.

解决和简化为了将平面文件数据导入到Oracle数据库过程中的繁琐步骤.
可以实现功能:
0. 源文件包含子目录,程序可以递归处理所有文件
1. 导入过程中自动为每个文件的记录添加文件名称作为标识

关于这个工具具体见我之前的文章,批量文本入库 http://blog.csdn.net/gtlions/article/details/8306391。

上述工具中,除了巡检工具之外,我都分发了给同事使用,收到的反馈还不错。
-The End-


原创粉丝点击