zabbix(三)对服务的监控

文章目录

  • zabbix(三)对服务的监控
    • httpd/nginx
    • mysql

zabbix(三)对服务的监控

httpd/nginx

1>给 server2 添加 httpd 监控
但是这个 http 监控的监控项只有一个,下面在 server3 上自定义 nginx 的监控

在这里插入图片描述

#源码编译 nginx,关闭 debug,添加监控模块
[root@server3 nginx-1.15.8]#./configure --prefix=/usr/local/nginx --with-http_stub_status_module 
[root@server3 nginx-1.15.8]# make && make install
启用nginx
关闭日志,只允许本机查看状态监控

在这里插入图片描述

[root@server3 conf]# curl http://127.0.0.1/status
Active connections: 1
server accepts handled requests
222
Reading: 0 Writing: 1 Waiting: 0
多访问几次,增加数据量

2>自定义 nginx 监控项
(1)获取活跃链接数
[root@server3 ~]# curl -s http://127.0.0.1/status | grep Active | awk '{print $3}'
1
##user -> web ui -> zabbix server -> zabbix agent -> shell -> zabbix server ->mysql -> web ui
#编辑获取链接数的配置文件
[root@server3 ~]# cd /etc/zabbix/zabbix_agentd.d
[root@server3 zabbix_agentd.d]#cp userparameter_mysql.conf userparameter_nginx.conf
[root@server3 zabbix_agentd.d]# cat userparameter_nginx.conf
UserParameter=nginx.active,curl -s http://127.0.0.1/status | grep Active | awk '{print $3}'

[root@server3 zabbix_agentd.d]# systemctl restart zabbix-agent
#在 server1 上安装 zabbix-get,来用命令方式获取 key 值,同时为了测试是否能获取到自己设置的 key 值

[root@server1 4.0]# yum install -y zabbix-get-4.0.5-1.el7.x86_64.rpm
[root@server1 4.0]# zabbix_get -s 172.25.0.3 -p 10050 -k "nginx.active"
1
##这里的 -k 后的参数是刚才配置文件里的,获取到数据说明配置正确

#给 server3 配置监控项
在这里插入图片描述
#这里要注意:键值一栏,填的内容需要和配置文件UserParameter 定义的 key 值相同,否则无效

##新建图形并添加监控项
在这里插入图片描述
在预览中可以看到已经产生数据

在这里插入图片描述

##但是发现汉字无法显示,是字体原因
##zabbix 字体存放在下面路径
[root@server1 fonts]# ls
graphfont.ttf
[root@server1 fonts]# pwd
/usr/share/zabbix/fonts
#获取字体
[root@server1 fonts]# ls
graphfont.ttf simkai.ttf
#修改配置使新字体生效
[root@server1 include]# pwd
/usr/share/zabbix/include
[root@server1 include]# vim defines.inc.php
搜索 FONT 关键字,发现使用的是 graphfont.ttf 字体
:%s/graphfont/simkai/g
##替换为 simkai

#再刷新,字体正常
(2)获取接收请求数
[root@server3 ~]# curl http://127.0.0.1/status
Active connections: 1
server accepts handled requests
72 72 72
Reading: 0 Writing: 1 Waiting: 0
[root@server3 ~]# curl -s http://127.0.0.1/status | awk NR==3 | awk '{print $1}'
79

[root@server3 zabbix_agentd.d]# cat userparameter_nginx.conf
UserParameter=nginx.active,curl -s http://127.0.0.1/status | grep Active | awk
'{print $3}'
UserParameter=nginx.accept,curl -s http://127.0.0.1/status | awk NR==3 | awk
'{print $1}'
#重启
[root@server3 zabbix_agentd.d]# systemctl restart zabbix-agent

#测试获取 key 值
[root@server1 ~]# zabbix_get -s 172.25.0.3 -p 10050 -k "nginx.accept"
89

#添加监控项
在这里插入图片描述
#添加图形
在这里插入图片描述
#查看预览
在这里插入图片描述

##增加数据,看的更清楚
[root@foundation0 ~]# ab -c 1 -n 1000 http://172.25.0.3/index.html
[root@server3 zabbix_agentd.d]# curl -s http://127.0.0.1/status
Active connections: 1
server accepts handled requests
1117 1117 1117
Reading: 0 Writing: 1 Waiting: 0

再次查看图形

mysql

(1)zabbix 自带的 mysql 监控模板
##添加 mysql 监控模板
在这里插入图片描述

##zabbix 监控 mysql 的配置目录
[root@server1 ~]# mkdir /var/lib/zabbix
##因为 mysql 的 key 监控目录就是这个
[root@server1 zabbix]#cat /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
UserParameter=mysql.ping,HOME=/var/lib/zabbix mysqladmin ping | grep -c alive
##mysql 默认使用 mysqladmin 检测 mysql 是否存活

[root@server1 zabbix]# mysqladmin -uzabbix -predhat -h127.0.0.1 ping | grep -c alive
1
得到结果为 1,表示 mysql 正常,为 0 表示 mysql 挂了
##由于 mysql 帐号密码写在命令行对以后维护不好,也不安全,所以写在配置文件里

[root@server1 zabbix]# cat .my.cnf
##建立为隐藏文件更安全
[mysql]
host = localhost
user = root
password = redhat
socket = /var/lib/mysql/mysql.sock
[mysqladmin]
host = localhost
user = root
password = redhat
socket = /var/lib/mysql/mysql.sock
[root@server1 zabbix]# systemctl restart zabbix-agent
然后在 web 端可以看到 mysql 相关的两个图形有数据,如果没数据就进入 mysql 敲几条
命令进行查询,再看就有

在这里插入图片描述
##以上是使用 zabbix 自带的 mysql 监控模板

(2)使用 percona 模板来监控 mysql
##对应着手册写配置

##因为 zabbix 自带的 mysql 监控的监控项太少,只有一些基础的监控,并且没有可以直接使用的 key,不能满足生产环境需求,需要扩展,所以使用 percona 插件。Percona 为MySQL 数据库服务器进行了改进,在功能和性能上较 MySQL 有着很显著的提升。该版本提升了在高负载情况下的 InnoDB 的性能、为 DBA 提供一些非常有用的性能诊断工具;另外有更多的参数和命令来控制服务器行为 。

[root@server1 ~]# rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm
##复制 percona 配置文件
[root@server1 templates]# pwd
/var/lib/zabbix/percona/templates
[root@server1 templates]#cp userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
#可以看到此模板中有 190 个监控项
[root@server1 ~]# cd /var/lib/zabbix/percona/scripts
##配置 mysql 的用户名和密码,新建一个文件,不用修改原脚本
[root@server1 scripts]# vim ss_get_mysql_stats.php.cnf
<?php
$mysql_user = 'root';
$mysql_pass = 'redhat';

#重启
systemctl restart zabbix-agent
##运行脚本获取数据
[root@server1 zabbix_agentd.d]#/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh 
gk 1647

能获取到数据说明配置正常
#查看所有 key 值
[root@server1 ~]# cat /tmp/localhost-mysql_cacti_stats.txt
这是一个缓存文件,里面记录了所有 key 对应的值

##导入模板
在这里插入图片描述
聚合图形选上
在这里插入图片描述
##删除原来的模板,添加 percona 模板
在这里插入图片描述
##添加后可以看到监控项多了很多,打开一个监控项查看图形

在这里插入图片描述

热门文章

暂无图片
编程学习 ·

『杭电1251』统计难题

Problem DescriptionIgnatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本身也是自己的前缀).Input输入数据的第一部分是一张单词表,每行一个单词,单词的长度不超过10,它们代表的是老师…
暂无图片
编程学习 ·

Java内存管理-初始JVM和JVM启动流程(二)

上一篇分享了什么是程序,以及Java程序运行的三个阶段。也顺便提到了Java中比较重要的一个东西就是JVM(JAVA 虚拟机),那么今天在先了解一下JVM和JVM的启动流程。知识地图:1、什么是虚拟机虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全…
暂无图片
编程学习 ·

省市区三级行政区数据获取和GeoJson地图下载

文章目录1.背景2.行政区域数据获取3.获取GeoJson数据 1.背景 项目中用到省市区三级的行政区划的选择,在网上找到的数据与最新的行政区域划分不一致,也难以确认数据的完成性。 基于echarts完成数据地区分布图时,需要提供地区对应的geoJson格式地图。 2.行政区域数据获取 高德…
暂无图片
编程学习 ·

最长重复子数组(java)

问题描述: 给两个整数数组 A 和 B ,返回两个数组中公共的、长度最长的子数组的长度。 样例: 代码见下: package Leetcode; import java.util.Scanner; public class FindLength {public static int findLength(int[] A, int[] B) {//暴力破解int len1=A.length;int len2=B.…
暂无图片
编程学习 ·

ngrok内网穿透的使用

**有时候项目没有部署到服务器,需要给用户展示效果,就可以用ngrok做内网穿透来解决这个问题** **ngrok的用法:**进入ngrok官网 http://www.ngrok.cc/,注册登录进入 在隧道管理中,进行开通隧道(即购买免费的服务器)3.开通隧道,配置端口ip,进行添加开通。4.开通后,在隧道管…
暂无图片
编程学习 ·

亚马逊ERP系统独立部署OEM定制无限开账号

马逊无货源模式,和传统无货源模式操作一样!需要咱们开店利用软件去采集商品,上传到咱们店铺,有订单了去上家拍下,发到深圳的中转仓,进行商品检测二次包装,发往国外!赚取汇率差! 要做亚马逊无货源模式,那么亚马逊ERP也是必须用的!市场erp已经出现很多,但是真正做技术…
暂无图片
编程学习 ·

进程保活

进程保活一.为什么需要进程保活二.进程优先级前台进程(Foreground process)可见进程(Visible process)服务进程(Service process)后台进程(Background process)空进程(Empty process)三.保活方式1. 利用 Notification 提升权限2. 利用系统Service机制拉活3. 添加Manifest文件属…
暂无图片
编程学习 ·

navigation笔记

react native存在的问题 vscode怎样打断点 _onPressButton()为什么以下划线命名 setState用法 render()用法eslint报错 不懂的地方:不懂怎么调试 不懂apk入库yarn start报错不知道怎么去解决 1 怎样让调试栏目处于最顶部 2 怎样快速找到问题的地方 3 怎么快速打断点类为什么前…
暂无图片
编程学习 ·

mvc:resources 配置不生效问题

学习springMVC框架的时候,用到jquery,于是配置mvc:resources标签,可是依然会拦截js文件,网上搜了很久都找不到原因,配置如下:于是仔细观察,原来是mapping和location写反了?修改如下:这样居然就可以了?大家普遍出现的关于mvc:resources标签的问题我就不说了,网上也会…
暂无图片
编程学习 ·

2020.7.1崔庆才教材《Python3网络爬虫开发实战》3.4爬取猫眼电影排行代码更正(绕过美团验证码)

前情提要 首先附上崔大神的github源码:3.4爬取猫眼电影排行 毕竟此段代码完成时间较早,截至2020.7.1日,发现了此段代码中两个需要修改的地方。 希望能给学习崔大神的小白一些帮助,希望大家有个好前途。 一、猫眼电影反爬更新 下图是崔大神的代码:估计是太多人学习爬虫拿猫…
暂无图片
编程学习 ·

Linux系统编程4:IPC消息队列

Linux系统编程4:IPC消息队列0. 消息队列1. POSIX 消息队列1.1 查看1.2 接口1.3 结构体1.4 函数1.4.1 创建消息队列1.4.2 删除消息队列1.4.3 打开消息队列1.4.4 关闭消息队列1.4.5 发送消息1.4.6 接收消息1.4.7 设置消息队列属性1.4.8 获取消息队列属性 0. 消息队列背景 管道和…
暂无图片
编程学习 ·

spring IOC容器 Bean 管理——基于注解方式

IOC 操作 Bean 管理(基于注解方式) ​ 1、什么是注解 ​ (1)注解是代码特殊标记,格式:@注解名称(属性名称=属性值, 属性名称=属性值…) ​ (2)使用注解,注解作用在类上面,方法上面,属性上面 ​ (3)使用注解目的:简化 xml 配置 ​ 2、Spring 针对 Bean 管理中创建对…
暂无图片
编程学习 ·

硕彦博创李飞授---linux 权限 ,计算机基础

的权限:文件对于用户的一种操作许可 1,文件对于用户的分类:创建者 U 群组 G 其他人O 所有用户all 2,权限:读r 写w 执行x 3,文件的权限 【创建者】 【群组】【其他人】 -【rw-】 【rw-】【r–】1 dj dj 323 7月 1 第一位;文件的类型 - 普通文件 d 文件夹 s 网络文件 1…
暂无图片
编程学习 ·

技术人员的赚钱之道:开篇

摘要:大多数技术人员有一个天然的短板,就是把太多的精力放在技术本身上,容易忽略了周边的人,容易忽略了身边的赚钱机会,随着技术的更新迭代,随着年龄的增长,便逐渐远离时代,逐渐丧失原本拥有的优势。但同时技术人员也有自身一个天然的强项:踏踏实实做事,有一技之长。…
暂无图片
编程学习 ·

1.9 OSPF 特殊区域

笔记用由typora写的,我截图效果好一点,笔记复制过来有很多地问题(图片不显示,排版问题等等)。
暂无图片
编程学习 ·

你想要的Python面试题都在这里了!

第三部分 数据库和缓存(46题) 1. 列举常见的关系型数据库和非关系型都有那些? 关系型数据库: Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL 非关系型数据库: NoSql、Cloudant、MongoDb、Redis、HBase 2. MySQL常见数据库引擎及比较? 在实际工作中,选择一…
暂无图片
编程学习 ·

从word中复制内容包含图片到百度ueditor编辑器中

1.4.2之后官方并没有做功能的改动,1.4.2在word复制这块没有bug,其他版本会出现手动无法转存的情况本文使用的后台是Java。前端为Jsp(前端都一样,后台如果语言不通得自己做 Base64编码解码)因为公司业务需要支持IE8 ,网上其实有很多富文本框,效果都很好。例如www.wangEdi…
暂无图片
编程学习 ·

树莓派基于Docker快速搭建nextcloud,附性能测试

文章目录前言正文树莓派刷系统环境准备调整时区Docker安装docker-compose的安装nextcloud运行nextcloud内网穿透配置 frp自动重新运行配置反向代理速度测试其他推荐总结 排版可能更好一点的永久原文链接:树莓派基于Docker快速搭建nextcloud,附性能测试 前言 一年前兴起买的树…