分布式系统监控zabbix安装部署及使用

分布式系统监控zabbix安装部署及使用

一.zabbix监控

1.什么是zabbix

zabbix:是一款开源免费的,自动化发现服务与网络设备的分布式监控,可以监视应用层服务并以web前端页面集中管理并展示。

2.zabbix功能

监控服务器cpu负载、服务器内存使用、服务器磁盘使用及网络状态、还可以监控中间件。

缺点:只支持传统运维,不支持容器

3.zabbix的构成

zabbix是C/S架构由zabbbix server和zabbix agent组成

zabbix server :负责存储展示硬件信息,通过B/S模式传给web端展示配置

zabbix agent :监控收集服务器信息,端口号为10050

4.zabbix的3种架构

4.1 C/S架构

(1)被监控的机器和zabbix直接相连zabbix agent负责采集服务器的信息,zabbix server 负责存储并通过web展示硬件信息

(2)zabbix服务端与客户端是最简单的架构,监控机器和别监控机器之间不经过任何处理,直接由zabbix-server 和zabbix-agent之间进行数据交换。

(3)适用于网络比较简单,尽量在局域网内,设备比较少的监控环境

在这里插入图片描述

4.2 分布式架构:zabbix-proxy-client架构

(1)被监控的机器和zabbix中间有个proxy代理,zabbix agent将采集的信息传到代理上由代理同一传给zabbix server进行前端页面展示和数据存储。

(2)proxy是server和客户端沟通的桥梁,proxy本身没有前端且其本身并不存放数据,只是将agent发来的数据暂时存放,而后再提交给server,这种架构是和master-node-client架构做比较的架构,(3)一般适用于跨机房、跨网络、或中型网络架构的监控

在这里插入图片描述

4.3 master-node-client架构

(1)master下有node节点,node可以存储数据,node有自己的配置文件和数据库注意负责将配置信息和监控数据与master同步,node下可以直接接入主机或接入代理proxy。

(2)适用于跨机房、跨网络、大环境下

在这里插入图片描述

5.zabbix工作原理及数据流向

(1)zabbix agent在主机上采集监控数据,将采集的数据传给zabbix server

(2)zabbix server收到数据后将数据存在自己的数据库中

(3)然后从数据库中提取数据进行分析,是否需要报警

(4)分析完成后server在web前端页面进行界面数据展示
在这里插入图片描述

6.zabbix监控模式

(1)主动模式:zabbix agent主动将采集到的监控信息传输给zabbix server

(2)被动模式:zabbix server向zabbix agent索引采集到的监控信息,zabbix agent返回采集到的数据

二.zabbix部署及图形化页面显示设置(192.168.198.17)

一台2核4G内存数据库,至少2核2G

1.zabbix安装部署

#永久关闭并现在立即关闭防火墙及关闭selinux
systemctl disable --now firewalld
setenforce 0
#更改主机名
hostnamectl set-hostname zbx-server
#获得zabbix下载yum源
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.dsed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' zabbix.repo
#编辑配置文件 开启安装源
vim zabbix.repo
[zabbix-frontend]
......
#1表示开启安装源
enabled=1          
......
#进入yum源目录文件并使用sed将国外源替换为阿里云源
yum clean all && yum makecache
#清除原理yum源缓存并加载新的yum
yum install -y zabbix-server-mysql zabbix-agent
#安装zabbix客户端和服务端
yum install -y centos-release-scl
#安装scl,原因为便于后续安装高版本的 php,默认 yum 安装的 php 版本为 5.4zabbix要求php版本为7.2以上,若达到要求则无须安装scl
yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl
#安装连接数据库和连接apache前端页面的连接工具
yum install -y mariadb-server mariadb
#安装并开启数据库
systemctl enable --now mariadb

GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix';
CREATE DATABASE zabbix character set utf8 collate utf8_bin;#初始化数据库,并设置密码,如 abc123选择执行,先回车,然后输入2次自己想设置的密码,其他全部yes即可
mysql_secure_installation
#登录数据库
mysql -u root -pabc123
#创建zabbix库并设置库格式为utf-8
CREATE DATABASE zabbix character set utf8 collate utf8_bin;
#创建并授权zabbix远程登录用户密码为zabbix
GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix';
#刷新数据
flush privileges;
ctrl + c退出数据库
#查询zabbix数据库中配置文件的位置
rpm -ql zabbix-server-mysql
#将zabbix数据库格式导入数据库中,此处需要等待10s左右
zcat /usr/share/doc/zabbix-server-mysql-5.0.33/create.sql.gz | mysql -uroot -pabc123 zabbix(导入的库名)
vim /etc/zabbix/zabbix_server.conf 
DBPassword=zabbix					#124行,去掉#注释然后指定 zabbix 数据库的密码
#编辑zabbix配置文件将设置的远程登录用户的密码zabbix输入进去保存退出
vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
php_value[date.timezone] = Asia/Shanghai		#24行,取消注释,修改时区
#编辑php的配置文件,将时区改为亚洲上海,注意去掉前面的;在此文件中表示注释
#重启zabbix服务php服务并设置开机自启
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm

2.zabbix图形化页面显示设置

2.1 浏览器输入部署zabbix的服务器

http://192.168.198.17/zabbix进入配置页面

在这里插入图片描述

2.2 点击netxt step进入下一步检查zabbix配置,所有状态都要为ok,若有问题则需要去服务器侧检查配置

在这里插入图片描述

2.3 如果所有配置都ok,点击下一步使用zabbix账户登录数据库

在这里插入图片描述

2.4 连接到数据库进行下一步配置zabbix信息

在这里插入图片描述

2.5 配置完成zabbix后检查配置项然后点击下一步保存安装

在这里插入图片描述

2.6 信息检查完成后点击结束安装完成

在这里插入图片描述

2.7 结束后登录验证,默认账户为:Admin 默认密码为:zabbix

在这里插入图片描述

2.8 登录完成后主页面如下

在这里插入图片描述

2.9 修改zabbix语言为中文,点击user settings然后选择语言为中文,点击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

三.Zabbix监控使用

开启另一台服务器进行zabbix agent客户端系统安装

1.部署 zabbix 客户端(192.168.198.18)

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

客户端 zabbix_agent2 默认使用 10050 端口。

#关闭防火墙和selinux,更改主机名并运行bash刷新主机名
systemctl disable --now firewalld
setenforce 0hostnamectl set-hostname zbx-agent01
su
#服务端和客户端都配置时间同步
yum install -y ntpdate
ntpdate -u ntp.aliyun.com8 Aug 15:05:51 ntpdate[44329]: adjust time server 203.107.6.88 offset -0.027015 sec
#客户端配置时区,与服务器保持一致
mv /etc/localtime{,.bak}
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
date
2023年 08月 08日 星期二 15:07:32 CST
#设置 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.repoyum install -y zabbix-agent2
#修改 agent2 配置文件
vim /etc/zabbix/zabbix_agent2.conf
......
Server=192.168.198.17			#80行,指定 zabbix 服务端的 IP 地址
ServerActive=192.168.198.17		#120行,指定 zabbix 服务端的 IP 地址
Hostname=zbx-agent01			#134行,指定当前 zabbix 客户端的主机名
#启动 zabbix-agent2
systemctl start zabbix-agent2
systemctl enable zabbix-agent2netstat -natp | grep zabbix
tcp6       0      0 :::10050                :::*                    LISTEN      44454/zabbix_agent2 

2.服务端验证 zabbix-agent2 的连通性(192.168.198.17)

#安装 zabbix 主动获取数据的命令
yum install -y zabbix-get				
zabbix_get -s '192.168.198.18' -p 10050 -k 'agent.ping'
1zabbix_get -s '192.168.198.18' -p 10050 -k 'system.hostname'
zbx-agent01

3.Web 页面中添加agent 主机

3.1 点击左边菜单栏【配置】中的【主机】,点击【创建主机】

【主机名称】设置成 zbx-agent01
【可见的名称】设置成 zbx-agent01-192.168.10.21
【群组】选择 Linux server
【Interfaces】的【IP地址】设置成 192.168.10.21

再点击上方菜单栏【模板】
【Link new tamplates】搜索 Linux ,选择 Template OS Linux by Zabbix agent
点击 【添加】
在这里插入图片描述

在这里插入图片描述

4.配置主机模板

在这里插入图片描述

在这里插入图片描述

5.自定义监控内容(在客户端创建自定义 key:192.168.198.18)

案列:自定义监控客户端服务器登录的人数
需求:限制登录人数不超过 3 个,超过 3 个就发出报警信息

5.1 明确需要执行的 linux 命令

who | wc -l
3

5.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

5.3 在服务端验证新建的监控项

[root@zbx-server opt]# zabbix_get -s '192.168.198.18' -p 10050 -k 'login.user'
3

此处为3是在客户端有三个用户,则监控的是这三个用户

[root@zbx-agent01 zabbix_agent2.d]# who
root     :0           2023-08-05 18:58 (:0)
root     pts/0        2023-08-05 19:03 (:0)
root     pts/1        2023-08-08 15:03 (192.168.198.1

6.web页面配置自定义监控模板

在这里插入图片描述

6.1 创建模板

点击左边菜单栏【配置】中的【模板】,点击【创建模板】
【模板名称】设置成 Template Login User
【可见的名称】设置成 Template Login User
【群组】选择 Template
【描述】可自定义
点击 【添加】此时就可在【名字】中搜索到 Template Login User 了
在这里插入图片描述

在这里插入图片描述

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

点击上方菜单栏【应用集】,点击【创建应用集】
【名称】设置成 Login User
点击 【添加】
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.3 创建监控项

点击上方菜单栏【监控项】,点击【创建监控项】

【名称】设置成 Number of login users
【键值】设置成 login.user #键值必须要与自定义的监控项配置文件中设置的保持一致
【更新间隔】设置成 10s
【历史数据保留时长】Storage period 30d #保留时间可自定义设置
点击 【添加】
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.4 创建触发器

【名称】设置成 Number of login users is greater than 3
【严重性】设置成 一般严重
【表达式】点击添加,【监控项】点击选择 Number of login users,【功能】选择 last(),【结果】选择 > 3,点击 【插入】
点击 【添加】
在这里插入图片描述
在这里插入图片描述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5movNoXC-1691941788392)(C:\Users\zhao\AppData\Roaming\Typora\typora-user-images\image-20230808162258968.png)]在这里插入图片描述

6.5 创建图形

【名称】设置成 Number of login users
【宽】、【高】可直接采用默认值
【监控项】点击添加勾选相关监控项 Number of login users,【功能】选择 最大,其它可保持默认值
点击 【添加】
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.6 设置邮件报警

点击左边菜单栏【管理】中的【报警媒介类型】,点击【创建媒体类型】
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

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

6.7 添加告警告知邮箱

点击左边菜单栏【用户设置】–>【报警媒介】,点击【添加】

在这里插入图片描述

在这里插入图片描述
测试可开超过3台客户端的端口在监控的系统上刷新查看即可触发告警发送告警邮件、短信、钉钉、语音系统识别等

7.zabbix 自动发现与自动注册

7.1 zabbix自动发现说明

自动发现与自动注册指的是相对服务器而言,若为被动发现则需要手动将客户端机器添加到zabbix中,若是自动发现则是在zabbix上配置,由zabbix主动去扫描。

7.2 确保监控server agent2客户端是存活状态

server agent2上执行:
[root@zbx-agent01 zabbix_agent2.d]# systemctl is-active zabbix-agent2.service 
active#返回active即agent2正常

7.3 删除原有的客户端主机

点击左边菜单栏【配置】中的【主机】,勾选原有的客户端主机,点击 删除

在这里插入图片描述

7.4 客户端服务端添加hosts

vim /etc/hosts
192.168.198.17 zbx-server
192.168.198.18 zbx-agent01

7.5 web页面自动发现

点击左边菜单栏【配置】中的【自动发现】,点击【创建发现规则】【名称】设置成 mynetw3ork
【IP范围】设置成 192.168.30.1-254
【更新间隔】设置成 30s
【检查】点击【添加】,【检查类型】选择 Zabbix 客户端,【端口范围】设置成 10050,【键值】设置成 system.uname
【设备唯一性准则】选择 IP地址
【主机名称】选择 DNS名称
【可见的名称】选择 主机名称
勾选 【已启用】,点击 【更新】
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

7.6 发现客户端

点击左边菜单栏【配置】中的【动作】,上方菜单选择 【发现动作】
勾选 【发现动作】,点击 【启用】
在这里插入图片描述
在这里插入图片描述

7.7 验证发现结果

点击左边菜单栏【配置】中的【主机】刷新,等待一段时间后即可刷新出自动发现的客户端主机 ,需要等待一段时间。

0s
【检查】点击【添加】,【检查类型】选择 Zabbix 客户端,【端口范围】设置成 10050,【键值】设置成 system.uname
【设备唯一性准则】选择 IP地址
【主机名称】选择 DNS名称
【可见的名称】选择 主机名称
勾选 【已启用】,点击 【更新】
在这里插入图片描述
如长时间未出现需:
1.检查做过的配置文件是否有误
2.查看zabbix网页中的动作配置及自动发现是否正确
3.可以查看客户端的日志进行查看:tail -f /var/log/zabbix/zabbix agent2.log

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

adb 通过wifi连接手机

adb 通过wifi连接手机 1. 电脑通过USB线连接手机2. 手机开启USB调试模式&#xff0c;开启手机开发者模式3.手机开启USB调试模式 更多设置-》开发者选项-》USB调试4.点击Wi-Fi 高级设置&#xff0c;可以查看到手机Wi-Fi的IP地址&#xff0c;此IP地址adb命令后面的ip地址&#xf…

2023年国赛数学建模思路 - 案例:ID3-决策树分类算法

文章目录 0 赛题思路1 算法介绍2 FP树表示法3 构建FP树4 实现代码 建模资料 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 算法介绍 FP-Tree算法全称是FrequentPattern Tree算法&#xff0c;就是频繁模…

消息队列(11) - 通信协议的设计

目录 通信协议设计代码实现 通信协议设计 对于我们客户端与服务器之间的通信协议我们约定如下&#xff1a; 具体的协议设计: 之后我们传递的参数也是这些 关于 type其实是在描述当前这个请求 、 响应是在调用那个API 约定如下 对于channel ,是tcp链接中的一个逻辑上的链接,…

液体神经网络:LNN是个啥概念?

一、说明 在在人工智能领域&#xff0c;神经网络已被证明是解决复杂问题的非常强大的工具。多年来&#xff0c;研究人员不断寻求创新方法来提高其性能并扩展其能力。其中一种方法是液体神经网络&#xff08;LNN&#xff09;的概念&#xff0c;这是一个利用动态计算功能的迷人框…

IDEA如何调试Stream API

Stream API现在在实际开发中应用非常广泛&#xff0c;经常会遇到需要调试Stream API的场景&#xff0c;这篇文章主要讲解如何使用IDEA调试Stream Testpublic void test(){Stream.of(10, 20, 30, 40, 50).mapToInt(e->e*10).filter(e->e>200).forEach(System.out::pri…

笔记04:全局内存

一、CUDA内存模型概述 寄存器、共享内存、本地内存、常量内存、纹理内存和全局内存 一个核函数中的线程都有自己私有的本地内存。 一个线程块有自己的共享内存&#xff0c;对同一个线程块中所有的线程都可见&#xff0c;其内容持续线程块的整个生命周期。 所有线程都可以访问…

12.Eclipse导入Javaweb项目

同事复制一份他的项目给我ekp.rar (懒得从SVN上拉取代码了)放在workspace1目录下 新建一个文件夹 workspace2&#xff0c;Eclipse切换到workspace2工作空间 选择Import导入 选择导入的项目(这里是放到workspace1里面) 拷贝一份到workspace2里面 例子 所有不是在自己电脑上开发…

搭建openGauss 5.0 一主一从复制集群

openGauss是一款支持SQL2003标准语法&#xff0c;支持主备部署的高可用关系型国产数据库。 多种存储模式支持复合业务场景&#xff0c;新引入提供原地更新存储引擎。NUMA化数据结构支持高性能。Paxos一致性日志复制协议&#xff0c;主备模式&#xff0c;CRC校验支持高可用。支…

数字孪生如何实现物理世界和数字世界之间的交互?

在当今数字化时代&#xff0c;技术的飞速发展正在引领着各行各业的变革与创新。其中&#xff0c;数字孪生作为一项令人振奋的前沿技术&#xff0c;正在以惊人的方式实现着物理世界与数字世界的无缝交互。它不仅为企业带来了全新的商机&#xff0c;也为科学研究、生产制造等领域…

打造企业或者个人IP引流法

打造企业或者个人IP引流法. 大家好&#xff0c;我是百收网SEO编辑&#xff1a;狂潮老师&#xff0c;今天给大家分享企业IP打造的方法 首先我们想让人知道你的企业叫什么&#xff0c;怎么找到你的企业 这个时候我们就需要去各大平台发布信息&#xff0c;客户想了解直接去搜索…

php webshell 免杀入门

webshell 查杀软件&#xff1a; d盾、安全狗、护卫神、Sangfor WebShellKill 在线查杀 百度WEBDIR https://scanner.baidu.com 河马 https://www.shellpub.com cloudwalker牧云 https://webshellchop.chaitin.cn 查杀技术 静态检测、动态检测、日志检查 静态检查&#xff1a…

OceanBase 4.1.0 clog 目录探究

基于OceanBase 4.x 版本如何统计租户每日 clog 日志生成量的背景下&#xff0c;探究以及如何查看租户 clog 的使用情况。 作者&#xff1a;姜宇 爱可生 DBA 团队成员&#xff0c;擅长数据库故障排查和处理。对技术抱有热忱&#xff0c;实践是检验真理的唯一标准~ 本文来源&…

高忆管理:爆仓是什么意思?

爆仓是指在金融商场中&#xff0c;持有的某种资产价格大幅下跌&#xff0c;导致出资者的保证金不足以支持持仓&#xff0c;被逼平仓的现象。在股票、期货、外汇等商场中均或许呈现爆仓现象。在本文中&#xff0c;咱们将从多个视点分析爆仓的含义、原因和影响。 一、爆仓的含义 …

Azure概念介绍

云计算定义 云计算是一种使用网络进行存储和处理数据的计算方式。它通过将数据和应用程序存储在云端服务器上&#xff0c;使用户能够通过互联网访问和使用这些资源&#xff0c;而无需依赖于本地硬件和软件。 发展历史 云计算的概念最早可以追溯到20世纪60年代的时候&#x…

IDEA创建项目常见问题

1.IDEA修改maven路径无效 创建spring项目&#xff0c;Maven导入报错&#xff0c;无法正常导入jar报&#xff0c;发现setting中设置的maven路径不是自己下载的路径&#xff0c;修改后无效。运行之后maven路径又恢复为其默认的路径 解决方案&#xff1a; 删除.mvn文件&#xff0…

Grafana监控 Redis Cluster

Grafana监控 Redis Cluster 主要是使用grafana来实现监控&#xff0c;grafana可以对接多种数据源&#xff0c;在官网中可以找到Redis数据源&#xff0c;需要安装redis data source插件。当然也可以利用Prometheus来做数据源&#xff0c;下面分别记录一下这两种数据源的安装配置…

SQL-每日一题【1251. 平均售价】

题目 Table: Prices Table: UnitsSold 编写SQL查询以查找每种产品的平均售价。average_price 应该四舍五入到小数点后两位。 查询结果格式如下例所示&#xff1a; 解题思路 1.题目要求查询每种产品的平均售价。给出了两个表&#xff0c;我们用聚合查询来解决此问题。 2.首先我…

免费AI学习文档(二)

国内绘画midjourney网站 http://aijiaolian.chat优质提示词分解教学 https://q3iylvv7qj.feishu.cn/docx/UGMzdPVGjo1fHcxu1kjcuXFcnff?fromfrom_copylink设计图AI实战&#xff0c;如何用AI提高83%的出图效率&#xff1f;https://q3iylvv7qj.feishu.cn/docx/Fsxxd3MncowFUix5…

前后端分离------后端创建笔记(上)

本文章转载于【SpringBootVue】全网最简单但实用的前后端分离项目实战笔记 - 前端_大菜007的博客-CSDN博客 仅用于学习和讨论&#xff0c;如有侵权请联系 源码&#xff1a;https://gitee.com/green_vegetables/x-admin-project.git 素材&#xff1a;https://pan.baidu.com/s/…

html练习

html练习 工具代码运行结果 工具 HBuilder X 代码 <!DOCTYPE html> <html><head><meta charset"utf-8"><title>图灵之家</title></head><body><h1>图灵之家</h1><br><br><h2>我的…