Zabbix监控Haproxy解决方案

#!/bin/bash
[ $1 = ‘http_server‘ ] && WEBGROUP=$1,FRONTEND || WEBGROUP=$1,BACKEND

case "$2" in

"comp" )
IN=`/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $52}‘`
OUT=`/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $53}‘`
echo "scale=4;($IN-$OUT)/$IN*100" | bc
;;

"qcur" )
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $3}‘
;;

"qmax" )
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $4}‘
;;

"scur")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $5}‘
;;

"smax")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $6}‘
;;

"slim")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $7}‘
;;

"stot")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $8}‘
;;
"bin")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $9}‘
;;
"bout")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $10}‘
;;
"dreq")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $11}‘
;;
"dresp")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $12}‘
;;
"ereq")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $13}‘
;;
"econ")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $14}‘
;;
"eresp")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $15}‘
;;
"eretr")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $16}‘
;;
"eredis")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $17}‘
;;
"status")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $18}‘
;;
"weight")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $19}‘
;;
"act")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $20}‘
;;
"bck")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $21}‘
;;
"chkfail")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $22}‘
;;
"chkdown")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $23}‘
;;
"lastchg")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $24}‘
;;
"downtime")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $24}‘
;;
"qlimit")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $26}‘
;;
"pid")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $27}‘
;;
"iid")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $28}‘
;;
"sid")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $29}‘
;;
"throttle")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $30}‘
;;
"lbtot")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $31}‘
;;
"tracked")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $32}‘
;;
"tpye")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $33}‘
;;
"rate")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $34}‘
;;
"rate_lim")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $35}‘
;;
"rate_max")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $36}‘
;;
"check_status")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $37}‘
;;
"check_code")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $38}‘
;;
"check_duration")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $39}‘
;;
"hrsp_1xx")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $40}‘
;;

"hrsp_2xx")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $41}‘
;;
"hrsp_3xx")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $42}‘
;;
"hrsp_4xx")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $43}‘
;;
"hrsp_5xx")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $44}‘
;;
"hrsp_other")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $45}‘
;;
"hanafail")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $46}‘
;;
"req_rate")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $47}‘
;;
"req_rate_max")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $48}‘
;;
"req_tot")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $49}‘
;;
"cli_abrt")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $50}‘
;;
"srv_abrt")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $51}‘
;;
"comp_in")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $52}‘
;;
"comp_out")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $53}‘
;;
"comp_byp")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $54}‘
;;
"comp_rsp")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $55}‘
;;
"lastsess")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $56}‘
;;
"last_chk")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $57}‘
;;
"last_agt")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $58}‘
;;
"qtime")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $59}‘
;;
"ctime")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $60}‘
;;
"rtime")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $61}‘
;;
"ttime")
/bin/echo "show stat"|/usr/sbin/socat /var/run/haproxy.sock stdio|awk -v n=$WEBGROUP -F, ‘$0~n{print $62}‘
;;
*)
/bin/echo ‘error‘
;;

esac
时间: 2024-10-08 10:17:38

Zabbix监控Haproxy解决方案的相关文章

使用zabbix监控HAProxy的状态信息

我们使用HAProxy+Keepalived的方式部署游戏服务器前端负载均衡和高可用,因此需要对HAProxy的监控状况进行实时监控. 本文使用的HAProxy版本是1.4.24 参考官方文档http://cbonte.github.io/haproxy-dconv/configuration-1.4.html 中的 9. Statistics and monitoring 一 监控原理描述

Zabbix监控解决方案

思通运维监控主要用来监控IT 基础设施组件的可用性和性能.监控项目是不受限制的,并且可以对IT 基础设施健康状态进行复杂分析.通过确定IT 系统问题的“来源”,使用户快速响应故障来降低宕机成本. 网络运维自动化:思通运维的远程命令是一种强大的可实现智能主动式监控的机制.如果你使用远程命令配置了一个指令,那么思通运维将会自动执行预定义好的脚本来解决问题. 采用开源解决方案:Zabbix监控解决方案由于其真正的可扩展性,高可用性,易用性,灵活性,极大地降低了企业的总成本,是目前最受欢迎的解决方案.

Xtradb+Haproxy高可用数据库集群(四)集群zabbix监控篇

xtradb cluster集群zabbix监控 监控指标 官网参考地址: https://www.percona.com/doc/percona-xtradb-cluster/5.6/manual/monitoring.html 1.报警参数 每个集群节点状态: wsrep_cluster_status != Primary wsrep_connected != ON wsrep_ready != ON 复制冲突过高 wsrep_local_cert_failures wsrep_local_

zabbix监控平台部署详细文档

监控系统介绍 一:监控介绍 1.监控软件介绍:使用 SNMP 协议获取主机 CPU.内存.磁盘.网卡流量等数据.用脚本将获取到的 SNMP 数据存入数据库中,然后再使用一种名为 MRTG 的软件根据获取的数据绘制图表来分析数据的变化.MRTG(Multi Router Traffic Grapher),顾名思义,这款软件最初是设计用于监控网络链路流量负载的.它可以用过 SNMP 获取到设备的流量信息,并根据这些信息绘制成图表并保存为 PNG 格式的图片,再将这些 PNG 图片以HTML 页面的方

Zabbix监控之一----zabbix基础和安装

一.Zabbix基本概念 1.zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.它能监视各种网络参数,保证服务器系统的安全运营:并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题. zabbix由2部分构成,zabbixserver与zabbix agent. 1.Zabbix Server:部署在主控机,通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,负责接收Agent发送报告信息的核心组件

zabbix监控之二----Zabbix受控端及监控项

4.station32受控端安装zabbix 4.1:下载所需要用的的程序包:只有受控端是主动模式时才需要装zabbix-sender [[email protected]]# yum -y localinstall \ zabbix-2.2.3-1.el6.x86_64.rpm\               # 主程序server端/agent端都需要 zabbix-agent-2.2.3-1.el6.x86_64.rpm\         # 受控端安装agent程序 zabbix-send

linux 下搭建zabbix 监控

一.什么是zabbix 1.zabbix的简介 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. 能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题. zabbix 由2部分构成,zabbix server 与可选组件zabbix agent. zabbix server 可以通过SNMP,zabbix agent ,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可

zabbix监控系统部署

一. zabbix简介: zabbix是完全开源的工具,整合了cacti和nagios等特性 cacti:snmp nagios:linux主机:nrpe    设备:snmp 附:SNMP(udp 161  udp 162) 众多网络工具都支持此协议,比如常见路由交换,常见OS 其既可以做管理端也可以做被管理端 snmp协议大致有3个版本分别是v1 v2 v3 无论是v1 和 v2 的安全性是比较差的,因为传输是明文的, V3的认证密码用MD5/SHA摘要算法加密 很多工具支持网络管理的功能,

Linux之部署Zabbix监控系统

一. zabbix简介: zabbix是完全开源的工具,整合了cacti和nagios等特性 附:SNMP(udp 161  udp 162) 众多网络工具都支持此协议,比如常见路由交换,常见OS 其既可以做管理端也可以做被管理端 snmp协议大致有3个版本分别是v1 v2 v3 无论是v1 和 v2 的安全性是比较差的,因为传输是明文的, V3的认证密码用MD5/SHA摘要算法加密 很多工具支持网络管理的功能,而对于非网络设备(操作系统),可以完全抛开snmp这种不安全的架构来实现监控的.所以