zabbix监控nginx
zabbix是什么
web界面提供的一种可视化的监控服务软件
以分布式的方式系统监控以及网络监控,硬件监控等等开源的软件
zabbix的架构
1、c/s模式 客户端和服务端,zabbix server服务端 zabbix agent 客户端
2、通过B/S B是浏览器 S服务端,通过浏览器可以直接访问服务器数据
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代理监控的数据或者从脚本来的数据,比较方便的
zabbix工作方式
工作流程图
被监控的对象
1、Agent 服务器,代理的方式,收集数据
2、SNMP 协议,和被监控对象进行通信
3、JMX 管理java的扩展程序和扩展应用
4、IPMI 监控系统的硬件信息
5、VMware 监控虚拟机的运行情况
6、APP nginx、httpd、mysql
zabbix-server 所有的监控收集数据都在主服务,主服务器监控和告警
zabbix-database 保存数据
zabbix-web 可视化操作界面
zabbix实验部署
两台虚拟机
20.0.0.11 服务端
20.0.0.12 客户端
关闭防火墙和安全机制获取 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.repoyum clean all && yum makecacheyum install -y zabbix-server-mysql zabbix-agent
zabbix-server-mysql
执行安装zabbix之后,使用mysql作为数据库后端
zabbix-agent
把主服务器加入监控当中yum install -y centos-release-scl
centos-release-scl
SCL 基于rehhat centos系统软件安装使用的一种机制,可以是一个系统运行一个进程的不同版本,而且不会发生冲突
解决zabbix与其他web组件的兼容性开启安装源
vim zabbix.repo
11行
enabled=1安装web组件和Apache组件
yum -y install zabbix-web-mysql-scl zabbix-apache-conf-scl
可以安装zabbix的依赖环境PHP,以及mysql依赖环境,可以安装多个版本
安装所有的Apache组件(web组件),可以安装多个版本
Apache提供了所有的可兼容性的进程,确保zabbix的前端组件能够安装数据库
yum -y install zabbix-mariadb.service
重启服务
systemctl restart mariadb.service
开机自启
systemctl enable mariadb.service重置数据库
mysql_secure_installlation
都是y登录mysql
mysql -uroot -p123456创建zabbix库
create database zabbix character set utf8 collate utf8_bin;
查看库
show databases;
给权限
grant all on zabbix.* to 'zabbix'@'%' identified by 'zabbix';
刷新权限
flush privieges;把数据导入zabbix-server
查看mysql的sql文件
rpm -ql zabbix-server-mysql zcat /usr/share/doc/zabbix-server-mysql-5.0.39/create.sql.gz | mysql -uroot -p123456 zabbixvim /etc/zabbix/zabbix_server.conf
124行
DBPassword=zabbixvim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
25行
php_value[date.timezone] = Asia/Shanghai 启动 zabbix 相关服务
systemctl restart zabbix-server zabbix-agent httpd rh-php72-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-fpm网页访问20.0.0.11/zabbixserver服务端端口 10050
Agent监控端端口 10051默认的账号密码
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修改 配置文件
vim /etc/zabbix/zabbix_agentd.conf
80行
Server=20.0.0.11
125行
ServerActive=20.0.0.11
136行
Hostname=host2
启动 zabbix-agentd
systemctl start zabbix-agentd
systemctl enable zabbix-agentd
客户端和服务端必须要做时间同步
客户端
安装 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 clean all && yum makecacheyum install -y zabbix-agent2修改 agent2 配置文件
vim /etc/zabbix/zabbix_agent2.conf
80行
Server=20.0.0.11
125行
ServerActive=20.0.0.11
136行
Hostname=host4
启动 zabbix-agent2
systemctl start zabbix-agent2
systemctl enable zabbix-agent2netstat -natp | grep zabbix
tcp6 0 0 :::10050 :::* LISTEN 43654/zabbix_agent2
在服务端验证 zabbix-agent2 的连通性
yum install -y zabbix-get
zabbix_get -s '20.0.0.13' -p 10050 -k 'agent.ping'
zabbix_get -s '20.0.0.13' -p 10050 -k 'system.hostname'
添加客户端主机(点击创建)
添加主机完毕
自定义脚本监控
客户端
who | wc -lcd /etc/zabbix/zabbix_agent2.d/vim UserParameter_login.conf
UserParameter=login.user,who|wc -lsystemctl restart zabbix-agent2服务端验证新建的监控项
zabbix_get -s '20.0.0.13' -p 10050 -k 'login.user'
Web 页面创建自定义监控项模板
1、创建模板
2、创建应用集
3、创建监控项
4、创建触发器
5、创建图形
主机添加模版
设置邮件报警
密码这一项是打开qq邮箱--->设置---账号---打开这个POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务---生成授权码----复制授权码
菜单栏用户设置----报警媒介---添加
菜单栏配置---动作
监控nginx的状态
客户端
修改nginx的配置文件
cd /etc/nginx/conf.d
vim default.confserver {....location /nginx_status {stub_status on;access_log off;}
......nginx -t
systemctl start nginxvim test1_nginx.conf
UserParameter=nginx.status[*],/opt/host4-nginx.sh $1cd /opt
vim /host4-nginx.sh#!/bin/bash
#Description:Automated monitoring nginx performance and process nginx_status scriptsHOST="localhost"
PORT=80
stub_status="stub_status"
NGINX_COMMAND=$1nginx_check() {if [ -f /sbin/pidof ]; then/sbin/pidof nginx | wc -welseps aux | grep -v "grep" | grep -c "nginx:"fi
}nginx_active(){/usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk '/Active/ {print $NF}'
}nginx_reading(){/usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk '/Reading/ {print $2}'
}nginx_writing(){/usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk '/Writing/ {print $4}'
}nginx_waiting(){/usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk '/Waiting/ {print $6}'
}nginx_accepts(){/usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk 'NR==3 {print $1}'
}nginx_handled(){/usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk 'NR==3 {print $2}'
}nginx_requests(){/usr/bin/curl -s "http://$HOST:$PORT/${stub_status}/" 2> /dev/null | awk 'NR==3 {print $3}'
}case $NGINX_COMMAND incheck)nginx_check;;active)nginx_active;;reading)nginx_reading;;writing)nginx_writing;;waiting)nginx_waiting;;accepts)nginx_accepts;;handled)nginx_handled;;requests)nginx_requests;;*)echo $"USAGE:$0 {check|active|reading|writing|waiting|accepts|handled|requests}"
esac服务端测试
zabbix_get -s '20.0.0.13' -p 10050 -k nginx.status[check]
Web 页面创建自定义监控项模板
1、创建模版
2、创建应用集
3、创建监控项
4、创建触发器
5、创建图形
主机和模版关联起来
关闭nginx服务
这边就会显示信息
相关文章:

zabbix监控nginx
zabbix是什么 web界面提供的一种可视化的监控服务软件 以分布式的方式系统监控以及网络监控,硬件监控等等开源的软件 zabbix的架构 1、c/s模式 客户端和服务端,zabbix server服务端 zabbix agent 客户端 2、通过B/S B是浏览器 S服务端,通…...

【CVE-2023-49103】ownCloud graphapi信息泄露漏洞(2023年11月发布)
漏洞简介 ownCloud owncloud/graphapi 0.2.x在0.2.1之前和0.3.x在0.3.1之前存在漏洞。graphapi应用程序依赖于提供URL的第三方GetPhpInfo.php库。当访问此URL时,会显示PHP环境的配置详细信息(phpinfo)。此信息包括Web服务器的所有环境变量&a…...

可视化数据库管理客户端:Adminer
简介:Adminer(前身为phpMinAdmin)是一个用PHP编写的功能齐全的数据库管理工具。与phpMyAdmin相反,它由一个可以部署到目标服务器的文件组成。Adminer可用于MySQL、PostgreSQL、SQLite、MS SQL、Oracle、Firebird、SimpleDB、Elast…...

Python----字典练习
相关链接:Python---字典的增、删、改、查操作_python中字典的增删改查-CSDN博客 Python---字典---dict-CSDN博客 Python---引用变量与可变、非可变类型-CSDN博客 重点: 字典中的 key (就是键)可以是很多数据类型(…...

CentOS 部署 WBO 在线协作白板
1)WBO 白板工具介绍 1.1)WBO 白板简介 WBO 是一个自由和开源的在线协作白板。它允许多个用户同时在一个虚拟的大型白板上画图。该白板对所有线上用户实时更新,并且状态始终保持。它可以用于许多不同的目的,包括艺术、娱乐、设计和…...

qt-C++笔记之QStringList
qt-C笔记之QStringList —— 杭州 2023-12-03 文章目录 qt-C笔记之QStringList1.1.《Qt官方文档》第一部分翻译:继承自QList\<QString\>-初始化-添加字符串1.2.迭代字符串1.3.join()和split()1.4.filter()1.5.lastIndexOf()1.6.indexOf()1.7.replaceInString…...
ply前端
ply 是 eBPF 的 front-end 前端工具之一,专为 embedded Linux systems 开发,采用 C 语言编写,只需 libc 和内核支持 BPF 就可以运行,不需要外部 kernel 模块,不需要 LLVM,不需要 python。 ply 由瑞典工程师…...

U盘不仅能在电脑上使用,在手机上也可使用,包括安卓和苹果手机,但苹果的较特殊
许多最好的安卓手机都使用USB-C端口在电脑上充电和来回传输文件,但如果你需要给老板发电子邮件的文件放在闪存驱动器或全尺寸SD卡上呢? 幸运的是,使用廉价的适配器电缆,你可以将USB加密狗或读卡器直接连接到手机上。你甚至可以直接使用USB-C闪存驱动器,以实现更轻松的过程…...

面试数据库八股文十问十答第二期
面试数据库八股文十问十答第二期 作者:程序员小白条,个人博客 相信看了本文后,对你的面试是有一定帮助的! ⭐点赞⭐收藏⭐不迷路!⭐ 1.MySQL的主从复制 MySQL的主从复制是什么?MySQL主从复制是一种常见的…...

【LeetCode】每日一题 2023_12_2 拼车(模拟/差分)
文章目录 刷题前唠嗑题目:拼车题目描述代码与解题思路学习大佬题解 刷题前唠嗑 LeetCode?启动!!! 题目:拼车 题目链接:1094. 拼车 题目描述 代码与解题思路 func carPooling(trips [][]int…...

网络和Linux网络_7(传输层)UDP和TCP协议(端口号+确认应答+超时重传+三次握手四次挥手)
目录 1. 重看端口号 1.1 端口号的概念 1.2 端口号的划分 2. 重看UDP协议 2.1 UDP协议格式 2.2 UDP的特点 3. 重看TCP协议 3.1 TCP协议格式 3.2 TCP的解包分用 3.3 TCP的可靠性及机制 3.3.1 确认应答ACK机制 3.3.2 超时重传机制 3.3.3 连接管理机制(三次…...
KALI LINUX安全审核
预计更新 第一章 入门 1.1 什么是Kali Linux? 1.2 安装Kali Linux 1.3 Kali Linux桌面环境介绍 1.4 基本命令和工具 第二章 信息收集 1.1 网络扫描 1.2 端口扫描 1.3 漏洞扫描 1.4 社交工程学 第三章 攻击和渗透测试 1.1 密码破解 1.2 暴力破解 1.3 漏洞利用 1.4 …...
2023-12-03-解决libxkbcommon库编译完后图像界面不能使用键盘
layout: post # 使用的布局(不需要改) title: Ubuntu修复 # 标题 subtitle: 解决libxkbcommon库编译完图形界面不能使用键盘 #副标题 date: 2023-12-03 # 时间 author: BY ThreeStones1029 # 作者 header-img: img/about_bg.jpg #这篇文章标题背景图片 c…...

vue el-table表格中每行上传文件(上传简历)操作
1、HTML中 <el-table :data"formInfo.userListDto" border stripe max-height"400"><el-table-column type"index" label"序号" width"50"> </el-table-column><el-table-column prop"realName&q…...
Python批量图像处理--图片重命名、图片旋转
图像批量重命名: 使用batch_rename_images函数实现对多个文件夹下面的图片进行重命名操作 先检查文件名的后缀,使用了.endswith()方法来判断文件名是否以.jpg、.png或.JPG结尾,判断是否为图片文件 然后构造新的文件路径new_filepath&#…...

第五天 用Python批量处理Excel文件,实现自动化办公
用Python批量处理Excel文件,实现自动化办公 一、具体需求 有以下N个表,每个表的结构一样,如下: 需要把所有表数据汇总,把每个人的得分、积分分别加起来,然后按总积分排名,总积分一致时ÿ…...

mybatis整合(手动添加jar包方式)
操作步骤 创建数据库 建立user表 放入数据 1、创建javaweb工程并添加Jar包 用到的jar包 junit 用于测试 mybatis框架:mybatis-3.5.9.jar mysql数据库:mysql-connector-java-8.0.28.jar 2、添加MyBatis核心配置文件 <?xml version"1.0"…...

leetcode - 矩阵区域和
1314. 矩阵区域和 - 力扣(LeetCode) 给你一个 m x n 的矩阵 mat 和一个整数 k ,请你返回一个矩阵 answer ,其中每个 answer[i][j] 是所有满足下述条件的元素 mat[r][c] 的和: i - k < r < i k, j - k < c …...
头歌JUnit单元测试相关实验进阶
JUnit是一个由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework),主要供 Java 开发人员编写单元测试。Junit在极限编程和重构中被极力推荐使用,因为它可以大大地提高开发的效率。 Junit的特性&…...
【kafka实践】11|消费位移提交
消费者位移 消费者位移这一节介绍了消费者位移的基本概念和消息格式,本节我们来聊聊消费位移的提交。 Consumer 需要向 Kafka 汇报自己的位移数据,这个汇报过程被称为提交位移(Committing Offsets)。因为 Consumer 能够同时消费…...

第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
web vue 项目 Docker化部署
Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段: 构建阶段(Build Stage):…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...

【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...

大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
.Net Framework 4/C# 关键字(非常用,持续更新...)
一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

招商蛇口 | 执笔CID,启幕低密生活新境
作为中国城市生长的力量,招商蛇口以“美好生活承载者”为使命,深耕全球111座城市,以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子,招商蛇口始终与城市发展同频共振,以建筑诠释对土地与生活的…...