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. zabbix链接规则

    通过磁盘  Disk for discovery    custom.vfs.dev.discovery 配置自动发现参考

  2. LINQ之路12:LINQ Operators之数据转换(Projecting)

    本篇继续LINQ Operators的学习,这里我们讨论的是数据转换的两种方式:Select和SelectMany,看似简单常用的两种运算符,却也大有讲究.我们会在本篇详细介绍他们的使用方式和适用的场 ...

  3. _pet

    可以控制各职业召唤物的属性.用于增强BB `comment` 备注 `classIndex` 职业序号 `DmgAddPct` 宠物伤害倍率 `SpAddPct` 法术伤害 `HpAddPct`血量倍 ...

  4. Character流与Byte流的区别(转)

    Character流与Byte流的区别是 A) 每次读入的字节数不同 B) 前者带有缓冲,后者没有C) 前者是字符读写,后者是字节读写 D) 二者没有区别,可以互换使用 Java的流操作分为字节流和字 ...

  5. C#时间戳的简单实现

    Introduction: 在项目开发中,我们都经常会用到时间戳来进行时间的存储和传递,最常用的Unix时间戳(TimeStamp)是指格林尼治时间1970年1月1日0时(北京时间1970年1月1日8 ...

  6. photoshop打开图片显示的是索引,无法编辑解决

    问题如图: 解决方法: 这是因为图像模式是索引颜色,具体为啥图片打开是索引模式我也不是很清楚(捂脸),改成RGB颜色即可修改了 图像=>模式=>RGB颜色 如图:

  7. 『TensorFlow』读书笔记_Inception_V3_上

    1.网络背景 自2012年Alexnet提出以来,图像分类.目标检测等一系列领域都被卷积神经网络CNN统治着.接下来的时间里,人们不断设计新的深度学习网络模型来获得更好的训练效果.一般而言,许多网络结 ...

  8. JS中使用时间戳,获取当前日期,计算前一周的日期~

    今天项目中用到了一点 随便记录一下 function timestampToTime(timestamp) { );//时间戳为10位需*1000,时间戳为13位的话不需乘1000 var Y = d ...

  9. 数据分析库之Numpy

    Numpy get started NumPy中我们要学习的核心其实就是一个 ndarray n多 d dimension 维度 array数组 多维数组 创建一个ndarray的几种方法 impor ...

  10. 【转】 SQL - 生成指定范围内的随机数

    DECLARE @Result INT DECLARE @Upper INT DECLARE @Lower INT SET @Lower = 1 SET @Upper = 10 SELECT @Res ...