zoukankan      html  css  js  c++  java
  • Icingaweb2监控oracle数据库的安装配置流程

    Icinga2安装配置check_oracle_health流程

    1.安装

    由于check_oracle_health是使用perl语言编写的,因此在安装该插件之前,首先要安装oracle的客户端实例,分别是basic,sqlplus,sdk包括perl的oracle插件(DBI和DBD)。

    第一步: 下载Oracle Instant Client

    Oracle Instant Client的主页在http://www.oracle.com/technology/tech/oci/instantclient/index.html;同一软件按配置分成了不同的可下载包,让用户可以按照自己的需求,找到最合适的部分下载。要成功配置DBD::Oracle, 需要instantclient-basic-xxx,instantclient-sdk-xxx,instantclient-sqlplus-xxx这三个文件,可以下载zip包或者rpm包,zip包的话使用unzip命令在当前目录解压这三个zip文件,会自动生成instantclient_xxx目录,这里面包含了以上三个包里面的所有文件。

    这时候这三个zip文件已经没用,可以删之,也可备份供以后重用。

    第二步:安装DBI

     wget  http://search.cpan.org/CPAN/authors/id/T/TI/TIMB/DBI-1.609.tar.gz    

    tar  zxvf  DBI-1.609.tar.gz      

    cd  DBI-1.609

    perl  Makefile.PL 

    make all

    make install 

    第三步:安装DBD

    wget http://mirrors.neusoft.edu.cn/cpan/authors/id/P/PY/PYTHIAN/DBD-Oracle-1.52.tar.gz
    tar zxvf DBD-Oracle-1.52.tar.gz 
    cd DBD-Oracle-1.52
    perl Makefile.PL

    此时会遇到错误:

    解决方法是配置相应的环境变量:

    export ORACLE_HOME=/usr/lib/oracle/11.2/client64

    注:此路径为安装的instance所在目录

    export PATH=$ORACLE_HOME/bin:$PATH;

    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;
    再执行perl Makefile.PL就可以了
    make 
    make install

    第四步:安装check_oracle_health

    wget http://labs.consol.de/wp-content/uploads/2009/09/check_oracle_health-1.6.3.tar.gz

    tar zxvf check_oracle_health-1.6.3.tar.gz

    cd check_oracle_health-1.6.3

    ./configure --prefix=/usr/lib/nagios/plugins --with-nagios-user=nagios --with-nagios-group=nagios --with-mymodules-dir=/usr/lib/nagios/plugins/libexec --with-mymodules-dyn-dir=/usr/lib/nagios/plugins/libexec

    make all

    make install

    安装完毕后,进入libexec目录下查看已经有这个插件了。

    在此目录下打开终端,运行插件相应的命令,观察是否能够正常执行,返回相应的结果。

    2.配置

    Icinga2的配置文件与icinga1有很大不同,icinga1的配置文件均在object目录下,分别是hosts.cfg,commands.cfg和services.cfg。但是icinga2的配置文件分为两部分,一部分在/etc/icinga2/conf.d目录下的hosts.conf和services.conf文件,另一部分是位于/usr/share/icinga2/include目录下的command-plugins.conf文件。这三个文件与icinga1的文件的对应关系为

    Icinga1                                                  icinga2

    hosts.cfg             < ————— >     hosts.conf

    services.cfg        < ————— >     services.conf

    commands.cfg    < ————— >    command-plugins.conf

    具体配置示例:

    host.conf文件配置:

          添加主机:

               object Host "Host_Name" {

                      import "generic-host"

                      address = "the host’s IP"

    }

    command-plugins.conf文件配置:

               添加命令:

               object CheckCommand " Custom Command " {

                      import "plugin-check-command"

                      command = [ PluginDir + " /<file name stored in plugin directory> " ]

                      /*define all require arguments*/

                      arguments = {

                             "--connect"="$connection$"

                        "--username"="$user_name$"

                             "--password"="$pwd$"

                             "--mode"="$Mode$"

                             "--warning"="$W_ARG$"

                             "--critical"="$C_ARG$"

                      }

           vars.connection = "the host’s hostname or address you want to connect"

                      vars.user_name = "user name"

                      vars.pwd = "password"

    }

    services.conf文件配置:

          添加服务:

    apply Service "Service Description" {

           import "generic-service"

           check_command = "Custom Command"

           vars.Mode = "select mode you want to Monitor "

           vars.W_ARG = beyond parameter1 cause Warning

           vars.C_ARG = beyond parameter2 cause Critical

      assign where host.name == " Host_Name "

    }

    把相应的主机,命令和服务都配好后,

    重启icnga2:systemctl restart icinga2

    打开浏览器,输入:http://localhost/icingaweb2/

    登录icingaweb2监控页查看相关的监控信息。

    至此,配置完成。

  • 相关阅读:
    wamp的安装
    原型模式(clone模式)
    观察者模式observer(用于不同类的中 板块的显示或其它操作)
    数据对象映射模式(通过工厂模式和注册树模式)v2
    数据对象映射模式(及对象的相关属性和数据库表中的字段一一对应)
    策略模式根据不同的性别给出不同的推荐
    适配器模式(数据库方面)支持不同的数据库连接
    php的三种设计模式
    UnexpectedRollbackException: Transaction rolled back because it has been marked as rollback-only解决办法
    SQL语句如何在同一个表内复制一条记录
  • 原文地址:https://www.cnblogs.com/herblog/p/5082184.html
Copyright © 2011-2022 走看看