首页 > 其他分享 >Zabbix监控系统

Zabbix监控系统

时间:2022-12-16 22:12:55浏览次数:45  
标签:架构 系统 zabbix agent server Zabbix client 监控

一.zabbix概述

  • zabbix是一个监控软件,其可以监控各种网络参数,保证企业服务架构安全运营,同时支持灵活的告警机制,可以使得运维人员快速定位故障、解决问题。
  • zabbix支持分布式功能,支持复杂架构下的监控解决方案,也支持web页面,为主机监控提供了良好直观的展现。
  • zabbix官网地址为https://www.zabbix.com/,页面如下所示:

 1.1zabbix监控常见的程序

 zabbix_server、zabbix_agent、zabbix_proxy、zabbix_get、zabbix_sender 等

  • zabbix server:zabbix 服务端守护进程,其中 zabbix_agent、zabbix_get、zabbix_sender、zabbix_proxy 的数据最终都提交给 zabbix server;
  • zabbix agent:客户端守护进程,负责收集客户端数据,例如:收集 CPU 负载、内存、硬盘使用情况等;
  • zabbix proxy:zabbix 分布式代理守护进程,通常大于 500 台主机,需要进行分布式监控架构部署;
  • zabbix get:zabbix 数据接收工具,单独使用的命令,通常在 server 或者 proxy 端执行获取远程客户端信息的命令;
  • zabbix sender:zabbix 数据发送工具,用户发送数据给 server 或 proxy 端,通常用户耗时比较长的检查。

二.zabbix工作原理

  • zabbix在进行监控时,zabbix客户端要安装在被监控设备上,负责定期收集数据,并将其发送给zabbix服务端。
  • zabbix服务端要安装在监控设备上,其将zabbix客户端发送的数据存储的数据库中,zabbix web根据数据在前端进行展示和绘图。

2.1zabbix的数据收集分为两种模式

①主动模式

  • zabbix客户端主动向zabbix server请求监控项列表,并主动将监控项内需要的数据提交给zabbix server。

②被动模式

  • zabbix server向agent请求获取监控项的数据,zabbix agent返回数据。
  • 可以看出,zabbix的主动和被动模式是以zabbix客户端为基准的。

 

三.zabbbix监控架构

在实际生产环境中,根据网络环境和监控规模的不同,zabbix一共有三种监控架构,分别是server-client架构、master-node-client架构和server-proxy-client架构。

3.1server-client架构

zabbix最简单的架构,监控设备和被监控设备之间直接相连,zabbix server和zabbix client之间直接进行数据交互。

 

 

3.2server-proxy-client架构

proxy是连接server和client之间的桥梁,其本身并不存放数据,只是将zabbix agent端发送来的数据暂存,然后再提交给server。这种架构一般用于跨机房、跨网络的中型网络架构。在server-proxy-client架构架构中,server设备的宕机会导致整个系统无法正常工作。

 

 

3.3master-node-client架构

master-node-client架构是zabbix最复杂的架构,一般用于跨机房、跨网络、监控设备较多的大型网络架构。与server-proxy-client相比,master-node-client架构的主要区别在于node与proxy上。在master-node-client架构中,每个node可以理解为一个小的server端,有自己的配置文件和数据库,node下游可以直接连接client,也可以再次经过proxy代理后连接client。在master-node-client架构中,master设备宕机不会影响node结点的正常工作。

##Zabbix服务参数介绍 ##
zabbix server服务名:zabbix-server 端口:10051
zabbix  agent服务名:zabbix-agent端口:10050
zabbix server主配置文件:/etc/zabbix/zabbix_server.conf
zabbix agent主配置文件:/etc/zabbix/zabbix_agentd.conf
zabbix企业微信报警脚本路径:/usr/lib/zabbix/alertscripts
zabbix自定义监控项路径:/etc/zabbix/zabbix_agentd.d zabbix
日志文件路径:/var/log/zabbix/

 

 

 

四.​​​​​​​zabbix监控对象

zabbix支持监控各种系统平台,包括Linux和Windows等主流操作系统,也可以借助SNMP或者是SSH协议监控路由交换设备。
zabbix如果部署在服务器上,可以监控其CPU、内存、网络性能等硬件参数,也可以监控具体的服务或者应用程序、服务运行情况及性能。

  • 硬件监控:Zabbix IPMI Interface ,通过IPMI接口进行监控,我们可以通过标准的IPMI硬件接口,监控被监控对象的物理特征,比如电压、温度、风扇状态、电源状态等。
  • 系统监控:Zabbix Agent Interface ,通过专用的代理程序进行监控,与常见的master/agent模型类似,如果被监控对象支持对应的agent,推荐首选这种方式。
  • Java监控:Zabbix JMX Interface ,通过JMX进行监控,JMX(java management extensions,即java管理扩展),监控JVM虚拟机时,使用这种方法是非常不错的选择。
  • 网络设备监控:Zabbix SNMP Interface ,通过SNMP协议与被监控对象进行通信,SNMP协议的全称为simple network management protocol,被译为简单网络管理协议,通常来说,我们无法在路由器、交换机这种硬件上安装agent,但是这些硬件都支持SNMP协议。
  • 应用服务监控:Zabbix Agent UserParameter
  • MySQL数据库监控:percona-monitoring-plulgins
  • URL监控:Zabbix Web 监控

 

五.zabbix的安装部署(5.0版本)

5.1部署环境

zax-server:192.168.61.100

zbx-agent01:192.168.61.101

5.2zabbix服务端安装

---------- 部署 zabbix 服务端 ----------
zabbix-server 内存至少 2G,推荐 4G;

systemctl disable --now firewalld
setenforce 0
hostnamectl set-hostname zbx-server

#获取 zabbix 的下载源
rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm 

//更换 zabbix.repo 为阿里源
cd /etc/yum.repos.d
sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' zabbix.repo

yum clean all && yum makecache

yum install -y zabbix-server-mysql zabbix-agent

//安装SCL(Software Collections),便于后续安装高版本的 php,默认 yum 安装的 php 版本为 5.4,版本过低,zabbix 5.0 版本对 php 版本最低要 7.2.0 版本。
//SCL 可以使得在同一台机器上使用多个版本的软件,而又不会影响整个系统的依赖环境。软件包会安装在 /opt/rh 目录下。 yum install -y centos-release-scl //修改 zabbix-front 前端源,安装 zabbix 前端环境到 scl 环境下 vim zabbix.repo ...... [zabbix-frontend] ...... enabled=1 #开启安装源 ...... yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl //安装 zabbix 所需的数据库 yum install -y mariadb-server mariadb systemctl enable --now mariadb mysql_secure_installation #初始化数据库,并设置密码,如 abc123 //添加数据库用户,以及 zabbix 所需的数据库信息 mysql -u root -pabc123 CREATE DATABASE zabbix character set utf8 collate utf8_bin; GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix'; flush privileges; //导入数据库信息 rpm -ql zabbix-server-mysql #查询 sql 文件的位置 zcat /usr/share/doc/zabbix-server-mysql-5.0.24/create.sql.gz | mysql -uroot -pabc123 zabbix //修改 zabbix server 配置文件,修改数据库的密码 vim /etc/zabbix/zabbix_server.conf ...... DBPassword=zabbix #124行,指定 zabbix 数据库的密码 //修改 zabbix 的 php 配置文件 vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf ...... php_value[date.timezone] = Asia/Shanghai #24行,取消注释,修改时区 //启动 zabbix 相关服务 systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm 浏览器访问:http://192.168.61.100/zabbix 点击下一步,设置数据库的密码 zabbix 安装完成后,默认的登录账号和密码为:Admin/zabbix 设置文件界面:点击左边菜单栏的【User settings】,【Language】选择 Chinese(zh_CN),再点击 Update 更新。 //解决 zabbix-server Web页面中文乱码问题 yum install -y wqy-microhei-fonts \cp -f /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

 

 

5.3zabbix监控端安装

---------- 部署 zabbix 客户端 ----------
zabbix 5.0 版本采用 golang 语言开发的新版本客户端 agent2 。
zabbix 服务端 zabbix_server 默认使用 10051 端口,客户端 zabbix_agent2 默认使用 10050 端口。


systemctl disable --now firewalld
setenforce 0
 

//服务端和客户端都配置时间同步
yum install -y ntpdate
ntpdate -u ntp.aliyun.com

//客户端配置时区,与服务器保持一致
mv /etc/localtime{,.bak}
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

date

//设置 zabbix 的下载源,安装 zabbix-agent2
rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm 

cd /etc/yum.repos.d
sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo

yum install -y zabbix-agent2

//修改 agent2 配置文件
vim /etc/zabbix/zabbix_agent2.conf
......
Server=192.168.61.100            #80行,指定 zabbix 服务端的 IP 地址
ServerActive=192.168.61.00        #120行,指定 zabbix 服务端的 IP 地址
Hostname=zbx-agent01            #131行,指定当前 zabbix 客户端的主机名

//启动 zabbix-agent2
systemctl start zabbix-agent2
systemctl enable zabbix-agent2

netstat -natp | grep zabbix
tcp6       0      0 :::10050                :::*                    LISTEN      43654/zabbix_agent2 

//在服务端验证 zabbix-agent2 的连通性
yum install -y zabbix-get                #安装 zabbix 主动获取数据的命令

zabbix_get -s '192.168.61.101' -p 10050 -k 'agent.ping'
1

zabbix_get -s '192.168.161.101' -p 10050 -k 'system.hostname'
zbx-agent01

 

 

 

六.zabbix在web端的设置

6.1zabbix常见术语

1、主机(host)

  • 要监控的设备,可以由IP或者是主机名(必须可解析)指定。

2、主机组(host group)

  • 主机的逻辑容器,包含主机和模板,主机组通常在给用户或者是用户组指派监控权限时使用。

3、监控项(item)

  • 一个特定监控指标的相关数据,比如内存的大小、CPU的使用率,甚至是服务的运行状态等等。监控项数据来源于被监控对象,并且每个监控项都由一个key来标识。

4、触发器(trigger)

  • 一个表达式,用于评估监控项的值是否在合理的范围内。当接收的值超出触发器的规定时,就被认为是故障,如果超出后再次符合,就被认为是正常。

5、事件(event)

  • 触发器触发的一个特定事件,或者是zabbix定义的一个自动上线注册主机的事件。

6、动作(action)

  • 指根据配置,zabbix对于触发器触发的特定事件进行处理的具体措施,如执行某个脚本,或者是向管理员邮箱发送邮件等等。

7、报警升级(escalation)

  • 发送警报或者是执行远程命令的自定义方案。

8、媒介(media)

  • 发送通知(告警)的手段,如微信、邮件、钉钉等等。

9、通知(notification)

  • 通过指定的媒介,向用户发送的有关事件的信息。

10、远程命令(remote command)

  • 指运维人员提前写好的命令,可以让被监控主机在触发事件后执行。

11、模板(template)

  • 用于快速定义被监控主机的预设条目集合,通常包括了监控项、触发器、应用等,模板可以直接链接至某个主机。

12、应用(application)

  • 一组监控项的集合。

13、web场景(web scennario)

  • 用于检测web站点可用性的一个或多个HTTP请求。

14、前端(frontend)

  • zabbix的web接口。

6.2zabbix网页端安装

 

标签:架构,系统,zabbix,agent,server,Zabbix,client,监控
From: https://www.cnblogs.com/suoluo212/p/16976308.html

相关文章

  • EasyPytest测试平台开发日志之系统设计
    EasyPytest测试平台,帮你高效管理Pytest测试用例。EP平台的定位是Pytest测试用例管理平台,80%的自动化用例开发在PyCharm等专业的IDE中进行,20%的用例调度和结果查看就交给E......
  • C/C++大数据行程码识别系统
    C/C++大数据行程码识别系统大数据行程码识别系统一、编程题(60分)大数据行程码是疫情防控的主要手段,请用C语言设计简单的大数据行程码识别系统具体功能描述:1、建......
  • zabbix安装教程
    更换阿里yun源,防止部分依赖包无法下载#!/bin/sh#yum源进行备份#进入到yum源的配置文件中cd/etc/yum.repos.d;CentOS-Base.repoCentOS-Base.repo.bak#获取阿里的yu......
  • 【FastDFS】分布式文件系统FastDFS
    一、参考资料​​FastDFS海量小文件存储解决之道-知乎​​​​FastDFS实战视频教程-分布式文件系统FastDFS详解-FastDFS从基础到集群实践_哔哩哔哩_bilibili​​​​芋道......
  • ELK日志分析系统
    一.ELK概述ELK平台是一套完整的日志集中处理解决方案,将ElasticSearch、Logstash和Kiabana三个开源工具配合使用,完成更强大的用户对日志的查询、排序、统计需求。1......
  • Zabbix监控系统
    目录:1、监控系统功能2、zabbix是什么3、zabbix主要功能4、zabbix监控有哪些5、zabbix监控原理6、zabbix架构示意图7、zabbix怎么开启自定义监控8、zabbix监控多少......
  • 《DFZU2EG_4EV MPSoc之FPGA开发指南》第十八章 系统时钟配置实验​
    第十八章系统时钟配置实验​如果让你用一句话来形容时钟,你会怎么说?​A同学说:“时钟是单片机的心脏”;​B同学说:“军训方队训练时的121”;​C同学说:“时钟是单片机的能量......
  • 虚拟机系统故障docker无法正常启动
    故障现象CentOS系统启动时出现Failedtomount/sysroot错误,导致系统无法正常启动。正常进入系统后,docker无法正常使用,出现Failedtoconnecttocontainerd:failedto......
  • Windows各个系统勒索补丁下载地址
    WindowsXP WindowsXPSP3安全更新程序(KB4012598)下载地址​​https://www.microsoft.com/en-us/download/details.aspx?id=55245​​WindowsXPSP2x64(64位)安全更......
  • Sovit3D构建智慧变电站 实现无人值守远程监控
    今天为大家分享一个采用数维图的Sovit3D构建轻量化3D可视化场景的案例——数字孪生智慧变电站三维可视化系统。多维度呈现变电站场景,实现变电站运行态势的实时监测,运......