[Cacti] cacti监控mongodb性能实战
前言:
为了更好的使用mongodb,须要监控出mongodb的一些基础使用情况,比方Flush数、连接数、内存使用率、Index操作。Slave延迟等等,这些能够通过配置cacti监控mongodb的模板来完毕。
1。在cacti界面导入模板
在计算机本地。下载此tgz包:http://mysql-cacti-templates.googlecode.com/files/better-cacti-templates-1.1.8.tar.gz
解压到随意文件夹。然后打开cacti的web界面,选择"Import/Export" — "Improt Templates",点击"选择文件"。将cacti_host_template_x_mongodb_server_ht_0.8.6i-sver1.1.8.xml。导入到cacti里。这样,cacti的图形模板里就能够选择使用mongodb的图形项目了。
2,在cacti服务器端配置监控脚本
[root@squid-2 soft]# wget http://mysql-cacti-templates.googlecode.com/files/better-cacti-templates-1.1.8.tar.gz
[root@squid-2 soft]# tar zxvf better-cacti-templates-1.1.8.tar.gz
[root@squid-2 soft]# cd better-cacti-templates-1.1.8
[root@squid-2 better-cacti-templates-1.1.8]# cp scripts/ss_get_by_ssh.php /var/www/html/cacti/scripts/ss_get_by_ssh.php
[root@squid-2 better-cacti-templates-1.1.8]# chown –R apache /var/www/html/cacti/scripts/ss_get_by_ssh.php
改动监控脚本ss_get_by_ssh.php
[root@squid-2 better-cacti-templates-1.1.8]# vim /var/www/html/cacti/scripts/ss_get_by_ssh.php
$ssh_user = 'root'; # SSH username
$ssh_port = 22; # SSH port
$ssh_iden = '-i /var/www/html/cacti/id_rsa'; # SSH identity
这里mongodb因为使用了30000端口不是默认端口27018,所以还须要改动端口配置
function mongodb_cmdline ( $options ) {
return “echo \”db._adminCommand({serverStatus:1, repl:2})\” | /usr/local/mongo/mongodb/bin/mongo --port 30000″;
}
之后。重新启动cacti服务
[root@squid-2 templates]# service httpd restart
停止 httpd: [确定]
正在启动 httpd: [确定]
[root@squid-2 templates]#
3,使用SSH的方式登录监控
(1):创建SSH远曾登录账号
使用ssh-keygen命令生成秘钥,回车后输入key的路径/var/www/html/cacti/id_rsa,然后2个回车,密码为空,例如以下:
[root@ squid-2 soft]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): /var/www/html/cacti/id_rsa
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /var/www/html/cacti/id_rsa.
Your public key has been saved in /var/www/html/cacti/id_rsa.pub.
The key fingerprint is:
73:8e:77:45:a0:54:ef:c8:a4:2d:62:50:8d:da:d8:e4 root@name01
The key's randomart image is:
+--[ RSA 2048]----+
| .o..o |
| .o... o |
| .B . . o |
| o.E = + |
| S + + o |
| . * . . |
| . o . |
| . . |
| |
+-----------------+
把key文件权限改成cacti的使用用户能够訪问的权限:
[root@ squid-2 soft]# chown -R cacti_user /var/www/html/cacti/id_rsa*
[root@ squid-2 soft]#
将key加入到远程mongodb服务器上,也可在远程服务器建立一个cacti_user用户,将key加上到cactiuser文件夹下
[root@ squid-2 soft]# ssh-copy-id -i /var/www/html/cacti/id_rsa root@10.254.3.62
(2):配置各种參数
改动ss_get_by_ssh.php,设置好私钥文件路径:
$ssh_user = 'root'; # SSH username
$ssh_port = 22; # SSH port
$ssh_iden = '-i /var/www/html/cacti/id_rsa'; # SSH identity
假设mongodb不使用默认端口,须要改动以下一段,把端口加上就可以:
function mongodb_cmdline ( $options ) {
return “echo \”db._adminCommand({serverStatus:1, repl:2})\” | /usr/local/mongo/mongodb/bin/mongo --port 30000″;
}
(3)检測监控脚本
[root@squid-2 templates]# php /var/www/html/cacti/scripts/ss_get_by_ssh.php --type mongodb --host 10.254.3.62 --items dc,de,df,dg,dh,di,dj,dk,dl,dm,dn,do,dp,dq,dr,ds,dt,du
dc:57 de:0 df:401604608 dg:-1 dh:-1 di:-1 dj:-1 dk:-1 dl:-1 dm:-1 dn:-1 do:46268320 dp:5245 dq:0 dr:6 ds:52 dt:46697435 du:-1[root@squid-2 templates]#
[root@squid-2 templates]#
看到有数据了,检測OK。
4。使用Mongodb远程连接的方式来监控
4.1. 改动mongodb_cmdline函数,通过授权帐号密码、指定端口进行登录。
function mongodb_cmdline ( $options ) {
// return "echo \"db._adminCommand({serverStatus:1, repl:2})\" | mongo";
return "echo \"db._adminCommand({serverStatus:1, repl:2})\" | /usr/local/mongodb/bin/mongo admin --port $options[port2] --username pluser --password !378zm13yt";
}
4.2. 改动get_command_result函数。採用远程登录的方式,而非默认SSH的方式。(数据库本来就能够远程连接), 大概在558行
// $final_cmd = $use_ssh ? "$ssh '$cmd'" : $cmd;
$final_cmd = "$cmd --host $options[host]";
4.3 改动Data Input Methods
选择“Console”,在左側菜单条选择“Data Input Methonds”,再选择mongodb监控项连接“X Get Mongodb Stats…”,在中间的“Input String”后面的输入框里面,带上參数符合。例如以下所看到的:
<path_php_binary> -q <path_cacti>/scripts/ss_get_by_ssh.php --host <hostname> --type mongodb –port2 30000 --username pluser --password !378zm13yt --items dk,dl,dm,dn
4.4. 运行脚本进行測试。结果例如以下:
[root@squid-2 ~]# php ss_get_by_ssh.php --type mongodb --host 10.254.3.62 --port2 30000 --items jc,jd
PHP Parse error: syntax error, unexpected T_STRING in /var/www/html/cacti/scripts/ss_get_by_ssh.php on line 1265
[root@squid-2 ~]#
脚本有全角乱码,去掉,再运行脚本进行測试,结果例如以下:
[@cacti scripts]# php ss_get_by_ssh.php --type mongodb --host 10.254.3.62 --port2 30000 --items jc,jd
jc:4 jd:5497683968
5。生成监控图
在界面。选择“Device”。选择mongodb服务器连接“3.X2_mongodb”。再选择右上角的“Create Graphs for this Host”,在“Graph Types”后的下拉框里面选择Mongodb服务项,就会看到列表中有mongodb监控服务。然后打勾选上,点击右下角的“Create”button,为主机加入进监控图,例如以下所看到的:
6,查看mongodb监控图像
加入完毕之后,会有一下系列监控图,例如以下所看到的:
(1)MongoDB Background Flushes GT
(2)MongoDB Commands GT
(3)MongoDB Connections GT
(4)MongoDB Index Ops GT
(5)MongoDB Memory GT
(6) MongoDB Slave Lag GT
----------------------------------------------------------------------------------------------------------------
<版权全部。文章同意转载,但必须以链接方式注明源地址。否则追究法律责任!>
本文章地址原始地址:http://blog.csdn.net/mchdba/article/details/39805039
----------------------------------------------------------------------------------------------------------------
參考文章地址:
http://blog.chinaunix.net/uid-21505614-id-3186756.html
http://c20031776.blog.163.com/blog/static/68471625201341424117630/
[Cacti] cacti监控mongodb性能实战相关推荐
- mongodb 监控权限_分布式监控系统Zabbix3.4-针对MongoDB性能监控操作笔记
公司在IDC机房的一台服务器上部署了MongoDB,由于所存储的业务数据比较重要,所以对MongoDB的监控显得尤为重要!Zabbix监控MongoDB性能的原理:通过echo "db.se ...
- zabbix监控系统进阶专题篇(企业微信报警,邮箱报警,电话报警,监控数据库,监控磁盘性能)
一:zabbix配置文件详解 1. zabbix-server配置文件 Zabbix 日志 默认用文件记录,也可以发送给我们的 rsyslog 日志记录系统,如果我们 选择默认,则日志存放在LogFi ...
- 几个优化 Cacti 监控服务性能的技巧
几个优化 Cacti 监控服务性能的技巧 by ROBIN on 2011年05月26日 · LEAVE A COMMENT · in NETWORK, 信息世界 | IT 这几天一直在深入研究 Ca ...
- 实战Cacti网络监控(1)——基础安装配置
实验环境: 物理主机 redhat7.0 内核版本 3.10.0-123.el7.x86_64 虚拟机 redhat6.5 内核版本 2.6.32-431.e ...
- cacti中监控squid的方法
cacti中监控squid的方法: 1.在 /usr/local/squid/etc/squid.conf 中添加 acl localhost src 127.0.0.1/32 ...
- php服务器监控windows,用Linux上的cacti去监控windows服务器(图)
用linux上的cacti去监控windows服务器 以前一直用cacti或者mrtg来监控交换机流量,很少用来监控服务器,最近突然有个任务需要监控windows服务器,一般刚装好的cacti,里面的 ...
- 添加cacti监控_小水谈监控---Cacti安装(监控)
介绍 Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具. Cacti是通过 snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了 ...
- 优化Linux内核参数/etc/sysctl.conf sysctl 《高性能Linux服务器构建实战:运维监控、性能调优与集群应用》...
优化Linux内核参数/etc/sysctl.conf sysctl <高性能Linux服务器构建实战:运维监控.性能调优与集群应用> http://book.51cto.com/ar ...
- CACTI 仙人掌监控平台
CACTI 仙人掌监控平台 组件: LAMP:提供运行平台 SNMP:提供网络数据的收集 简单网络管理协议 161 RRDtools: 汇总数据并绘制图片 1.检查安全环 ...
最新文章
- LabelMe图像数据集下载
- 编写同时在PyTorch和Tensorflow上工作的代码
- 公司网络推广为你解答蜘蛛为什么有抓取网页却没收录?
- Table tr td th表格使用案例
- oracle 数据库日常巡检:数据库基本状况、oracle资源使用、数据备份结果、性能、cpu等、数据安全、归档日志、会话、SGA/PGA使用情况
- Java设计模式之结构型:组合模式
- 关于FactoryBean 和BeanFactory
- 图片验证码防暴力破解_Java
- 【IT笔试面试题整理】位操作
- AOP切入同类调用方法不起作用,AopContext.currentProxy()帮你解决这个坑
- 现代软件工程讲义 5 项目经理 Program Manager
- C#枚举类型用户标志位的代码
- android电容触摸屏的驱动及其上层工作原理,android 电容屏(一):电容屏基本原理篇...
- jq分页 不刷新页面_滑动无限加载和分页哪个对搜索引擎更友好呢?
- 【Android】Android 4.2源码下载(ubuntu 12.10)
- vue draggable 火狐拖拽搜索bug解决
- 力扣-202 快乐数
- WINDOWS使用命令行关闭休眠功能
- 免费的18个开源快速建站Java CMS
- sublime快捷键生成html5基本模板