zabbix 监控

zabbit 监控 非常成熟的监控软件。

运维人员,尽快系统服务器的状态,网站的流量,服务进程的运行状态。

保证整个集群的工作正常。7*24

zabbix是什么:

web界面提供的一种可视化监控服务软件。

分布式的方式系统监控以及网络监控,硬件监控开源的软件。

zabbix的架构:

1,c/s模式 客户端和服务端,zabbix server服务端 zabbix agent 客户端

2,通过B/S B:浏览器 S:服务端,通过浏览器开源直接访问服务器数据。

zabbix server的作用:通过一系列的组件 SNMP,zabbix,agent,ping 通过端口远程的健康客户端的数据,把数据收集到服务器进行展示,以及系统用户分析的界面(web)。

zabbix agent:就是被监控的目标机器,把需要收集的收集以及自定义的监控数据,发送给zabbix server。

zabbix的组件程序:

1,zabbix server的作用:通过一系列的组件 SNMP,zabbix,agent,ping 通过端口远程的健康客户端的数据,把数据收集到服务器进行展示,以及系统用户分析的界面(web)。

2,zabbix agent:就是被监控的目标机器,把需要收集的收集以及自定义的监控数据,发送给zabbix server。

3,zabbix_proxy: 代理服务器,是安装在监控的目标系统上的软件组件,开源代替zabbix_server收集数据,然后由代理软件传送给服务端zabbix-server减轻主服务器的压力。

4,zabbix_get:可选组件,提供命令行的工具(zabbix的命令行。)

5,zabbix_sender:可选组件,提供命令行工具,开源将自定义数据发送到zabbix服务器。对于不直接由zabbix代理监控的数据或者从脚本来的数据,比较方便的。

工作方式:

所有的监控收集数据都在主服务,主服务器来监控和告警

实验:

server 2/4

agent 2/4

部署 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#Zabbix Official Repository' zabbix.repo

yum clean all && yum makecache

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

zabbix-server-mysql:

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

添加数据库用户,以及 zabbix 所需的数据库信息

mysql -u root -p123456

CREATE DATABASE zabbix character set utf8 collate utf8_bin;

创建一个名为 "zabbix" 的 MySQL 数据库,字符集为 UTF-8,排序规则为 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.40/create.sql.gz | mysql -uroot -p123456 zabbix

#导入 Zabbix 监控系统所需的 MySQL 数据库架构

修改 zabbix server 配置文件,修改数据库的密码

vim /etc/zabbix/zabbix_server.conf

DBPassword=zabbix

修改 zabbix 的 php 配置文件

vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf

......

php_value[date.timezone] = Asia/Shanghai

启动 zabbix 相关服务

systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm

systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm

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

server:10050 服务端的端口

server:10051 监控端(客户端)的端口

自定义的监控内容:

监控服务器的登录节点,不能超过3个

在工作中监控主要依靠脚本。

面试题:怎么监控mysql的I/O线程--zabbix

自己研究一下。

zabbix监控容器会出现假告警。监控服务器状态 监控硬件信息 内存 磁盘读写监控进程服务器。容器不行。

部署 zabbix 客户端

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

设置 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#Zabbix Official Repository' /etc/yum.repos.d/zabbix.repo

yum clean all && yum makecache

yum install -y zabbix-agent2

修改 agent2 配置文件

vim /etc/zabbix/zabbix_agent2.conf

Server=192.168.233.10 #80行,指定 zabbix 服务端的 IP 地址

ServerActive=192.168.233.10 #125行,指定 zabbix 服务端的 IP 地址

Hostname=zbx-agent01 #136行,指定当前 zabbix 客户端的主机名

启动 zabbix-agent2

systemctl start zabbix-agent2

systemctl enable zabbix-agent2

netstat -natp | grep zabbix

在服务端验证 zabbix-agent2 的连通性

yum install -y zabbix-get

zabbix_get -s '192.168.233.20' -p 10050 -k 'agent.ping'

1

在 Web 页面中添加 agent 主机

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

【主机名称】设置成 zbx-agent01

【可见的名称】设置成 zbx-agent01-192.168.233.20

【群组】选择 Linux server

【接口】的【IP地址】设置成 192.168.233.20

再点击上方菜单栏【模板】

【Link new tamplates】搜索 Linux ,选择 Template OS Linux by Zabbix agent

点击 【添加】

yum install epel-release

yum install nginx

ZBX SNMP JMX IPMI

ZBX:

含义: ZBX是Zabbix的缩写。

描述: Zabbix是一种开源的网络监控和管理工具。它允许管理员监视各种网络服务、服务器健康状态、性能统计等,并提供强大的告警系统。

SNMP:

含义: SNMP是Simple Network Management Protocol的缩写。

描述: SNMP是一种用于管理和监控网络设备的协议。它通过在设备上运行代理程序来收集和传递信息,允许网络管理员远程监控设备的性能和状态。

JMX:

含义: JMX是Java Management Extensions的缩写。

描述: JMX是Java平台上的一种管理和监控标准。它提供了一组API,使得开发人员可以在运行中的Java应用程序中监控和管理应用程序的性能和状态。

IPMI:

含义: IPMI是Intelligent Platform Management Interface的缩写。

描述: IPMI是一种用于管理服务器硬件的标准。它允许通过网络管理服务器的电源状态、温度、风扇速度等硬件信息,而无需操作系统的干预。

自定义监控内容

案列:自定义监控客户端服务器登录的人数

需求:限制登录人数不超过 3 个,超过 3 个就发出报警信息

明确需要执行的 linux 命令

who | wc -l

创建 zabbix 的监控项配置文件,用于自定义 key

vim /etc/zabbix/zabbix_agent2.conf

268 Include=/etc/zabbix/zabbix_agent2.d/*.conf

#自定义监控项的格式如下

291 # Format: UserParameter=,

cd /etc/zabbix/zabbix_agent2.d/

vim UserParameter_login.conf

systemctl restart zabbix-agent2

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

zabbix_get -s '192.168.233.20' -p 10050 -k 'login.user'

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

1.创建模板

点击左边菜单栏【配置】中的【模板】,点击【创建模板】

【模板名称】设置成 Template Login User

【可见的名称】设置成 Template Login User

【群组】选择 Template

【描述】可自定义

点击 【添加】,此时就可在【链接的模板】中搜索到 Template Login User 了

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

点击上方菜单栏【应用集】,点击【创建应用集】

【名称】设置成 Login User

点击 【添加】

3.创建监控项

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

【名称】设置成 Number of login users

【键值】设置成 login.user #键值必须要与自定义的监控项配置文件中设置的保持一致

【更新间隔】设置成 10s

【历史数据保留时长】Storage period 30d #保留时间可自定义设置

点击 【添加】

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

点击上方菜单栏【触发器】,点击【创建触发器】

【名称】设置成 Number of login users is greater than 3

【严重性】设置成 一般严重

【表达式】点击添加,【监控项】点击选择 Number of login users,【功能】选择 last(),【结果】选择 > 3,点击 【插入】

点击 【添加】

5.创建图形

点击上方菜单栏【图形】,点击【创建图形】

【名称】设置成 Number of login users

【宽】、【高】可直接采用默认值

【监控项】点击添加勾选相关监控项 Number of login users,【功能】选择 最大,其它可保持默认值

点击 【添加】

6.将主机与模板关联起来(一个主机可以关联多个模板)

点击左边菜单栏【配置】中的【主机】,点击你要关联的主机

点击上方菜单栏【模板】,【Link new tamplates】搜索 login,选择 Template Login User,点击【更新】

此时就点击【监测】中的【主机】,点击你关联主机的【图形】,即可查看到相关的监控项指标

7.设置邮件报警

点击左边菜单栏【管理】中的【报警媒介类型】,点击【创建媒体类型】

【名称】设置成 qq_Email

【SMTP服务器】设置成 smtp.qq.com

【SMTP服务器端口】设置成 25

【SMTP HELO】设置成 qq.com

【SMTP电邮】设置成 自己的邮箱地址,例如 124481457@qq.com

【认证】选择 用户名和密码

【用户名称】设置成 自己的邮箱地址,例如 124481457@qq.com

【密码】可登录QQ邮箱页面,点击【设置】-->【账户】中的【生成授权码】,通过短信获取授权码 fyguqxrazfsubajb

【描述】可自定义

点击上方菜单栏【Message templates】,点击【添加】,【Message type】选择 问题,点击【更新】

点击 【添加】,并测试功能

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

【类型】选择 qq_Email

【收件人】设置成 960027936@139.com

【当启用时】设置成 1-7,00:00-24:00

点击 【添加】

再点击 【更新】

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

测试邮件报警

增加测试客户端的用户登录数超过触发器预设的值,查看【监测】-->【仪表盘】,确认报警

监控nginx

步骤一:修改nginx的配置文件

cd /etc/nginx/conf.d

vim default.conf

server {

...................

location /nginx_status {

stub_status on;

access_log off;

allow 127.0.0.1;

allow 192.168.73.0/24;

deny all;

...........................

}

nginx -t

systemctl start nginx

[root@test2 zabbix_agent2.d]# vim test1_nginx.conf

UserParameter=nginx.status[*],/opt/test-nginx.sh $1

nginx.sh 是一个脚本文件的路径,而 $1 是脚本接受的第一个参数。

#配置监控策略

zabbix_get -s '192.168.233.20' -p 10050 -k nginx.status[check]

#在服务端测试

步骤三: 在 Web 页面创建自定义监控项模板

(1)创建模板

点击左边菜单栏【配置】中的【模板】,点击【创建模板】

【模板名称】设置成 Template Nginx Status

【可见的名称】设置成 Template Nginx Status

【群组】选择 Template

【描述】可自定义

点击 【添加】,此时就可在【链接的模板】中搜索到Template Nginx Status 了

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

点击上方菜单栏【应用集】,点击【创建应用集】

【名称】设置成 Nginx Status

点击 【添加】

(3)创建监控项

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

【名称】设置成 Nginx is running

【键值】设置成 nginx.status[check] #键值必须要与自定义的监控项配置文件中设置的保持一致

【更新间隔】设置成 10s

【历史数据保留时长】Storage period 30d #保留时间可自定义设置

点击 【添加】

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

点击上方菜单栏【触发器】,点击【创建触发器】

【名称】设置成 Nginx is down

【严重性】设置成 一般严重

【表达式】点击添加,【监控项】点击选择 Nginx is running,【功能】选择 last(),【结果】选择=0,点击 【插入】

点击 【添加】

(5)创建图形

点击上方菜单栏【图形】,点击【创建图形】

【名称】设置成 Nginx is running

【宽】、【高】可直接采用默认值

【监控项】点击添加勾选相关监控项 Nginx is running,【功能】选择 最大,其它可保持默认值

点击 【添加】

(6)将主机与模板关联起来(一个主机可以关联多个模板)

点击左边菜单栏【配置】中的【主机】,点击你要关联的主机

点击上方菜单栏【模板】,【Link new tamplates】搜索 Nginx,选择 Template Nginx Status,点击【更新】

此时就点击【监测】中的【主机】,点击你关联主机的【图形】,即可查看到相关的监控项指标

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

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

相关文章

ts学习05-typeScript中的类

类的定义 class Person {name: string; //属性 前面省略了public关键词constructor(n: string) {//构造函数 实例化类的时候触发的方法this.name n;}run(): void {console.log(this.name);} } var p new Person("张三");p.run();class Person {name: string;//…

JOSEF约瑟 剩余电流保护器 CLJ3-100A+LH30 导轨安装

CLJ3系列剩余电流动作继电器 系列型号: CLJ3-100A剩余电流动作继电器 CLJ3-250A剩余电流动作继电器 CLJ3-400A剩余电流动作继电器 CLJ3-630A剩余电流动作继电器 LH30剩余电流互感器 LH80剩余电流互感器 LH100剩余电流互感器 LH140剩余电流互感器 一、产品概…

特征融合12种经典魔改方案汇总,附配套模型和代码

特征融合(Feature Fusion)是深度学习中的一种重要技术,它可以帮助模型更好地理解数据的内在结构和规律,提高模型的性能和泛化能力。另外,特征融合还可以提高模型的分类准确率,减少过拟合风险,帮…

Java核心知识点整理大全25-笔记

目录 25. Hadoop 25.1.1. 概念 25.1.2. HDFS 25.1.2.1. Client 25.1.2.2. NameNode 25.1.2.3. Secondary NameNode 25.1.2.4. DataNode 25.1.3. MapReduce 25.1.3.1. Client 25.1.3.2. JobTracker 25.1.3.3. TaskTracker 25.1.3.4. Task 25.1.3.5. Reduce Task 执行…

CSS特效024:旋转的通透立方体

CSS常用示例100专栏目录 本专栏记录的是经常使用的CSS示例与技巧,主要包含CSS布局,CSS特效,CSS花边信息三部分内容。其中CSS布局主要是列出一些常用的CSS布局信息点,CSS特效主要是一些动画示例,CSS花边是描述了一些CSS…

15分钟了解国外Lead广告联盟,为什么做国外广告联盟要用到指纹浏览器?

说到国外Lead广告联盟,可能很多人会问这是啥?其实呢,作为搞外贸的,如果你想增加你的收入,做国外广告联盟也是不错的选择,只要你有正确的方法和策略,就能够成功赚取丰厚的佣金。今天龙哥我就给大…

101.套接字-Socket网络编程3

目录 1.字节序 主机字节序(小端) 网络字节序(大端) 字节序转换函数 2.IP地址转换函数 3.套接字地址结构 通用 socket 地址结构 专用 socket 地址结构 Socket套接字的目的是将TCP/IP协议相关软件移植到UNIX类系统中。设计…

前后端联调

JavaWenb开发 pom.xml 文件 配置 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://ma…

ROS2 Gazebo:三维物理仿真平台

介绍 Gazebo是ROS系统中最为常用的三维物理仿真平台&#xff0c;支持动力学引擎&#xff0c;可以实现高质量的图形渲染&#xff0c;不仅可以模拟机器人及周边环境&#xff0c;还可以加入摩擦力、弹性系数等物理属性。 比如我们要开发一个火星车&#xff0c;那就可以在Gazebo中…

OpenHarmony 关闭息屏方式总结

前言 OpenHarmony源码版本&#xff1a;4.0release 开发板&#xff1a;DAYU / rk3568 一、通过修改系统源码实现不息屏 修改目录&#xff1a;base/powermgr/power_manager/services/native/profile/power_mode_config.xml 通过文件中的提示可以知道DisplayOffTime表示息屏的…

STM32_CAN通讯波特率和采样点计算与设置

STM32_CAN通讯波特率设置 CAN参数计算与设置CAN时钟 STM32的 CAN外设位时序中只包含 3 段&#xff0c;分别是同步段 SYNC_SEG、位段BS1 及位段 BS2,采样点位于 BS1及BS2 段的交界处。 其中,SYNC_SEG段固定长度为 1T,可以在重新同步期间增长或缩短,该长度 SJW 也可在位时序寄存…

什么是死锁?如何产生死锁?死锁的必要条件?怎么解决死锁?

🔒1、什么是死锁 死锁是一个非常让程序猿烦恼的问题,一旦所写的程序有了死锁,那么程序就无法执行下去,会出现严重的 bug,并且死锁非常隐蔽,我们不会轻易发现它,在开发阶段,不经意期间我们就会写出死锁,很难检测出来。 那么什么是死锁呢?竟然让我们如此烦恼。 “死…

Android textView 显示: STRING_TOO_LARGE

在Android中&#xff0c;字符串资源的长度限制是32KB&#xff0c;getString()方法返回的字符串资源的大小超过这个限制&#xff0c;就会抛出STRING_TOO_LARGE 这个错误。 我本地的临界值是&#xff1a;32.3 KB (33,090 字节) 小于等于33090时&#xff0c;能正常显示&#xff…

基于OpenSSL和nginx搭建本地https服务器(详细实操版)

(꒪ꇴ꒪ )&#xff0c;Hello我是祐言QAQ我的博客主页&#xff1a;C/C语言&#xff0c;数据结构&#xff0c;Linux基础&#xff0c;ARM开发板&#xff0c;网络编程等领域UP&#x1f30d;快上&#x1f698;&#xff0c;一起学习&#xff0c;让我们成为一个强大的攻城狮&#xff0…

腾讯云最新优惠券领取入口,总面值2000元代金券,新用户、老用户、企业用户均可领取!

腾讯云推出年末感恩回馈活动&#xff0c;新老用户可免费领取总面值2000元的代金券礼包&#xff0c;适用于多种预付费产品&#xff0c;最高可抵扣36个月订单&#xff0c;领取后30天内有效。 领取入口&#xff1a; https://curl.qcloud.com/UpmL4ho3 领取说明&#xff1a; 腾…

git push 报错 error: src refspec master does not match any 解决

git报错 ➜ *** git:(main) git push -u origin "master" error: src refspec master does not match any error: failed to push some refs to https://gitee.com/***/***.git最新版的仓库初始化后 git 主分支变成了 main 方法 1.把 git 默认分支名改回 master …

VSCode搭建STM32开发环境

1、下载安装文件 链接&#xff1a;https://pan.baidu.com/s/1WnpDTgYBobiZaXh80pn5FQ 2、安装VSCodeUserSetup-x64-1.78.2.exe软件 3、 在VSCode中安装必要的插件 3、配置Keil Assistant插件 4、在环境变量中部署mingw64编译环境

Git的介绍和下载安装

Git的介绍和下载安装 概述 Git是一个分布式版本控制工具, 通常用来管理项目中的源代码文件(Java类、xml文件、html页面等)进行管理,在软件开发过程中被广泛使用 Git可以记录文件修改的历史记录并形成备份从而实现代码回溯, 版本切换, 多人协作, 远程备份的功能Git具有廉价的…

USB Type-C的基本原理

1 USB Type-C的基本原理 1.1 基本特性 Figure 1-1 USB Type-C接头外形 USB Type-C&#xff08;简称USB-C&#xff09;的基本特性&#xff1a; 1. 接口插座的尺寸与原来的Micro-USB规格一样小&#xff0c;约为8.3mm X 2.5mm 2. 可承受1万次反复插拔 3. 支持正反均可插入的“正反…

知虾平台丨优化Shopee店铺运营,提升销售利润——了解知虾平台

在如今竞争激烈的电商市场中&#xff0c;Shopee作为一家快速发展的平台&#xff0c;吸引了众多卖家加入。然而&#xff0c;要在Shopee上取得成功并实现可观的销售利润&#xff0c;并不是一件容易的事情。为了帮助卖家更好地了解市场趋势、优化商品关键词、监控竞争对手等&#…