首页 > 代码库 > zabbix

zabbix

目录规划:

Nginx 目录: /usr/local/nginx/

MySQL 目录 : /usr/local/mysql/

MySQL数据库所在目录:/usr/local/mysql/var/

PHP目录 : /usr/local/php/

PHPMyAdmin目录 : /home/wwwroot/default/phpmyadmin/ 

默认网站目录 :  /home/wwwroot/default/

Nginx日志目录:/home/wwwlogs/

/root/vhost.sh添加的虚拟主机配置文件所在目录:/usr/local/nginx/conf/vhost/

 

Nginx主配置(默认虚拟主机)文件:/usr/local/nginx/conf/nginx.conf

添加的虚拟主机配置文件:/usr/local/nginx/conf/vhost/域名.conf

MySQL配置文件:/etc/my.cnf

PHP配置文件:/usr/local/php/etc/php.ini

php-fpm配置文件:/usr/local/php/etc/php-fpm.conf

 

LNMPA相关目录文件位置

Apache目录:/usr/local/apache/

Apache配置文件:/usr/local/apache/conf/httpd.conf

Apache虚拟主机配置文件目录:/usr/local/apache/conf/vhost/

Apache默认虚拟主机配置文件:/usr/local/apache/conf/extra/httpd-vhosts.conf

虚拟主机配置文件名称:/usr/local/apache/conf/vhost/域名.conf

网站路径/home/wwwroot/default

 

zabbix安装目录/etc/zabbix/

/usr/local/php/etc/php.ini

/etc/zabbix/zabbix_server.conf     DBSocket=/tmp/mysql.sock

/home/wwwroot/default/zabbix/conf/zabbix.conf.php

 

1.安装centos7.0X64操作系统

2.安装一键部署LNMP http://lnmp.org/

SecureCRTrzyum install lrzsz )命令上传到/home/下根据官方脚本和步骤完成LNMPA

测试 curl -s http://localhost | grep lnmp 

得到<a href="http://nginx.com/">nginx.com</a>.</p> 则说明部署成功

停止服务 /usr/local/nginx-1.11.1/sbin/nginx -s stop

重启服务 /usr/local/nginx-1.11.1/sbin/nginx -s reload

3.安装Zabbix3.0

# groupadd zabbix

# useradd -g zabbix zabbix

 

rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm   #配置zabbixyum

 

yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent /y

 

mysql -uroot -p

mysql> create database zabbix character set utf8 collate utf8_bin;mysql> grant all privileges on zabbix.* to zabbix@localhost identified by ‘zabbix‘;mysql> quit;

 

cd /usr/share/doc/zabbix-server-mysql-3.0.7/

zcat create.sql.gz | mysql -uroot zabbix -p

 

 vi /etc/zabbix/zabbix_server.conf

修改

DBHost=localhostDBName=zabbixDBUser=zabbixDBPassword=zabbix

保存查看grep -v ‘^#‘ /etc/zabbix/zabbix_server.conf | grep -v ‘^$‘  

技术分享 

 

 

 

 

 

 

问题1:如果出现启动失败,如下所示

[root@test ~]# systemctl start zabbix-serverJob for zabbix-server.service failed because a fatal signal was delivered to the control process. See "systemctl status zabbix-server.service" and "journalctl -xe" for details.

解决方法:先检查selinux是否关闭,

 

查看SELinux状态:

1、/usr/sbin/sestatus -v      ##如果SELinux status参数为enabled即为开启状态

SELinux status:                 enabled

2、getenforce                 ##也可以用这个命令检查

关闭SELinux:

1、临时关闭(不用重启机器):

setenforce 0                  ##设置SELinux 成为permissive模式

                              ##setenforce 1 设置SELinux 成为enforcing模式

2、修改配置文件需要重启机器:

修改/etc/selinux/config 文件

将SELINUX=enforcing改为SELINUX=disabled

重启机器查看服务是否启动

 

问题2:tail /var/log/zabbix/zabbix_server.log -f

技术分享 

没有发现mysql.sock/var/lib/mysql/mysql.sock,由于mysql是安装的LNMP一键部署在/tmp/mysql.sock/etc/my.cnf文件会写mysql.sock的位置,所以vi /etc/zabbix/zabbix_server.conf中去掉DBSocket=/tmp/mysql.sock前面的#号即可。

技术分享 

服务起来了

 

 

Cp /usr/share/zabbix /home/wwwroot/default/zabbix

 

访问http://10.1.20.100/zabbix 提示404,原因是LNMPwwwroot下缺少zabbix目录,

从官方下载源码包zabbix-3.0.7.tar.gzRZ/home, tar -zxvf zabbix-3.0.7.tar.gz解压,cp -rf cp -rf /home/zabbix-3.0.7/frontends/php /home/wwwroot/default/zabbix 复制php目录为zabbix目录,再次访问即可打开zabbix初始化web界面。

技术分享 

 

检查不通过

技术分享 

需要 vi /usr/local/php/etc/php.ini 修改相应的值即可

service php-fpm restart重启php服务(或者用lnmp php-fpm restart

刷新网页即可通过检查,一路下一步

技术分享 

接下来报错无法写入配置文件,手动下载该文件复制到

技术分享 

刷新页面即可完成

使用Admin/zabbix登录系统

技术分享 

登录后修改语言为中文,保存刷新页面即变中文

技术分享 

 

Agent的配置文件

shell# egrep -v "(#|^$)" /etc/zabbix/zabbix_agentd.conf  

LogFile=/var/log/zabbix/zabbix_agentd.log  

EnableRemoteCommands=0 

Server=192.168.2.61 #Zabbix-Server端的IP地址  

StartAgents=8 

ServerActive=10.1.2.61:10051 #Zabbix-Server端的IP地址  

Hostname=node1 

Timeout=30 

Include=/etc/zabbix/zabbix_agentd.conf.d/ #子配置文件路径  

UnsafeUserParameters=1 #自定义的Key中可以包括特殊字符 

 

 

 

 

 

 

 

 

http://www.zabbix.com/download.php下载tar数据包,RZ/home/

 

tar -zxvf zabbix-3.0.0.tar.gz

 

为了安全考虑 zabbix 只使用普通用户运行,假如你当前用户叫 ttlsa,那么你运行他,他便使用 ttlsa 身份运行。但是如果你在 root 环境下运行 zabbix,那么 zabbix 将会主动尝试以 zabbix 身份来运行。但是如果你的系统没有名叫zabbix 的用户,你需要创建一个用户,如下:

# groupadd zabbix

# useradd -g zabbix zabbix

 

 

 

#创建数据库zabbix 并将数据库授权给zabbix用户

shell> mysql -uroot -p<password>  mysql> create database zabbix character set utf8 collate utf8_bin;mysql> grant all privileges on zabbix.* to zabbix@localhost identified by ‘zabbix‘;mysql> quit;

#分别使用模板文件schema.sqlimages.sqldata.sql在数据库zabbix中创建表(过程需要耐心等待)

shell>c/home/zabbix-3.0.3/database/mysql

mysql -uzabbix -pzabbix zabbix < schema.sql

mysql -uzabbix -pzabbix zabbix < images.sql

mysql -uzabbix -pzabbix zabbix < data.sql

 

 

 

 

 

编译和安装

Cd /home/zabbix-3.0.3

 ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2

报错configure: error: MySQL library not found

CentOS系统中,安装zabbix进行configure时会遇到以下4个主要问题

 

1 configure: error: MySQL library not found

the problem is not installed mysql-devel

#yum install mysql-devel  

2 configure: error: Jabber library not found

the problem is not installed jabber lib

#wget http://iksemel.googlecode.com/files/iksemel-1.4.tar.gz  

下载完成后解压、配置、安装:

tar zxvf iksemel-1.4.tar.gz  

cd iksemel-1.4  

configure  

make  

make install  

之后对zabbix进行configure还是会遇到这个问题,那么将jabber目录指定即可:#./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-jabber=/usr/local/ --with-libcurl

3 configure: error: Not found curl Library

#yum install curl-devel (此项未经测试)  

4 configure: error : Not found NET-SNMP library

yum install net-snmp-devel  

 

 

5.本人用编译方式安装的MySQL ,用编译安装zabbix 

报checking for mysql_config... configure: error: MySQL library not found

用--with-mysql=/usr/local/mysql/也不行

 

由“mysql_config... /usr/local/mysql/”得到启发

 查找mysql_config

#find / -name "mysql_config*"

/usr/local/mysql/bin/mysql_config

 

我把--with-mysql改成

--with-mysql=/usr/local/mysql/bin/mysql_config

正常通过。

 

看完上面四点是不是一起也遇到相同的问题,那就按上的办法解决吧!

 

Make

Make install


zabbix