生产环境lepus部署 监控MySQL
2019-03-19 17:32
113 查看
主机类型 | 服务器地址 |
---|---|
监控主机 | 10.3.97.240 |
被监控1 | 10.3.145.1 |
被监控2 | 10.3.145.2 |
监控机:
安装软件 | 版本 |
---|---|
lepus | 3.7 |
mysql | 5.7.25 |
Apache | 2.2.15 |
安装步骤:
- 安装操作系统软件包
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]# ls php 修改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 start Starting 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 httpd tcp 0 0 :::8089 :::* LISTEN 2708/httpd */
- 安装监控服务器的MySQL资料库
1. ]# tar -xzvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz -C /usr/local 2. ]# cd /usr/local 3. ]# ln -s ./mysql-5.7.25-linux-glibc2.12-x86_64/ ./mysql 4. ]# useadd mysql 5. ]# mkdir -p /data/mysql 6. ]# chown mysql:mysql -R /data/mysql 7. ]# chown mysql:mysql -R /usr/local/mysql-5.7.25-linux-glibc2.12-x86_64/ mysql 8. 检查/删除已经安装的MySQL 9. ]# /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql --user=mysql --initialize 10. 修改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=3306 user="root" passwd="Lepus123" dbname="lepus" 3. 执行install.sh安装
- 启动lepus和报错解决
[root@localhost local]# lepus start nohup: 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 MySQLdb ImportError: No module named MySQLdb ## 监控MySQL需要安装mysql的python 支持包 安装MySQLpython包: yum install MySQL-python.x86_64 -y 再次启动成功
# 安装Oracle监控包cx_oracle的时候报错: running build running build_ext building 'cx_Oracle' extension creating build creating build/temp.linux-x86_64-2.6 creating build/temp.linux-x86_64-2.6/src gcc -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.0 src/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_oracle python setup.py build python setup.py install
- 检查lepus nohup 日志
使用浏览器登陆的时候,apache 日志报错: [Tue Mar 19 16:45:32 2019] [error] [client *.*.*.*] File does not exist: /var/www/html/favicon.ico [Tue Mar 19 16:46:24 2019] [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;
- 添加操作系统监控
[ol]
在被监控主机安装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 改成all access 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 Proto snmp 161/udp # Simple Net Mgmt Proto [root@localhost snmp]# lsof -i :161 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME snmpd 94420 root 7u IPv4 800342 0t0 UDP *:snmp [root@localhost snmp]# ps -ef | grep 'snmpd'
- 在监控主机使用snmpwalk验证
snmpwalk -v 1 -c root 10.3.145.1 snmpwalk -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 39 mem_shared=`/usr/bin/snmpwalk -v1 -c ${community} ${ip} UCD-SNMP-MIB::memShared.0 |cut -d= -f2 |awk -F ' ' '{print $2}'` 40 if [ -z $mem_shared ];then 41 mem_shared=0 42 fi
-
MySQL主从监控
lepus 监控主从是从视图中读取数据,要在主从库开启 show_compatibility_56 参数,否则,MySQL主从复制拓扑无法获取 -
监控慢查询
[ol] 在被监控主机安装percona-tookit 工具集 - 从监控服务器拷贝慢查询监控脚本,并修改
scp /usr/local/lepus/client/mysql/lepus_slowquery.sh root@10.3.145.1:/usr/bin/ # 145.1: chmod +x lepus_slowquery.sh vim lepus_slowquery.sh #config lepus database server lepus_db_host="10.3.97.240" lepus_db_port=3306 lepus_db_user="root" lepus_db_password="Lepus123" lepus_db_database="lepus" #config mysql server mysql_client="/usr/local/mysql/bin/mysql" mysql_host="127.0.0.1" mysql_port=2306 mysql_user="root" mysql_password="8U^@x7Y3" #config slowqury slowquery_dir="/data/mysql/" …… #config server_id lepus_server_id=sbtest1 #此处的server_id是lepus “配置中心” 中对应的IP的id字段 #原始脚本存在不可见字符,需要替换一下 sed -i "s/\\r/\\n/g" lepus_slowquery.sh sed -i /^$/d lepus_slowquery.sh
- 在被监控机配置慢查询的定时任务,定时筛选慢查询日志
# 测试监控数据是否可以正常回写 sh lepus_slowquery.sh */5 * * * * sh /usr/bin/lepus_slowquery.sh > /dev/null 2>&1
相关文章推荐
- RHEL/CentOS 5.x使用yum快速安装部署Nginx+PHP(FastCGI)+MySQL生产环境及优化
- Linux+Apache+Nginx+MySQL+PHP 前后端 部署 生产环境
- Nagios部署+远程Mysql监控+PNP图表环境配置
- Mysql+Heartbeat+Drbd生产环境高可用部署若干问题解惑
- 第三百九十九节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装mysql5.6
- 生产环境监控mysql服务状态
- Mysql+Heartbeat+Drbd生产环境高可用部署若干问题解惑
- Percona Mysql Galera多读写集群部署生产环境实记
- Linux+Apache+Nginx+MySQL+PHP 前后端 部署 生产环境
- 为了能够快速部署LEMP/ LAMP/ LNMP/ LNMPA/ LTMP(Linux的,Nginx的/ Tengine / OpenResty,MySQL的生产环境/ MariaDB的/ Perco
- 部署测试环境(ubuntu+mysql+tomcat)
- Mysql读写分离方案-Amoeba环境部署记录
- 结合Git实现Mysql差异备份,可用于生产环境 推荐
- Nagios监控生产环境redis集群服务实战
- 生产环境上的HADOOP安装部署注意事项(HDP版)
- Python生产环境部署(fastcgi,uwsgi)
- MySQL环境部署
- django项目的生产环境部署,利用nginx+uwsgi
- 部署监控系统Cacti及其运行环境
- nginx+php+mysql+memcache+eaccelerator生产环境文档总结