【运维知识进阶篇】zabbix5.0稳定版详解4(用脚本自定义监控项+监控MySQL状态信息)(一)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 【运维知识进阶篇】zabbix5.0稳定版详解4(用脚本自定义监控项+监控MySQL状态信息)

我们在做自定义监控项的时候,一个一个取比较麻烦,取出一个数值,就要把该数值相关信息以一定格式写入/etc/zabbix/zabbix_agentd.d/下的配置文件里,当遇到需要取很多数值的时候,这样的操作会很繁琐,当有一种简单方法可以取很多数值的时候,这样叠加这些感觉效率又很低,所以我们可以采取脚本取数值的方式去取我们要监控的数值。

用脚本自定义监控项

我们先以Nginx为例,当Nginx取的值比较多时,可以用脚本方式使我们的条例清晰

1、书写脚本进行取值

1. [root@Web01 ~]# cat /etc/zabbix/zabbix_agentd.d/nginx.sh
2. #!/bin/sh
3. case $1 in
4.  active)
5.  curl -s 127.0.0.1:88/nginx_status|awk 'NR==1{print $NF}'
6.  ;;
7.  accepts)
8.  curl -s 127.0.0.1:88/nginx_status|awk 'NR==3{print $1}'
9.  ;;
10.   handled)
11.   curl -s 127.0.0.1:88/nginx_status|awk 'NR==3{print $2}'
12.   ;;
13.   requests)
14.   curl -s 127.0.0.1:88/nginx_status|awk 'NR==3{print $3}'
15.   ;;
16.   *)
17.   echo "Usage: $0 [active|accepts|handled|requests]"
18. esac
19. [root@Web01 ~]# chmod +x /etc/zabbix/zabbix_agentd.d/nginx.sh    #增加执行权限

2、修改zabbix客户端配置文件

1. [root@Web01 ~]# cat /etc/zabbix/zabbix_agentd.d/nginx.conf
2. UserParameter=nginx.[*],sh /etc/zabbix/zabbix_agentd.d/nginx.sh $1
3. 
4. #用[*]实现可以自定义内容的效果,zabbix自带的监控端口就是这个原理,可以自己填端口
5. #经测试里面的脚本必须使用sh运行,用绝对路径+给可执行权限不行,不知道zabbix之前版本行不行,反正5.0版本不行

3、zabbix创建模板及监控项

4、关联至被监控主机

成功监控!

监控MySQL状态信息

我们此次监控MySQL尝试使用脚本自定义监控项,监控MySQL状态信息

通过命令查看MySQL状态信息是show global status,通过awk取值进行监控

1. [root@DB01 ~]# mysql -uroot -e 'show global status'
2. +------------------------------------------+-------------+
3. | Variable_name                            | Value       |
4. +------------------------------------------+-------------+
5. | Aborted_clients                          | 0           |
6. | Aborted_connects                         | 18926       |
7. | Access_denied_errors                     | 0           |
8. | Aria_pagecache_blocks_not_flushed        | 0           |
9. | Aria_pagecache_blocks_unused             | 15737       |
10. | Aria_pagecache_blocks_used               | 0           |
11. | Aria_pagecache_read_requests             | 0           |
12. ......
13. Threads_connected          # 连接数
14. Com_select                 # 查询总量
15. Com_insert                 # 插入总量
16. Com_update                 # 更新总量
17. Com_delete                 # 删除总量
18. Bytes_received             # 流入总流量
19. Bytes_sent                 # 流出总流量
20. Slow_queries               # 慢查询总量

1、使用脚本定义监控项

1. [root@DB01 ~]# cat /etc/zabbix/zabbix_agentd.d/mysql.sh
2. mysql -uroot -e 'show global status;'|grep -w $1|awk '{print $NF}'
3. [root@DB01 ~]# cat /etc/zabbix/zabbix_agentd.d/mysql.conf
4. UserParameter=mysql.[*],sh /etc/zabbix/zabbix_agentd.d/mysql.sh $1
5. 
6. #服务端测试
7. [root@Zabbix ~]# zabbix_get -s 172.16.1.51 -k mysql.[Threads_connected]
8. 1

2、服务端创建MySQL监控模板

其他自定义的值可以根据需求自行添加,此处省略......

再添加个zabbix自带的端口监控

最终完成添加

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
5天前
|
Prometheus 监控 Cloud Native
使用mysqld_exporter监控所有MySQL实例
使用mysqld_exporter监控所有MySQL实例
41 2
|
5天前
|
关系型数据库 MySQL Shell
备份 MySQL 的 shell 脚本(mysqldump版本)
【4月更文挑战第28天】
24 0
|
5天前
|
Java 关系型数据库 MySQL
【JAVA进阶篇教学】第八篇:Java链接MySql数据库异常
【JAVA进阶篇教学】第八篇:Java链接MySql数据库异常
|
5天前
|
关系型数据库 MySQL Shell
在Centos7中利用Shell脚本:实现MySQL的数据备份
在Centos7中利用Shell脚本:实现MySQL的数据备份
|
5天前
|
SQL 运维 关系型数据库
MySQL 运维篇
该文本涵盖了数据库管理的关键方面,包括DDL(CREATE, DROP, ALTER等)用于定义数据库结构,DML(INSERT, DELETE, UPDATE, SELECT)用于数据操作,DCL(GRANT, REVOKE, COMMIT, ROLLBACK)涉及权限管理和事务控制,以及DQL用于数据查询。还介绍了MySQL的安装过程,包括源码编译和二进制安装方法,以及启动服务、设置初始密码和修改用户密码的步骤。
21 1
|
5天前
|
SQL 关系型数据库 MySQL
【简单无脑】自动化脚本一键安装虚拟机下的MySQL服务
该文章提供了在虚拟机上安装MySQL服务的简化方法,特别是针对新手。作者提供了一个自动化脚本`install_mysql.sh`,使得安装过程更简单。用户需要下载`install.rpm`资源,将其放在指定目录下,然后创建并编辑脚本文件,将提供的代码粘贴进去,通过`chmod u+x`授权,最后运行脚本`./install_mysql.sh [rpm文件路径]`来安装MySQL。文章还附有相关图片说明。
41 1
【简单无脑】自动化脚本一键安装虚拟机下的MySQL服务
|
5天前
|
SQL 缓存 关系型数据库
MySQL常见问题解决和自动化安装脚本
这篇内容包含了两个主要部分:解决MySQL登录问题和处理GPG密钥问题。当MySQL密码正确但无法登录时,可以通过执行SQL命令`ALTER USER`和`flush privileges`来修改和重置密码。对于MySQL安装时的GPG密钥错误,首先需要强制删除旧的MySQL仓库包,导入新的GPG公钥,然后安装MySQL服务器。如果遇到GPG检查错误,可以使用`--nogpgcheck`参数忽略检查来安装。最后,提供了一个自动化安装MySQL的脚本,用于检查旧版本、卸载残留、安装MySQL8并启动服务。
27 1
MySQL常见问题解决和自动化安装脚本
|
5天前
|
运维 Prometheus 监控
矢量数据库系统监控与运维:确保稳定运行的关键要素
【4月更文挑战第30天】本文探讨了确保矢量数据库系统稳定运行的监控与运维关键要素。监控方面,关注响应时间、吞吐量、资源利用率和错误率等指标,使用Prometheus等工具实时收集分析,并有效管理日志。运维上,强调备份恢复、性能调优、安全管理和自动化运维。关键成功因素包括建立全面监控体系、科学的运维策略、提升运维人员技能和团队协作。通过这些措施,可保障矢量数据库系统的稳定运行,支持业务发展。
|
5天前
|
弹性计算 关系型数据库 MySQL
离线安装二进制Mysql脚本
【4月更文挑战第30天】
13 1
|
5天前
|
DataWorks 安全 关系型数据库
DataWorks产品使用合集之在 DataWorks 中使用数据集成从 MySQL 导入数据到 GDB 执行同步任务脚本的步骤如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
31 0

推荐镜像

更多