Centos zabbix3.4.2 安装教程

zabbix admin 319℃ 0评论

LNMP环境zabbix3.4.2的安装及配置


说明:

          1.该教程不介绍mysql,php,nginx的安装。教程的前提是你已经安装了mysql,php,nginx;没安装的见教程:Centos7上安装nginx+mysql+php

          2.该教程不提供zabbix的web端操作细节,后续补上

          3.安装方式采用的源码安装

          4.教程介绍的是服务端和客户端同时安装在一台服务器


步骤:

    一、下载、编译,安装 

 1.1。下载

$ cd /usr/local/src
$ wget -O zabbix-3.4.2.tar.gz http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/3.4.2/zabbix-3.4.2.tar.gz/download

1.2创建zabbix用户

$ groupadd zabbix 
$ useradd -g zabbix zabbix -s /sbin/nologin

1.3解压

$ tar zxvf zabbix-3.4.2.tar.gz -C /usr/local/

1.4创建zabbix数据库

$ mysql -u用户 -p密码
$ mysql>CREATE DATABASE zabbix DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
$ mysql>grant all privileges on zabbix.* to zabbix@localhost identified by '密码';
$  mysql>flush privileges;

$  service mysqld restart #重启mysql#

1.5导入数据

mysql> use zabbix;
mysql> source /usr/local/zabbix-3.4.2/database/mysql/schema.sql;
mysql> source /usr/local/zabbix-3.4.2/database/mysql/data.sql;
mysql> source /usr/local/zabbix-3.4.2/database/mysql/images.sql;
mysql> quit

1.6安装依赖

$ yum install -y net-snmp net-snmp-devel curl curl-devel mysql-devel libevent-devel pcre-devel

1.7安装

$ cd /usr/local/zabbix-3.4.2/
$ ./configure --prefix=/usr/local/zabbix --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy
$ make -j8
$ make install

1.8创建日志文件目录

$ mkdir /usr/local/zabbix/logs

1.9修改客户端配置文件

$ cd /usr/local/zabbix/etc/
$ vim zabbix_agentd.conf

#####修改以下配置
LogFile=/usr/local/zabbix/logs/zabbix_agentd.log
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix agent

2.0修改服务端配置文件

$ cd /usr/local/zabbix/etc/
$ vim zabbix_server.conf

#####修改以下配置
LogFile=/usr/local/zabbix/logs/zabbix_server.log
DBName=zabbix
DBUser=zabbix
DBHost=localhost
DBPassword=123456  #(zabbix用户的密码)
DBSocket=/var/lib/mysql/mysql.socket #(如果mysql配置没有置顶特定的socket位置,这项可以不填)
AlertScriptsPath=/usr/local/zabbix/alertscripts


2.1创建自定义脚本目录

$ mkdir /usr/local/zabbix/alertscripts
$ chown zabbix.zabbix -R /usr/local/zabbix

2.2 更改php配置


sed -i 's/post_max_size = 8M/post_max_size = 32M/g' /usr/local/php/etc/php.ini
sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 50M/g' /usr/local/php/etc/php.ini
sed -i 's/;date.timezone =/date.timezone =Asia/Shanghai/' /usr/local/php/etc/php.ini
sed -i 's/max_execution_time = 30/max_execution_time = 600/g' /usr/local/php/etc/php.ini
sed -i 's/max_input_time = 60/max_input_time = 600/g' /usr/local/php/etc/php.ini
sed -i 's/memory_limit = 128M/memory_limit = 256M/g' /usr/local/php/etc/php.ini

2.3  重启php-fpm

           

$ service php-fpm restart

2.4 复制启动脚本

cd /usr/local/zabbix-3.4.2/misc/
cp init.d/tru64/zabbix_server /etc/init.d/
cp init.d/tru64/zabbix_agentd /etc/init.d/
chmod +x /etc/init.d/zabbix_*

$ vim /etc/init.d/zabbix_agentd

  DAEMON=/usr/local/zabbix/sbin/zabbix_agentd
  
$ /etc/init.d/zabbix_server

  DAEMON=/usr/local/zabbix/sbin/zabbix_server

2.5 添加服务为自启动

   在#!/bin/sh下面一行添加

$ vim /etc/init.d/zabbix_server 

   #chkconfig: 345 95 95      
   #description: Zabbix_Server  
   
$ vim /etc/init.d/zabbix_agentd 

   #chkconfig: 345 95 95      
   #description: Zabbix_agentd 
   
$  chkconfig zabbix_server on
$  chkconfig zabbix_agentd on

2.6 启动服务


$ /etc/init.d/zabbix_server start

$ /etc/init.d/zabbix_agentd start

$  netstat -ntpl|grep zabbix

image.png


   二、前端部署


        1.1 复制代码到站点

$  cp -rf /usr/local/zabbix-3.4.2/frontends/  /usr/local/www/zabbix/

$ chown www.www -R /usr/local/zabbix/


       1.2 编辑 nginx配置文件

         如果你已经配置了虚拟环境你可以在nginx安装目录的虚拟目录创建一个zabbix.conf文件

         如果没有配置就直接在nginx.conf文件里加


server {        
        listen   8080;
    
        root /usr/local/www/zabbix/;        
        index index.php index.html index.htm;

        location / {            
                 if (!-e $request_filename) {
                rewrite  ^(.*)$  /index.php/$1  last;                break;
                 }
        }

        location ~ \.php {
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                include        fastcgi_params;
                set $real_script_name $fastcgi_script_name;                if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
                   set $real_script_name $1;
                   set $path_info $2;
                }

                fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
                fastcgi_param SCRIPT_NAME $real_script_name;
                fastcgi_param PATH_INFO $path_info;
        }

}

      然后重启nginx服务就可以了,访问http://ip地址:8080 进行安装,具体的步骤就不列出来了。

      注意事项:如果访问不了,先看看服务器8080端口有没有开。否则就是阿里云的安全组需要打开。还不行就是防火墙问题。具体详见 centos7防火墙


     1.3 安装过程中可能出现

             a. check of pre-prerequisites 出现错误。不过都很简单按照提示去修改php配置文件即可

             b.Configure Db Connection 可能出现 error connection to database:no such file or directory 

             问题一般是localhost和127.0.0.1造成的,数据库授权用户的时候两个都加上就好了【填写为localhost时,会去找tmp/mysql.socket 但是没有找到】 

grant all privileges on zabbix.* to zabbix@localhost identified by '密码';

grant all privileges on zabbix.* to zabbix@127.0.0.1 identified by '密码';

   

    1.4 后台默认登录账号密码是:admin/zabbix


      



加载中...