Postgresql opm监控工具部署

先说下这个工具使用中的问题,我在使用的过程中发现界面上的数据显示不及时,更新的间隔太长,设置第二天看昨天的还看不到,不知道是啥问题,后续在看看
在pg server机器上安装:
yum install postgresql-devel
yum install install postgresql-contrib
上传opm文件
解压后进入core,进行安装
[root@dbtest3 pg]# pwd
/data/opm-core-REL_2_4/pg
[root@dbtest3 pg]# make install
添加扩展
postgres=# CREATE DATABASE opm;
CREATE DATABASE
postgres=# \c opm
You are now connected to database “opm” as user “postgresql”.
opm=# CREATE EXTENSION opm_core;

默认的扩展文件创建在了/usr/share/pgsql/extension这个目录下,在执行create extension的命令的时候是去当前server的extension目录下找的,我直接拷贝了文件过去。
安装好后,创建ui登录管理员
SELECT create_admin(‘admin1’, ‘agoodpassword’);

安装wh_nagios
安装方式一样
需要先安装hstore
在源码中的/postgresql-9.6.6/contrib/hstore目录下执行make install
CREATE EXTENSION wh_nagios;
创建定时任务
* * * * * psql -c ‘SELECT wh_nagios.dispatch_record()’ opm
创建一个导数据的角色
CREATE ROLE opm_dispatcher LOGIN PASSWORD ‘anothergoodpassword’;
授权
SELECT grant_dispatcher(‘wh_nagios’, ‘opm_dispatcher’);
安装nagios
yum -y install httpd httpd-devel gcc glibc glibc-common gd gd-devel perl-devel perl-CPAN fcgi perl-FCGI perl-FCGI-ProcManager
安装官网的创建好用户之类的,主要注意的是nagios文件路径的不同,别的都是一样的。在配置好后,可以登录进去,但是登录后没有什么数据,还需要使用check_pgactivity脚本在客户端配置下监控上传到服务端,才能显示监控数据,这个后续我将配置文件内容脚本,都粘贴下。


按照官方文档的配置是能够显示监控端本机的基本监控信息的,但是只是完成了一部分的配置,agent上还需要配置check_pgactivity脚本才能监控pg的数据,下面先列下注意点:
1pg访问权限的控制,因为脚本要访问不同的库,所以我配置了本机的trust方式访问,之前测试了在pgpass文件中放置密码,但是这种方式,用户只能无密码访问一个库,无法满足需求。这个文件是只匹配到第一个满足条件就不往下匹配了,别的机器配置需要密码的md5方式。
2关于check_pgactivity这个脚本,采用rpm的方式安装。采用这种方式安装,脚本放置在了/usr/lib64/nagios/plugins这个插件目录下,便于管理。另外这个脚本在监控的时候是使用的nagios用户运行的,而脚本中会输出文件到check_pgactivity.data中,所以这个文件要有写入的权限,而且需要配置/etc/sudoers文件,添加:
nagios ALL=(ALL) NOPASSWD:/usr/lib64/nagios/plugins/check_pgactivity
否则无法正常获取数据。
3被监控端的nrpe.cfg文件如下:

[root@dbtest3 nagios]# cat /etc/nagios/nrpe.cfg 

log_facility=daemon
pid_file=/var/run/nrpe/nrpe.pid
server_port=5666
#server_address=127.0.0.1
nrpe_user=nrpe
nrpe_group=nrpe
#下面的地址要添加监控端的ip
allowed_hosts=xxx
dont_blame_nrpe=0
allow_bash_command_substitution=0
debug=0
command_timeout=30
connection_timeout=90
command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
command[check_disk]=/usr/lib64/nagios/plugins/check_disk -w 30% -c 10%
command[check_zombie_procs]=/usr/lib64/nagios/plugins/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/lib64/nagios/plugins/check_procs -w 150 -c 200 
command[check_conn]=/usr/lib64/nagios/plugins/check_pgactivity  -F nagios -h 127.0.0.1 -p 5432 -d myDB  -s backends -w 50 -c 100 
command[check_bgwriter]=/usr/lib64/nagios/plugins/check_pgactivity  -F nagios -h 127.0.0.1 -p 5432 -d myDB  -s bgwriter -w 20% -c 40%
command[check_commitratio]=/usr/lib64/nagios/plugins/check_pgactivity  -F nagios -h 127.0.0.1 -p 5432 -d myDB  -s commit_ratio
command[check_maxage]=/usr/lib64/nagios/plugins/check_pgactivity  -F nagios -h 127.0.0.1 -p 5432 -d myDB  -s max_freeze_age
command[check_archiver]=/usr/lib64/nagios/plugins/check_pgactivity  -F nagios -h 127.0.0.1 -p 5432 -d myDB  -s archiver
command[check_tmpfile]=/usr/lib64/nagios/plugins/check_pgactivity  -F nagios -h 127.0.0.1 -p 5432 -d myDB  -s temp_files
command[check_bloat]=/usr/lib64/nagios/plugins/check_pgactivity  -F nagios -h 127.0.0.1 -p 5432 -d myDB  -s btree_bloat -w "20M" -c "50M" 
command[check_hitratio]=/usr/lib64/nagios/plugins/check_pgactivity  -F nagios -h 127.0.0.1 -p 5432 -d myDB -s hit_ratio -w 90% -c 80% --exclude=template1,template0,pgbench
command[check_dbsize]=/usr/lib64/nagios/plugins/check_pgactivity  -F nagios -h 127.0.0.1 -p 5432 -d myDB  -s database_size -w 10G -c 20G  --exclude=template1,template0,pgbench
command[check_autovacuum]=/usr/lib64/nagios/plugins/check_pgactivity  -F nagios -h 127.0.0.1 -p 5432 -d myDB -s last_vacuum -w '3d' -c '7d'  --exclude=template1,template0,pgbench

command[check_autoanalyze]=/usr/lib64/nagios/plugins/check_pgactivity  -F nagios -h 127.0.0.1 -p 5432 -d myDB -s last_analyze -w '3d' -c '7d'  --exclude=template1,te
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值