点击关注公众号,k8s优秀车间主任及时送达



一、首先我们需要思考监控的几大因素概念:


1、我们为什么需要使用监控,能够给我们带来什么好处?


    答:通俗的说监控,就等同于我们现实生活中的监控摄像头一样,随时随刻的监控着你的所作所为。把它直接搬运到服务器中,就可以当服务器出错告警能够详细的汇报,不需要我们一台一台服务器上机去查,可以减少非常多的工作量。


2、监控谁和什么时间监控?


    答:主机状态和服务:CPU 负载、内存使用率、磁盘使用率、登陆用户数、进程状态、网卡状态等。

应用程序监控:主要监控该应用程序的服务状态,吞吐率和响应时间。

数据库监控:只所以把数据库监控单独列出来,足以说明它的重要性,一般监控数据库状态,数据库表或者表空间的使用情况,是否有死锁,错误日志,性能信息等等。

网络监控:主要监控当前的网络状况,网络流量,端口,连接等。


监控时间需要7*24小时。


3、监控的方法有哪些?


答:明着跟着,还是暗地跟着。



二、目前常见几大监控介绍:


1、Nagios:Nagios是一个开源系统和网络监控应用程序。它会监视您指定的主机和服务,并在情况变差和变好时提醒您。

官方:https://www.nagios.org/


2、​Mrtg :Multi Router Traffic Grapher (MRTG) 是一种用于监控网络链路上的流量负载的工具。MRTG 生成包含 PNG 图像的 HTML 页面,这些图像提供此流量的实时可视化表示。

官方:http://oss.oetiker.ch/mrtg


3、Zabbix:Zabbix 由 Alexei Vladishev 创建,目前由其成立的公司—— Zabbix SIA 积极的持续开发更新维护, 并为用户提供技术支持服务。

Zabbix 是一个企业级分布式开源监控解决方案。

Zabbix 软件能够监控众多网络参数和服务器的健康度、完整性。Zabbix 使用灵活的告警机制,允许用户为几乎任何事件配置基于邮件的告警。这样用户可以快速响应服务器问题。Zabbix 基于存储的数据提供出色的报表和数据可视化功能。这些功能使得 Zabbix 成为容量规划的理想选择。

Zabbix 支持主动轮询(polling)和被动捕获(trapping)。Zabbix所有的报表、统计数据和配置参数都可以通过基于 Web 的前端页面进行访问。基于 Web 的前端页面确保您可以在任何地方访问您监控的网络状态和服务器健康状况。适当的配置后,Zabbix 可以在监控 IT 基础设施方面发挥重要作用。无论是对于有少量服务器的小型组织,还是拥有大量服务器的大企业而言,同样适用。

官方:https://www.zabbix.com/


服务Zabbix监控_数据


4、​Anturis 是一种监控软件即服务,用于Web 服务的外部监控和IT 基础设施组件(如服务器、数据库和应用程序)的内部监控。它主要是为忙碌的 IT 管理员构建的,他们旨在最大限度地降低维护复杂性和成本。

监控架构:

服务Zabbix监控_服务器_02

官方:https://anturis.com/



三、Zabbix主要功能介绍:


前面简单介绍了四种监控系统和现在需要重点介绍的Zabbix。


Zabbix组成组件:

Server

Zabbix server 是 Zabbix软件的核心组件,agent 向其报告可用性、系统完整性信息和统计信息。server也是存储所有配置信息、统计信息和操作信息的核心存储库。

Agent

Zabbix agents 部署在被监控目标上,用于主动监控本地资源和应用程序,并将收集的数据发送给 Zabbix server。

数据库

所有配置信息以及 Zabbix 采集到的数据都被存储在数据库中。

Web 界面

为了从任何地方和任何平台轻松访问 Zabbix ,我们提供了基于 web 的界面。该界面是 Zabbix server 的一部分,通常(但不一定)和 Zabbix server 运行在同一台物理机器上。

Proxy

Zabbix proxy 可以代替 Zabbix server采集性能和可用性数据。Zabbix proxy在Zabbix的部署是可选部分;但是proxy的部署可以很好的分担单个Zabbix server的负载。


注:标红为重点核心。


Zabbix工作原理:


服务Zabbix监控_数据库_03

1、user—>web—>zabbix-server[监控平台]

用户通过web界面对zabbix监控平台进行操作


2、zabbix-server[监控平台]—>监控插件[被监控机]执行

zabbix监控平台会执行任务,也就是调用对应的插件在被监控主机上执行(告诉被监控机去执行xx插件)


3、监控插件[被监控机]执行–>zabbix-server

被监控机执行完成后将结果反馈给zabbix-server


4、zabbix-server—>zabbix-web—>user

zabbix-server通过web界面展现,最终用户查看到相应信息



Zabbix功能:


数据采集


  • 可用性和性能检查;
  • 支持 SNMP(包括主动轮询和被动捕获)、IPMI、JMX、VMware 监控;
  • 自定义检查;
  • 按照自定义的时间间隔采集需要的数据;
  • 通过 Server/Proxy 和 Agents 来执行数据采集。

灵活的阈值定义

  • 您可以参考后端数据库定义非常灵活的告警阈值,即触发器

高度可配置化的告警


  • 可以根据递增计划、接收者、媒介类型自定义发送告警通知;
  • 使用宏变量可以使告警通知变得更加高效有用;
  • 自动操作包含远程执行命令。

实时图形

  • 使用内置图形功能可以将监控项实时绘制成图形。

Web 监控功能

  • Zabbix可以追踪模拟鼠标在 Web 网站上的点击操作,来检查 Web 网站的功能和响应时间。

丰富的可视化选项


  • 可以组合多个监控项到单个视图中,创建自定义图表;
  • 网络拓扑图;
  • 以仪表盘样式展示自定义聚合图形和幻灯片演示;
  • 报表;
  • 监控资源的更高层次展示视图(业务视图)。

历史数据存储


  • 存储在数据库中的数据;
  • 历史配置;
  • 内置数据管理机制(housekeeping)。

配置简单


  • 将被监控设备添加为主机;
  • 主机一旦添加到数据库中,就会采集数据用于监控;
  • 将模板用于监控设备。

使用模板


  • 模板中分组检查;
  • 模板可以关联模板,继承已关联模板的属性。

网络发现


  • 自动发现网络设备;
  • Zabbix Agent 发现设备后自动注册;
  • 自动发现文件系统、网络接口和 SNMP OIDs 值。

快捷的 Web 界面


  • 基于 PHP 的 Web 前端;
  • 可以从任何地方访问;
  • 您可以定制自己的操作方式;
  • 您可以通过审计日志来查看你的操作。

Zabbix API

  • Zabbix API 为 Zabbix 提供可编程接口,用于批量操作、第三方软件集成和其他用途。

权限管理系统


  • 安全的用户身份验证;
  • 指定的用户只能查看指定的权限范围内的视图。

功能强大且易于扩展的 Zabbix Agent


  • 部署于被监控对象上;
  • 支持 Linux 和 Windows ;

二进制守护进程


  • 为了更好的性能和更少的内存占用,采用 C 语言编写;
  • 便于移植。

适应更复杂的环境

  • 使用 Zabbix Proxy 代理,可以轻松实现分布式远程监控。


Zabbix部署:


Zabbix部署我就不在操作了,可以自行访问以下官方: