Zabbix

本文详细介绍了Zabbix监控系统的组件、功能、监控原理和工作模式,涵盖了从Zabbix服务器端和客户端的安装配置,到监控主机、磁盘、CPU、Apache、MySQL、Nginx的全过程,还涉及到Zabbix报警设置和自动发现配置。通过实例展示了如何使用Zabbix监控Linux系统,以及如何与钉钉集成进行报警通知。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

小白玩转Zabbix

Zzbbix介绍

​ Zabbix 是一款功能强大的分布式开源监控系统,一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。Zabbix由zabbix server与可选组件zabbix agent部分组成。

zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视。

Zabbix组件

Zabbix监控组件主要包括:Zabbix Server、Zabbix Proxy、Zabbix Agent;其中Zabbix Server包括:Web GUI、Database、Zabbix Server。

在这里插入图片描述

每个组件的作用:

abbix Server:负责接收agent发送的报告信息的核心组件,所有配置,统计数据及操作数据均由其组织进行;

Database:用户存储所有配置信息,以及存储由Zabbix Server收集到的数据;

Web GUI:Zabbix的interface接口,通常与Server运行在同一台主机上;

Zabbix Proxy:常用于分布监控环境中,代理Server收集部分被监控的监控数据并统一发往Server端;(通常大于500台主机需要使用)

Zabbix Agent:部署在被监控主机上,负责收集本地数据发往Server端或Proxy端

Zabbix主要功能:

​ - CPU负荷

​ - 内存使用

​ - 磁盘使用

​ - 网络状况

​ - 端口监视

​ - 日志监视

Zabbix监控原理

Zabbix Agentd安装在被监控的主机上,Zabbix Agent负责定期收集客户端本地各项数据,并发送至Zabbix Server端,Zabbix Server收到数据,将数据存储到数据库中,用户基于Zabbix WEB可以看到数据在前端展现图像。当Zabbix监控某个具体的项目,该项目会设置一个触发器阈值,当被监控的指标超过该触发器设定的阈值,会进行一些必要的动作,动作包括:发送信息(邮件、微信、短信)、发送命令(SHELL 命令、Reboot、Restart、Install等)。

Zabbix监控部署在系统中,包含常见的五个程序:zabbix_server、zabbix_agentd、zabbix_proxy、zabbix_get、zabbix_sender。

五个程序的功能如下:

zabbix server:zabbix服务端守护进程,其中zabbix_agentd、zabbix_get、zabbix_sender、zabbix_proxy的数据最终都提交给zabbix server;

zabbix agentd:客户端守护进程,负责收集客户端数据,例如:收集cpu负载、内存、硬盘使用情况等;

zabbix proxy:zabbix分布式代理守护进程,通过大于500台主机,需要进行分布式监控架构部署;

zabbix get:zabbix数据接收工具,单独使用的命令,通常在server或者proxy端执行获取远程客户端信息的命令;

zabbix_get -s remote-IP -p port -k system.uname  #测试server端和agent端的连通性 
-s  #agent端IP
-p  #端口
-l  #本机出去的IP,用于一台机器有多张网卡的情况
-k  #键值

zabbix sender:zabbix数据发送工具,用户发送数据给server或proxy端,通常用户耗时比较长的检查。

Zabbix监控方式

Zabbix分布式监控系统监控客户端的方式常见有三种:Agent、SNMP、IPMI。

Agent:Zabbix可以基于自身zabbix_agent客户端插件监控OS的状态,例如CPU、内存、硬盘、网卡、文件等。

SNMP:Zabbix通过SNMP协议监控网络设备或windows主机等。通过设定SNMP的参数将相关监控数据传送至服务端,交换机、防火墙等网络设备一般都支持SNMP协议。

IPMI(Intelligent Platform Management Interface):智能平台管理接口,即主要应用于设备的物理特性,包括:温度、电压、电扇工作状态,电源供应以及机箱入侵等。IPMI最大的优势在于无论OS的开机还是关机状态下,只要接通电源就可以实现对服务器的监控。

Zabbix工作模式

Zabbix监控客户端分为主动监控与被动监控。Zabbix监控客户端默认为被动模式,可以修改为主动模式,只需要在客户端配置文件中添加 StartAgents=0。

Zabbix主动模式:Agent主动请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy,zabbix agent首先向ServerActive配置的IP请求获取active items,获取并提交active items数据至server/proxy。

Zabbix被动模式:Server向agent请求获取监控项的数据,agent返回数据,server打开一个TCP连接,Server发送请求agent.ping,Agent接收到请求并且响应,Server处理接收到的数据。

Zabbix监控概念

概念 解释说明
主机(host) 被监控的网络设备,可以写IP或者DNS;
主机组(host group) 主机组用于管理主机,可以批量设置权限;
监控项(item) 具体监控项,items值由独立的keys进行识别;
触发器(trigger) 为某个items设置触发器,达到触发器会执行action动作;
事件(event) 例如达到某个触发器,称之为一个事件;
动作(action) 对于特定事件事先定义的处理方法,默认可以发送信息及发送命令;
报警升级(escalation) 发送警报或执行远程命令的自定义方案,如隔5分钟发送一次警报,共发送5次等。
媒介(media) 发送通知的方式,可以支持Mail、SMS、Scripts等;
通知(notification) 通过设置的媒介向用户发送的有关某事件的信息;
远程命令 达到触发器,可以在被监控端执行命令;
模板(template) 可以快速监控被监控端,模块包含:item、trigger、graph、screen、application;
web场景(web scennario) 用于检测web站点可用性,监控HTTP关键词;
web前端(frontend) Zabbix的web接口;
图形(graph) 监控图像;
屏幕(screens) 屏幕显示;
幻灯(slide show) 幻灯显示

Zabbix服务器端安装

关闭防火墙及SELINUX

systemctl stop firewalld #关闭防火墙服务
systemctl disable firewalld #开机不启动
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config #设置永不启动
grep SELINUX=disabled /etc/selinux/config #查看SELINUX状态
setenforce 0 #关闭当前SELINUX

安装 LAMP 环境

wget http://mirrors.163.com/.help/CentOS7-Base-163.repo  #配置163yum源
yum clean all  #清除旧缓存
yum makecache  #建立新缓存
yum -y install mariadb mariadb-server httpd php php-mysql   #安装mariadb、apache、php
systemctl start httpd && systemctl enable httpd  #启动apache并设置开机自启
systemctl start mariadb && systemctl enable mariadb  #启动mariadb并设置开机自启
mysql_secure_installation  #初始化mariadb

下载Zabbix安装仓库

rpm -ivh  http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm  #下载Zabbix yum源仓库
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX  #Zabbix秘钥	
安装Zabbix-server

在3.X版本中,没有单独的zabbix-server安装包,安装了zabbix-server-mysql即为安装了server端包。同时,我们可以在服务端安装zabbix_get包,以便向agent端发起测试。

yum install -y zabbix-server-mysql #Zabbix-server安装
创建Zabbix数据库并初始化
mysql -uroot -p  #登录mariadb
MariaDB [(none)]> CREATE DATABASE zabbix DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;  #创建Zabbix数据库
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';  #授权用户
MariaDB [(none)]> exit<
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值