zabbix介绍 | 监控搭建和部署

news2024/12/23 5:40:23

zabbix介绍 | 监控搭建和部署

  • 一.Zabbix简介
  • 二.Zabbix监控原理
  • 三.Zabbix监控的最常见五个程序组件
  • 四,搭建zbx监控
    • 4.1准备二台虚拟机
    • 4.2 服务端客户端获取 zabbix 的下载源
    • 4.3 服务端安装修改 192.168.10.10
    • 4.4 服务端安装 zabbix 所需的数据库(192.168.10.10)
    • 4.5 添加数据库用户
    • 4.6 导入数据库信息
    • 4.7 修改服务端配置文件
    • 4.8 修改 zabbix 的 php 配置文件
    • 4.9 启动 zabbix 相关服务
    • 4.10 解决 zabbix-server Web页面中文乱码问题
  • 五 部署 zabbix 客户端 192.168.10.20
    • 5.1 安装zabbix客户端包
    • 5.2 修改客户端zabbix配置文件
    • 5.3 启动客户端agent2验证
  • 六 在 Web 页面中添加 agent 主机
    • 6.1 创建主机
    • 6.2 创建模板
    • 6.3 客户端添加自定义监控 192.168.10.20
    • 6.4 在 Web 页面创建自定义监控项模板
    • 6.5 创建应用集(用于管理监控项的)
    • 6.6 创建监控项
    • 6.7 创建触发器(当监控项获取到监控的值后和触发器预设的值进行对比,判断是否报警)
    • 6.8 创建图形
    • 6.9 将主机与模板关联起来
    • 6.10设置邮件报警

一.Zabbix简介

zabbix是一个基于 web 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营﹔并提供灵活的通知机制以让系统管理员快速定位./解决存在的各种问题。zabbix由2部分构成,zabbix server与可选组件zabbix agent。通过c/s模式采集数据,通过 B/S模式在Web 端展示和配置。zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,
它可以运行在Linux等平台上。
zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。

二.Zabbix监控原理

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

三.Zabbix监控的最常见五个程序组件

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

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

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

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

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

四,搭建zbx监控

4.1准备二台虚拟机

zabbix-server 内存至少 2G,推荐 4G
192.168.10.10                 zabbix 服务端
192.168.10.20                 zabbix 客户端 +nginx
systemctl stop firewalld      关闭防火墙
setenforce  0                 关闭selinux
192.168.10.10         hostnamectl set-hostname zbx-server
192.168.10.20         hostnamectl set-hostname zbx-agent
yum install -y ntpdate
ntpdate -u ntp.aliyun.com       #配置时间同步

请添加图片描述
请添加图片描述

4.2 服务端客户端获取 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                      # 将文档中更换zabbix为aliyun
yum clean all && yum makecache           #清理缓存源

请添加图片描述

4.3 服务端安装修改 192.168.10.10

安装 zabbix-server-mysql,zabbix-agent
yum install -y zabbix-server-mysql zabbix-agent
安装SCL
yum install -y centos-release-scl
修改zabbix-front前端源,安装zabbix前端环境到scl环境下4
vim zabbix.repo 
第11行修改
enabled=1                           #开启安装源
之后在安装
yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl

请添加图片描述

4.4 服务端安装 zabbix 所需的数据库(192.168.10.10)

安装mariadb并开启
yum install -y mariadb-server mariadb
systemctl enable --now mariadb.service 

修改mariadb密码
mysql_secure_installation
#初始化数据库,并设置密码,如 abc123 

请添加图片描述
请添加图片描述

4.5 添加数据库用户

 添加数据库用户,以及 zabbix 所需的数据库信息
mysql -u root -p abc123

CREATE DATABASE zabbix character set utf8 collate utf8_bin;
GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix';
flush privileges;

请添加图片描述

4.6 导入数据库信息

rpm -ql zabbix-server-mysql                  #查询sql文件的位置
zcat /usr/share/doc/zabbix-server-mysql-5.0.33/create.sql.gz | mysql -uroot -pabc123 zabbix
mysql -uroot -pabc123                 #登录mysql查看
use zabbix;                           #切换到zabbix
show tables;                          #查看zabbix的表

请添加图片描述

4.7 修改服务端配置文件

vim /etc/zabbix/zabbix_server.conf 
124行取消注释 修改成
DBPassword=zabbix

请添加图片描述

4.8 修改 zabbix 的 php 配置文件

vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
24行,取消注释,修改时区
php_value[date.timezone] = Asia/Shanghai

请添加图片描述

4.9 启动 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.10.10/zabbix
点击下一步,设置数据库的密码 zabbix
设置文件界面:点击左边菜单栏的【User settings】,【Language】选择 Chinese(zh_CN),再点击 Update 更
安装完成后,默认的登录账号和密码为:Admin/zabbix新。

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

4.10 解决 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

请添加图片描述

五 部署 zabbix 客户端 192.168.10.20

5.1 安装zabbix客户端包

因为上面我已经讲二台机子同时安装ntp和安装源,所以直接操作以下的
mv /etc/localtime{,.bak}                                   #备份时间文件
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime      #创建软连接
yum install -y zabbix-agent2                              #安装zabbix客户端

请添加图片描述

5.2 修改客户端zabbix配置文件

vim /etc/zabbix/zabbix_agent2.conf 
Server=192.168.10.10		#80行,指定 zabbix 服务端的 IP 地址
ServerActive=192.168.10.10		#125行,指定 zabbix 服务端的 IP 地址
Hostname=zbx-agent01			#136行,指定当前 zabbix 客户端的主机名

请添加图片描述
请添加图片描述

5.3 启动客户端agent2验证

systemctl start zabbix-agent2
systemctl enable zabbix-agent2

netstat -natp | grep zabbix         #查看服务是否开启


!注意切换到服务端验证 192.168.10.10
在服务端验证 zabbix-agent2 的连通性
yum install -y zabbix-get				    #安装 zabbix 主动获取数据的命令

zabbix_get -s '192.168.10.20' -p 10050 -k 'agent.ping'   
1                                           #这个命令可以验证服务端是否连接成功,1为成功,0为失败

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

请添加图片描述

六 在 Web 页面中添加 agent 主机

6.1 创建主机

点击左边菜单栏【配置】中的【主机】,点击【创建主机】
【主机名称】设置成 zbx-agent01
【可见的名称】设置成 zbx-agent01-192.168.10.20
【群组】选择 Linux server
【Interfaces】的【IP地址】设置成 192.168.10.20

请添加图片描述

6.2 创建模板

再点击上方菜单栏【模板】
【Link new tamplates】搜索 Linux ,选择 Template OS Linux by Zabbix agent
点击 【添加】

请添加图片描述

6.3 客户端添加自定义监控 192.168.10.20

1.明确需要执行的 linux 命令
who | wc -l

2.创建 zabbix 的监控项配置文件,用于自定义 key
vim /etc/zabbix/zabbix_agent2.conf
#可以将自定义的监控项配置文件创建在 zabbix_agent2.d 目录中
273 Include=/etc/zabbix/zabbix_agent2.d/*.conf
#自定义监控项的格式如下
#296 	Format: UserParameter=<key>,<shell command> 复制下来

cd /etc/zabbix/zabbix_agent2.d/

vim UserParameter_login.conf
UserParameter=login.user,who|wc -l

systemctl restart zabbix-agent2

3.在服务端验证新建的监控项
zabbix_get -s '192.168.10.20' -p 10050 -k 'login.user'

请添加图片描述

vim UserParameter_login.conf

在这里插入图片描述
请添加图片描述

6.4 在 Web 页面创建自定义监控项模板

1.创建模板
点击左边菜单栏【配置】中的【模板】,点击【创建模板】
【模板名称】设置成 Template Login User
【可见的名称】设置成 Template Login User
【群组】选择 Templates
【描述】可自定义
点击 【添加】,此时就可在【链接的模板】中搜索到 Template Login User 了

在这里插入图片描述
请添加图片描述

6.5 创建应用集(用于管理监控项的)

点击上方菜单栏【应用集】,点击【创建应用集】
【名称】设置成 Login User
点击 【添加】

请添加图片描述
请添加图片描述
请添加图片描述

6.6 创建监控项

点击上方菜单栏【监控项】,点击【创建监控项】【名称】设置成 Number of login users【键值】设置成 login.user #键值必须要与自定义的监控项配置文件中设置的保持一致、【更新间隔】设置成 10s、【历史数据保留时长】Storage period 30d #保留时间可自定义设置、点击 【添加】

请添加图片描述
请添加图片描述

6.7 创建触发器(当监控项获取到监控的值后和触发器预设的值进行对比,判断是否报警)

点击上方菜单栏【触发器】,点击【创建触发器】
【名称】设置成 Number of login users is greater than 3
【严重性】设置成 一般严重
【表达式】点击添加,【监控项】点击选择 Number of login users,【功能】选择 last(),【结果】选择 > 3,点击 【插入】
点击 【添加】

请添加图片描述

6.8 创建图形

点击上方菜单栏【图形】,点击【创建图形】
【名称】设置成 Number of login users
【宽】、【高】可直接采用默认值
【监控项】点击添加勾选相关监控项 Number of login users,【功能】选择 最大,其它可保持默认值
点击 【添加】

请添加图片描述
请添加图片描述

6.9 将主机与模板关联起来

(一个主机可以关联多个模板)点击左边菜单栏【配置】中的【主机】,点击你要关联的主机、点击上方菜单栏【模板】,【Link new tamplates】搜索 login,选择 Template Login User,点击【更新】

请添加图片描述
请添加图片描述
请添加图片描述

6.10设置邮件报警

点击左边菜单栏【管理】中的【报警媒介类型】,点击【创建媒体类型】
【名称】设置成 qq_Email
【SMTP服务器】设置成 smtp.qq.com
【SMTP服务器端口】设置成 25
【SMTP HELO】设置成 qq.com
【SMTP电邮】设置成 自己的邮箱地址,例如 704397225@qq.com
【认证】选择 用户名和密码
【用户名称】设置成 自己的邮箱地址,例如 704397225@qq.com
【密码】可登录QQ邮箱页面,点击【设置】-->【账户】中的【生成授权码】,通过短信获取授权码
【描述】可自定义                        
点击上方菜单栏【Message templates】,点击【添加】,【Message type】选择 问题,点击【更新】
点击 【添加】,并测试功能

点击左边菜单栏【User settings】-->【报警媒介】,点击【添加】
【类型】选择 qq_Email
【收件人】设置成 704397225@139.com
【当启用时】设置成 1-7,00:00-24:00
点击 【添加】
再点击 【更新】

点击左边菜单栏【配置】中的【动作】,选择相对应的动作名称,点击【启用】

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

点监督的实例分割

目录Pointly-Supervised Instance Segmentation摘要方法Annotation format and collection训练点标记模型实验结果Pointly-Supervised Instance Segmentation 摘要 点注释来进行实例分割的弱监督标签除了边界框还有一组随机点对PointRend实例分割模块的修改对于每个对象&…

2020年 团体程序设计天梯赛——题解集

Hello各位童学大家好&#xff01;&#x1f60a;&#x1f60a;&#xff0c;茫茫题海你我相遇即是缘分呐&#xff0c;或许日复一日的刷题已经让你感到疲惫甚至厌倦了&#xff0c;但是我们真的真的已经达到了我们自身极限了吗&#xff1f;少一点自我感动&#xff0c;没有结果前别太…

Python爬虫基础之如何对爬取到的数据进行解析

目录1. 前言2. Xpath2.1 插件/库安装2.2 基础使用2.3 Xpath表达式2.4 案例演示2.4.1 某度网站案例3. JsonPath3.1 库安装3.2 基础使用3.2 JsonPath表达式3.3 案例演示4. BeautifulSoup4.1 库安装4.2 基础使用4.3 常见方法4.4 案例演示参考文献原文地址&#xff1a;https://www.…

OpenCV实例(二)手势识别

OpenCV实例&#xff08;二&#xff09;手势识别1.手势识别概述1.1.获取轮廓的凸包1.2.凸缺陷1.3.凸缺陷占凸包面积比2.手势识别过程2.1.识别流程3.石头、剪刀、布的识别作者&#xff1a;Xiou 1.手势识别概述 手势识别的范围很广泛&#xff0c;在不同场景下&#xff0c;有不同…

tp5实现导入excel表到数据库

hello&#xff0c;大家好&#xff0c;好长时间没有更新文章了。最近一直在忙着做项目。所以断更了。 那么好&#xff0c;各位老铁是否想要实现导入导出的功能 请关注我&#xff0c;解密如何实现导入导出&#xff0c; 那么今天先来讲一下用thinkphp5.0 如何实现Excel表格导入数据…

如何实现 Java SpringBoot 自动验证入参数据的有效性

Java SpringBoot 通过javax.validation.constraints下的注解&#xff0c;实现入参数据自动验证 如果碰到 NotEmpty 否则不生效&#xff0c;注意看下 RequestBody 前面是否加上了Valid Validation常用注解汇总 Constraint详细信息Null被注释的元素必须为 nullNotNull被注释的元…

CentOS7.6 磁盘挂载

CentOS7.6 磁盘挂载 目录CentOS7.6 磁盘挂载1.磁盘说明2.磁盘分区步骤1.磁盘说明 1、Linux硬盘分IDE硬盘和SCSI硬盘&#xff0c;目前基本上是SCSI硬盘 2、对于IDE硬盘&#xff0c;驱动器标识符为"hdx"&#xff0c;""代表分区&#xff0c;前四个分区用数字…

selenium1—软件测试

文章目录1.什么是自动化测试2.如何实施自动化测试3.UI自动化测试的好处4.自动化框架5.为什么要选择selenium6.webdrive的原理7.selenium IDE1.什么是自动化测试 在预设的条件下&#xff08;自动化脚本&#xff09;运行系统&#xff0c;预设的条件包括正常的和异常的情况&#…

BGP反射器与联邦实验

基础配置 display ip interface brief Interface IP Address/Mask Physical Protocol GigabitEthernet0/0/0 12.0.0.2/24 up up GigabitEthernet0/0/1 172.16.1.1/29 up up GigabitEthernet0/0/2 172.16.1.9/29 up up LoopBack0 172.16.2.1/24 up up(s) NULL0 unassigned up u…

AI 工具 22个使用场景、500个通用提问技巧说明

✏️ 「提问技巧—重点摘要」 「写作」&#xff1a;AI写作提问技巧 「制作视频」&#xff1a;AI制作视频创意提问相关技巧 【制定商业策略】&#xff1a;AI为各行各业制定商业策略提问技巧 【写邮件】&#xff1a;AI写邮件提问技巧 【框架方法论写内容】&#xff1a;AI利用…

【云原生概念和技术】1.1 云原生的概述

如果想了解或者学习云原生的友友们&#xff0c;欢迎订阅哦&#xff5e;&#x1f917;&#xff0c;目前一周三更&#xff0c;努力码字中&#x1f9d1;‍&#x1f4bb;…目前第一章是一些介绍和概念性的知识&#xff0c;可以先在脑海里有一个知识的轮廓&#xff0c;从第二章开始就…

Caffe

目录 1、简述 2、项目起源 3、架构设计 4、极智AI相关内容 1、简述 Caffe&#xff08;全称Convolutional Architecture for Fast Feature Embedding&#xff09;是一个兼具表达性、速度和思维模块化的深度学习框架&#xff0c;由伯克利人工智能研究小组和伯克…

小红书热词速看 | 古茗有何营销动作?

【导语】 据古茗官方数据&#xff0c;新系列推出当日即售空&#xff0c;单店最高出杯420杯&#xff0c;最快24小时内卖断货&#xff1b;上架3天&#xff0c;销量突破100万杯&#xff1b;10天&#xff0c;就售出了343万杯&#xff0c;其中2款牛油果奶昔用掉了40万斤牛油果&…

Hadoop完全分布式运行模式配置(开发重点)

目录 Hadoop是一个海量数据存储和计算的框架 Hadoop优点&#xff1a; 3.2 完全分布式运行模式&#xff08;开发重点&#xff09; 3.2.1 虚拟机准备 3.2.2 编写集群分发脚本xsync 3.2.3 SSH无密登录配置 3.2.4 集群配置 3.2.5 群起集群 3.2.6 配置历史服务器 3.2.7 配…

SpringBoot【运维实用篇】---- SpringBoot程序的打包与运行

SpringBoot【运维实用篇】---- SpringBoot程序的打包与运行程序打包程序运行SpringBoot程序打包失败处理命令行启动常见问题及解决方案刚开始做开发学习的小伙伴可能在有一个知识上面有错误的认知&#xff0c;我们天天写程序是在Idea下写的&#xff0c;运行也是在Idea下运行的。…

【从零开始学Skynet】基础篇(七):Mysql数据库常用API

在上一篇中我们完成了对Mysql数据库的准备工作之后&#xff0c;这一篇我们写一个程序测试一下。 1、Mysql API 在写程序之前&#xff0c;我们先学习一下Mysql数据库常用API的使用&#xff1a; API说明mysql.connet(args)连接数据库&#xff0c;参数args是一个Lua表&#xff0c…

责任链设计模式(Chain of Responsibility Pattern)[论点:概念、组成角色、图示、相关代码、框架中的运用、适用场景]

文章目录概念组成角色相关图示示例代码框架中的应用适用场景&#xff1a;概念 责任链模式&#xff08;Chain of Responsibility Pattern&#xff09;是一种行为设计模式&#xff0c;其主要目的是将请求的发送者和接收者解耦。这种模式创建了一系列处理器对象&#xff0c;每个处…

Shell Script

目录Shell Script的概述Shell的主要版本Shell脚本的建立与执行Shell中的变量Shell中的特殊字符通配符双引号倒引号&#xff08;&#xff09;顺序分隔符&#xff08;&#xff1b;&#xff09;管道符逻辑与&#xff08;&&&#xff09;和逻辑或&#xff08;||&#xff09;…

synchronized原理详解

众所周知&#xff0c;使用多线程可以极大地提升程序的性能&#xff0c;但如果多线程使用不合理&#xff0c;也会带来很多不可控的问题&#xff0c;例如线程安全问题。 什么是线程安全问题呢&#xff1f;如果多个线程同时访问某个方法时&#xff0c;这个方法无法得到我们预期的…

同步FIFO、异步FIFO详细介绍、verilog代码实现、FIFO最小深度计算、简答题

文章目录前言一、多bit数据流跨时钟域传输——FIFO1、FIFO分类2、常见参数3、与普通存储器的区别4、FIFO优缺点二、同步FIFO1、计数器法2、高位扩展法3、单端口和双端口RAM3.1 单端口RAM3.2 双端口RAM4、例化双端口RAM实现同步FIFO三、异步FIFO1、格雷码1.1 二进制和格雷码之间…