zabbix杂文
ps:这是从我原来记录的地方直接copy的,很杂乱,不过主要我想记录当时的思路,乱就乱了。。。。。。
背景:
这是进公司的第一个正式任务(之前在测试环境熟悉),所以基本上最近一段时间都在弄这个东西,一开始老司机就让我看zabbix相关的东西,测试环境弄弄,现在是在生产环境了,想着还是记一下,不过整理的有点乱(有些是当时弄的时候快速记的,有些是现在写的时候记的),有好些临时解决的也没记下来,先记着后面多了再整理吧
问题:
“zabbix监控里没数据 mysql有问题起不来”这是老司机给我描述的问题,我认为说的很清楚了,准备直接开搞(而且还给我那么多时间,爽歪歪)
开整:
1.上来就开整,分别启动下mysql、zabbix看能起来不,报什么错....老司机在旁边给我个眼神,说你拿到一个系统应该首先要看这个系统的一些基本属性不管是测试环境还是生产环境(况且这还是生产环境),包括但不限于它的系统版本、内存、cpu、装了什么程序、各个文件及程序存放的位置等等等等,而且这上面还有很多东西都是相关联的,也还有很多其他的程序,先了解它才能发现问题。哎呀!这道理很明显嘛,当时也是有点想迅速解决问题弄下一个,大忌大忌!于是那天大多时间我都在了解这新鲜到手的系统~
2.OK,了解后就可以正式看看了~不用说了,都起不来。
因为之前mysql安装位置等等比较混乱所以就趁这机会重新源码编译安装http://www.jianshu.com/p/316c603a1ff2编译安装几次都不成功,安装完没有mysql.sock文件,端口3306未监控,mysql启动不起来,但是都是完全按照网上流程走的,在测试环境上也源码安装了几次都没成功,最后想着先把监控服务器的mysql先装上先用上所以直接yum安装了mysql,装是装好了配置好了但是不清楚ip:3000上面还是没数据,又发觉好像zabbix监控的web端网址是ip,有点懵~看来自己原理没搞清
3.zabbix监控网址是ip,ip:3000只是展示界面,是另外写的一个UI展示界面,把zabbix的数据提上去更合理、美观地展现出来,tail -f /tmp/zabbix_server.log错误
/*
ip:/usr/local/monitor_web_server/www/zabbix/conf/zabbix.conf.php //这里面的参数也要修改
vim /usr/local/zabbix/etc/zabbix_server.conf //要同步修改
[root@monitor ~]# /usr/local/monitor_web_server/php/sbin/php-fpm //启动php
/usr/local/monitor_web_server/php/sbin/php-fpm: error while loading shared libraries:
libmysqlclient.so.18: cannot open shared object file: No such file or directory
[root@monitor ~]# find /usr/ -name libmysqlclient.so.18 //因为安装的mysql版本太低没这个库,php需要多少以上的才行,所以【重新装个高版本的mysql】
测试IP:/usr/local/openresty/nginx/zabbix/conf/zabbix.conf.php //
vim /usr/local/zabbix/etc/zabbix_server.conf //修改后重启
*/
###在客户端浏览器上面访问zabbix,开始WEB的前端配置,http://ZabbixIP/zabbix,按提示点击下一步
Step1:下一步。
Step2:如果全部OK的话才能进行下一步的安装,如果有错误请返回到server端检查相关的软件包是否安装。
Step3:需要输入mysql数据库帐号密码,如果数据库不在zabbix服务器上面,在Host里面添加数据库服务器的地址,
并且要用grant命令给数据库授权。
Step4:输入服务器端 host name or host IP addres;
最后会【自动写入配置文件:zabbix.conf.php】,配置完成后出现登陆界面 //这个应该是在web端配置后自动写入配置文件,但我连不上所以没写进去造成密码错误的问题 ##其实这是web安装进行的最后一步,如果没这个文件它有个按钮会帮你这届复制一个文件到zabbix的etc目录下
############################################################################################
4.装好启动php-fpm
发现找不到这个库error while loading shared libraries: 【libmysqlclient.so.18】: cannot open shared object file: No such file or directory
查看后发现只有so.20没有so.18,于是做了个软连接ln -s ***20 ***18,启动还是不行,
错误version `libmysqlclient_18' not found
14测试:因为zabbix服务端和客户端都在本机,但是错误日志一直说连接不到host:测试ip,所以
干脆把涉及测试IP这个IP的全改成127.0.0.1(本机),重启php-fpm和zabbix_server,zabbix_agentd
再查看zabbix日志没有报错了
#全部重装
原来LNMP及zabbix环境
PHP:5.2.0
centos:6.5
mysql:5.5.56
zabbix:
nginx:
#准备搭建的新环境
PHP:5.6.30 http://cn2.php.net/distributions/php-5.6.30.tar.gz
centos:6.5
mysql:5.6.36 https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz
zabbix:2.4.8 http://prdownloads.sourceforge.net/zabbix/zabbix-2.4.8.tar.gz?download
nginx:1.12.0 http://nginx.org/en/download/nginx-1.12.0.tar.gz
http://www.osyunwei.com/archives/8867.html
安装时候出现的问题
1.最后rpm安装zabbix 依赖包直接yum装
2.php.ini要在安装目录的etc下,开始安装的时候指定的配置文件目录
3.nginx的配置文件,吧ls /usr/local/monitor_web_server/www/zabbix/zabbix-2.4.8/frontends/php/* 拷到下面目录去
index index.php index.html;
root /usr/local/monitor_web_server/www/zabbix/php/
4.最新的zabbix3.2安装在centos6.5下有些吃力,还需要安装很多依赖
5.安装php的时候最麻烦,一定要在开始就把所有需要的扩展装好,不然后面很麻烦
6.源码装对系统比较依赖,但效果各方面后续什么的比较好,直接rpm yum装会很乱,编译好的二进制也还不错,适中
7.注意各个版本(php,mysql,zabbix)之间的兼容问题,比如有些zabbix3.2必须要求php在5.4以上才行
8.注意别乱删lib*.so*文件
9.页面F12看源码有下载地址
10.lib*.so.6 不对 拷贝其他服务器上的库进来
安装完web端后就是一些配置问题
1.web端切换中文
/usr/local/monitor_web_server/www/zabbix/php/include/locales.inc.php 查看是否支持zh_CN
然后web端右上角点开profile选择
2.页面有的显示[] []等,中文乱码问题
出现原因:
由于zabbix的web端没有中文字库,我们需要把中文字库加上即可;
解决办法:
下载中文字体:
wget http://down1.chinaunix.net/distfiles/ttf-arphic-uming_0.0.20050501-1.tar.gz
tar xf /root/ttf-arphic-uming_0.0.20050501-1.tar.gz
cd /usr/local/apache/htdocs/zabbix/fonts ## 注意此处为zabbix web文件所在路径
mv DejaVuSans.ttf /root/ ## 备份原有字体文件
cp /root/ttf-arphic-uming_0.0.20050501/uming.ttf ./DejaVusans.ttf # 将下载的字体替换到此处;
3.checks to [127.0.0.1]: host [monitor] not found
是安装好的zabbix web界面的主机名字和agend.conf里的hostname一致,默认是Zabbix server
4.web监控端监控添加主机,还要添加模板
192.168.0.190-194(用内网的IP) tomcat1(12345) tomcat2(12346)
主机名:wls1-5
5.不能监控java
需要重新编译zabbix,加入--enable-java 再yum install java java-devel zabbix-java-gateway
修改setting.sh
zabbix:/usr/local/monitor_web_server/www/zabbix/sbin/zabbix_java# ls
bin lib settings.sh shutdown.sh startup.sh
LISTEN_IP="0.0.0.0"
LISTEN_PORT=10052
PID_FILE="/tmp/zabbix_java.pid"
START_POLLERS=5
vim start.sh //里面 . .setting.sh
修改zabbix_server.conf 加入
JavaGateway=127.0.0.1 #gateway地址
StartJavaPollers=5 #预启动进程轮训个数
JavaGatewayPort=10052
启动:/usr/local/monitor_web_server/www/zabbix/sbin/zabbix_java/start.sh
测试IP:新问题
1.nginx.conf里面
server {
listen 80;
server_name 10.63.0.14;
# root /usr/local/openresty/nginx/w1;
root /usr/local/openresty/nginx/zabbix; //1
index index.html index.htm index.php;
location ~ \.php$ {
root html/zabbix; //改成上面1的地址不行,直接把这些文件cp到这下面
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
2.web端访问10.63.0.14提示
Database error
The frontend does not match Zabbix database. //Zabbix数据库前端不匹配
Current database version (mandatory/optional): 2020000/2020000.
Required mandatory version: 3020000. Contact your system administrator.
zabbix数据库版本问题,14里面各种版本都低mysql5.1的php5.2的zabbix2.2的,决定装VNC的版本
现在环境搭建完成,还有就是配置及在新的UI界面更好的呈现等问题
未完待续~