现在流行的监控系统很多,选择一个合适自己的就可以了,例如Zabbix、Nagios;监控MySQL为主的有MySQLMTOP、Lepus。本文主要介绍快速部署lepus以及监控MySQL,因为作为DBA我们还是注重MySQL的监控,当然系统状态也非常重要,监控成为我们日常工作不可缺少,废话就不多说了,下面开始环境搭建。

官方网站:http://www.lepus.cc/page/product

搭建环境如下:
Lepus Server 192.168.10.128 Centos .2x86_64
已关闭selinux

一.基本环境安装

(1)安装LAMP环境(这里使用yum完成,简单省事,当然安装的MySQL版本会略低,Lepus对MySQL性能还是有一定的影响的,特别是当我们的被监控端越来越多,监控项也比较多时,建议安装Percona版本)

如果服务器没有mysql,可以通过以下方式安装LAMP

yum install mysql-server httpd php  -y

我用我已经安装好的mysql-5.6.25,所以我就不安装MySQL了(建议用二进制安装的)

(2)开启httpd,mysqld

chkconfig httpd on
chkconfig mysqld on

(3)安装lepus server需要的依赖包

 yum install  gcc python-devel mysql-devel net-snmp-devel curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xml  -y

(4)配置httpd并启动

[root@ lepus-server ~]# grep '^ServerName' /etc/httpd/conf/httpd.conf
ServerName 192.168.10.128:
[root@ lepus-server ~]# service httpd start
Starting httpd: [ OK ]
[root@ lepus-server ~]#

(5)配置php

[root@lepus-server ~]# sed -i "s/;date.timezone =/date.timezone = Asia\/Shanghai/g" /etc/php.ini
[root@lepus-server ~]# sed -i "s#max_execution_time = 30#max_execution_time = 300#g" /etc/php.ini
[root@lepus-server ~]# sed -i "s#post_max_size = 8M#post_max_size = 32M#g" /etc/php.ini
[root@lepus-server ~]# sed -i "s#max_input_time = 60#max_input_time = 300#g" /etc/php.ini
[root@lepus-server ~]# sed -i "s#memory_limit = 128M#memory_limit = 128M#g" /etc/php.ini
[root@lepus-server ~]# sed -i "/;mbstring.func_overload = 0/ambstring.func_overload = 2\n" /etc/php.ini
[root@lepus-server ~]#

(6)安装Python2.7(不是必须的)

[root@ lepus-server src]# pwd
/usr/local/src
[root@ lepus-server src]#wget https://www.python.org/ftp/python/2.7.2/Python-2.7.2.tar.bz2
[root@lepus-server src]# tar jxf Python-2.7..tar.bz2
[root@lepus-server src]# cd Python-2.7.
[root@lepus-server Python-2.7.]# ./configure --prefix=/usr/local/python2.
[root@lepus-server Python-2.7.]# make && make install

(7) 安装MySQLdb-python,解压后,编辑site.cfg,找到mysql_config,把#号去掉,并指定mysql_config的路径

[root@lepus-server Python-2.7.]# cd /usr/local/src/
[root@lepus-server src]# wget http://www.mtop.cc/software/MySQLdb-python.zip
[root@lepus-server src]# unzip MySQLdb-python.zip
[root@lepus-server src]# cd MySQLdb1-master/
[root@lepus-server MySQLdb1-master]# cat site.cfg |grep "mysql_config"
mysql_config = /usr/bin/mysql_config
[root@lepus-server MySQLdb1-master]# python setup.py build
[root@lepus-server MySQLdb1-master]# python setup.py install

(8)安装redis驱动,如果没有redis需要监控可以跳过此步骤:

[root@lepus-server MySQLdb1-master]# cd /usr/local/src/
[root@lepus-server src]# wget https://pypi.python.org/packages/source/r/redis/redis-2.10.3.tar.gz
[root@lepus-server src]# tar xf redis-2.10..tar.gz
[root@lepus-server src]# cd redis-2.10.
[root@lepus-server redis-2.10.]# python setup.py install

二、安装Lepus采集器

(1) 下载Lepus软件包下载地址:http://www.lepus.cc/soft/17,然后登录数据库创建lepus数据库和MySQL用户

[root@lepus-server src]# pwd
/usr/local/src
[root@lepus-server src]# ll Lepus3..zip
-rw-r--r--. root root Apr : Lepus3..zip
[root@lepus-server src]# unzip Lepus3..zip #创建lepus库并授权
[root@lepus-server src]# mysql -uroot -p123456 -e "create database lepus default character set utf8;"
[root@lepus-server src]# mysql -uroot -p123456 -e "grant select,insert,update,delete,create on lepus.* to 'lepus'@'localhost' identified by 'lepus';"
[root@lepus-server src]# mysql -uroot -p123456 -e "grant select,insert,update,delete,create on lepus.* to 'lepus'@'127.0.0.1' identified by 'lepus';"
[root@lepus-server src]# mysql -uroot -p123456 -e "flush privileges"

(2) 导入lepus数据库初始化数据,建议使用root用户导,进入到lepus解包以后的目录

[root@lepus-server src]# cd lepus_v3./sql/
[root@lepus-server sql]# mysql -uroot -p123456 lepus < lepus_table.sql
[root@lepus-server sql]# mysql -uroot -p123456 lepus < lepus_data.sql
[root@lepus-server sql]#

(3) 安装lepus并,运行脚本install.sh,可以打开看一下,默认安装/usr/local/src下,可以通过修改脚本的路径安装在别的目录下。

[root@lepus-server python]# pwd
/usr/local/src/lepus_v3./python
[root@lepus-server python]# sh install.sh
[note] lepus will be install on basedir: /usr/local/lepus
[note] /usr/local/lepus directory does not exist,will be created.
[note] /usr/local/lepus directory created success.
[note] wait copy files.......
[note] change script permission.
[note] create links.
[note] install complete.
[root@lepus-server python]#

给全部脚本有执行权限,修改lepus连接数据库的配置文件,选项很简单不多说了

root@lepus-server python]# cd /usr/local/lepus/
[root@lepus-server lepus]# chmod +x *.sh
[root@lepus-server lepus]# chmod +x *.py
[root@lepus-server lepus]# vim etc/config.ini
###监控机MySQL数据库连接地址###
[monitor_server]
host="127.0.0.1"
port=
user="lepus"
passwd="lepus"
dbname="lepus"

(4)启动lepus服务,启动时可以看看它的一些使用参数:

[root@lepus-server lepus]# lepus --help
lepus help:
support-site: www.lepus.cc
====================================================================
start Start lepus monitor server; Command: #lepus start
stop Stop lepus monitor server; Command: #lepus stop
status Check lepus monitor run status; Command: #lepus status
[root@lepus-server lepus]#
启动:

[root@lepus-server lepus]# lepus start
nohup: appending output to `nohup.out'
lepus server start success!
[root@lepus-server lepus]#

启动成功,如果启动有问题,可以查看nohup.out日志的信息排查问题。经常遇到的问题如下:

[root lepus]$ lepus start
nohup: appending output to `nohup.out'
lepus server start fail!
[root lepus]$ cat nohup.out
Traceback (most recent call last):
File "lepus.py", line , in <module>
import MySQLdb
File "/usr/lib64/python2.6/site-packages/MySQL_python-1.2.4-py2.6-linux-x86_64.egg/MySQLdb/__init__.py", line , in <module>
import _mysql
ImportError: libmysqlclient.so.: cannot open shared object file: No such file or directory

解决方法:
[root lepus]$ ln -sf /usr/local/mysql/lib/libmysqlclient.so. /usr/lib/
[root lepus]$ ln -sf /usr/local/mysql/lib/libmysqlclient.so. /usr/lib64/
[root lepus]$ lepus start
nohup: appending output to `nohup.out'
lepus server start success!

三、安装WEB管理台

(1) 去到lepus的解压目录下把php文件夹下的所有文件拷贝/var/www/html下,然后编辑文件/var/www/html/application/config/database.php

[root@lepus-server lepus]# cp -rf /usr/local/src/lepus_v3.7/php/* /var/www/html/
[root@lepus-server lepus]# cd /var/www/html/application/config/
[root@lepus-server config]# vim database.php

(2)重启httpd

[root@lepus-server config]# /etc/init.d/httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
[root@lepus-server config]#

(3)、关闭防火墙(线上自己要添加规则即可,别逗比的把线上的关了)

[root@lepus-server config]# service iptables stop
iptables: Flushing firewall rules: [ OK ]
iptables: Setting chains to policy ACCEPT: filter [ OK ]
iptables: Unloading modules: [ OK ]

[root@lepus-server config]# setenforce

(4)访问lepus,在Firefox输入http://192.168.10.128,默认管理员账号密码admin/Lepusadmin登录后请修改管理员密码,增加普通账号(猎豹浏览器缓存太强了,修改的东西,会存在有时不生效的可能),很多人反馈到登录页面就跳转不了,建议不要用IP直接访问,可以用域名:端口或者IP:端口,使用大一点的端口试试,如8080,8090。

四、常规的配置

(1)、添加一个MySQL server,在添加被监控端的服务器时,在数据库里都要授权监控用户,如果是一个内网网段可以执行(线上不建议给all的权限):

mysql> grant all privileges on *.* to 'lepus'@'192.168.10.%' identified by 'lepus';
Query OK, 0 rows affected (0.08 sec) mysql> flush privileges;
Query OK, 0 rows affected (0.06 sec) mysql>

添加完比后,点击仪表盘可以看到监控的信息

(2)安装snmp服务

[root@lepus-server ~]# yum install -y net-snmp net-snmp-utils
[root@lepus-server ~]# vim /etc/snmp/snmpd.conf

修改配置文件如下:

把#号去掉,开启下面这行

修改下面的为all

重启服务:

[root@lepus-server lepus]# /etc/init.d/snmpd start
Starting snmpd: [ OK ]
[root@lepus-server lepus]#

web端添加os服务器:

点击最后的图形,可以看监控的具体情况:

五、监控redis

redis的安装过程不在这里演示,配置redis的时候要设置密码,监控的时候要输入redis密码的

[root@lepus-server sql]# netstat -nltp |grep redis
tcp 0.0.0.0: 0.0.0.0:* LISTEN /redis-server
tcp ::: :::* LISTEN /redis-server
[root@lepus-server sql]#

在配置中心找到Redis,新增:

六、慢查询监控

进到对应的目录下,找到脚本lepus_slowquery.sh,要把该脚本发送到被监控的DB端,结合任务计划调用,而且被监控端要percona-toolkit

[root@lepus-server mysql]# cd /usr/local/lepus/client/mysql/
[root@lepus-server mysql]# ls
lepus_slowquery.sh
[root@lepus-server mysql]#

我以监控Lepus-server为例,所以我就不拷贝监控脚本到别的Lepus-clinet了。我们先安装percona-toolkit

[root@lepus-server mysql]# cd /usr/local/src/
[root@lepus-serversrc]#wget https://www.percona.com/downloads/percona-toolkit/2.2.11/RPM/percona-toolkit-2.2.11-1.noarch.rpm
[root@lepus-server src]# yum install perl-IO-Socket-SSL perl-DBD-MySQL perl-Time-HiRes -y
[root@lepus-server src]# rpm -ivh percona-toolkit-2.2.-.noarch.rpm
warning: percona-toolkit-2.2.-.noarch.rpm: Header V4 DSA/SHA1 Signature, key ID cd2efd2a: NOKEY
Preparing... ########################################### [%]
:percona-toolkit ########################################### [%]
[root@lepus-server src]#

下面配置一下慢查询监控脚本: vim lepus_slowquery.sh(如果运行脚本报错,要用dos2unix 转一下格式)

开启主机的慢查询功能:

七、发邮件的配置

在配置中心----->全局配置

总结:

     一、Lepus监控系统的监控功能相对来说还是比较强大的,如果是DBA或者运维DBA可以考虑使用。

     二、Lepus MySQL监控系统是一个开源的系统,所以安全性方面要值得注意,做好访问规则。

     三、可以把现成的监控系统修改为自己的监控系统,灵活的增加或者删除一些功能来达满足公司需求的监控系统。

作者:陆炫志

出处:xuanzhi的博客 http://www.cnblogs.com/xuanzhi201111

您的支持是对博主最大的鼓励,感谢您的认真阅读。本文版权归作者所有,欢迎转载,但请保留该声明。

MySQL监控系统Lepus的搭建的更多相关文章

  1. MySQL监控系统MySQL MTOP的搭建(转VIII)

    MySQLMTOP是一个由Python+PHP开发的MySQL企业级监控系统.系统由Python实现多进程数据采集和告警,PHP实现WEB展示和管理.最重要是MySQL服务器无需安装任何Agent,只 ...

  2. MySQL监控系统MySQL MTOP的搭建

    MySQLMTOP是一个由Python+PHP开发的MySQL企业级监控系统.系统由Python实现多进程数据采集和告警,PHP实现WEB展示和管理.最重要是MySQL服务器无需安装任何Agent,只 ...

  3. MYSQLMTOP!开源MYSQL监控系统

    原文地址:http://www.lepus.cc/page/opensource

  4. Lepus搭建企业级数据库全方位监控系统

    前言 Lepus(天兔)数据库企业监控系统是一套由专业DBA针对互联网企业开发的一款专业.强大的企业数据库监控管理系统,企业通过Lepus可以对数据库的实时健康和各种性能指标进行全方位的监控.目前已经 ...

  5. 搭建Lepus数据库监控系统-记录

    一.  安装环境 系统环境:centos6.5 IP:192.168.30.242 hostname:vpn.org 软件:LAMP均已安装.(请确保这些正常安装,并能使用). 系统核心包:(摘自官方 ...

  6. 搭建Lepus数据库监控系统

    一.  安装环境 系统环境:centos6.5 IP:192.168.30.242 hostname:vpn.org 软件:LAMP均已安装.(请确保这些正常安装,并能使用). 系统核心包:(摘自官方 ...

  7. Centos 7.2天兔(Lepus 3.8)数据库监控系统部署

    天兔(Lepus 3.8)数据库监控系统部署 转载自:https://blog.csdn.net/m0_38039437/article/details/79613260 一.安装LAMP基础环境 首 ...

  8. 天兔(Lepus)监控系统快速安装部署

    Lepus安装需要Lamp环境,Lamp环境的安装个人认为比较费劲,XAMPP的一键部署LAMP环境省心省力, lepus官网手册也建议采用XAMPP的方式安装,lepus也是在XAMPP上进行研发的 ...

  9. mysql数据库监控利器lepus天兔工具安装和部署

    需要的核心包如下:以下软件包只需要部署在监控机即可.被监控机无需部署.1.MySQL 5.0及以上(必须,用来存储监控系统采集的数据)2.Apache 2.2及以上 (必须,WEB服务器运行服务器)3 ...

随机推荐

  1. C - CodeCoder vs TopForces Gym - 101142C (连通块+思维)

    题目链接: C - CodeCoder vs TopForces Gym - 101142C 题目大意:给你n个人的信息,每一个人的信息包括两个.t1和t2.A>B的前提是A的t1和t2至少有一 ...

  2. Hibernate_day04

    Hibernate_day04 上节内容 1 表与表之间关系回顾 (1)一对多(客户和联系人) (2)多对多(用户和角色) 2 hibernate一对多操作 (1)一对多映射配置 (2)一对多级联保存 ...

  3. Java连接并操作SQLServer数据库

    本人只需在项目中引入sqljdbc4.jar 包即可 ----------------------------------------- 在JAVA中如何连接SQL Server数据库 - hangh ...

  4. PHP载入GIF图像造成服务器宕机(CVE-2018-5711)的漏洞复现

    参考链接: http://www.freebuf.com/vuls/161262.html 今日看新漏洞发现一个UC编辑部的标题,CVE-2018-5711:一张GIF图片就能让服务器宕机的PHP漏洞 ...

  5. Mysql事务与JDBC事务管理

    一.事务概述 1.什么是事务 一件事情有n个组成单元 要不这n个组成单元同时成功 要不n个单元就同时失败 就是将n个组成单元放到一个事务中 2.mysql的事务 默认的事务:一条sql语句就是一个事务 ...

  6. android动态设置组件LayoutParams

    开发中经常用到动态设置组件的LayoutParams,之前开发遇到的问题如下: LinearLayout.LayoutParams params = new LinearLayout.LayoutPa ...

  7. Pytorch tutorial 之Datar Loading and Processing (2)

    上文介绍了数据读取.数据转换.批量处理等等.了解到在PyTorch中,数据加载主要有两种方式: 1. 自定义的数据集对象.数据集对象被抽象为Dataset类,实现自定义的数据集需要继承Dataset. ...

  8. 一个优秀windows C++ 程序员该有哪些知识

  9. u3d常用代码小集合

    01.基本碰撞检测代码 function OnCollisionEnter(theCollision : Collision){ if(theCollision.gameObject.name == ...

  10. RS485 通信接收时丢失0x11等数据

    RS485通信接收方,丢弃掉了值为 0x11 的数据. 怀疑 0x11 被转义,没有按照原始数据接收, 查看ASCII码对应表 0x11 代表 “本文结束”, 因此丢弃是有可能的. 要想接收原始数据而 ...