Zabbix 监控阿里云RDS
简介
Zabbix 监控阿里云RDS数据库、主要通过阿里云提供的API来进行监控。
需要在阿里云获取“用户AccessKey”指定ID,进行RDS监控。
环境
- 服务:Zabbix 3.0.28、zabbix-agent 2.4.7
- 系统:Linux Centos7/Redhat7
- 依赖:python 2.7、git 2.7.4
部署
zabbix-agent 端操作
1、通过pip2.7安装阿里云RDS监控模块
pip2.7 install aliyun-python-sdk-core==2.3.5 aliyun-python-sdk-rds datetime
pip2 list | grep aliyun
aliyun-python-sdk-core 2.3.5
aliyun-python-sdk-rds 2.3.10
2、创建存放RDS配置文件的目录、并进入到该目录下
mkdir /etc/zabbix/zabbix_agentd.conf.d/scripts/
cd /etc/zabbix/zabbix_agentd.conf.d/scripts/
3、通过git下载官方提供的RDS文件
git clone https://github.com/XWJR-Ops/zabbix-RDS-monitor
查看下载文件
4、将两个RDS脚本移动到scripts目录下
mv check_rds.py ../
mv discovery_rds.py ../
5、登陆阿里云
从阿里云控制台获取 AccessKey
注:总共有 不同的两个 ID 与 Secret的值,在创建过程中会显示。
6、修改两个RDS脚本中的 ID 与 Secret 值、地区按照实例地区为主。
vim check_rds.py
vim discovery_rds.py
#coding=utf-8
#Auther:xwjr.com
from aliyunsdkcore import client
....ID = 'LTAI4FuxxxxxxxwD4e775Bci'
Secret = 'nPinBRO1xxxxxxx6KIiTcpO0vk'
RegionId = 'cn-shenzhen'
....
7、将脚本添加到配置文件当中
vim /etc/zabbix/zabbix_agentd.conf
UnsafeUserParameters=1
UserParameter=rds.discovery,/usr/bin/python2.7 /etc/zabbix/zabbix_agentd.conf.d/scripts/discovery_rds.py
UserParameter=check.rds[*],/usr/bin/python2.7 /etc/zabbix/zabbix_agentd.conf.d/scripts/check_rds.py $1 $2 $3
8、重启zabbix-agent服务
systemctl restart zabbix-agentd
9、将zabbix-RDS-monitor目录下的zbx_AliyunRds_templates.xml模板导入到zabbix系统中
10、查看监控项
------------------------------------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
另:
zabbix-RDS-monitor
Aliyun RDS-mysql status monitor with zabbix
zabbix通过阿里云api 自动发现、监控阿里云RDS-Mysql数据库
本版本数据的图表展示,是以监控项进行分组,后期会再发布以rds实例分组的版本。
阿里云的RDS自带的监控系统获取数据不怎么直观,想要通过API获取数据通过zabbix显示,因为网上资料缺乏和其他一些原因,获取API签名很困难,但使用阿里云的SDK可以完美避开获取签名的步骤。
阿里云SDK是什么?
SDK是阿里云为用户提供的开发工具,支持JAVA、PHP、C#等几种不同的语言,这里是用Python写的。在Python SDK里提供了一些模块,我们通过调用这些模块、传入一些必要的参数可以简单的实现数据的获取。
阿里云的sdk就是很多的库文件,这里我们只需要两个库文件,一个核心库sdk-core和rds库sdk-rds。
下载地址:https://github.com/aliyun/aliyun-openapi-python-sdk
注意事项
- 脚本会收集RDS别名,
- 不要默认别名
- 不要使用中文别名(zabbix不识别)
- 切记aliyun-python-sdk-core==2.3.5,新版本的sdk有bug
环境要求
python = 2.7
模块安装
/usr/bin/pip2.7 install aliyun-python-sdk-core==2.3.5 aliyun-python-sdk-rds datetime
使用方法
- 从阿里云控制台获取 AccessKey ,并修改脚本中的 ID 与 Secret
- 修改区域 RegionId
- 将两个脚本放置于以下目录。
- /etc/zabbix/script chmod +x /etc/zabbix/script/*
调用阿里云的sdk分为三个步骤:
- 创建 AcsClient 实例并初始化;AcsClient即请求rds的实例,包括accesskeyid、accesskeysecret和regionid。
- 创建 API 请求并设置参数;这里的参数是除了公共参数之外所需要的所有参数,在阿里云文档上查看:https://help.aliyun.com/document_detail/26279.html?spm=5176.doc26224.6.868.xHBXXo
- 发起请求并打印返回。
举个例子:
我想查看rds实例的资源使用情况。查看阿里云文档得知,其请求参数有两个:Action :DescribeResourceUsage和DBInstanceId:实例名。
我们进入aliyun-python-sdk-rds/aliyunsdkrds/request/v20140815下的DescribeResourceUsageRequest.py库查看DBInstanceId的设置方法为set_DBInstanceId。
- 修改zabbix-agentd.conf,添加以下内容
#rds
UserParameter=rds.discovery,/usr/local/python2.7/bin/python2.7 /etc/zabbix/script/discovery_rds.py
UserParameter=check.rds[*],/usr/local/python2.7/bin/python2.7 /etc/zabbix/script/check_rds.py $1 $2 $3
- 重启zabbix-agent
- zabbix控制台导入模板,并关联主机
- 出处:https://github.com/XWJR-Ops/zabbix-RDS-monitor/blob/master/README.md
Zabbix 监控阿里云RDS相关推荐
- Zabbix技术分享——如何使用zabbix监控华为云RDS
在数字化大背景下,数据是重要的生产资料,这些数据存放在哪里,如何保障数据安全是所有企业都要考虑的事情.华为云RDS凭借安全可靠,可根据业务规模动态扩容的特性,受到越来越多中小企业的青睐,对华为云RDS ...
- 自定义prometheus exporter实现监控阿里云RDS
背景 1.Prometheus官网提供的mysql exporter 对于mysql实例只能一个进程监控一个实例,数据库实例很多的情况,不方便管理 2.内部有定制化监控需求,RDS 默认无法实现,比如 ...
- python远程监控jvm_python和jstat命令采集jvm数据导入zabbix监控-阿里云开发者社区
利用python和jstat命令采集jvm数据 注:用法运行python jvcheck.py 变量如EC或E等 #coding=utf-8 #author=yangzai # 用jstat检查jvm ...
- 从没想到监控可以这么做!阿里云RDS智能诊断系统首次公开
阿里妹导读:来自阿里云RDS团队的论文"TcpRT: Instrument and Diagnostic Analysis System for Service Quality of Clo ...
- 自建MySQL和阿里云RDS的区别 有必要使用云数据库吗?...
很多阿里云ECS用户都会考虑是使用ECS自建数据库还是使用阿里云的RDS云数据库,如何选择?有必要使用云数据库吗?云吞铺子告诉你使用阿里云RDS云数据库的理由: RDS的高可用性 RDS提供了主备双节 ...
- 阿里云mysql数据库引擎_在阿里云RDS数据库服务器中将MySQL InnoDB引擎表转为压缩格式...
今年以来将我们以前托管或者租用的服务器全面转向阿里云,除了采用ECS服务器以外,还有一项重要的是采用了RDS数据库服务器,这对于服务的稳定性.各项指标的监控.调优等都有帮助. 不过随着近期更多数据库转 ...
- 阿里云RDS深度定制-XA Crash Safe
简介: 近几年,随着分布式数据库系统的兴起,特别是基于MySQL分布式数据库系统,会用到XA来保证全局事务的一致性.众所周知,MySQL对XA事务的支持是比较弱的,存在很多问题.为了满足分布式数据库系 ...
- 重磅干货免费下载!阿里云RDS团队论文被数据库顶会SIGMOD 2018收录
为什么80%的码农都做不了架构师?>>> 摘要: 来自阿里云RDS团队的论文"**TcpRT: Instrument and Diagnostic Analysis ...
- 【数据库取证篇】阿里云RDS数据库简介
[数据库取证篇]阿里云RDS数据库简介 初识RDS基本信息,知其然,再知其所以然-[suy] 文章目录 [数据库取证篇]阿里云RDS数据库简介 (一)云数据库RDS简介 1.各版本功能 (二)RD ...
最新文章
- 2020-11-25(《深入理解计算机系统》多级页表详解)
- 微信小程序 之 请求函数封装
- mongoose Warning:Server Discovery and Monitoring engine is deprecated
- linux中各目录及详细介绍
- matlab中noisbloc,基于小波变换的微弱信号检测技术的研究.doc
- 被阿里带火的数据中台,不靠这三个阶段绝对失败
- Cocos2dx中利用双向链表实现无限循环滚动层
- 【思维、费马小定理】CQXYM Count Permutations
- 可恨的KYLIN OS:动不动就不支持老机
- php 唱吧导出,直播必备的十款电脑声音处理软件
- 2022张宇考研基础30讲 第八讲 一元函数积分学的概念与计算
- 蚂蚁课堂视频笔记思维导图-4期 一、微服务技术
- signature=44e925e612735a871c9c44002806d71b,英文书信格式
- 使用cmd命令行查看wifi密码
- Redis发布订阅[西橙先生]
- 第三方可视化数据分析图表Pyecharts(下载保存图片(生成的html图片)、zip函数(将数据转换为列表加元组的格式)、南丁格尔玫瑰图、双y轴可视化、饼形图和环形图)
- PTK(Pulmonarytoolkit)环境搭建与 ITK4.13+VS2015的配置
- linux同步两台mysql数据,Mysql入门MySQL 数据库两台主机同步实战(linux)
- 15.内置函数,匿名函数
- java基于quasar实现协程池【后篇】
热门文章
- 制作简易计算器:接收用户输入,两个操作数,一个操作符,给出用户结果。2021/01/17
- 深度神经网络的工作原理,深度神经网络基本原理
- SpringBoot_Themeleaf的配置
- 西安python培训机构贴吧
- [6 kyu] Playing with digits
- 【MySQL】索引优化中的最左前缀原则和索引下推
- PHP图书借阅管理系统,功能完善齐全,支持用户前台管理,和后台管理,支持PHP最新版7.x,数据库mysql
- Qt——QLineEdit使用总结
- Linux如何将Mysql数据库自动从一台服务器备份到另一台服务器
- 【web前端】CSS高级技巧(精灵图,字体图标,CSS三角,CSS用户界面样式,文字与图片垂直对齐,溢出的文字省略号显示,常见布局技巧,CSS初始化)