自动化运维之监控篇---利用zabbix自动发现功能实现批量web url监控

简介:

需求:

    现在有大量url需要监控,形式如http://itnihao.blog.51cto.com ,要求url状态不为200即报警。

需求详细分析:

    大量的url,且url经常变化,现在监控用的是zabbix,如果手动添加模板,会造成大量重复工作,造成人力财力的浪费,造成休息时间的浪费,得不尝失,如果利用脚本+mail,无法图形呈现

解决方案:

zabbix有discovery功能,利用此功能,即可轻松解决此问题

zabbix客户端配置


 
 
  1. #########cat /etc/zabbix/zabbix_agentd.conf|grep -v "^#"|grep -v "^$"##########

  2. ##此处省略N多信息,

  3. Include=/etc/zabbix/zabbix_agentd.conf.d/   #配置文件路径

  4. UnsafeUserParameters=1                      #自定义key


 
 
  1. ###########自动发现脚本编写

  2. ########################cat /etc/zabbix/scripts/web_site_code_status##############

  3. #!/bin/bash

  4. # function:monitor tcp connect status from zabbix

  5. # License: GPL

  6. # mail:itnihao@qq.com

  7. # version:1.0 date:2012-12-09

  8. source /etc/bashrc >/dev/null 2>&1

  9. source /etc/profile  >/dev/null 2>&1

  10. #/usr/bin/curl -o /dev/null -s -w %{http_code} http://$1/

  11. WEB_SITE_discovery () {

  12. WEB_SITE=($(cat  WEB1.txt|grep -v "^#"))

  13.        printf '{\n'

  14.        printf '\t"data":[\n'

  15. for((i=0;i<${#WEB_SITE[@]};++i))

  16. {

  17. num=$(echo $((${#WEB_SITE[@]}-1)))

  18.        if [ "$i" != ${num} ];

  19.                then

  20.        printf "\t\t{ \n"

  21.        printf "\t\t\t\"{#SITENAME}\":\"${WEB_SITE[$i]}\"},\n"

  22.                else

  23.                        printf  "\t\t{ \n"

  24.                        printf  "\t\t\t\"{#SITENAME}\":\"${WEB_SITE[$num]}\"}]}\n"

  25.        fi

  26. }

  27. }

  28. web_site_code () {

  29. /usr/bin/curl -o /dev/null -s -w %{http_code} http://$1

  30. }

  31. case "$1" in

  32. web_site_discovery)

  33. WEB_SITE_discovery

  34. ;;

  35. web_site_code)

  36. web_site_code $2

  37. ;;

  38. *)

  39. echo "Usage:$0 {web_site_discovery|web_site_code [URL]}"

  40. ;;

  41. esac

客户端配置文件


 
 
  1. #########cat /etc/zabbix/zabbix_agentd.conf.d/web_site_discovery.conf  ###########

  2. UserParameter=web.site.discovery,/etc/zabbix/scripts/web_site_code_status web_site_discovery  

  3. UserParameter=web.site.code[*],/etc/zabbix/scripts/web_site_code_status web_site_code $1  

域名如下


 
 
  1. ######### cat /etc/zabbix/scripts/WEB.txt###########

  2. www.qq.com

  3. www.baidu.com

  4. www.sina.com.cn

测试:


 
 
  1. zabbix_get -s 127.0.0.1 -k web.site.discovery


 
 
  1. zabbix_get -s 127.0.0.1 -k web.site.code[www.qq.com]

此时返回状态为200

至此,脚本,客户端配置文件OK

接下来是web的添加












报警级别的设置:3个报警级别


利用以上方法,哪怕是1000个url监控,也是分分钟的事情

总结:工欲善其事,必先利其器



本文转自it你好 51CTO博客,原文链接:http://blog.51cto.com/itnihao/1129725,如需转载请自行联系原作者

相关文章
|
4天前
|
Prometheus 运维 监控
智能运维实战:Prometheus与Grafana的监控与告警体系
【10月更文挑战第26天】Prometheus与Grafana是智能运维中的强大组合,前者是开源的系统监控和警报工具,后者是数据可视化平台。Prometheus具备时间序列数据库、多维数据模型、PromQL查询语言等特性,而Grafana支持多数据源、丰富的可视化选项和告警功能。两者结合可实现实时监控、灵活告警和高度定制化的仪表板,广泛应用于服务器、应用和数据库的监控。
42 3
|
5天前
|
消息中间件 数据采集 运维
一份运维监控的终极秘籍!监控不到位,宕机两行泪
【10月更文挑战第25天】监控指标的采集分为基础监控和业务监控。基础监控涉及CPU、内存、磁盘等硬件和网络信息,而业务监控则关注服务运行状态。常见的监控数据采集方法包括日志、JMX、REST、OpenMetrics等。Google SRE提出的四个黄金指标——错误、延迟、流量和饱和度,为监控提供了重要指导。错误监控关注系统和业务错误;延迟监控关注服务响应时间;流量监控关注系统和服务的访问量;饱和度监控关注服务利用率。这些指标有助于及时发现和定位故障。
35 1
|
7天前
|
监控 Devops jenkins
自动化部署与监控:打造高效的DevOps流程
【10月更文挑战第24天】在追求快速迭代和持续交付的软件开发时代,DevOps成为提升团队效率的关键。本文深入探讨如何构建一个高效的DevOps流程,包括自动化部署、监控和故障排除等关键环节。通过实际案例,我们将学习如何利用工具简化运维任务,确保系统稳定运行,并快速响应生产问题。
20 2
|
17天前
|
运维 Prometheus 监控
运维之眼:监控的艺术与实践
在信息技术飞速发展的今天,运维监控已成为保障系统稳定运行的关键。本文将探讨运维监控的重要性,介绍常用的监控工具和方法,并通过实际案例分析,展示如何有效地实施监控策略,以确保系统的高可用性和性能。
|
22天前
|
运维 监控 测试技术
构建高效运维体系:从监控到自动化的实践之路
【10月更文挑战第9天】 在当今信息技术飞速发展的时代,运维作为保障系统稳定性与效率的关键角色,正面临前所未有的挑战。本文将探讨如何通过构建一个高效的运维体系来应对这些挑战,包括监控系统的搭建、自动化工具的应用以及故障应急处理机制的制定。我们将结合具体案例,分析这些措施如何帮助提升系统的可靠性和运维团队的工作效率。
37 1
|
26天前
|
运维 监控 安全
构建高效运维体系:从监控到自动化的全面指南在当今数字化时代,运维作为保障系统稳定性和效率的重要环节,其重要性不言而喻。本文将深入探讨如何构建一个高效的运维体系,从监控系统的搭建到自动化运维的实施,旨在为读者提供一套完整的解决方案。
本文详细介绍了高效运维体系的构建过程,包括监控系统的选择与部署、日志分析的方法、性能优化的策略以及自动化运维工具的应用。通过对这些关键环节的深入剖析,帮助运维人员提升系统的可靠性和响应速度,降低人工干预成本,实现业务的快速发展和稳定运行。
|
3天前
|
Prometheus 运维 监控
智能运维实战:Prometheus与Grafana的监控与告警体系
【10月更文挑战第27天】在智能运维中,Prometheus和Grafana的组合已成为监控和告警体系的事实标准。Prometheus负责数据收集和存储,支持灵活的查询语言PromQL;Grafana提供数据的可视化展示和告警功能。本文介绍如何配置Prometheus监控目标、Grafana数据源及告警规则,帮助运维团队实时监控系统状态,确保稳定性和可靠性。
18 0
|
6月前
|
存储 SQL 监控
修改Zabbix源码实现监控数据双写,满足业务需求!
虽然对接Elasticsearch后有诸多好处,但是它不往数据库写历史数据了,同时还不再计算趋势数据了。有这么一个场景...
修改Zabbix源码实现监控数据双写,满足业务需求!
|
6月前
|
数据采集 监控 数据库
OceanBase社区版可以通过Zabbix监控
OceanBase社区版可以通过Zabbix监控
267 4
|
3月前
|
监控 安全 Linux
在Linux中,zabbix如何监控脑裂?
在Linux中,zabbix如何监控脑裂?

推荐镜像

更多