本站所有文章均为原创,如对您有帮助,恳请帮忙点击任何一处广告
  • 首页
  • Zabbix
  • 【Zabbix监控教程】LLD低级别自动发现配置教程

【Zabbix监控教程】LLD低级别自动发现配置教程

发布:TangLu2019-5-21 14:52分类: Zabbix 标签: zabbix

低级别自动发现简称为LLD,本文以监控多实例MySQL为例进行Zabbix低级别自动发现配置

1、创建获取每个MySQL实例端口的脚本。该脚本返回的数据必须是JSON格式,而且返回值需要设置为低级别发现宏的格式,如{#MYSQLPORT}:

vi /usr/local/shell/discovery_mysql.sh
#!/bin/bash
mysql() {
  port=($(sudo netstat -tpln | awk -F "[ :]+" '/[m]ysql/' | awk -F: '{print $4}'))
  printf '{\n'
  printf '\t"data":[\n'
  for key in ${!port[@]}
    do
      if [[ "${#port[@]}" -gt 1 && "${key}" -ne "$((${#port[@]}-1))" ]];then
        socket=`ps aux|grep ${port[${key}]}|grep -v grep|awk -F '=' '{print $10}'|cut -d ' ' -f 1`
        printf '\t {\n'
        printf "\t\t\t\"{#MYSQLPORT}\":\"${port[${key}]}\"},\n"
      else [[ "${key}" -eq "((${#port[@]}-1))" ]]
        socket=`ps aux|grep ${port[${key}]}|grep -v grep|awk -F '=' '{print $10}'|cut -d ' ' -f 1`
        printf '\t {\n'
        printf "\t\t\t\"{#MYSQLPORT}\":\"${port[${key}]}\"}\n"
      fi
    done
  printf '\t ]\n'
  printf '}\n'
}
$1

#脚本运行结果
{
	"data":[
	 {
			"{#MYSQLPORT}":"3306"},
	 {
			"{#MYSQLPORT}":"3307"},
	 {
			"{#MYSQLPORT}":"3310"},
	 {
			"{#MYSQLPORT}":"3311"}
	 ]
}



2、创建两个自定义key,一个key就是使用上面的脚本来获取MySQL多实例的端口信息,并传给低级别发现宏。另一个脚本是用来获取数据库状态。在后面设置中需要结合2个key来获取每个实例的数据。

UserParameter=discovery_mysql[*],/usr/local/shell/discovery_mysql.sh $1
UserParameter=mysql_status[*],mysql  -uroot -p123456 -P $1  -e "show global status"|grep "\<$2\>"|cut  -f2


3、在模板中创建自动发现规则,点击Discovery rules-->Create discovery rule

lld1.png



4、在创建规则页面填写规则名称和key,这个key的名字需要和第2步中的一致,比如discovery_mysql。filter选项卡如果不需要进行过滤的话不用配置

lld2.png


5、为低级别发现规则去创建Item prototypes,也就是监控原形。这里创建出来的key就会对每个发现出来的MySQL实例生效,比如创建了一个监控MySQL服务是否挂掉的key,这个key会生效于第4步中发现出来的所有端口。

lld3.png


6、最后使用2个key的组合来获取数据。这里的Com_begin就是上面第二个key的$2

lld.png


7、使用zabbix_get命令查询是否能正常监控各个端口

zabbix_get -s 192.168.1.100 -k mysql.status[3306,Com_begin]  #取3306端口
zabbix_get -s 192.168.1.100 -k mysql.status[3307,Com_begin]  #取3307端口


温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!
et_highlighter51
版权所有:《Linux运维技术学习站点
文章标题:《【Zabbix监控教程】LLD低级别自动发现配置教程
除非注明,文章均为 《Linux运维技术学习站点》 原创
转载请注明本文短网址:http://www.linuxe.cn/post-480.html  [生成短网址]

已有 0/580 人参与

发表评论:

欢迎分享Linux运维技术学习站点

欢迎使用手机扫描访问本站,还可以关注微信哦~