zabbix基本介绍 安装部署 页面访问

这里写目录标题

    • 一、zabbix 监控
      • 1、zabbix 监控架构
      • 2、zabbix 监控报警渠道
      • 3、Zabbix 优点
      • 4、Zabbix 缺点
      • 5、Zabbix 监控系统监控对象
      • 6、Zabbix监控方式
      • 7、zabbix 架构
        • 1、Server
        • 2、数据库存储
        • 3、Web界面
        • 4、Proxy 代理服务器
        • 5、Agent监控代理
        • 6、数据流
      • 8、Zabbix常用术语的含义
        • 1、主机 (host)
        • 2、主机组 (host group)
        • 3、监控项 (item)
        • 4、触发器 (trigger)
        • 5、事件 (event)
        • 6、异常 (problem)
        • 7、动作 (action)
        • 8、升级 (escalation)
        • 9、媒介 (media)
        • 10、通知 (notification)
        • 11、远程命令 (remote command)
        • 12、模版 (template)
        • 13、应用 (application)
        • 14、web 场景 (web scenario)
        • 15、前端 (frontend)
        • 16、Zabbix API
        • 17、Zabbix server
        • 18、Zabbix agent
        • 19、被动(passive)和主动(active)检查
        • 20、Zabbix proxy
    • 二、zabbix部署
      • 选择您Zabbix服务器的平台
      • 为您的平台安装和配置Zabbix
        • 安装Zabbix存储库
        • 安装Zabbix server,Web前端,agent
        • 安装Zabbix前端
        • 创建初始数据库
        • 为Zabbix server配置数据库
        • 为Zabbix前端配置PHP
        • 修改nginx配置文件,避免IP冲突
        • 修改php-fpm服务启动用户
      • 浏览器访问
    • 三、agent部署
        • 选择您Zabbix服务器的平台
        • 为您的平台安装和配置Zabbix
          • a. 安装Zabbix存储库
          • b. 安装Zabbix agent
          • c. 启动Zabbix agent进程
    • 四、前端添加
        • a.添加主机组
        • b.添加主机
        • c.添加监控项
        • d.添加触发器
        • e.添加图形
      • 修改字体

一、zabbix 监控

1、zabbix 监控架构

2、zabbix 监控报警渠道

zabbix-server --> 企业QQ --> 运维工程师
zabbix-server --> 企业微信 --> 运维工程师
zabbix-server --> 钉钉 --> 运维工程师
zabbix-server --> 邮箱 --> 运维工程师
zabbix-server --> 短信 --> 运维工程师
zabbix-server --> 电话 --> 运维工程师

3、Zabbix 优点

​ 开源,无软件成本投入

​ Server 对设备性能要求低

​ 支持设备多,自带多种监控模板

​ 支持分布式集中管理,有自动发现功能,可以实现自动化监控

​ 开放式接口,扩展性强,插件编写容易

​ 当监控的 item 比较多服务器队列比较大时可以采用主动状态,被监控客户端主动 从server 端去下载需要监控的 item 然后取数据上传到 server 端。 这种方式对服务器的负载比较小。

​ Api 的支持,方便与其他系统结合

4、Zabbix 缺点

​ 需在被监控主机上安装 agent,所有数据都存在数据库里, 产生的数据很大,瓶颈主要在数据库。

5、Zabbix 监控系统监控对象


数据库: MySQL,MariaDB,Oracle,SQL Server

应用软件:Nginx,Apache,PHP,Tomcat


集群: LVS,Keepalived,HAproxy,RHCS,F5

虚拟化: VMware,KVM,XEN

操作系统:Linux,Unix,Windows性能参数


硬件: 服务器,存储,网络设备 IPMI

网络: 网络环境(内网环境,外网环境) SNMP


6、Zabbix监控方式

被动模式
主动模式

7、zabbix 架构

Zabbix由几个主要的软件组件构成,这些组件的功能如下。

111

1、Server

Zabbix server 是agent程序报告系统可用性、系统完整性和统计数据的核心组件,是所有配置信息、统计信息和操作数据的核心存储器。

2、数据库存储

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

3、Web界面

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

如果使用SQLite,Zabbix Web界面必须要跟Zabbix Server运行在同一台物理机器上。

4、Proxy 代理服务器

Zabbix proxy 可以替Zabbix Server收集性能和可用性数据。Proxy代理服务器是Zabbix软件可选择部署的一部分;当然,Proxy代理服务器可以帮助单台Zabbix Server分担负载压力。

5、Agent监控代理

Zabbix agents监控代理 部署在监控目标上,能够主动监控本地资源和应用程序,并将收集到的数据报告给Zabbix Server。

6、数据流

此外,了解Zabbix内部的数据流同样很重要。监控方面,为了创建一个监控项(item)用于采集数据,必须先创建一个主机(host)。告警方面,在监控项里创建触发器(trigger),通过触发器(trigger)来触发告警动作(action)。 因此,如果你想收到Server XCPU负载过高的告警,你必须: 1. 为Server X创建一个host并关联一个用于对CPU进行监控的监控项(Item)。 2. 创建一个Trigger,设置成当CPU负载过高时会触发 3. Trigger被触发,发送告警邮件 虽然看起来有很多步骤,但是使用模板的话操作起来其实很简单,Zabbix这样的设计使得配置机制非常灵活易用。

8、Zabbix常用术语的含义

1、主机 (host)
  • 一台你想监控的网络设备,用IP或域名表示
2、主机组 (host group)
  • 主机的逻辑组;它包含主机和模板。一个主机组里的主机和模板之间并没有任何直接的关联。通常在给不同用户组的主机分配权限时候使用主机组。
3、监控项 (item)
  • 你想要接收的主机的特定数据,一个度量数据。
4、触发器 (trigger)
  • 一个被用于定义问题阈值和“评估”监控项接收到的数据的逻辑表达式
    当接收到的数据高于阈值时,触发器从“OK”变成“Problem”状态。当接收到的数据低于阈值时,触发器保留/返回一个“OK”的状态。
5、事件 (event)
  • 单次发生的需要注意的事情,例如触发器状态改变或发现有监控代理自动注册
6、异常 (problem)
  • 一个处在“异常”状态的触发器
7、动作 (action)
  • 一个对事件做出反应的预定义的操作。
    一个动作由操作(例如发出通知)和条件(当时操作正在发生)组成
8、升级 (escalation)
  • 一个在动作内执行操作的自定义场景; 发送通知/执行远程命令的序列
9、媒介 (media)
  • 发送告警通知的手段;告警通知的途径
10、通知 (notification)
  • 利用已选择的媒体途径把跟事件相关的信息发送给用户
11、远程命令 (remote command)
  • 一个预定义好的,满足一些条件的情况下,可以在被监控主机上自动执行的命令
12、模版 (template)
  • 一组可以被应用到一个或多个主机上的实体(监控项,触发器,图形,聚合图形,应用,LLD,Web场景)的集合
    模版的任务就是加快对主机监控任务的实施;也可以使监控任务的批量修改更简单。模版是直接关联到每台单独的主机上。
13、应用 (application)
  • 一组监控项组成的逻辑分组
14、web 场景 (web scenario)
  • 利用一个或多个HTTP请求来检查网站的可用性
15、前端 (frontend)
  • Zabbix提供的web界面
16、Zabbix API
  • Zabbix API允许你使用JSON RPC协议 (是一个无状态且轻量级的远程过程调用(RPC)传送协议,其传递内容透过 JSON 为主) 来创建、更新和获取Zabbix对象(如主机、监控项、图形和其他)信息或者执行任何其他的自定义的任务
17、Zabbix server
  • Zabbix软件实现监控的核心程序,主要功能是与Zabbix proxies和Agents进行交互、触发器计算、发送告警通知;并将数据集中保存等
18、Zabbix agent
  • 一个部署在监控对象上的,能够主动监控本地资源和应用的程序
    Zabbix agent部署在监控的目标上,主动监测本地的资源和应用(硬件驱动,内存,处理器统计等)。
    Zabbix agent收集本地的操作信息并将数据报告给Zabbix server用于进一步处理。一旦出现异常 (比如硬盘空间已满或者有崩溃的服务进程), Zabbix server会主动警告管理员指定机器上的异常。 Zabbix agents 的极端高效缘于它可以利用本地系统调用来完成统计数据的收集。
19、被动(passive)和主动(active)检查

Zabbix agents可以执行被动和主动两种检查方式。
在passive check 模式中agent应答数据请求,Zabbix server(或者proxy)询问agent数据,如CPU 的负载情况,然后Zabbix agent回送结果。
Active checks 处理过程将相对复杂。 Agent必须首先从Zabbix sever索取监控项列表以进行独立处理,然后周期性地发送新的值给server。
执行被动或主动检查是通过选择相应的监测项目类型来配置的。item type. Zabbix agent处理监控项类型有’Zabbix agent’和’Zabbix agent (active)’。

20、Zabbix proxy

一个帮助Zabbix Server收集数据,分担Zabbix Server的负载的程序
Zabbix Proxy是一个可以从一个或多个受监控设备收集监控数据,并将信息发送到Zabbix sever的进程,基本上是代表sever工作的。 所有收集的数据都在本地进行缓存,然后传送到proxy所属的Zabbix sever。
部署Proxy是可选的,,但是可能非常有益于分散单个Zabbix sever的负载。 如果只有proxy收集数据,sever上的进程就会减少CPU消耗和磁盘I / O负载。
Zabbix proxy是完成远程区域、分支机构、没有本地管理员的网络的集中监控的理想解决方案。
Zabbix proxy需要使用独立的数据库。

二、zabbix部署

主机名ip
zabbix-server192.168.20.144
client192.168.20.145

[zabbix官网](Download and install Zabbix 5.0 LTS for CentOS 7, MySQL, Nginx)

选择您Zabbix服务器的平台

在这里插入图片描述

为您的平台安装和配置Zabbix

安装Zabbix存储库
[root@zabbix-server ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
[root@zabbix-server ~]# yum clean all
安装Zabbix server,Web前端,agent
[root@zabbix-server ~]# yum install zabbix-server-mysql zabbix-agent
安装Zabbix前端

启用红帽软件集合

[root@zabbix-server ~]# yum install centos-release-scl

编辑配置文件 /etc/yum.repos.d/zabbix.repo and enable zabbix-frontend repository.

[root@zabbix-server ~]# vim  /etc/yum.repos.d/zabbix.repo

在这里插入图片描述

安装Zabbix前端软件包

[root@zabbix-server ~]# yum install zabbix-web-mysql-scl zabbix-nginx-conf-scl
创建初始数据库
[root@zabbix-server ~]# yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-10.noarch.rpm

把安装5.7的源打开,关闭安装8.0的源

1566037635973.png

[root@zabbix-server ~]# yum -y install mysql mysql-server
[root@zabbix-server ~]# systemctl start  mysqld
[root@zabbix-server ~]# grep "password" /var/log/mysqld.log
2023-09-25T13:06:14.510313Z 1 [Note] A temporary password is generated for root@localhost: Qo9b-0AXzdIt
[root@zabbix-server ~]# mysqladmin -p"Qo9b-0AXzdIt" password "123" 

确保您已启动并运行数据库服务器。

为Zabbix server配置数据库

在数据库主机上运行以下代码。

[root@zabbix-server ~]# mysql -pQianfeng@123
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by 'password';
mysql> grant all privileges on zabbix.* to 'zabbix'@'%' identified by 'Qianfeng@123';
mysql> set global log_bin_trust_function_creators = 1;
mysql> quit;

导入初始架构和数据,系统将提示您输入新创建的密码。

[root@zabbix-server ~]# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

导入数据库架构后禁用log_bin_trust_function_creators选项。

[root@zabbix-server ~]# mysql -pQianfeng@123
mysql> set global log_bin_trust_function_creators = 0;
mysql> quit;

编辑配置文件 /etc/zabbix/zabbix_server.conf

[root@zabbix-server ~]# vim /etc/zabbix/zabbix_server.conf
DBPassword=Qianfeng@123
为Zabbix前端配置PHP

编辑配置文件 /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf uncomment and set ‘listen’ and ‘server_name’ directives.

[root@zabbix-server ~]# vim  /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf
listen 80;
server_name localhost;

编辑配置文件 /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf add nginx to listen.acl_users directive.

[root@zabbix-server ~]# vim  /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
[zabbix]
user = nginx
group = nginx
listen= /var/opt/rh/rh-php72/run/php-fpm/zabbix.socklisten.acl users = nginx
listen.allowed clients = 127.0.0.1
php_value[date.timezone] = Asia/Shanghai
修改nginx配置文件,避免IP冲突
[root@zabbix-server ~]# vim /etc/opt/rh/rh-nginx-116/nginx/nginx.conf
listen 81 #修改端口
修改php-fpm服务启动用户
[root@zabbix-server ~]# chown .nginx /var/opt/rh/rh-php72/lib/php/session/
[root@zabbix-server ~]# chown nginx.nginx -R /etc/zabbix/web

浏览器访问

在这里插入图片描述

image-20210413175653799

image-20210413175728207

image-20210413180104556

image-20210413180117964

image-20210413180146358

在这里插入图片描述

image-20210413172211788

三、agent部署

选择您Zabbix服务器的平台

在这里插入图片描述

为您的平台安装和配置Zabbix
a. 安装Zabbix存储库

产品手册

[root@client ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm# yum clean all
b. 安装Zabbix agent
[root@client ~]# yum install zabbix-agent
[root@client ~]# vim /etc/zabbix/zabbix_agentd.conf #修改配置文件
Server=192.168.20.144       #指明服务器是谁
ListenPort=10050            #自己监听的端口
ListenIP=0.0.0.0            #自己监听的地址,0.0.0.0表示本机所有地址
StartAgents=3               #优化时使用的

ServerActive=192.168.20.144 #主动监控时的服务器
Hostname=node1.keer.com     #自己能被server端识别的名称
c. 启动Zabbix agent进程

启动Zabbix agent进程,使其在系统启动时启动。

[root@client ~]# systemctl restart zabbix-agent
[root@client ~]# systemctl enable zabbix-agent

四、前端添加

a.添加主机组

在这里插入图片描述

b.添加主机

在这里插入图片描述

c.添加监控项

在这里插入图片描述

测试

在这里插入图片描述

[root@zabbix-server ~]# zabbix_get -s 192.168.20.145 -p 10050 -k "system.cpu.intr"
1351367
d.添加触发器

在这里插入图片描述
在这里插入图片描述

e.添加图形

在这里插入图片描述
在这里插入图片描述

修改字体

#上传字体包,改名
[root@zabbix-server ~]# mv simkai.ttf  zabbix-web-font
[root@zabbix-server ~]# mv zabbix-web-font  /etc/alternatives/zabbix-web-font
mv:是否覆盖"/etc/alternatives/zabbix-web-font"? y

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/152220.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

『Linux升级路』基本指令

🔥博客主页:小王又困了 📚系列专栏:Linux 🌟人之为学,不日近则日退 ❤️感谢大家点赞👍收藏⭐评论✍️ 目录 一、认识操作系统 📒1.1什么是操作系统 📒1.2操作系统…

基于ssm的高校共享单车管理系统(有报告)。Javaee项目,ssm项目。

演示视频: 基于ssm的高校共享单车管理系统(有报告)。Javaee项目,ssm项目。 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 项目介绍&…

torch_cluster、torch_scatter、torch_sparse三个包的安装

涉及到下面几个包安装的时候经常会出现问题,这里我使用先下载然后再安装的办法: pip install torch_cluster pip install torch_scatter pip install torch_sparse 1、选择你对应的torch版本:https://data.pyg.org/whl/ 2、点进去然后&…

智慧工地AI视频管理平台源码

智慧工地是指以物联网、移动互联网技术为基础,充分应用人工智能等信息技术,通过AI赋能建筑行业,对住建项目内人员、车辆、安全、设备、材料等进行智能化管理,实现工地现场生产作业协调、智能处理和科学管理。智慧工地的核心是以一…

HBase中的数据表是如何用CHAT进行分区的?

问CHA:HBase中的数据表是如何进行分区的? CHAT回复: 在HBase中,数据表是水平分区的。每一个分区被称为一个region。当一个region达到给定的大小限制时,它会被分裂成两个新的region。 因此,随着数据量的增…

[C++]:8.C++ STL引入+string(介绍)

C STL引入string(介绍) 一.STL引入:1.什么是STL2.什么是STL的版本:2-1:原始版本:2-2:P. J 版本:2-3:RW 版本:2-4:SGL版本: 3.STL 的六大组件&…

并发编程之生产者消费者模型

什么是生产者消费者模型 生产者消费者模型是多线程中一个比较典型的模型。 打个比方:你是一个客户,你去超市里买火腿肠。 这段话中的 "你"就是消费者, 那么给超市提供火腿肠的供货商就是生产者。超市呢?超市是不是被…

php连接sqlserver 安装sqlserver 驱动windows系统

第一步下载Windows 上的 Microsoft ODBC Driver for SQL Server ODBC 驱动程序 Microsoft ODBC Driver for SQL Server 直接下载安装即可,安装后可查看安装版本 第二步:下载php_sqlsrv 驱动 安装解压后,会有对应php版本的驱动文件&#xf…

草图一键生成静态网页,看看这个开源项目

借助GPT-4V视觉模型,可以轻松的将一张草图生成一个静态页面。现在这已经不是什么稀奇事了。主要是分享一下它的Prompt,很简单,用户画好草图后,将草图保存成png图片,传给GPT-4V,然后GPT返回一个标准的HTML&a…

Navicat for mysql 无法连接到虚拟机的linux系统下的mysql

原创/朱季谦 最近在linux Centos7版本的虚拟机上安装了一个MySql数据库,发现本地可以正常ping通虚拟机,但Navicat则无法正常连接到虚拟机里的MySql数据库,经过一番琢磨,发现解决这个问题的方式,很简单,总共…

9.MyBatis-Plus

1、前期准备 a. 创建数据库 CREATE TABLE USER (id BIGINT(20)NOT NULL COMMENT 主键ID,NAME VARCHAR(30)NULL DEFAULT NULL COMMENT 姓名,age INT(11)NULL DEFAULT NULL COMMENT 年龄,email VARCHAR(50)NULL DEFAULT NULL COMMENT 邮箱,PRIMARY KEY (id) );INSERT INTO user…

亚马逊云科技云存储服务指南

文章作者:Libai 高效的云存储服务对于现代软件开发中的数据管理至关重要。亚马逊云科技云存储服务提供了强大的工具,可以简化工作流程并增强数据管理能力。 亚马逊云科技开发者社区为开发者们提供全球的开发技术资源。这里有技术文档、开发案例、技术专栏…

常见的业务分析方法

树状结构分析 由于数据维度的丰富性,不知从哪个维度开始分析,如果每个维度都尝试下探非常耗时。这时可以考虑从总体指标入手,逐层分解总体指标,形成下钻式结构。 分析思路如下: 梳理行业内常见指标;将指…

【Proteus仿真】【51单片机】锂电池管理系统

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真51单片机控制器,使用LCD1602显示模块、DS18B20温度传感器、PCF8691 ADC模块、按键、LED蜂鸣器模块等。 主要功能: 系统运行后,LCD1602显示温度…

如何做到百万数据半小时跑批结束

什么是跑批 跑批就是应用程序定时对数据的批量处理。 跑批有以下特性: 大数据量:批量任务一般伴随着大量的数据处理 自动化:要求制定时间或频率自动运行 性能:要求在指定时间内完成批处理任务 健壮性:针对于异常数…

BI 数据可视化平台建设(2)—筛选器组件升级实践

作者:vivo 互联网大数据团队-Wang Lei 本文是vivo互联网大数据团队《BI数据可视化平台建设》系列文章第2篇 -筛选器组件。 本文主要介绍了BI数据可视化平台建设中比较核心的筛选器组件, 涉及组件分类、组件库开发等升级实践经验,通过分享一些…

anaconda中安装pytorch和TensorFlow环境并在不同环境中安装kernel

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

Redis最新2023年面试题高级面试题及附答案解析(2)【Redis最新2023年面试题高级面试题及附答案解析-第三十九刊】

文章目录 Redis最新2023年面试题高级面试题及附答案解析(2)01、Redis 集群方案应该怎么做?都有哪些方案?02、Redis 的内存用完了会发生什么?03、怎么测试 Redis 的连通性?04、Redis 集群会有写操作丢失吗?为什么&#…

【java学习—十五】Thread类的有关方法(3)

文章目录 1. 基本方法2. 线程的优先级3. 进阶方法3.1. 举例3.1.1. 线程让步3.1.2. join() 方法3.1.3. sleep()方法3.1.4. stop() 方法3.1.4. isAlive() 方法 1. 基本方法 方法名作用void start()启动线程,并执行对象的 run() 方法run()线程在被调度时执行的操作Str…

T13级专家被毕业?!研发大牛被裁带来的警示丨IDCF

2005年加入腾讯,腾讯第一位Web前端专家,T13职级,今年1月仍是腾讯前端最高专家。 在47岁的时候,拥有这样简历的前端大牛黄希彤被腾讯裁员。 黄希彤夫人在小红书上透露:(黄希彤)在鹅厂工作了15年…