文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Lepus3.8-天兔mysql数据库监控系统搭建

2024-04-02 19:55

关注

 Lepus3.8-天兔mysql数据库监控系统搭建

 

lepus是一款开源的数据库监控软件,能详细的监控各种数据库状态,如mysql慢查询和主从状况。

这是web监控页面:

Lepus3.8-天兔mysql数据库监控系统搭建

搭建(文中是CentOS 6.7系统环境):

一、安装lamp或lnmp环境:

安装方法很多,有源码包、yum、rpm等安装,这儿就简单的提一下简单的yum安装方法。

需要安装的包:

httpd

httpd-manual

httpd-devel

php

php-mysql

mysql

mysql-server

可以yum安装上面的包:yum install httpd httpd-manual httpd-devel php php-mysql mysql mysql-server -y


1).mysql

[root@jk ~]# yum install mysqlmysql-server -y

[root@jk ~]# rpm -qa |grepmysql


Lepus3.8-天兔mysql数据库监控系统搭建

[root@jk ~]# service mysqld start

[root@jk ~]# netstat -anplt|grep mysql  查看mysqld端口是否正常开启,服务是否正常

Lepus3.8-天兔mysql数据库监控系统搭建


2).apache

 [root@monitoring-45 lepus]# yuminstall httpd httpd-manual httpd-devel -y

 [root@monitoring-45lepus]# rpm -qa |grep http*

Lepus3.8-天兔mysql数据库监控系统搭建

 [root@jk ~]# service httpd start

Lepus3.8-天兔mysql数据库监控系统搭建

 上面的:httpd: Could not reliably determine the server's fully qualifieddomain name提示  是apache启动时会验证ServerName的配置,可通过修改hosts文件添加本地解析或者修改httpd.conf  的276行将#ServerName www.example.com:80改为ServerName “主机名”来使其不提醒。

 [root@jk ~]# netstat -anplt | grep httpd  查看mysqld端口是否正常开启,服务是否正常

Lepus3.8-天兔mysql数据库监控系统搭建


3).php

[root@jk ~]# yum install phpphp-mysql –y

[root@monitoring-45lepus]#  rpm -qa |grep php-5

Lepus3.8-天兔mysql数据库监控系统搭建

 

[root@jk ~]# rpm -ql php          查看php相关文件

/etc/httpd/conf.d/php.conf

/usr/lib64/httpd/modules/libphp5.so

/var/lib/php/session

/var/www/icons/php.gif



4).配置apache,让apache支持php

[root@jk ~]# vim/etc/httpd/conf.d/php.conf  配置php配置文件

Lepus3.8-天兔mysql数据库监控系统搭建

看是否有动态加载,图下面红框内的是apache支持的首页面

[root@jk ~]# vim/etc/httpd/conf/httpd.conf  配置apache配置文件

AddType applition/x-httpd-php.php         #添加这一行

 

<IfModule dir_module>

    DirectoryIndex index.html index.php   #添加index.php是为了让apache识别php首页

</IfModule>

重启apache

[root@jk ~]# touch/var/www/html/1.php

[root@jk ~]# vim /var/www/html/1.php

 <?php

 phpinfo();

 ?>

浏览器打开http://服务端ip/1.php,出现如下图则表示配置成功:


Lepus3.8-天兔mysql数据库监控系统搭建

5).让php支持mysql

[root@jk ~]# yum install -y php-mysql

检查:

[root@jk ~]# vim /var/www/html/1.php

<?php

$link=mysql_connect('127.0.0.1','root','');

if($link)

echo "connect success!";

else

echo 'connect faild!';

?>

重启apache,service httpd restart后

浏览器打开http://服务端ip/1.php,出现

connect success!

则为成功


6).设置服务自启:

[root@jk ~]# chkconfig httpd on

[root@jk ~]# chkconfig httpd--list

httpd  0:关闭  1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭

[root@jk ~]# chkconfig mysqld on



二、监控端安装python(文中是2.6.6版本,也推荐使用2.7版本)

  ……


三、监控端安装数据库连接Python的驱动包

1).安装 MySQLdb for python (如果需要监控MySQL则必须安装)

MySQLdb为Python连接和操作MySQL的类库,如果准备使用lepus系统监控MySQL数据库,那么该模块必须安装。

[root@jk ~]# wget http://cdn.lepus.cc/cdncache/software/MySQLdb-python.zip 
[root@jk ~]# unzip MySQLdb-python.zip 
[root@jk ~]# cd MySQLdb1-master/ 
[root@jk ~]# which mysql_config 
/usr/local/mysql/bin/mysql_config

 
[root@jk ~]# vim site.cfg 修改如下: 
mysql_config = /usr/local/mysql/bin/mysql_config

 
[root@jk ~]# python setup.py build 
[root@jk ~]# python setup.py install


如果编译python出现如下问题 
/usr/bin/ld: cannot find -lpython2.7 
collect2: ld returned 1 exit status 
error: command 'gcc' failed with exit status1 
请按如下步骤处理: 
A.检查并安装python-devel包 
[root@jk ~]# yum -y install python-devel 


B.将libpython2.7.so库文件建立软连接到/usr/lib下 
32位服务器下执行: 
[root@jk ~]# ln -s /usr/local/Python2.7/lib/libpython2.7.so/usr/lib/libpython2.7.so 
64位服务器下执行:
[root@jk ~]# ln -s /usr/local/Python2.7/lib/libpython2.7.so/usr/lib64/libpython2.7.so 


C.检查下/etc/ld.so.conf是否包含/usr/local/Python2.7/lib 
[root@jk ~]#  vi /etc/ld.so.conf 添加/usr/local/Python2.7/lib 
[root@jk ~]# /sbin/ldconfig 

 


2).安装cx_oracle for python (如果需要监控Oracle则必须安装,本文暂未用到)

下载安装oracle instant client:
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html 
如果是64位的,请选择.*x86_64.rpm,否则是.*i386.rpm 
如果是oracle 9i或更高,请选择InstantClient 11,如果是8或8i,请选择Instant Client 10

 
[root@jk ~]# rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm 
[root@jk ~]# rpm -ivh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm 
[root@jk ~]# rpm -ivh oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm 
[root@jk ~]# vim /root/.bash_profile 

ORACLE_HOME="/usr/lib/oracle/11.2/client64" 
PATH=$PATH:$ORACLE_HOME/bin 
export PATH 
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/usr/local/lib 
export LD_LIBRARY_PATH

 
[root@jk ~]#vim /etc/ld.so.conf 加入 
/usr/lib/oracle/11.2/client64/lib

 
执行ldconfig生效
[root@jk ~]# ldconfig 

安装cx_oracle 

[root@jk ~]# wget http://cdn.lepus.cc/cdncache/software/cx_Oracle-5.1.2.tar.gz
[root@jk ~]# tar -xvf cx_Oracle-5.1.2.tar.gz 
[root@jk ~]# cd cx_Oracle-5.1.2 
[root@jk ~]# python setup.py build 
[root@jk ~]# python setup.py install 

3).安装Pymongo for python (如果需要监控Mongodb则必须安装)
pymongo为Python连接和操作MongoDB的类库,如果准备使用lepus系统监控MongoDBs数据库,那么该模块必须安装。 
安装步骤如下: 
下载pymongo https://pypi.python.org/packages/source/p/pymongo/ 
[root@jk ~]# wget http://cdn.lepus.cc/cdncache/software/pymongo-2.7.tar.gz 
[root@jk ~]# tar -xvf pymongo-2.7.tar.gz 
[root@jk ~]# cd pymongo-2.7 
[root@jk ~]# python setup.py install 

4).安装Redis 驱动 (如果需要监控Redis则必须安装)

[root@jk ~]# wget http://cdn.lepus.cc/cdncache/software/redis-py-2.10.3.tar.gz
[root@jk ~]# tar -xvf redis-py-2.10.3.tar.gz 
[root@jk ~]# cd redis-2.10.3/ 
[root@jk ~]# python setup.py install 

 

5).测试各个驱动是否正常运行

[root@jk~]# wget http://www.lepus.cc/soft/download/18

[root@jk~]# unzip Lepus数据库企业监控系统3.7版本官方下载.zip

[root@jk~]# cd Lepus_v3.8_beta/

[root@jk~]# python test_driver_mysql.py 
MySQL python drivier is ok! 
[root@jk ~]# python test_driver_oracle.py 
Oracle python drivier is ok! 
[root@jk ~]# python test_driver_mongodb.py 
MongoDB python drivier is ok! 
[root@jk ~]# python test_driver_redis.py 
Redis python drivier is ok!

 

四、监控端安装Lepus监控系统

1).下载软件包到监控端并解压缩

(下载链接:http://down.51cto.com/data/2237019)

[root@jk~]# wget http://www.lepus.cc/soft/download/18

[root@jk~]# unzip Lepus数据库企业监控系统3.7版本官方下载.zip

[root@jk~]# cd Lepus_v3.8_beta/


2).在监控机创建监控数据库,并授权。

监控端数据库执行:

mysql>create database lepus default character set utf8;

mysql>grant select,insert,update,delete,create on lepus.* to 'lepus_user'@'localhost'identified by '111.test';

mysql>flush privileges;


3).导入Lepus_v3.8_beta 的sql文件夹里的SQL文件(表结构和数据文件)

[root@jk~]# mysql -uroot -p lepus < sql/lepus_table.sql

[root@jk~]# mysql -uroot -p lepus < sql/lepus_data.sql

 

4).安装Lpeus程序

[root@jk~]#pwd

Lepus3.8-天兔mysql数据库监控系统搭建

[root@monitoring-45Lepus_v3.8_beta]# cd python/

[root@monitoring-45Lepus_v3.8_beta]# chmod +x install.sh

修改安装位置:

[root@monitoring-45python]# vim install.sh 下图红色标记即为安装位置

Lepus3.8-天兔mysql数据库监控系统搭建

[root@monitoring-45lepus]# vim lepus    修改启动文件

Lepus3.8-天兔mysql数据库监控系统搭建

执行安装

[root@monitoring-45Lepus_v3.8_beta]# ./install.sh

[note]lepus will be install on basedir: /date/server/lepus

[note]/date/server/lepus directory does not exist,will be created.

[note]/date/server/lepus directory created success.

[note]wait copy files.......

[note]change script permission.

[note]create links.

[note]install complete.

 

5).修改配置文件

进入到安装目录/date/server/lepus,默认为/usr/local/lepus

[root@monitoring-45 ~]# cd /date/server/lepus

Lepus3.8-天兔mysql数据库监控系统搭建

[root@monitoring-45 lepus]# vim etc/config.ini

###监控机MySQL数据库连接地址###

[monitor_server]

host="localhost"

port=3306

user=" lepus_user "

passwd="111.test"

dbname="lepus"


6).启动监控系统

执行以下命令启动系统采集进程

[root@monitoring-45 lepus]#lepus start

nohup: appending output to`nohup.out'

lepus monitor start success!

 

执行以下命令关闭系统采集进程

[root@monitoring-45 lepus]#lepus stop

 

执行以下命令监控系统是否正常运行

[root@monitoring-45 lepus]#lepus status

lepus server is running...

 

7).将lepus_monitor脚本部署为计划任务,该脚本可以监控Lepus是否正在运行。

打开文件/data/server/lepus/lepus_monitor修改里面连接监控机的数据库连接地址,然后将该脚本部署为计划任务。

[root@monitoring-45 lepus]# crontab -e

*/5 * * * * /data/server/lepus/lepus_monitor >> /tmp/lepus_monitor.log

 

8)部署网页WEB界面

复制安装文件夹的php文件夹里的文件到Apache对应的网站根目录

[root@monitoring-45 lepus]# cp -rf /root/bao/Lepus_v3.8_beta/php27 * * * * sh /usr/local/sbin/lepus_slowquery.sh > /dev/null 2>&1


6).配置邮箱

配置发件人:

点击配置中心-全局设置,然后如图,注意告警收件人需要在监控项设置里另外配置。


Lepus3.8-天兔mysql数据库监控系统搭建


Lepus3.8-天兔mysql数据库监控系统搭建


配置收件人:

Lepus3.8-天兔mysql数据库监控系统搭建


Lepus3.8-天兔mysql数据库监控系统搭建


注意:发件人和收件人都要写全。

配置完成后在监控服务端的安装目录执行

[root@monitoring-45 lepus]# python test_send_mail.py

True

send_mail_status:success

报成功后就是配置完成了。


7).慢查询自动推送

定时将系统收集到的慢查询TOP数据定时推送给相应开发人员进行优化,无需在每台数据库上部署脚本。

MySQL慢查询自动推送通过计划任务完成。如果需要推送,则需要在监控机部署如下计划任务。


#crontab -e

00 09 * * * links http://111.com/index.php/task/send_mysql_slowquery_mail > /dev/null 2>&1


计划任务部署完成后,则会按照计划任务配置的时间将慢查询推送给对应人员。慢查询推送的邮件人员需要在MySQL主机配置里面设置即可,邮箱留空则该数据库主机不会发送慢查询推送。

 


六、Lepus监控数据库操作系统信息配置

Lepus使用的是snmp协议获取系统信息

1). snmpd 服务安装
[root@mysql-master-39~]# yum install -y net-snmp net-snmp-utils


2).修改配置文件允许指定的主机监听自己

[root@mysql-master-39~]# vim /etc/snmp/snmpd.conf

:set nu


41行 将default改为监控服务器ip;将public改成lepus_monitor

(备注: lepus_monitor是在天兔配置文件里配置的通用实体,如果配置的实体是其他名称,这里要做相应的修改)

com2secnotConfigUser  监控端ip      lepus_monitor


62行 将systemview 改为all,供所有snmp访问权限

access  notConfigGroup ""      any      noauth    exact  all none none


85行 将#注释符号去掉

view all    included .1                              80


3).修改snmpd 日志级别
snmpd 默认日志级别将会在/var/log/message 写入大量snmp 信息,这样会影响我们察看系统日志,所以我们需要更改下配置文件: 
注释原有的OPTINOS,添加下面的一行,重启snmpd 服务即可

[root@mysql-master-39~]# vim /etc/init.d/snmpd
#OPTIONS="-Lsd -Lf /dev/null -p /var/run/snmpd.pid -a" 
OPTIONS="-LS 4 d -p /var/run/snmpd.pid -a"


4).启动 snmpd 服务
[root@mysql-master-39~]# /etc/init.d/snmpd start

 

5).验证snmpd 服务
snmpd 使用tcp/udp161 端口


[root@mysql-master-39~]# grep 'Simple Net Mgmt Proto' /etc/services  
snmp        161/tcp            # Simple Net Mgmt Proto 
snmp        161/udp            # Simple Net Mgmt Proto

 

[root@mysql-master-39~]# lsof -i :161 

6).将SNMP服务设置开机启动

注意设置防火墙,允许监控端连接被监控端的tcp/udp161端口


7).在监控端使用snmpwalk 命令验证,在监控端上执行以下命令
snmpwalk -v 1 -c lepus_monitor  被监控端ip 
-v是指版本,-c 是指密钥,获取到系统信息则正常!


安装完成后在lepus网页配置中心-操作系统栏目配置操作系统信息,SNMP团体名填写刚才的密钥:lepus_monitor。

Lepus3.8-天兔mysql数据库监控系统搭建

   Lepus3.8-天兔mysql数据库监控系统搭建


稍等几分钟,或在服务端lepus安装目录执行python lepus.py 片刻看到数据

 




参考:

http://www.lepus.cc/post/65

http://suifu.blog.51cto.com/9167728/1770672

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯