数据库监控
数据库监控
-
简介
Lepus(天兔)数据库企业监控系统是一套由专业DBA个人针对互联网企业开发的一款专业、强大的企业数据库监控管理系统,企业通过Lepus可以对数据库的实时健康和各种性能指标进行全方位的监控。目前已经支持MySQL、Oracle、MongoDB、Redis数据库的全面监控. Lepus可以在数据库出现故障或者潜在性能问题时,根据用户设置及时将数据库的异常进行报警通知到数据库管理员进行处理和优化,帮助企业解决数据库性能监控问题,及时发现性能和瓶颈,避免由数据库潜在问题造成的直接经济损失。Lepus能够查看各种实时性能状态指标,并且对监控、性能数据进行统计分析,从运维者到决策者多个层面的视角,查看相关报表。帮助决策者对未来数据库容量进行更好的规划,从而降低了硬件成本。
Lepus目前主要有以下功能和特性:
无需Agent,远程监视云中数据库
WEB直观的管理和监视数据库
实时MySQL健康监视和告警
实时MySQL复制监视和告警
实时MySQL资源监视和分析
实时MySQL缓存等性能监视
实时InnoDB IO性能监控
MySQL表空间增长趋势分析
可视化MySQL慢查询在线分析
MySQL慢查询自动推送功能
MySQL AWR在线性能分析
实时Oracle健康监控和报警
实时Oracle表空间使用监控
实时Oracle性能监控
实时MongoDB健康监控和报警
实时MongoDB索引性能监控
实时MongoDB内存使用监控
实时Redis健康监控和报警
实时Redis性能监控
实时OS主机CPU/内存/磁盘/网络/IO监控
可视化告警系统,邮件发送告警,短信接口支持
严格的权限认证系统
丰富的健康性能分析图表
多维的对比和性能分析
官网链接:http://www.lepus.cc
-
安装
-
安装需求
天兔系统只测试完善了Centos/RedHat系统的支持,建议在Centos/RedHat系统上安装运行。
需要的核心包如下:
监控机和被监控机都必须部署安装和配置snmp (用来监控操作系统(OS))
以下软件包只需要部署在监控机即可。被监控机无需部署。
1.MySQL 5.0及以上(必须,用来存储监控系统采集的数据)
2.Apache 2.2及以上 (必须,WEB服务器运行服务器)
3.PHP 5.3以上 (必须,提供WEB界面支持)
4.Python2 (必须,推荐2.6及以上版本,执行数据采集和报警任务,不支持Python3)
5.Python连接和监控数据库的相关驱动模块包:
MySQLdb for python (Python连接MySQl的接口,用于监控MySQL,此模块必须安装)
cx_oracle for python (Python连接Oracle的接口,非必须,如果需要监控oracle此模块必须安装)
Pymongo for python (Python连接MongoDB的接口,非必须,如果需要监控MongoDB此模块必须安装)
redis-py for python (Python连接Redis的接口,非必须,如果需要监控Redis此模块必须安装)
-
开始安装
- 安装准备
先关闭selinux,避免在安装LAMP过程中报错,通常情况下载安装完CentOS7后,默认情况下SElinux是启用状态,
查看selinux启动状态
sestatus
修改配置文件/etc/selinux/config,将SELINU置为disabled。
vim /etc/selinux/config
SELINUX=disabled
重启后查看状态是否关闭
卸载mariadb数据库,避免后面安装LAMP环境出错
yum -y remove mariadb*
-
LAMP基础环境
Lepus需要安装LAMP(Linux+Apache+MySQL +PHP)基础环境配置,配置LAMP基础环境的方式有很多种,最简单的方式有yum安装、RPM包安装等方式、安装集成环境包(例如lampp/xampp等)。您也可以手动编译安装相关软件。这里不推荐使用YUM进行安装,YUM安装的PHP环境可以因为缺少某些依赖包导致500错误。如果你有能力,可以进行编译安装,按照需要的模块编译PHP和MYSQL数据库,这种方式也是目前大型WEB推荐的方式。如果你无法进行编译安装,我们推荐你使用Xampp集成环境包进行安装,xampp是一个可靠的稳定的lamp套件,目前已被诸多公司用于生产服务器的部署,目前Lepus的开发环境,测试环境以及线上官网的WEB环境,都是运行在xampp环境下面,并且一直都是稳定的。
Xampp下载地址:https://www.apachefriends.org/download.html
Xampp帮助文档:https://www.apachefriends.org/faq_linux.html
注意你的版本号,高版本的XAMPP中可能不是Mysql而是MariaDB
安装Xampp步骤:
安装过程非常简单,下载软件后赋予文件权限,直接运行即可
由于文件110.55M大小,下载比较耗时,这里已经下载好,直接切换至/usr/local目录,将Xampp上传至该目录
cd /usr/local
赋予执行权限
chmod +x xampp-linux-x64-1.8.2-5-installer.run
执行安装
./xampp-linux-x64-1.8.2-5-installer.run
添加环境变量
vim /etc/profile
在最后一行添加
export PATH=$PATH:/opt/lampp/bin/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/lampp/lib
保存退出使其立即生效
source /etc/profile
启动lampp
/opt/lampp/lampp start
其他问题:
1.如果远程访问xampp报下面错误
Access forbidden!
New XAMPP security concept:
Access to the requested object is only available from the local network.
This setting can be configured in the file "httpd-xampp.conf".
注释掉下面一行
# vim extra/httpd-xampp.conf
#Require local
2.配置启用虚拟目录
打开下面的注释
# Virtual hosts
Include etc/extra/httpd-vhosts.conf
3.默认WEB代码上传目录:
/opt/lampp/htdocs/
关于xampp的详细使用,包括启动关闭、以及安全特性,都可以在官网帮助里面找到的,这里不重复写了,大家可以去查看:https://www.apachefriends.org/faq_linux.html
-
Python基础模块
首先安装Python环境(Python版本要求为Python2.6以上,不支持Python3)
CentOS7自带有安装Python,查看本机Python版本
python -V
接着安装数据库连接Python的驱动包
安装 MySQLdb for python (必须安装)
MySQLdb为Python连接和操作MySQL的类库,如果您准备使用lepus系统监控MySQL数据库,那么该模块必须安装。
这里已经下载好该文件 直接上传至/usr/local/文件夹,也可以自己下载安装包
wget http://cdn.lepus.cc/cdncache/software/MySQLdb-python.zip
解压
unzip MySQLdb-python.zip
切换至解压目录
cd MySQLdb1-master/
查找mysql_config配置文件路径
which mysql_config
编辑MySQLdb配置文件
vim site.cfg
添加以下内容
mysql_config = /opt/lampp/bin/mysql_config
检查并安装相关依赖包
yum -y install gcc libffi-devel python-devel openssl-devel
yum -y install urpmi xterm
yum -y install mysql-devel
将libssl.so.1.0.1e和libcrypto.so.1.0.1e库文件建立软连接到/usr/lib64/下
ln -s /usr/lib64/libssl.so.1.0.1e /usr/lib64/libssl.so.1.0.0
ln -s /usr/lib64/libcrypto.so.1.0.1e /usr/lib64/libcrypto.so.1.0.0
安装
python setup.py build
python setup.py install
-
测试各个驱动是否正常运行
在lepus的安装文件包python目录中,你可以找到如下测试文件,测试上述驱动是否安装正确。
上传解压好的lepus安装文件夹至/usr/local/目录
cd /usr/local/lepus_v3.7/python/
python test_driver_mysql.py
python test_driver_oracle.py
python test_driver_mongodb.py
python test_driver_redis.py
-
Lepus采集器
安装Lepus监控系统
注:在安装Lepus系统之前,请先根据前面内容安装LAMP和Python运行基础环境。
上一部已经上传解压好的软件文件夹到监控机服务器的/usr/local文件夹内
-
在监控机创建监控数据库,并授权。
登陆监控机的mysql,前面安装lamp环境中mysql密码默认为空,直接回车就可以登入进去
mysql -u root -p
创建lepus库
create database lepus default character set utf8;
创建lepus用户并给予权限
grant select,insert,update,delete,create on lepus.* to 'lepus'@'localhost' identified by '123456';
刷新权限
flush privileges;
修改root用户密码
set password for [email protected] = password('123456');
创建对应数据库和用户完成后导入lepus的SQL文件夹里SQL文件(表结构和数据文件)
mysql -u root -p lepus < /usr/local/lepus_v3.7/sql/lepus_table.sql
mysql -u root -p lepus < /usr/local/lepus_v3.7/sql/lepus_data.sql
不能插入0非法日期
解决办法,登陆mysql
SET GLOBAL sql_mode = '';
commit;
再次导入
此时导入成功
-
安装Lpeus程序
进入到lepus软件包的python文件夹
cd /usr/local/lepus_v3.7/python
授予install.sh可执行权限
chmod +x install.sh
执行安装
./install.sh
修改配置文件
进入到安装目录,默认为/usr/local/lepus
cd /usr/local/lepus
vim /usr/local/lepus/etc/config.ini
开放防火墙端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
-
安装WEB管理台
安装WEB管理台
复制PHP文件夹里的文件到Apache对应的网站虚拟目录(备注:根本不同的安装方式,这个目录是不一样的,如果采用lamp安装的Apache环境,则默认程序目录为/home/wwwroot/default/),例如
cp -rf /usr/local/lepus_v3.7/php/* /opt/lampp/htdocs/
编辑application/config/database.php文件,修改PHP连接监控服务器的数据库信息
vim /opt/lampp/htdocs/application/config/database.php
修改配置文件
vim /opt/lampp/etc/extra/httpd-vhosts.conf
原有的,改为
<VirtualHost*:80>
AddDefaultCharset UTF-8
DocumentRoot "/opt/lampp/htdocs"
ServerName mysqlmtop1.ikongjian.com
<Directory"/opt/lampp/htdocs">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from All
</Directory>
ErrorLog"|/usr/local/apache/bin/rotatelogs /home/logs/apache/php_%Y%m%d_error.log86400 480"
CustomLog"|/usr/local/apache/bin/rotatelogs /home/logs/apache/php_%Y%m%d_access.log86400 480" common
</VirtualHost>