本人最近在弄nagios,想用nagios监控oracle,看了网上的很多教程,步骤都是如下。
1.由于 nagios 脚本需要读取 oracle 相关文件。所以运行 nagios 的用户需要定义为 oracle 服务用户。并且修改 /etc/xinted.d/nrpe 中的配置。

service nrpe
{
         flags           = REUSE
         socket_type     = stream
         port            = 5666
         wait            = no
         user            = oracle
         group           = nagios
         server          = /usr/local/nagios/bin/nrpe
         server_args     = -c /usr/local/nagios/etc/nrpe.cfg --inetd
         log_on_failure  += USERID
         disable         = no
         only_from       = 192.168.100.62
}
2.给 oracle 用户在 ORACLE_HOME 目录下执行权限。
        chmod ?Rf 740 $ ORACLE_HOME/*

3.修改 check_oracle 脚本。将 $ORACLE_HOME 以及 $PATH 手动加入,避免出现问题。

ORACLE_HOME=/u01/oracle/product/10.2.0/db_1
        PATH=$PATH: /u01/oracle/product/10.2.0/db_1/bin

这么做是为了确保脚本可以正常执行 sqlplus 以及 tnsping 等命令。

二、配置 nrpe 服务

修改 /usr/local/nagios/etc/nrpe.cfg 文件。加入以下内容:

#Check Oracle
command[check_oracle_tns]=/usr/local/nagios/libexec/check_oracle --tns orcl
command[check_oracle_db]=/usr/local/nagios/libexec/check_oracle --db orcl
command[check_oracle_login]=/usr/local/nagios/libexec/check_oracle --login orcl
command[check_oracle_cache]=/usr/local/nagios/libexec/check_oracle --cache orcl system lkjsdf 80 90
command[check_oracle_tablespace]=/usr/local/nagios/libexec/check_oracle --tablespace orcl system lkjsdf tab 90 80
具体参数写法请参考 check_oracle --help。

配置完成后,重启 xinetd 服务。

三、配置 Nagios 服务端

1.安装 nrpe 脚本支持。---参考官方文档。
2.添加 nrpe 命令配置。修改 nagios/etc/objects/command.cfg 文件:

define command {
         command_name check_nrpe
         command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
3.在 nagios/etc/objects 添加oracle 主机配置文件。oracle.cfg 。

define host {
         use             linux-server
         host_name       oracle
         alias           Oracle 10g
         address         192.168.100.63
         }
define service {
         use             generic-service
         host_name       oracle
         service_description     TNS Check
         check_command   check_nrpe!check_oracle_tns
         }
define service {
         use             generic-service
         host_name       oracle
         service_description     DB Check
         check_command   check_nrpe!check_oracle_db
         }
define service {
         use             generic-service
         host_name       oracle
         service_description     Login Check
         check_command   check_nrpe!check_oracle_login
         }
define service {
         use             generic-service
         host_name       oracle
         service_description     Cache Check
         check_command   check_nrpe!check_oracle_cache
         }
define service {
         use             generic-service
         host_name       oracle
         service_description     Tablespace Check
         check_command   check_nrpe!check_oracle_tablespace
         }
4.验证配置文件无误后重启 nagios 服务。

但是这样配置后还是不能监控,因为这文档里面没有写怎么在command.cfg文档里面怎么配置check_oracle_tablespace,check_oracle_cache,check_oracle_login这些插件的,这些插件在nagios默认的插件里面也没有,请问配置过的大虾这些插件在哪里下载的,还有在command.cfg文件里面怎么配置的。
在线等,多谢!

最新文章

  1. Error configuring application listener of class。。。NoClassDefFoundError。。某Listener 之启动tomcat报错
  2. treeview 控件使用和数据绑定
  3. jQuery删除节点和追加节点
  4. switch2osm使用open street map离线地图中文乱码方框解决办法
  5. hdu5187 奇怪题
  6. SRM 513 2 1000CutTheNumbers(状态压缩)
  7. 剑指Offer 通过中序和先序遍历重建二叉树
  8. su和su - 的区别
  9. Java 时间架构图
  10. Elasticsearch的PHP的API使用(一)
  11. Spring Boot Servlet
  12. CSS效果
  13. 一元云购qq互联回调地址错误解决办法
  14. 【转】Linux 标准目录结构
  15. linux每日一练:Enable multithreading to use std::thread: Operation not permitted问题解决
  16. Spring MVC知识点整理
  17. vue 项目中当访问路由不存在的时候默认访问404页面
  18. Golang学习---test写法和benchmark写法
  19. python黑帽子
  20. 【转】Android 为什么 dp2px 或 px2dp 公式需要加 0.5f

热门文章

  1. POJ 1789 Truck History【最小生成树模板题Kruscal】
  2. 学习笔记:CentOS7学习之十六:LVM管理和ssm存储管理器使用
  3. IO多路复用技术详解
  4. sshpass ssh登录时自动输入密码
  5. Web Server 分布式服务: Nginx负载均衡
  6. phpstorm右侧边栏怎么打开?
  7. JS中json数组多字段排序方法(解决兼容性问题)(转)
  8. MySQL 索引的优化
  9. - 多次点击事件 MD
  10. C#Random随机值重复的解决方法