diff --git a/README b/README index 901a8cb..a2e191f 100644 --- a/README +++ b/README @@ -1,32 +1,53 @@ -Zabbix is free software, released under the GNU General Public License -(GPL) version 2. - -You can redistribute it and/or modify it under the terms of the GNU GPL -as published by the Free Software Foundation; either version 2 of the -License, or (at your option) any later version. - -The formal terms of the GPL can be found at -http://www.fsf.org/licenses/ . - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -Exception for linking with OpenSSL - -In addition, as a special exception, we give permission to link the code -of Zabbix with the OpenSSL project OpenSSL library (or with modified -versions of it that use the same license as the OpenSSL library), and -distribute the linked executables. - -Please see https://www.zabbix.com/ for detailed information about Zabbix. - -On-line Zabbix documentation is available at -https://www.zabbix.com/documentation/6.2/manual/ . - -Zabbix installation instructions can be found at -https://www.zabbix.com/documentation/6.2/manual/installation/ . - -If you are installing Zabbix from packages the instructions can be found at -https://www.zabbix.com/documentation/6.2/manual/installation/install_from_packages/ . +### 基于Zabbix 6.0监控系统实现智能运维 + +该项目采用Zabbix 6.0对主机和服务器进行监控,并根据监控数据设置触发器,从而实现异常检测并设立多种报警方式,包括QQ邮箱报警、企业微信报警和钉钉报警等多种方式。从监控,到异常检测告警,针对压缩后告警进行根因分析,并结合知识图谱(开源模型)指导行动和修复故障。 + +告警时,项目基于CPU负荷、内存使用、磁盘使用、网络状况、端口和日志相关指标设立下列触发器,包括: + +1. **阈值警报触发器:** 触发器用于监控上述指标的值,一旦该值超过或低于设定的阈值,就触发警报。例如,CPU使用率超过90%。 +2. **异常检测触发器:** 触发器用于检测异常情况,如服务器离线、服务崩溃等,一旦发现异常,即可触发警报。 +3. **性能指标监控触发器:** 触发器用于监控性能指标,如响应时间、延迟等,以确保系统处于良好状态。 +4. **多个条件组合触发器:** 触发器基于多个监控项的组合条件。例如,当CPU使用率超过90%并且内存使用率超过80%时触发警报。 +5. **持续监控触发器:** 触发器通常有一个延迟时间,只有在一定时间范围内满足条件才会触发警报,以避免误报。 + +处理异常时,项目先基于异常进行根因分析: + +#### Zabbix介绍 + +Zabbix是一款开源的网络监控和报警系统,用于监视各种网络设备、服务器和应用程序的健康状态和性能。它能够收集各种指标和数据,如CPU使用率、内存使用率、网络流量等,然后将这些数据用于生成报表、图表和警报,以帮助管理员和运维团队及时发现和解决问题。 + +Zabbix具有以下主要特点: + +1. **多种监控方式:** Zabbix支持多种监控方式,包括代理式、被动式和主动式监控,能够适应不同网络架构和需求。 +2. **灵活的报警系统:** Zabbix可以根据预设的阈值和条件生成报警,管理员可以通过电子邮件、短信等方式接收警报。 +3. **数据收集和图表展示:** Zabbix能够收集大量的性能指标和数据,然后将这些数据以图表和报表的形式展示,帮助管理员分析趋势和问题。 +4. **自定义监控项:** 用户可以根据需要定义自己的监控项,以监视特定的应用程序、服务或指标。 +5. **自动发现功能:** Zabbix可以自动发现网络上的设备和服务,简化了添加新设备到监控系统中的过程。 +6. **可扩展性:** Zabbix支持插件和扩展,允许用户根据需要定制和扩展功能。 + +Zabbix 由几个主要的功能组件组成,分别是: + +1. **Zabbix Server:**是整个监控系统的核心组件。它负责收集、存储、处理和显示监控数据。以下是Zabbix Server的主要功能: + - 数据收集和存储: Zabbix Server通过与Zabbix Agents、SNMP设备和其他数据源通信,收集各种性能指标和数据,如CPU使用率、内存使用率、网络流量等。 + - 数据处理和分析: 收集的数据被Zabbix Server分析和处理,以便生成图表、报表、趋势和警报。管理员可以使用这些数据来监视系统的健康状态和性能。 + - 警报生成和管理: 基于预定义的阈值和条件,Zabbix Server可以生成警报,通知管理员和运维人员存在问题。这可以通过电子邮件、短信等多种方式实现。 + - 图表和可视化: Zabbix Server提供了可视化工具,管理员可以创建自定义图表和报表,以便更好地理解和分析监控数据。 + - 自动发现和管理: Zabbix Server支持自动发现网络设备和服务,从而简化了添加新设备到监控系统中的流程。 +2. **Zabbix Agent:** Zabbix Agent是安装在需要监控的目标主机上的代理程序。它负责收集本地性能数据并将其发送给Zabbix Server。以下是Zabbix Agent的主要功能: + - 数据采集: Zabbix Agent在本地收集主机的性能数据,如CPU利用率、内存使用率、磁盘空间等。 + - 数据传输: 收集到的数据通过Zabbix Agent传输到Zabbix Server,供后者分析和处理。 + - 低资源消耗: Zabbix Agent被设计为低资源消耗,对目标主机的影响较小。 + - 主动和被动监控: Zabbix Agent支持主动模式和被动模式。在主动模式下,Agent定期向Server发送数据;在被动模式下,Server请求Agent发送数据。 + - 自定义监控项: 可以在Zabbix Agent上配置自定义的监控项,以满足特定的监控需求。 +3. **Zabbix proxy:**Zabbix Proxy是Zabbix监控系统中的另一个重要组件,用于增强系统的性能和扩展性。如果网络被分割成多个不同的子网,每个子网都有一个Proxy可以收集数据并将其汇总到中央Server。与Zabbix server相比: + * **数据处理:** Zabbix Proxy负责缓存和汇总数据,而Zabbix Server负责数据的分析、处理和显示。Proxy不执行警报生成等高级任务,这些任务由Zabbix Server处理。 + * **位置和作用:** Zabbix Proxy通常放置在分布式网络的边缘,负责从监控目标收集数据并将其传输到Zabbix Server。Zabbix Server则集中管理整个监控系统。 + * **数据传输:** Proxy使用主动模式将数据发送给Server,而Server使用被动模式接收来自Proxy的数据请求。这种通信方式允许Proxy在网络隔离或安全性环境中工作。 + * **功能:** Zabbix Server具有更强大的功能,包括警报、报表、可视化等。Proxy主要负责数据收集和转发。 + * **扩展性:** Zabbix Proxy允许在大规模和分布式环境中进行扩展,通过将任务分发到多个Proxy来提高性能。Zabbix Server则是监控系统的核心,不同的Proxy可以协同工作以支持更大规模的监控。 + +#### 在小组实验过程中,有很多有意思的现象: + +1. Zabbix Server与Zabbix Agent在不同网段,在Server端连接时,会因为网络波动,造成时而连接时而连接不了的情况,容易形成波动较大数据。 +2. VMware虚拟机网段与主机网段不一致,但可以通过主机IP地址进行不同地址Zabbix Server与Zabbix Agent进行通信。 +3.