失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 生产环境lepus部署 监控MySQL

生产环境lepus部署 监控MySQL

时间:2020-05-19 05:46:16

相关推荐

生产环境lepus部署 监控MySQL

监控机:

安装步骤:

安装操作系统软件包

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

拷贝lepus 目录下的php 文件到/var/www/html目录下,关闭Linux防火墙,重启apache 服务

[root@localhost lepus_v3.7]# cd /var/www/html/[root@localhost html]# lsphp修改PHP配置/var/www/html/php/application/config/database.php $db['default']['hostname'] = '127.0.0.1';$db['default']['port']= '3306';$db['default']['username'] = 'root';$db['default']['password'] = 'Lepus123';$db['default']['database'] = 'lepus';$db['default']['dbdriver'] = 'mysql';$db['default']['dbprefix'] = '';$db['default']['pconnect'] = TRUE;$db['default']['db_debug'] = TRUE;$db['default']['cache_on'] = FALSE;$db['default']['cachedir'] = '';$db['default']['char_set'] = 'utf8';$db['default']['dbcollat'] = 'utf8_general_ci';$db['default']['swap_pre'] = '';$db['default']['autoinit'] = TRUE;$db['default']['stricton'] = FALSE;

[root@localhost html]# service httpd status httpd is stopped[root@localhost html]# service httpd startStarting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain for ServerName[ OK ]告警的解决:编辑 /etc/httpd/conf/httpd.conf添加 ServerName localhost:8089 /*如果需要修改监听端口,修改httpd.conf文件中的Listen 配置Listen 8089[root@localhost conf]# netstat -lnap |grep httpdtcp 00 :::8089 :::* LISTEN2708/httpd */

安装监控服务器的MySQL资料库

1. ]# tar -xzvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz -C /usr/local2. ]# cd /usr/local3. ]# ln -s ./mysql-5.7.25-linux-glibc2.12-x86_64/ ./mysql 4. ]# useadd mysql5. ]# mkdir -p /data/mysql6. ]# chown mysql:mysql -R /data/mysql 7. ]# chown mysql:mysql -R /usr/local/mysql-5.7.25-linux-glibc2.12-x86_64/ mysql8. 检查/删除已经安装的MySQL9. ]# /usr/local/mysql/bin/mysqld --defaults-file=/etc/f --basedir=/usr/local/mysql --datadir=/data/mysql --user=mysql --initialize10. 修改root 密码:Lepus123

在资料库中创建lepus 基础表,导入基础数据

执行/usr/local/lepus_v3.7/sql 中的sql# mysql -uroot -pLepus123 -Dlepus <lepus_table.sql# mysql -uroot -pLepus123 -Dlepus <lepus_data.sql

安装lepus

# /usr/local/lepus_v3.7/python 下的sh 和py 文件添加执行权限1. chmod +x *.py *.sh# 编辑当前目录下的配置文件,指定资料库的连接信息2. vim etc/config.ini [monitor_server]host="127.0.0.1"port=3306user="root"passwd="Lepus123"dbname="lepus"3. 执行install.sh安装

启动lepus和报错解决

[root@localhost local]# lepus startnohup: appending output to `nohup.out'lepus server start fail!# 检查日志[root@localhost lepus]# less nohup.out Traceback (most recent call last):File "lepus.py", line 8, in <module>import MySQLdbImportError: No module named MySQLdb ## 监控MySQL需要安装mysql的python 支持包安装MySQLpython包:yum install MySQL-python.x86_64 -y再次启动成功

# 安装Oracle监控包cx_oracle的时候报错:running buildrunning build_extbuilding 'cx_Oracle' extensioncreating buildcreating build/temp.linux-x86_64-2.6creating build/temp.linux-x86_64-2.6/srcgcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -Iodpi/include -Iodpi/src -I/usr/include/python2.6 -c src/cx_Oracle.c -o build/temp.linux-x86_64-2.6/src/cx_Oracle.o -DBUILD_VERSION=6.0src/cx_Oracle.c:17:20: error: Python.h: No such file or directory……src/cx_Oracle.c: In function ‘initcx_Oracle’:src/cx_Oracle.c:725: warning: implicit declaration of function ‘Module_Initialize’error: command 'gcc' failed with exit status 1#解决:安装python开发包yum install -y python-devel#重新编译安装cx_oraclepython setup.py buildpython setup.py install

检查lepus nohup 日志

使用浏览器登陆的时候,apache 日志报错:[Tue Mar 19 16:45:32 ] [error] [client *.*.*.*] File does not exist: /var/www/html/favicon.ico[Tue Mar 19 16:46:24 ] [error] [client *.*.*.*] Directory index forbidden by Options directive: /var/www/html/#解决:安装系统以来的额php 软件包,所有的软件包安装见配置的第一步

登陆8089 端口,查看lepus 主页面

首次登陆密码为: lepus/Lepusadmin

添加MySQL监控

# 在被监控的MySQL库创建监控用户grant select,super,process,reload,show databases,replication client on *.* to 'lepus_monitor'@'10.3.97.240' identified by 'MANAGER';flush privileges;

添加操作系统监控 在被监控主机安装net-snmp*

yum install -y net-snmp*

编辑 vim /etc/snmp/snmpd.conf 文件

vim /etc/snmp/snmpd.conf # 修改监控主机的IP和用户(用户名是lepus 监控中配置的用户名,此处配置的是root)# 41 行改成如下com2sec notConfigUser 10.3.97.240 root# 62 行 将any 改成allaccess notConfigGroup ""any noauth exact all none none# 85 行去掉注释

启动snmpd

]# /etc/init.d/snmpd status# snmp 默认是使用的是161 端口 监控主机需要访问被监控主机的161端口[root@localhost snmp]# grep 'Simple Net Mgmt Proto' /etc/services snmp 161/tcp# Simple Net Mgmt Protosnmp 161/udp# Simple Net Mgmt Proto[root@localhost snmp]# lsof -i :161COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEsnmpd 94420 root 7u IPv4 8003420t0 UDP *:snmp [root@localhost snmp]# ps -ef | grep 'snmpd'

在监控主机使用snmpwalk验证

snmpwalk -v 1 -c root 10.3.145.1snmpwalk -v 2c -c root 10.3.145.1

添加MySQL主机监控之后,在nohup日志中报错

ERROR 1366 (HY000) at line 1: Incorrect integer value: '' for column 'mem_shared' at row 1# 造成该错误的原因是在Linux内核2.6 以上的时候,MemShared 已经被删除,所以,mem_shared获取错误。# 解决方案:修改lepus 监控脚本,在脚本合适的位置,添加mem_shared 变量赋值操作。[root@localhost lepus]# vim check_os.sh 39mem_shared=`/usr/bin/snmpwalk -v1 -c ${community} ${ip} UCD-SNMP-MIB::memShared.0 |cut -d= -f2 |awk -F ' ' '{print $2}'`40if [ -z $mem_shared ];then41mem_shared=042fi

MySQL主从监控

lepus 监控主从是从视图中读取数据,要在主从库开启 show_compatibility_56 参数,否则,MySQL主从复制拓扑无法获取

监控慢查询

在被监控主机安装percona-tookit 工具集从监控服务器拷贝慢查询监控脚本,并修改

scp /usr/local/lepus/client/mysql/lepus_slowquery.sh root@10.3.145.1:/usr/bin/# 145.1:chmod +x lepus_slowquery.shvim lepus_slowquery.sh#config lepus database serverlepus_db_host="10.3.97.240"lepus_db_port=3306lepus_db_user="root"lepus_db_password="Lepus123"lepus_db_database="lepus"#config mysql servermysql_client="/usr/local/mysql/bin/mysql"mysql_host="127.0.0.1"mysql_port=2306mysql_user="root"mysql_password="8U^@x7Y3"#config slowquryslowquery_dir="/data/mysql/"……#config server_idlepus_server_id=sbtest1 #此处的server_id是lepus “配置中心” 中对应的IP的id字段#原始脚本存在不可见字符,需要替换一下sed -i "s/\\r/\\n/g" lepus_slowquery.shsed -i /^$/d lepus_slowquery.sh

在被监控机配置慢查询的定时任务,定时筛选慢查询日志

# 测试监控数据是否可以正常回写sh lepus_slowquery.sh*/5 * * * * sh /usr/bin/lepus_slowquery.sh > /dev/null 2>&1

如果觉得《生产环境lepus部署 监控MySQL》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。