zabbix系统核心进程,轮询并捕获数据、发送通知等。是zabbix agent和zabbix proxy汇报数据的对象。server自身可远程检测网络服务。所有的前后端配置、统计信息、可 *** 作数据存储于此。包含server、前段界面和后端DB几部分。
2.Agent
部署在被监控主机上用于监控本地资源和应用并向zabbix server汇报结果。使用本地系统调用故非常高效。有主动和被动两种检测模式。被动模式下agent根据server或proxy的具体请求来返回数据。主动模式下先主动由server获取监控项列表在检测并返回新的数据。采用主动或被动检测取决于相应监控项的配置。
3.Proxy
可以自由选择部署或者不部署,主要用于分担server的负载。在集中化监控远程位置、分支、网络的场景中是很好的解决方案。可从被监控设备收集数据缓存在proxy本地后传递给其所属的zabbix server。proxy需要单独的数据库。
动作: 指定将报警信息发送给谁/定义报警的信息/定义报警的类型(邮件 微信 电话)触发器: 设定某个监控项报警的阈值条件,可以实现报警提示(条件表达式),默认页面提示报警
https://www.jianshu.com/p/7d798423ec58
https://www.jianshu.com/p/a6c3a551f2ec
配置 ------ 主机 --- 对应主机的监控项
配置 ---- 主机 ---- 选择相应监控主机触发器 --- 创建触发器
页面正常
把zabbix_agent的nginx停掉
页面出现报错信息
把服务重新启动
报警信息消失
右上角的小人头--- 正在发送消息
配置 --- 动作 --- 将默认动作进行开启
管理 ---- 报警媒介类型 --- 创建媒介类型
点击右上角的小人头
再点击 添加
点击 更新
停掉nginx
三个用户,均已收到
https://work.weixin.qq.com/wework_admin/loginpage_wx?redirect_uri=https://work.weixin.qq.com/wework_admin/frame#profile
点击 成员加入
选择一种加入方式并加入
成员加入后,点击 通讯录 可查看加入的成员
收集相关程序代理id和密钥和企业id
程序代理id: 1000003
程序密钥: nR0WyfP7251_jg6vOSQ4SpTrZlrWS-SVm_2nyrXTf6Y
企业id: ww7a34cccfb9fd932b
在zabbix_server端找到脚本存放路径
编写脚本,填写对应的企业和程序信息
脚本执行语法格式: 帐号 + 主题 + 内容
用户名可以在通讯录找到
出现报错: ImportError: No module named requests ,缺少 requests 模块
报错解决:
再次测试:
成功收到测试信息!
管理 --- 报警媒介类型 -- 创建媒介类型
配置接收微信的人员
点击 小人头 --- 报警媒介 ---- 添加
点击 添加
点击 更新
把zabbix_agent的nginx服务停掉
发现报错
这是临时生成的日志没有写入权限
解决办法:
在zabbix_server端更改日志所主
再次测试
报警成功!
1).利用阿里大鱼(收费)
https://www.aliyun.com/product/sms?spm=a3142.7791109.0.0.34691fd2OVGqAY
2)利用onealert发送报警
https://caweb.aiops.com/#/integrate/monitor
这里我们使用 onealert
配置 --- 新建通知
集成 --- zabbix
2.获取alert agent包
3.安装配置alert
配置 --- 动作
在动作日志查看,发现已送达,但是我们选择的是免费版的,所以收不到邮件.....
支持的 *** 作类型
举例:
例如: { www.zabbix.com:vfs.fs.zise[/,free].abschange(10m) }<10,表示在 www.zabbix.com 设备中,Key值vfs.fs.size[/,free]最近一次获取到的值和在前10分钟的差值为10,其结果可能是最近一次的值比之前大,也有可能比之前的值小,即从-10到0,再从0到10之间的一个范围,可以叫做抖动值或者误差范围。
举例:
描述: 返回指定时间间隔的平均值。时间间隔可以通过第一个参数秒数设置或收集值的数目(需要在前边加上#,比如#5代表最近5次的值)。如果有第二个,则表示时间漂移(time shift),例如,查询一天之前的前一个小时的平均值,对应的函数是avg(1h,1d)
例如: { www.zabbix.com:vfs.fs.size[/,free].avg(#5,10m) }<50G,表示在Server设备中,Key值vfs.fs.size[/,free]最近10分钟内,最近的5次取值的平均值小于50G。请注意,10分钟内如果取值更新间隔时间为1分钟,则#5代表6、7、8、9、10分钟的数值,如果取值时间更新间隔为2分钟,则#5代表2、4、6、8、10分钟的数值
描述: 返回最近获取到的值与之前值的差值(注意、与abschange函数不同,不是绝对值)。对于字符串类型,0表示值相等,1表示值不同
例如: { www.zabbix.com:vfs.fs.size[/,free].change(5m) }<0,代表最近一次的值比前5分钟获取的值要小
**{ www.zabbix.com:vfs.fs.size[/,free].change() }>20,代表最新的值比前一个值要大20
例如: { www.zabbix.com:mysql.ping.last(#3,5m) }=0,表示设备 www.zabbix.com 的MySQL最近5分钟内第3次取值结果为0,即认为故障发生,注意#3的用法和其他函数不同
描述: 返回指定时间间隔的最大值。时间间隔作为第一个参数,可以是秒或收集值的数目(前缀为#)
例如: { www.zabbix.com:net.tcp.service[ftp].max(#3) }=0,表示设备 www.zabbix.com 中的key为net.tcp.service[ftp] 在最近三次获取到的值最大数值都为0,则视为故障
描述: 返回指定时间间隔的最小值。时间间隔作为第一个参数,可以是秒或收集值的数目(前缀为#)。函数支持第二个可选参数time_shift
例如: { www.zabbix.com:icmppingloss.min(5m) }>20,表示 www.zabbix.com 设备在5分钟内用icmppingloss获取到的最小值大于20,即故障发生
描述: 当返回值为1时,表示指定的间隔(间隔不应小于30s)没有接收到数据,0表示其他情况
例如: { www.zabbix.com:agent.ping.nodata(5m) }=1,表示设备 www.zabbix.com 的agent.ping在最近5分钟内没有接收到数据,及故障发生
描述: 返回指定时间间隔内的最大值与最小值的差值(max()-min())。时间间隔作为第一个参数,可以是秒或者收集值的数目
例如: { www.zabbix.com:net.if.in[eth0].delta(10m) }>10M,表示设备 www.zabbix.com 的接口eth0在最近10分钟内,最大值和最小值之间的差大于10MB,即认为故障发生
描述: 返回值为1,表示最近的值与之前的值不同,0为其他情况
例如: { www.zabbix.com:agent.version.diff(0) }>0,表示设备 www.zabbix.com 的agent.version在最近一次的值和之前的值不同
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)