zabbix 进程监控和配置钉钉告警、自定义Key
  TEZNKK3IfmPf 2023年11月12日 32 0

1 添加主机

zabbix 版本比较旧生产的版本,RPM方式安装:zabbix-server安装和入门

zabbix 进程监控和配置钉钉告警、自定义Key

1.1.配置要监控主机的信息

zabbix 进程监控和配置钉钉告警、自定义Key

1.2.添加监控信息模板

zabbix 进程监控和配置钉钉告警、自定义Key

2 进程监控


总的来说,配置一个完整的监控流程如下:

1.创建监控项,即配置要监控的指标,如内存的使用率,CPU的使用率,进程的运行状况等,配了监控项后就会定时收集机器的配置信息,然后等待zabbix server收集(zabbix agent被动模式)。
2.创建触发器,触发器将监控项收集的数据通过触发器表达式进行评估。
在触发器表达式中我们可以定义哪些值范围是合理,哪些是不合理的,如果出现不合理的值,触发器会把状态改为PROBLEM,接下来就到了报警以及发邮件。
3.创建动作,在zabbix中动作的意思是触发器触发后要进行的操作,一般是通过配置给相关负责人发送邮件,短信等通知。

2.1.创建监控项

创建监控项 ,对于 backup-hdp 机器,监控 helloSleep.sh  脚本运行启动的进程

zabbix 进程监控和配置钉钉告警、自定义Key

配置 ===》主机 ===》监控项

zabbix 进程监控和配置钉钉告警、自定义Key

选择 proc.num[,,,]  这个 Key

zabbix 进程监控和配置钉钉告警、自定义Key

说明:

proc.num[<name>,<user>,<state>,<cmdline>] 监控用户某些状态的进程的数量

  • name - 进程名称 (默认“all processes”) 
  • user - 用户名 (默认 “all users”) 
  • state - 可用值: all (默认), run,sleep, zomb 
  • cmdline - 命令行过滤(正则表达时)
[root@zabbix conf]# zabbix_get -s 172.16.76.222 -p 10050 -k "proc.num[,,,helloSleep]"

zabbix 进程监控和配置钉钉告警、自定义Key

2.2.创建触发器

配置 ===》主机 ===》触发器, 可以在 表达式构造器中  进行测试

zabbix 进程监控和配置钉钉告警、自定义Key

2.3.报警媒介类型创建

zabbix 进程监控和配置钉钉告警、自定义Key

管理===》报告媒介类型===》报警媒介类型信息填写

zabbix 进程监控和配置钉钉告警、自定义Key

脚本传入三个参数:发送消息、dingURL、告警人的手机号

#!/usr/bin/python
# -*- coding: utf-8 -*-
import requests
import json
import sys
import os

headers = {'Content-Type': 'application/json;charset=utf-8'}

def msg(text,api_url,phone):
    json_text= {
     "msgtype": "text",
        "text": {
            "content": text
        },
        "at": {
         "atMobiles": phone,
        }
    }
    print requests.post(api_url,json.dumps(json_text),headers=headers).content

if __name__ == '__main__':
    text = sys.argv[1]
    api_url = sys.argv[2]
    phone = "["+sys.argv[3]+"]"
    msg(text,api_url,phone)

告警脚本路径配置(压缩包安装和rpm  安装的路径不一样,告警脚本路径配置了就行),如果 python 库 报错则 下载所需要的 request、json、sys 库

[root@zabbix conf]# cat /usr/local/etc/zabbix_server.conf | grep Alert
### Option: StartAlerters
#       Alerters send the notifications created by action operations.
# StartAlerters=3
### Option: AlertScriptsPath
AlertScriptsPath=/home/zabbix/alertscripts/

2.4.用户创建

2.4.1.用户信息填写

管理 ===》用户 ===》选择admin用户

zabbix 进程监控和配置钉钉告警、自定义Key

2.4.2.添加报警媒介

报警媒介选择创建好的backup-hdp 钉钉告警

zabbix 进程监控和配置钉钉告警、自定义Key

2.4.3.添加报警媒介

zabbix 进程监控和配置钉钉告警、自定义Key

2.4.4.用户权限设置

zabbix 进程监控和配置钉钉告警、自定义Key

2.5.创建动作

创建动作的事件源为 触发器, 触发器的条件满足则动作发生。

zabbix 进程监控和配置钉钉告警、自定义Key

2.5.1.动作配置

zabbix 进程监控和配置钉钉告警、自定义Key

2.5.2.动作中的操作配置

zabbix 进程监控和配置钉钉告警、自定义Key

2.5.3.定义恢复操作

zabbix 进程监控和配置钉钉告警、自定义Key

3 测试


1.启动 helloSleep.sh 脚本

zabbix 进程监控和配置钉钉告警、自定义Key

2.查看进程是否启动

zabbix 进程监控和配置钉钉告警、自定义Key

3.在zabbix中 查看进程状态信息

zabbix 进程监控和配置钉钉告警、自定义Key

4.钉钉告警信息发出

zabbix 进程监控和配置钉钉告警、自定义Key

4 自定义Key


4.1zabbix客户端key说明

zabbix-agent中的key 说明中文版

zabbix 进程监控和配置钉钉告警、自定义Key

比如:vm.memory.size[pused]

# 内存的使用率
[root@hdp104 ~]# zabbix_get -s 192.168.2.154 -k vm.memory.size[pused]
92.499053
[root@hdp104 ~]# 

4.2.zabbix-agent 配置conf

自定义key  ,监控java进程

[root@backup-hdp etc]# cat /usr/local/zabbix/etc/zabbix_agentd.conf | grep process.sh
UserParameter=java.process.status[*],/bin/bash /home/zabbix/monitor/process.sh $1

配置 完conf  后,重新启动 zabbix-agent,然后就可以使用该 Keyle

4.3.zabbix中使用

zabbix 进程监控和配置钉钉告警、自定义Key

后面就可以使用该 Key 进行 Java 进程的监控, 其中 java.process.status[xx] 中的 内容可以是  ps -ef  | grep xxx进程中的任何 信息, 只要是唯一可区分的值就行

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月12日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2023年11月14日   51   0   0 监控
  TEZNKK3IfmPf   2023年11月14日   48   0   0 zabbixnginx监控
  TEZNKK3IfmPf   2023年11月14日   23   0   0 监控mysql
  TEZNKK3IfmPf   2023年11月14日   22   0   0 zabbix乱码
TEZNKK3IfmPf