坚持#第303天~补起昨天的、顺便写今天的(昨天又在公司搞zabbix搞到了凌晨1点,结果搞忘了写博客),主要是zabbix监控

既然51数据库scp不了东西到51Web,那就试试wget,下面成功了:

51数据库监控cpu操作:

su - root

yum install-y vsftpd

/etc/init.d/vsftpdstart

exit

将文件输出重定向到/var/ftp/pub里面

51Web:

su - root

yum install-y lftp

exit

wget ftp://51数据库ip/pub/test1.txt

(这里需要注意的是lftp进去之后就直接到达了数据库的/var/ftp里面,还要进入pub里面才行)

这样51Web就获取到了数据库cpu的信息了。然后你51Web可以将这个文件scp到233(既然233ping不通51Web,但是51Web可以ping通233,只好用scp了),然后233可以监控自己,截取发送过来的这个文件就行了,其他机器也一样,都可以把信息传送到233,让233自己监控自己,非常爽歪歪、美滋滋,所有的监控都可以在一台主机上监控了,即一张图可以看到所有的监控内容,而且还不用切换图形主机列表。报警也可以更简单的实现了,简直就是帅呆了、酷毙了、简直无法比喻了,为什么我的眼里常含泪水?因为我简直就是屌爆了,这个做出来之后,直接在文档上面写上监控中心的ip就行了。哎呀,刚才我看到51数据库的cpu剩余0.1%了,吓死宝宝了,不过他会自动恢复,只要没满就行了,满了等待一会还有可能自动恢复的,满了肯定要报警的

小感想:scp和wget太厉害了,完美的解决了信息传递的问题,wget -P/tmp/litaoDir ftp... 可以指定下载到哪个目录里面,wget -N不重命名,但是也不覆盖,他看时间来更新,不看内容更新,我想要直接覆盖掉之前同名的怎么办?不要使用-N和-P了,直接使用wget -O 路径+名字(一样的就覆盖之前的)。wget和scp一样一次可以下载多个

值得监控:51数据库、229数据库的磁盘剩余空间和cpu使用率。。。还有51Web、229Web的cpu使用率、SYSAUX表空间

zabbix监控的时候取到了空值监控项就会停用显示不支持的键值浮点型不能出现空值,怎么解决?1. 等10分钟,zabbix会去重新check一次当前item的Supported状态。

2.删掉当前item,重新创建

3.修改zabbix重新check的时间,例如改成10分钟,点击administration--->General--->右侧下拉条选择"other"--->Refreshunsupported items (in sec)改为1(单位为秒)---->update(找不到就把zabbix中文换成英文去找)。

CPU发生了告警有可能是一时飚上去了,等会自动降下来的,降下来要发送一个告警说问题已经解决了,免得自己提心吊胆的,解决办法:动作里面操作后面有一个恢复操作,开发者真是关心周到啊。

海哥要我查具体的日志

魏颖叫我在表格里面标记好

每日例行,写一个脚本可以清理SYSAUX表空间大小,等晚上在清理,现在脚本写出来了不敢执行,出现了点问题,但是修改好了,现在很完美。和我之前想的一样,看起来没问题很完美,但是执行之后就会有问题,只有修改完之后再执行没问题之后才是真正的完美。

写一个监控表空间大小的zabbix,我去,好烦,为什么截取数据库表空间的脚本用.能执行,但是放入到计划任务里面就执行不了?我想到一种解决方法就是51Web去写一个脚本ssh51oracle并执行那个脚本。另一种方法我尝试了两个小时才试出来了,真是尝试+灵感=奇迹啊。这个问题就是/etc/crontab里面不能单独执行sqlplus的,因为sqlplus需要有前提条件是环境变量,我不敢在脚本里面添加./etc/bashrc,所以试了千方百计的办法,终于成功了,在/etc/crontab里面使用root su - oracle -c 脚本名字就能成功的执行sqlplus的脚本了,真乃奇迹也,我敢说没多少人会这种操作。对于sqlplus的脚本会有假的SQL交互页面出现,不要被骗了,最好输出重定向丢到垃圾堆里面去。

龙哥叫我处理一下表空间SYSAUX异常,229手动清理好了,等会51的自己写一个脚本清理着试试看。zabbix对于数据库表空间大小的监控,当达到92%就告警到手机,大后期还可以设置动作,当表空间到了92%就执行自定义脚本清理表空间大小,可以先搞SYSAUX这个表的自动化清理(先不动其他表),不过最好先把脚本准备好自己先执行一遍,没有问题了再放上去,自动清理完了之后发送一条“问题已解决”的信息到手机通知一下。至于怎么简化截取,可以写sql语句,比如:select dbid fromdba_hist_snapshot;只查询你想要的dbid。至于清理的动作实现,告警,ssh到51web执行51web里面的脚本,脚本内容是ssh到51的oracle执行51oracle里面的脚本,脚本内容是清理表空间。ssh这就涉及到expect、还有指纹认证、脚本权限的知识点。先做清理表空间的脚本,然后做zabbix监控表空间大小,最后一结合,完美!真棒!

之前服务器健康监测的文档里面写解决方案:数据库的物理空间大小

猜你喜欢

转载自blog.csdn.net/libanxian9527/article/details/80202262