heartbeat如何监控程序_Nagios监控Heartbeat
Heartbeat架好后,我们就需要监控起来喽,下面我们就来了解下怎么监控。
首先来了解下几个命令,这几个命令在heartbeat安装后会自动加上,我们的监控脚本就用到这几个命令。
[root@usvr-210 libexec]# which cl_status
/usr/bin/cl_status
[root@usvr-210 libexec]# cl_status listnodes #列出当前heartbeat集群中的节点
192.168.3.1
usvr-211
usvr-210
[root@usvr-210 libexec]# cl_status nodestatus usvr-211 #列出节点的状态
active
[root@usvr-210 libexec]# cl_status nodestatus 192.168.3.1 #列出节点的状态
ping
我们的check_heartbeat.sh原理就是列出集群中所有节点,并监测所有节点的状态是否正常,我们实验的节点状态为ping和active。
当active+ping的个数为0时critical
当active+ping的个数小于节点总个数时为warn
当active+ping的个数等于节点总个数时为ok
[root@usvr-210 libexec]# cat check_heartbeat.sh
#!/bin/bash
# Author: Emmanuel Bretelle
# Date: 12/03/2010
# Description: Retrieve Linux HA cluster status using cl_status
# Based on http://www.randombugs.com/linux/howto-monitor-linux-heartbeat-snmp.html
#
# Autor: Stanila Constantin Adrian
# Date: 20/03/2009
# Description: Check the number of active heartbeats
# http://www.randombugs.com
# Get program path
REVISION=1.3
PROGNAME=`/bin/basename $0`
PROGPATH=`echo $0 | /bin/sed -e 's,[\\/][^\\/][^\\/]*$,,'`
NODE_NAME=`uname -n`
CL_ST='/usr/bin/cl_status'
#nagios error codes
#. $PROGPATH/utils.sh
OK=0
WARNING=1
CRITICAL=2
UNKNOWN=3
usage () {
echo "\
Nagios plugin to heartbeat.
Usage:
$PROGNAME
$PROGNAME [--help | -h]
$PROGNAME [--version | -v]
Options:
--help -l Print this help information
--version -v Print version of plugin
"
}
help () {
print_revision $PROGNAME $REVISION
echo; usage; echo; support
}
while test -n "$1"
do
case "$1" in
--help | -h)
help
exit $STATE_OK;;
--version | -v)
print_revision $PROGNAME $REVISION
exit $STATE_OK;;
# -H)
# shift
# HOST=$1;;
# -C)
# shift
# COMMUNITY=$1;;
*)
echo "Heartbeat UNKNOWN: Wrong command usage"; exit $UNKNOWN;;
esac
shift
done
$CL_ST hbstatus > /dev/null
res=$?
if [ $res -ne 0 ]
then
echo "Heartbeat CRITICAL: Heartbeat is not running on this node"
exit $CRITICAL
fi
declare -i I=0
declare -i A=0
NODES=`$CL_ST listnodes`
for node in $NODES
do
status=`$CL_ST nodestatus $node`
let I=$I+1
# if [ $status == "active" ] 默认情况下检测active状态的个数,但是ping状态也为正常状态,因此改成如下条件。
if [ $status == "active" -o $status == "ping" ]
then
let A=$A+1
fi
done
if [ $A -eq 0 ]
then
echo "Heartbeat CRITICAL: $A/$I"
exit $CRITICAL
elif [ $A -ne $I ]
then
echo "Heartbeat WARNING: $A/$I"
exit $WARNING
else
echo "Heartbeat OK: $A/$I"
exit $OK
fi
我们在nagios客户端,也就是我们的lvs集群usvr-210,usvr-211,我们通过nagios服务器端的check_nrpe来获取监控信息。
naigos客户端
1.先将脚本复制到nagios命令目录下并修改相应权限
cp check_heartbeat.sh /usr/local/nagios/libexec/
chmod a+x check_heartbeat.sh
chown nagios.nagios check_heartbeat.sh
2.在naigos客户端的配置文件中加入监控命令。
vim /usr/local/nagios/etc/nrpe.cfg
command[check_heartbeat]=/usr/local/nagios/libexec/check_heartbeat.sh
3.重新载入配置文件。
service xinetd reload
nagios服务端
1.加入相关监控服务
define service {
use local-service
service_description heartbeat-lvs-master
check_command check_nrpe!check_heartbeat
service_groups heartbeat_services
host_name usvr-210
check_interval 5
notifications_enabled 1
notification_interval 30
contact_groups admins
}
define service {
use local-service
service_description heartbeat-lvs-slave
check_command check_nrpe!check_heartbeat
service_groups heartbeat_services
host_name usvr-211
check_interval 5
notifications_enabled 1
notification_interval 30
contact_groups admins
}
2.检查并载入配置文件
nagioscheck
service nagios reload
监控如下:
ok,我们的heartbeat监控完成了。
--------------------------------------分割线 --------------------------------------
--------------------------------------分割线 --------------------------------------
heartbeat如何监控程序_Nagios监控Heartbeat相关推荐
- TIA博途V16上载程序后,在线无法监控程序,监控图标灰色,时间戳不一样如何解决?
TIA博途V16上载程序后,在线无法监控程序,监控图标灰色,时间戳不一样如何解决? 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到网站. 大家在调试项目时 ...
- heartbeat如何监控程序_一文看懂MyCAT 命令行监控命令,监控调优必备
概述 系统开发中,数据库是非常重要的一个点.除了程序的本身的优化,如:SQL语句优化.代码优化,数据库的处理本身优化也是非常重要的.主从.热备.分表分库等都是系统发展迟早会遇到的技术问题问题.Myca ...
- heartbeat如何监控程序_heartbeat+drbd监控脚本(自动发现问题,并邮件通知)
生产环境有一些服务器是heartbeat+drbd做的高可用(参考:https://blog.51cto.com/net881004/2117869),但是有时候由于各种原因会产生问题(比如脑裂),而 ...
- mysql heartbeat lvs_CentOS 6.3 Mysql+heartbeat+drbd+LVS 的安装和配置(2)
yum install resource-agents pacemaker 12. 修改heartbeat配置文件(以下步骤需要在2台node上执行) 复制配置文件,资源文件,认证密钥文件 cp /u ...
- nagios mysql 监控_nagios监控mysql
说明:被监控客户端要先安装mysql,必须安装mysql-devel,再安装nagios-plugins,nrpe a.进入mysql,新建一个nagiosdb数据库,并授权 mysql –uroot ...
- nagios监控mysql服务_nagios监控mysql及邮件报警
1.使用默认监控命令check_http命令+相关的参数来实现,如下: 在command.cfg添加如下关键词监控命令:check_http_word,参数解析:-I指定IP或者主机名,-u指定URL ...
- nagios监控mysql服务_nagios监控mysql服务
配置被监控端 1.安装check_mysql插件 nagios 监控 mysql 需要用到 check_mysql 和 check_mysql_query 两个插件. 安装完成 nagios 后,发现 ...
- nagios mysql 并发_nagios监控mysql的connections和processlist
监控connections和processlist的脚本下载地址: 1.把脚本上传到/usr/local/nagios/libexec目录下 /usr/local/nagios/libexec/che ...
- mysql 浮动ip_MySQL配置HeartBeat实现心跳监控和浮动IP
1. 初始化环境配置 /sbin/chkconfig --add mysqld /sbin/chkconfig mysqld on ln -s /usr/local/mysql/bin/mysql / ...
- mysql实现心跳表_MySQL配备HeartBeat实现心跳监控和浮动IP
mysql配置HeartBeat实现心跳监控和浮动IP 1. 初始化环境配置 /sbin/chkconfig --add mysqld /sbin/chkconfig mysqld on ln -s ...
最新文章
- c语言单片机求最小公倍数,单片机常用的14个C语言算法,要熟记在心哦!
- leetcode算法题--矩阵中的幸运数
- 计算机组成原理模拟试题,计算机组成原理模拟试题及答案
- sqlserver导入execl数据ACE.OLEDB.12.0错误
- 模态窗口插件之Jbox
- lightoj1234 打表技巧:分块打表
- 两种分布式锁实现方案(一)
- 这些神奇的 QQ 你还记得几个?
- 计算机辅助化学教育,在计算机辅助下的化学教学_计算机辅助制造
- voyage 虚拟机安装过程
- Java面试笔试考点精讲视频教程
- 用unity开发贪吃蛇,勾起我童年乐趣的小游戏
- 在hive3.1.2中插入数据,报could not find or load main class org.apache.hadoop.mapred.YarnChild
- 为啥不用美元作为IPFS体系的激励?
- 告别流氓播放器不让截屏,win10自带截屏快捷键
- 【ARTS】01_06_左耳听风-20181217~1223
- 利用MapReduce计算运营商上行下行流量
- IIS之web服务器部署
- 平头哥玄铁CPU调试系统介绍
- HR看到个华为 21级程序员的简历,月薪27w,那是什么概念!
热门文章
- esir openwrt x86_惠普 小欧S01 伪开箱及爱快 虚拟机+openwrt 软路由安装教程
- 写论文需要使用一个Github上的模型取数据,具体要求在代码里
- CKEditor5系列二:创建简单插件
- 3G来了,我们能干点啥软件?(转)
- 打开FOXMAIL常见错误提示“Message format error”
- 【电脑使用】误删Win10自带应用如何恢复
- java中国象棋棋子走法,《中国象棋对弈》象棋规则 棋子的走法
- 指数基金的分类以及投资方法
- 用CSS3实现无图片的百度Logo
- 遥感数据存储格式 ----BSQ、 BIL、BIP