nagios服务端配置及客户的安装配备,监察和控制mysql种种选项

设置mysql之后,要求对mysql服务开展督察。

安装mysql之后,须要对mysql服务拓展监察和控制。

监察mysql各个选项,监察和控制mysql选项

设置mysql之后,需求对mysql服务开展监察。

  nagios开源自带的check_mysql 对 mysql 的slave
机监察和控制倒是不错。不过对数据库主机监察和控制就略显不足了。  
使用1个监察插件:check_mysql_health   下载和选取办法见:  

  具体监督:   对于slave 机 ,使用nagios 自带的 check_mysql 监控  
command[check_mysql_slave]=/usr/local/nagios/libexec/check_mysql -H
localhost -s /tmp/mysql.sock -u root -p xxx -S -w 1 -c 三  
在那之中用户和密码有希望会转移。延迟一秒警告,延迟3秒报警。  
check_mysql_health 监控mysql master 服务器  
/usr/local/nagios/libexec/custom/check_mysql_health –hostname
localhost –socket
/tmp/mysql.sock –username root –password xxxxxx –mode xxxxx –warning xxxxx –criticalxxxxx
  mode:

connection-time (Time to connect to the server) 

uptime (Time the server is running) 

threads-connected (Number of currently open connections) 

threadcache-hitrate (线程缓存命中率) 

slave-lag (Seconds behind master) 

slave-io-running (Slave io running: Yes) 

slave-sql-running (Slave sql running: Yes) 

qcache-hitrate
(查询命中率,要是那几个值接近百分之百,表达服务器select的优化就越好) 

qcache-lowmem-prunes
(因为内部存款和储蓄器小,从内部存款和储蓄器删除缓存查询的数额,能够叠加query_cache_size,减小lowmem,扩展命中率的优化) 

keycache-hitrate (MyISAM key
缓存命中率,要是命中率太低,增大key_buffer_size) 

bufferpool-hitrate (InnoDB 缓冲池命中率) 

bufferpool-wait-free (InnoDB 缓冲池等待清理的页面) 

log-waits (InnoDB log
等待写入时间,要是那几个等待时间太大,增大log缓冲池大小) 

tablecache-hitrate (Table 缓存命中率) 

table-lock-contention (Table 的lock率) 

index-usage (索引使用率,越大表明索引越好,越小表明索引优化不丰富) 

tmp-disk-tables (目前表创设的多寡) 

slow-queries
(慢查询占全体查询的比值,这一个值若是极高表达mysql数据库优化不够) 

long-running-procs (长时间运营的经过) 

cluster-ndbd-running (mysql集群监察和控制) 

sql (实行1个回去多个数字的SQL,检查mysql是不是能够链接查询)

  举例: nrpe.cfg:
command[check_mysql_health]=/usr/local/nagios/libexec/custom/check_mysql_health
–hostname localhost –socket /tmp/mysql.sock
–username xxxxx –password xxxxx –mode $ARG1$ –warning $ARG2$
–critical $ARG3$    xxx.cfg: define service{         use
                    xxxxxx         host_name               xxxxxx
        service_description     mysql数据库连接数
        check_command
          check_nrpe_args!check_mysql_health!threads-connected!80!120
}   define service{         use                     xxxxx
        host_name               xxxxx         service_description
    mysql数据库innodb缓存命中         check_command
          check_nrpe_args!check_mysql_healthnagios服务端配置及客户的安装配备,监察和控制mysql种种选项。!bufferpool-hitrate }
define service{         use                     xxxxx         host_name
              xxxxx         service_description
    mysql数据库innodb缓冲池等待清理的页         check_command
          check_nrpe_args!check_mysql_health!bufferpool-wait-free }
define service{         use                     xxxxx         host_name
              xxxxx         service_description
    mysql数据库innodblog写入等待时间         check_command
          check_nrpe_args!check_mysql_health!log-waits } define
service{         use                     xxxxx         host_name
              xxxxx
                                                                                  
        service_description     mysql数据库锁模范        check_command
          check_nrpe_args!check_mysql_health!table-lock-contention }
define service{         use                     xxxxx
                                                                                 
        host_name               xxxxx         service_description
    mysql数据库展开文件数         check_command
          check_nrpe_args!check_mysql_health!open-files!80!90 }
define service{         use                     xxxxx
                                                                                
        host_name               xxxxx         service_description
    mysql数据库慢查询率         check_command
          check_nrpe_args!check_mysql_health!slow-queries!5!十 }  
化解。   PS:对 warnging 和 critical 的值 :  十 正是 大于一成报告警察方, 十:
正是低于10%报告警察方, 不填就是暗许的数值。 mode 一个言辞只好二个,   –mode
xxx①  xxx二    : xxx一 生效 –mode xxx一  –mode xxx2  : xxx二 生效

安装mysql之后,须要对mysql服务开始展览督察。 nagios开源自带的check_mysql 对
mysql 的slave 机监察和控制倒是不错。可是…

一.上面小编讲了部分nagios服务端的设置和简易的安插,以往来讲一下服务端监察和控制多台服务器的以及被监察和控制端的装置配置。

 

 

二.nagios 服务端的陈设

nagios开源自带的check_mysql 对 mysql 的slave
机监控倒是不错。但是对数据库主机监察和控制就略显不足了。

nagios开源自带的check_mysql 对 mysql 的slave
机监察和控制倒是不错。可是对数据库主机监察和控制就略显不足了。

(1).首先暗许安装好后,nagios就创建好了3个分组和某些服务,那一个文件正是localhost.cfg文件。今后大家要创制自个儿的文件

 

 

    
把nagios.cfg里面包车型大巴定义localhost.cfg这么些注释掉,然后在拉开hostgroup.cfg,host.cfg,services.cfg那多少个文本。笔者把那四个公文

采用多少个督察插件:check_mysql_health

应用2个监察插件:check_mysql_health

座落conf目录下便于管理。

 

 

997755.com澳门葡京 1

下载和行使情势见:

下载和使用办法见:

注:那么些文件及有关目录原先是从未的,要本人成立并授权给它们

 

 

(2).要创建自身的组就先要在contacts.cfg里面定二个和煦的联络员。

997755.com澳门葡京 2

 

 

Linux-servers是自身要好建的联络人各联系组。

现实监督:

具体监督:

注:假诺不建那一个联系人和组,在前面包车型客车hostgroup.cfg里面无法定义自个儿的主机组员。

 

 

(三).今后来建自身的督察主机、监察和控制服务,监察和控制组。

对于slave 机 ,使用nagios 自带的 check_mysql 监控

对于slave 机 ,使用nagios 自带的 check_mysql 监控

先讲一下他们三者的关联,监察和控制组(hostgroup.cfg)包含了监督主机(host.cfg)包括了监督服务(services.cfg)

 

 

hostgroup.cfg->host.cfg->services.cfg

command[check_mysql_slave]=/usr/local/nagios/libexec/check_mysql
-H localhost -s /tmp/mysql.sock -u root -p xxx -S -w 1
-c 3

command[check_mysql_slave]=/usr/local/nagios/libexec/check_mysql
-H localhost -s /tmp/mysql.sock -u root -p xxx -S -w 1
-c 3

如若有三个不在就会报错。

 

 

自己商讨nagios.cfg那些文件的报错消息是

其间用户和密码有不小概率会更改。延迟一秒警告,延迟3秒报告警察方。

个中用户和密码有希望会改变。延迟1秒警告,延迟3秒报告警察方。

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

 

 

可以看到你哪儿配置错了,作者也是由此那么些来排错的。

check_mysql_health 监控mysql master 服务器

check_mysql_health 监控mysql master 服务器

 

 

 

     1.hostgroup.cfg

/usr/local/nagios/libexec/custom/check_mysql_health
–hostname localhost –socket /tmp/mysql.sock –username root –password xxxxxx –mode xxxxx –warning xxxxx –criticalxxxxx

/usr/local/nagios/libexec/custom/check_mysql_health
–hostname localhost –socket /tmp/mysql.sock –username root –password xxxxxx –mode xxxxx –warning xxxxx –criticalxxxxx

define hostgroup {
hostgroup_name  Linux-servers
alias           Linux-servers
members         CentOS
}

 

 

     2.host.cfg

mode:

mode:

define host {
host_name               CentOS
alias                   server,host-pnp
address                 192.168.1.8
contact_groups          Linux-servers
check_command           check-host-alive
max_check_attempts      5
notification_interval   10
notification_period     24×7
notification_options    d,u,r
}

connection-time (Time to connect to the
server) 

connection-time (Time to connect to the
server) 

    3.services.cfg

uptime (Time the server is
running) 

uptime (Time the server is running) 

define service {
        host_name               CentOS
        use                     local-service,srv-pnp
        service_description     CPU
        check_period            24×7
        max_check_attempts      4
        normal_check_interval   1
        retry_check_interval    1
        contact_groups          Linux-servers
        notification_interval   10
        notification_period     24×7
        notification_options    w,u,c,r
        check_command           check_nrpe!check_cpu
       }
define service {
        host_name               CentOS
        use                     local-service,srv-pnp
        service_description     CPU_load
        check_period            24×7
        max_check_attempts      4
        normal_check_interval   1
        retry_check_interval    1
        contact_groups          Linux-servers
        notification_interval   10
        notification_period     24×7
        notification_options    w,u,c,r
        check_command           check_nrpe!check_load
       }

threads-connected (Number of currently
open connections) 

threads-connected (Number of currently open
connections) 

//services.cfg 那里只交付了多少个,别的的按本人的必要丰盛就行了。

threadcache-hitrate
(线程缓存命中率) 

threadcache-hitrate
(线程缓存命中率) 

重启nagios之后先检查一下有未有不当了,未有的话就重启一下

slave-lag (Seconds behind master) 

slave-lag (Seconds behind master) 

service nagios restart

slave-io-running (Slave io running:
Yes) 

slave-io-running (Slave io running:
Yes) 

997755.com澳门葡京 3

slave-sql-running (Slave sql running:
Yes) 

slave-sql-running (Slave sql running:
Yes) 

地点的图是自家配好后的结果,今后来配置被监察和控制端。

qcache-hitrate
(查询命中率,假设这么些值接近百分之百,说明服务器select的优化就越好) 

qcache-hitrate
(查询命中率,要是那几个值接近百分百,表明服务器select的优化就越好) 

叁.nagios 被监察和控制端的铺排。

qcache-lowmem-prunes
(因为内部存款和储蓄器小,从内部存款和储蓄器删除缓存查询的多少,能够附加query_cache_size,减小lowmem,扩大命中率的优化) 

qcache-lowmem-prunes
(因为内部存款和储蓄器小,从内部存款和储蓄器删除缓存查询的多少,能够叠加query_cache_size,减小lowmem,扩大命中率的优化) 

(1).安装nagios-plugins

keycache-hitrate (MyISAM key
缓存命中率,借义务中率太低,增大key_buffer_size) 

keycache-hitrate (MyISAM key
缓存命中率,假如命中率太低,增大key_buffer_size) 

一旦后边的configure未有检查到mysql那一项,看一下mysql-devel有未有安装,未有设置一下。

bufferpool-hitrate (InnoDB
缓冲池命中率) 

bufferpool-hitrate (InnoDB
缓冲池命中率) 

tar –xvf nagios-plugins-1.4.15.tar.gz

bufferpool-wait-free (InnoDB
缓冲池等待清理的页面) 

bufferpool-wait-free (InnoDB
缓冲池等待清理的页面) 

cd nagios-plugins-1.4.15

log-waits (InnoDB log
等待写入时间,假诺这么些等待时间太大,增大log缓冲池大小) 

log-waits (InnoDB log
等待写入时间,若是那一个等待时间太大,增大log缓冲池大小) 

./configure

tablecache-hitrate (Table
缓存命中率) 

tablecache-hitrate (Table
缓存命中率) 

make && make install

table-lock-contention (Table
的lock率) 

table-lock-contention (Table
的lock率) 

(2).安装nrpe

index-usage
(索引使用率,越大表明索引越好,越小表达索引优化不充裕) 

index-usage
(索引使用率,越大表达索引越好,越小表明索引优化不丰裕) 

tar –xvf nrpe-2.12.tar.gz

tmp-disk-tables (一时半刻表创立的数量) 

tmp-disk-tables (一时半刻表制造的数码) 

cd nrpe-2.12

slow-queries
(慢查询占全数查询的比值,这么些值假使相当高表达mysql数据库优化不够) 

997755.com澳门葡京,slow-queries
(慢查询占全数查询的比值,那么些值假如极高表达mysql数据库优化不够) 

./configure

long-running-procs
(长时间运转的进程) 

long-running-procs (长时间运转的历程) 

make all

cluster-ndbd-running
(mysql集群监控) 

cluster-ndbd-running
(mysql集群监察和控制) 

make install-plugin

sql
(推行七个再次回到1个数字的SQL,检查mysql是或不是足以链接查询)

sql
(试行2个赶回1个数字的SQL,检查mysql是或不是能够链接查询)

make install-daemon

 

 

make install-daemon-config

举例:

举例:

make install-xinetd
//这一个是用xinetd来治本nrpe的运维和破产的,能够拉长也能够不增多。

nrpe.cfg:

nrpe.cfg:

(三).到些被监察和控制的软件装好了,还要装一下snmp来采访数据,安装和布署net-snmp作者已经在前方说过了,那里就背着了。

command[check_mysql_health]=/usr/local/nagios/libexec/custom/check_mysql_health
–hostname localhost –socket /tmp/mysql.sock –username xxxxx –password xxxxx –mode $ARG1$ –warning $ARG2$ –critical
$ARG3$ 

command[check_mysql_health]=/usr/local/nagios/libexec/custom/check_mysql_health
–hostname localhost –socket /tmp/mysql.sock –username xxxxx –password xxxxx –mode
$ARG1$ –warning $ARG2$ –critical $ARG3$ 

昨日来安插一下监督项(nrpe.cnf)

 

 

997755.com澳门葡京 4

xxx.cfg:

xxx.cfg:

log_facility=daemon
pid_file=/var/run/nrpe.pid
server_port=5666
nrpe_user=nagios
nrpe_group=nagios
allowed_hosts=192.168.1.7

define service{

define service{

dont_blame_nrpe=1
debug=1
command_timeout=30
connection_timeout=300

        use
                    xxxxxx

        use
                    xxxxxx

command[check_http]=/usr/local/nagios/libexec/check_http -I
localhost -u /index.php -t 60
command[check_disk]=/usr/local/nagios/libexec/check_disk -w 5% -c 3%
-A -i ‘/dev/shm’
command[check_traffic]=/usr/local/nagios/libexec/check_traffic.sh -V
2c -C nagios -H localhost -I 2 -w 12,30 -c 15,35 -M -b -6
command[check_cpu]=/usr/local/nagios/libexec/check_cpu.sh
command[check_mem]=/usr/local/nagios/libexec/check_mem.sh
command[check_ips]=/usr/local/nagios/libexec/ip_conn.sh  400 600
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,8
-c 30,25,20
command[check_ftp]=/usr/local/nagios/libexec/check_ftp 127.0.0.1 -w
10 -c 60

        host_name
              xxxxxx

        host_name
              xxxxxx

此地有几个是未有的要和煦去网络找,然后下载下来放到/usr/local/nagios/libexec/上边并给实践权限,具有者nagios。(check_traffic.sh,check_cpu.sh,

        service_description
    mysql数据库连接数

        service_description
    mysql数据库连接数

check_mem.sh,ip_conn.sh)

        check_command
          check_nrpe_args!check_mysql_health!threads-connected!80!120

        check_command
          check_nrpe_args!check_mysql_health!threads-connected!80!120

(肆)监察和控制mysql数据库和长距离主机还亟需在服务端的”commands.cfg”配置一下。

}

}

997755.com澳门葡京 5

 

 

define command{
        command_name check_nrpe
        command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

define service{

define service{

define command {
       command_name     check_mysql
       command_line     $USER1$/check_mysql -H $HOSTADDRESS$ -unagdb
-pwww -d nagdb
       }

        use
                    xxxxx

        use
                    xxxxx

define command{
      command_name      check_mysql_health
      command_line      $USER1$/check_mysql_health -hostname
$HOSTADDRESS$ -username nagdb -password www -warning  $ARG1$ -critical
$ARG2$ -mode threads-connected
      }

        host_name
              xxxxx

        host_name
              xxxxx

任由找2个地点放置commands.cfg文件里就行了。

        service_description
    mysql数据库innodb缓存命中

        service_description
    mysql数据库innodb缓存命中

到此就布置完了

        check_command
          check_nrpe_args!check_mysql_health!bufferpool-hitrate

        check_command
          check_nrpe_args!check_mysql_health!bufferpool-hitrate

 

}

}

摘自 HY_51CEO 的BLOG

define service{

define service{

二.nagios 服务端的配置…

        use
                    xxxxx

        use
                    xxxxx

        host_name
              xxxxx

        host_name
              xxxxx

        service_description
    mysql数据库innodb缓冲池等待清理的页

        service_description
    mysql数据库innodb缓冲池等待清理的页

        check_command
          check_nrpe_args!check_mysql_health!bufferpool-wait-free

        check_command
          check_nrpe_args!check_mysql_health!bufferpool-wait-free

}

}

define service{

define service{

        use
                    xxxxx

        use
                    xxxxx

        host_name
              xxxxx

        host_name
              xxxxx

        service_description
    mysql数据库innodblog写入等待时间

        service_description
    mysql数据库innodblog写入等待时间

        check_command
          check_nrpe_args!check_mysql_health!log-waits

        check_command
          check_nrpe_args!check_mysql_health!log-waits

}

}

define service{

define service{

        use
                    xxxxx

        use
                    xxxxx

        host_name               xxxxx
                                                                                  

        host_name               xxxxx
                                                                                  

        service_description
    mysql数据库锁范例

        service_description
    mysql数据库锁表率

        check_command
          check_nrpe_args!check_mysql_health!table-lock-contention

        check_command
          check_nrpe_args!check_mysql_health!table-lock-contention

}

}

define service{

define service{

        use                     xxxxx
                                                                                 

        use                     xxxxx
                                                                                 

        host_name
              xxxxx

        host_name
              xxxxx

        service_description
    mysql数据库打开文件数

        service_description
    mysql数据库打开文件数

        check_command
          check_nrpe_args!check_mysql_health!open-files!80!90

        check_command
          check_nrpe_args!check_mysql_health!open-files!80!90

}

}

define service{

define service{

        use                     xxxxx
                                                                                

        use                     xxxxx
                                                                                

        host_name
              xxxxx

        host_name
              xxxxx

        service_description
    mysql数据库慢查询率

        service_description
    mysql数据库慢查询率

        check_command
          check_nrpe_args!check_mysql_health!slow-queries!5!10

        check_command
          check_nrpe_args!check_mysql_health!slow-queries!5!10

}

}

 

 

搞定。

搞定。

 

 

PS:对 warnging 和 critical 的值 :  十即是 大于1/10报告警方, 拾: 正是自愧不比百分之拾报告警察方, 不填正是暗中认可的数值。

PS:对 warnging 和 critical 的值 :  10正是 大于一成报告警察方, 拾: 正是紧跟于百分之10报告警方, 不填正是私下认可的数值。

mode 1个言语只可以四个,

mode 贰个说话只好3个,

 

 

–mode xxx1  xxx2    : xxx1 生效

–mode xxx1  xxx2    : xxx1 生效

–mode xxx1  –mode xxx2  : xxx2
生效

–mode xxx1  –mode xxx2  : xxx2
生效

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*
*
Website