1、zabbix的自动发现
这里的自动发现,所显示出来的是规则的上自动了现

然后 可以对其内容进行相关的配制,如时间或周期

注意:对于单个主机的规则,可以自行添加或删除, 但对于已经添加好了的规则,若需要修改那么,就只有到模板里面进行相关设置。

 

2、自定义添加监控项目,监控项目都是针对于客户机而言的,一般都是对客户机进行配制

先在客户机创建一个脚本加入以下内容:mkdir /etc/zabbix/sh; vim /etc/zabbix/sh/estab.sh

#!/bin/bash
##获取80端口并发连接数
netstat -ant |grep ':80 ' |grep -c ESTABLISHED
改变权限:chmod 755 /etc/zabbix/sh/estab.sh
然后再编辑配制文件:vim /etc/zabbix/zabbix_agentd.conf
改成如下:

PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=47.**.***.***
ServerActive=47.**.***.***
Hostname=os72
Include=/etc/zabbix/zabbix_agentd.d/*.conf
UnsafeUserParameters=1
UserParameter=nginx.estab.count[*],/etc/zabbix/sh/estab.sh

 

然后再重启zabbix-agent服务:systemctl restart zabbix-agent.service

然后,再测试自定义的脚本是否有效:zabbix_get -s **.***.***.*** -p 10050 -k 'nginx.estab.count'

zabbix_get -s IP -p 10050 -k 'name.sh'

最后,就到zabbix服务器上进行相关配制 

然后再新建一个监控项:

 

添加完成后,再到图形界面,配制一个图形:

监控项配制好了,还可以创建触发器:

 

流程:监控项,在客户端自定义要获取某个服务的是一个值,然后给权限,最后在服务端,进行相关的监控项的配制。

 

3、配置邮件告警

 

 邮箱配制以163邮箱为例进入邮箱进行相关设置:

 

然后访问监控服务器页面,进行脚本及参数的配制:

 

然后,就去服务器创建发邮箱的脚本(即客户机出问题了,由服务器发邮件报警):

然后编辑脚本:vim /etc/zabbix/sh/mail.py  

加入:

#!/usr/bin/env python
#-*- coding: UTF-8 -*-
import os,sys
reload(sys)
sys.setdefaultencoding('utf8')
import getopt
import smtplib
from email.MIMEText import MIMEText
from email.MIMEMultipart import MIMEMultipart
from subprocess import *
def sendqqmail(username,password,mailfrom,mailto,subject,content):
gserver = 'smtp.163.com'
gport = 25
try:
msg = MIMEText(unicode(content).encode('utf-8'))
msg['from'] = mailfrom
msg['to'] = mailto
msg['Reply-To'] = mailfrom
msg['Subject'] = subject

#啊里云用 smtp = smtplib.SMTP_SSL(gserver,465)

#其它的就用正常的

smtp = smtplib.SMTP(gserver,25)
smtp.set_debuglevel(0)
smtp.ehlo()
smtp.login(username,password)
smtp.sendmail(mailfrom, mailto, msg.as_string())
smtp.close()
except Exception,err:
print "Send mail failed. Error: %s" % err
def main():
to=sys.argv[1]
subject=sys.argv[2]
content=sys.argv[3]
sendqqmail('mail_name@163.com','password','mail_name@163.com',to,subject,content)
if __name__ == "__main__":
main()

注意阿里云的服务器不支持:smtplib.SMTP(smtp_server, 25),

若用阿里云的服务器,这里改成:smtp = smtplib.SMTP_SSL(gserver,465)


 

 

然后再测试:python mail.py to_email_name@qq.com "this is a test"  "use python script  to send e-mail"

 

再到服务器zabbix页面进行配制创建用户(即出现问题了报警信息发给谁):

 

最后再配制权限: 这里所配制的权限都是针对于组而言的,所以配制的都是用户组

 

最后再进行查看:

 

 这时,整个配制有了:
在服务器页面上设置了报警的媒介(可以有N个) 、然后在服务器上设置了对应的脚本、再然后又在服务器页面上设置了用哪个报警媒介脚本,

并且设置了用户及权限(即出现问题后通知谁)。 但最后还差的就是一个动作(即一个问题的评判标准,在什么情况下执行脚本发邮件)
动作配制:

操作配制:

 

恢复操作也同样的设置:

最后就进行测试:
我们添加一个用户看一下:

查看:

再查看邮件:

 最后,对这于这几个操作的个人理解:

到此zabbix邮件报警配制完成。

小总结:
1、先配制报警媒介
2、根据报警媒体,设置相应的脚本
3、设置脚本执行后,配制报告给予对象 (通知用户)
4、设置执行脚本的前提条件(即 要执行该脚本需要在什么条件下)
5、根据不同的执行条件,进行不同的动作(如 发邮件、重启等等)

zabbix的自动发现、自定义添加监控项目、配置邮件告警的更多相关文章

  1. Zabbix实现自动发现端口并监控

    1.新建客户端需要的脚本 # vim discovertcpport.sh #!/bin/bash portarray=(`sudo netstat -tnlp|egrep -i "$1&q ...

  2. zabbix实现自动发现功能添加磁盘监控

    zabbix实现对磁盘动态监控 - Lenwood 原文  http://www.cnblogs.com/baizhantang/p/3253246.html 主题 Linux命令 zabbix 前言 ...

  3. zabbix主机自动发现和监控

    在主机较多的时候,配置主机自动发现并加入监控可以代替手动的添加主机,减轻工作量,自动发现由服务端主动发起,Zabbix Server开启发现进程,定时扫描局域网中IP服务器.设备.可以根据需要,在对主 ...

  4. zabbix 添加自动发现端口并监控

    最近在部署zabbix监控  有些服务器上开启的服务端口非常多  如果一个个添加监控会很繁琐,于是想到了自动发现规则  自动发现服务器上的服务端口并进行监控. 在zabbix客户端服务器上进行操作 1 ...

  5. zabbix使用自动发现监控esxi的磁盘存储storage

    zabbix使用自动发现监控esxi的磁盘存储storage 在任意一台可以访问vcenter的zabbix-agent服务器上添加exsi的磁盘监控模板即可 创建模板过程: custom.esxi. ...

  6. zabbix—自动发现端口并监控

    自动批量检查agent开放的端口 PS:如果服务器上的应用都是固定的,不会随机产生的都可以使用自动发现端口来监控:  如果服务器会随机出现端口且每次启动程序都会改变,可以采用第二种方法,来监控指定的端 ...

  7. 01 - zabbix | LLD自动发现

    01 - zabbix | LLD自动发现 1. 原理 zabbix支持设置变量,用{#VAR_NAME}来表示.然后有一些系统保留的变量 2. 设置 2.1 交换机电源自动发现   名字写好后进进入 ...

  8. 【Zabbix】Zabbix Server自动发现

    Zabbix自动发现 由于有上百台的虚拟机需要监控,如果一个个去添加配置,费时费力.Zabbix的自动发现,可以自动发现需要监控的机器,监控相应指标. 前置条件 安装部署好Zabbix Server. ...

  9. zabbix3.4.8配置自动发现主机并监控

    一.       自动发现功能简介 Zabbix服务器端通过网络或者主机名等方式进行客户端的扫描发现,从进行加入到监控的主机队列中,适用于批量加入多主机监控的场景. 二.       自动发现功能实施 ...

随机推荐

  1. JavaScript 声明全局变量和局部变量

    JS中声明全局变量主要分为显式声明或者隐式声明下面分别介绍. 声明方式一: 使用var(关键字)+变量名(标识符)的方式在function外部声明,即为全局变量,否则在function声明的是局部变量 ...

  2. adb shell 命令之----pm

    常用的用法: 查看已经安装的包: pm list packages 查看已经安装的包以及apk路径(-3:只看第三方应用: -s:只看系统应用) -f: see their associated fi ...

  3. luogu3426 [POI2005]SZA-Template 后缀树

    链接 bzoj不能auto https://www.luogu.org/problemnew/show/P3426 思路 这个要求的串一定是S的前缀和S的后缀. 转化一下 建立出来fail树(fail ...

  4. 论文笔记:Improving Deep Visual Representation for Person Re-identification by Global and Local Image-language Association

    Improving Deep Visual Representation for Person Re-identification by Global and Local Image-language ...

  5. CTF显隐术:九连环

    题目:http://www.shiyanbar.com/ctf/2007 这个也挺基础的,需要注意的是:1.不要因为binwalk扫不出来就以为没有隐藏嵌入数据.2.千万不要暴力破解压缩包,如果是这样 ...

  6. echarts之折线图配置(附带图例很多做成分页效果)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  7. Python 编程第一步

    Python  编程第一步 在前面的教程中我们已经学习了一些 Python3 的基本语法知识,下面我们尝试来写一个斐波纳契数列. # Fibonacci series: 斐波纳契数列 # 两个元素的总 ...

  8. Spring @RequestParam、@RequestBody和@ModelAttribute区别

    一.@RequestParamGET和POST请求传的参数会自动转换赋值到@RequestParam 所注解的变量上1. @RequestParam(org.springframework.web.b ...

  9. [Hibernate] official tutorial - userguide

    Persistence contexts org.hibernate.Session API and javax.persistence.EntityManager API represent a c ...

  10. 使用Gitlab实现自动化部署与持续集成

    Gitlab-Ci运行原理: 由以下两个模块组成gitlab-ci servergitlab-ci-runner其中,gitlab-ci server负责调度.触发Runner,以及获取返回结果. 而 ...