zabbix组件:

两核心组件:
  zabbix-server(监控者) :收集agent发送的数据,写入数据库(mysql、oracal、)中,再通过web展示出来。默认端口为10051.
  zabbix-agent(被监控者):zabbix-agent:被监控者。通过安装zabbix agent,可将主机做为一个被监控的节点,通过agent采集数据并发送到zabbix-server或zabbix-proxy端。默认端口为10050.
其他重要组件:
  zabbix-proxy:监控代理者。通过安装zabbix proxy,可将主机做为代理,代理zabbix-server收集部分被监控端的监控数据,写入zabbix-proxy自己的数据库中,再统一按时发往zabbix-server端。(可视为一个小型的zabbix-server,配置方法也几乎等同于zabbix-server,常用于分布监控环境中,通常大于500台主机需要使用,需要进行分布式监控架构部署)。默认端口:10051.
  zabbix_get:它是zabbix的数据接收工具,通常在zabbix-server或zabbix-proxy端执行获取远程zabbix-agent客户端的命令。
  zabbix_sender:它是zabbix的数据发送工具,用于再zabbix-agent端发送数据给zabbix-server或zabbix-proxy。
  Database Storage:专用于存储所有配置信息,以及由zabbix收集的数据,通常与Server运行在同一台主机上
  Web interface:zabbix的GUI接口,与Server运行在同一台主机上

工作原理:
  zabbix-agent将采集到的主机信息,发送给zabbix-server,zabbix-server收到数据,将数据存在数据库中,用户基于zabbix-web在前端查看监控数据的图像,给监控项设置一个触发器阈值,当监控指标达到或超过这个阈值的时候,系统会做一些动作,比如发送消息给管理员或者发送一些shell命令。

zabbix监控什么:
  内存使用情况:
  磁盘空间:
  网络流量:网络接口流量、网络出口流量。
  agent:检查客户端可用性、主机名、系统详细信息等。
  监控程序端口启用。
zabbix-agent客户端收集数据的模式:
  Zabbix监控客户端默认为被动模式,可以修改为主动模式,只需要在客户端配置文件中添加 StartAgents=0即可,
  主动监控:agent主动向server获取监控项列表,zabbix-agent主动将监控项内需要检测的数据提交给zabbix-server/proxy。
  被动监控:zabbix-agent等待zabbix-server的监控信息,server向agent请求获取监控项的数据。agent收集信息请求并作出响应。Server处理接收到的数据。

自动发现:
  在zabbixGUI界面,配置栏下配置自动发现规则,设置要监控的主机ip范围,配置动作规则,添加模板,然后分别启用,最后在主机栏,刷新等待查看自动发现的主机。

邮件告警:(版本3.0)
  1、在linux中/usr/local/zabbix/alertscripts编写邮件告警脚本
  2、【管理】--【报警媒介类型】--【创建媒介类型】(先将默认的都停用)
  3、名称:自定义就行 类型:脚本 脚本名称:跟配置文件保持一致
  4、【管理】--【用户】--【创建用户】(创建用户)
  5、【配置】----【动作】----【触发器】----【创建动作】(添加告警动作)

用户根据自己的监控项目自定义监控项:

以监控httpd进程是否存在为例。
  1、首先编写自定义监控脚本:
    脚本名字:check_httpd.sh
    脚本目录(这个目录可以自定义):/usr/local/zabbix_scripts
    脚本内容:脚本说明:通过ps检查httpd进程是否存在,如果存在则脚本反馈1,如果不存在则返回0
  2、在agent端修改zabbix_agentd.conf配置文件,修改两处:

    UnsafeUserParameters=1,默认为0,此处我们将它改为1,改为1以后,表示用户自定义的脚本中可以包含特殊字符。
  3、添加自定义监控项,格式为:UserParameter=<键值>,<命令>。这里我们自定义键值为:check_httpd,要执行的命令为执行check_httpd.sh这个脚本。
  4、添加完成后重启zabbix-agent服务使其生效。
  5、在zabbix-server端:
    进行get测试:zabbix_get -s 192.168.11.11 -p 10050 -k "check_httpd.sh" ,-s后边跟的是agent服务所在的IP,-k后边跟的是在agent配置里的key.
  6、在zabbix-server端web页面操作:
    选择要增加监控项的主机,创建监控项,根据自定义键值填写监控项,键值填agent端配置文件中的key。
  7、添加成功后,在最新数据中查看是否获取到数据
  8、给这个监控项添加触发器(在这里我们定义当check_httpd监控项返回为0的时候告警。即httpd进程不存在)自定义触发器名称以及严重程度,表达式那里,点击添加触发器表达式,监控项选择我们自定义监控项,功能可以根据自己的需求选择,这里我们选择最后一个值是0的时候则告警(即httpd进程不存在)
  9、至此,自定义监控项和自定义告警已添加完成,如果有其他监控需求,自己写监控脚本即可。

zabbix监控nginx:

背景:Nginx在生产环境中的应用越来越广泛,所以需要对nginx的性能状态做一些监控,从而发现故障隐患。

Ngnx的监控指标可分为:基本活动指标,错误指标,性能指标

zabbix模板:zabbix模板中可以包含监控项、触发器、web监控、图表等等项目,一一创建这些项目之后,在后续的主机只需要套用这个模板,主机便可以监控模板里面所配置的监控项目。

比如要用zabbix监控100台Linux服务器的基本性能,如cpu、内存、硬盘、网络这些基本的东西,如果一台一台的配置,会好费大量的时间和精力,此时创建一个模板,然后每个服务器套用/链接这个模板,那么只要在创建主机的过程中在link(套用/链接)这个模板,一个服务器就完成了。

嵌套模板:在zabbix使用过程中,某些情况下,一个host需要link多个模板。这么做显得比较麻烦,很容易忘记到底要link哪些模板,我想link一个模板就达成这个目标,行不行?然而没问题,zabbix模板内嵌简单的说就是:模板link多个模板,

zabbix的主要监控架构:

在zabbix的监控架构中,主要分为了三种架构: server-agent 、server-proxy-agent、master-node-client三种 ,适合于不同的生产环境。

Zabbix的基本功能的更多相关文章

  1. zabbix自动发现功能实现批量web url监控

    需求: 现在有大量url需要监控,形式如http://www.baidu.com ,要求url状态不为200即报警. 需求详细分析: 大量的url,且url经常变化,现在监控用的是zabbix,如果手 ...

  2. Zabbix的LLD功能--Low-level discovery

    感觉这个主题是和一个主题是一个系列,而且更基础. 准备深入研究一下... 相关文档准备: https://www.zabbix.com/documentation/2.0/manual/discove ...

  3. Zabbix的通知功能以及自定义脚本告警

    本节内容: Zabbix的通知功能 定义接收告警的用户 定义Action Zabbix自定义脚本发送报警邮件 一.Zabbix的通知功能 在配置好监控项和触发器之后,一旦正常工作中的某触发器状态发生改 ...

  4. zabbix一些高级功能介绍

    根据上篇配置的环境,接下来说明在zabbix agent上执行远程命令是如何完成的. 远程命令受到一些限制: (1)在agent执行远程命令必须给zabbix用户定义sudu规则: (2)不支持act ...

  5. zabbix使用之常用功能使用心得

    ZABBIX 使用 Written by: Jane.Hoo 1.zabbix监控概念介绍 项目(iterm)定义收集被监控的数据项,如收集被监控机内存使用情况 应用集(application)一些项 ...

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

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

  7. 烂泥:haproxy与nginx、zabbix集成

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb. 昨天介绍了haproxy的手机匹配规则,今天再来介绍下haproxy与nginx.za ...

  8. python调用zabbix接口实现Action配置

    要写这篇博客其实我的内心是纠结的,老实说,我对zabbix的了解实在不多.但新公司的需求不容置疑,当我顶着有两个头大的脑袋懵懵转入运维领域时,面前摆着两百多组.上千台机器等着写入zabbix监控的需求 ...

  9. [转]Zabbix 3.0 安装笔记

    Zabbix 3.0 只支持CentOS 7.0以上版本,所以先在虚拟机中安装好CentOS 7.0 x64,并设置好IP,允许虚拟机联网. 1.安装MySQL 从最新版本的linux系统开始,默认的 ...

随机推荐

  1. playtime-浙大羽协裁判部训练方案[随机事件序列的应用]

    首先随机一列人名 然后按比例随机一列事件项. 然后将不确定项的人名更正为“某人”[比如发球违例,,,你怎么知道谁在发球] 最后定义一个初始化. 初始化呢,就是挑边. 球权还是场权? 发球还是接发? 谁 ...

  2. Prometheus 监控K8S Node监控

    Prometheus 监控K8S Node监控 Prometheus社区提供的NodeExporter项目可以对主机的关键度量指标进行监控,通过Kubernetes的DeamonSet可以在各个主机节 ...

  3. LinkedHashMap实现和LRU

    HashMap是Java中叫法,在Python中就叫Dict 在Python的标准库中实现了LinkedHashMap,它的名字叫OrderedDict,它的源码比较简单,OrderedDict继承了 ...

  4. JWT攻击手册

    JSON Web Token(JWT)对于渗透测试人员而言可能是一种非常吸引人的攻击途径,因为它们不仅是让你获得无限访问权限的关键,而且还被视为隐藏了通往以下特权的途径:特权升级,信息泄露,SQLi, ...

  5. C# Task,new Task().Start(),Task.Run();TTask.Factory.StartNew

    1. Task task = new Task(() => { MultiplyMethod(a, b); }); task.Start(); 2. Task task = Task.Run(( ...

  6. 手写instanceof (详解原型链) 和 实现绑定解绑和派发的事件类

    A  instanceof  B    是判断  A  是否继承自B,是返回true,  否返回false 再精确点就是判断B   是否  再  A  的 原型链上, 什么是原型链,举个例子: 我们定 ...

  7. Chrome Dev tools的几点小技巧

    figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...

  8. Spring登录实例

    Spring登录实例 项目结构 首先看一下整个项目的目录结构,如下: 导入Jar包 工欲善必先利其器,导入一下Jar包 配置文件 web.xml 配置 web.xml配置文件,如下: xmlns:xs ...

  9. 剑指offer 9-10:青蛙跳台阶与Fibonacii数列

    题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). 问题分析 我们将跳法个数y与台阶数n视为一个函数关系,即y=f(n). ...

  10. 针对JCC指令练习的堆栈图

    堆栈图,主要目的就是练习一下JCC指令的熟练度,供参考 版权声明:本文为博主原创文章,转载请附上原文出处链接和本声明.2019-09-10,23:41:41.作者By-----溺心与沉浮----博客园 ...