市场上比较的监控方式有两种:zabbix和prometheus架构,对于MogDB/openGauss数据库来说,已经通过grafana + prometheus + opengauss_exporter的方式完成了监控部署(部署方式:https://www.modb.pro/db/173483)。
那么如何通过zabbix完成对MogDB/openGauss数据库完成监控呢?通过zabbix官网我们知道从zabbix 4.2版本开始支持了Prometheus 数据源,那本篇文章将实现通过zabbix采集prometheus数据,zabbix底层的数据存储采用MogDB数据库。
一.软件信息
OS: CentOS 7.9 on x86
database:MogDB 2.0.1
prometheus:2.31.1
opengauss_exporter: 0.0.9
本环境已经安装好MogDB数据库、prometheus和opengauss_exporter,这里主要介绍zabbix安装及与prometheus适配。
--安装依赖包
yum -y install gcc gcc-c++ curl curl-devel net-snmp net-snmp-devel readline.x86_64 readline-devel.x86_64 zlib.x86_64 zlib-devel.x86_64 libevent.x86_64 libevent-devel.x86_64 postgresql-devel.x86_64 golang.x86_64 libmcrypt-devel mhash-devel libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel sqlite-devel.x86_64 sqlite.x86_64 oniguruma-devel oniguruma
二.zabbix安装部署
参考zabbix官网快速部署:(复制链接至浏览器中浏览)
https://www.zabbix.com/cn/dow...
1.安装准备:
--安装zabbix源
# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
# yum clean all--安装zabbix server 和 agent
# yum install zabbix-server-pgsql zabbix-agent--配置zabbix前端
# yum install centos-release-scl--编辑zabbix.repo
vim /etc/yum.repos.d/zabbix.repo
[zabbix-frontend]
...
enabled=1
...
Install Zabbix frontend packages.--安装PostgreSQL和Nginx
# yum install zabbix-web-pgsql-scl zabbix-nginx-conf-scl--为zabbix前端配置PHP
vim /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conflisten 80;
server_name 172.16.3.90;
***
vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conflisten.acl_users = apache,nginx
php_value[date.timezone] = Europe/Riga
2.MogDB数据库配置
--创建数据库
postgres=# create database zabbix DBCOMPATIBILITY='PG';
--创建用户
postgres=# \c zabbix
abbix=# create user zabbix encrypted password 'zabbix@123';
create user zabbix encrypted password 'zabbix@123';
--修改pg_hba.conf
hostallzabbix172.16.3.90/32 md5--导入数据
$ zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | gsql -h 172.16.3.90 -U zabbix zabbix -f
3.启动zabbix server和agent进
--启动zabbix server和agent进程,并为它们设置开机自启:# systemctl restart zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm
# systemctl enable zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm
4.展示zabbix前端
连接到新安装的zabbix前端,直接在浏览器输入:172.16.3.90 ,如有下图展示说明zabbix启动成功,配置完前段界面后,zabbix初始账号是:Admin,密码:zabbix
文章图片
文章图片
三.zabbix配置prometheus
【zabbix监控MogDB之采集prometheus数据】1.配置监控项
在zabbix界面:Configuration --> Hosts --> Items --> Create Item
文章图片
2.添加监控项信息
文章图片
文章图片
3.查看监控项
文章图片
墨天轮原文链接:https://www.modb.pro/db/18746...(复制链接至浏览器或点击文末阅读原文查看)
关于作者
高云龙,云和恩墨服务总监。长期从事PG运维工作,目前在支持openGauss生态发展。
推荐阅读
- 数据库|SQL行转列方式优化查询性能实践
- mysql|一文深入理解mysql
- 达梦数据库|DM8表空间备份恢复
- 数据技术|一文了解Gauss数据库(开发历程、OLTP&OLAP特点、行式&列式存储,及与Oracle和AWS对比)
- SqlServer|sql server的UPDLOCK、HOLDLOCK试验
- 谈灾难恢复指标(RTO与RPO是什么鬼())
- RPO与RTO
- 数据库|效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】)...