zabbix3.4.10安装过程,附问题解决

  • 配置好lnmp环境或者lamp环境

    nginx或者apache提供web服务,zabbix前端是php写的,需要php环境支持,mysql作为数据库
    可以从lnmp.org下载一键安装包进行安装,安装的默认位置以及配置见lnmp详细说明,,可以根据需要进行修改。lnmp官网

    wget http://soft.vpser.net/lnmp/lnmp1.4.tar.gz
    tar zxvf lnmp1.4.tar.gz
    cd lnmp1.4
    - 选择对应的软件和版本进行安装
    ./install.sh 
    - 选择对应的软件进行更新
    ./upgrade.sh 
    
  • 准备工作

     - 创建用户
    groupadd  zabbix     
    useradd -m zabbix -g zabbix -s /bin/bash -d /home/zabbix
    
  • 下载源码包

    wget https://cytranet.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.4.10/zabbix-3.4.10.tar.gz
    
  • 解压编译

    tar zxvf zabbix-3.4.10.tar.gz
    cd zabbix-3.4.10
    ./configure --enable-server --enable-agent --with-mysql --prefix=/data/zabbix --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
    make && make install 
    
  • 建立zabbix数据库以及用户

    mysql -uroot -p
    mysql> create database zabbix default character set utf8 collate utf8_general_ci;
    mysql> grant all privileges on zabbix.* to 'zabbix'@'%' identified by 'passwd';
    mysql> flush privileges;
    mysql> \q
    - 进入解压的目录的database/mysql
    mysql -uzabbix -ppasswd zabbix < schema.sql
    mysql -uzabbix -ppasswd zabbix < images.sql
    mysql -uzabbix -ppasswd zabbix < data.sql
    
  • 修改zabbix-server配置文件

    vim /usr/local/etc/zabbix_server.conf
    - 修改下列的项目
    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=passwd
    ListenIP=0.0.0.0
    
  • 前端文件

    将解压目录下的web前端文件放到本机默认的web目录,或者指定一个目录
    cp frontends/php/* target/ -r
    

    然后就可以通过zabbix所在服务器的ip和web端口,在浏览器输入ip:port/zabbix.php进行最后的配置

  • 遇到的编译错误汇总

    以下解决方法yum为RedHat、CentOS系的Linux,apt-get为Debian、Ubuntu的

    1. configure: error: MySQL library not found MySQL library not found
    apt-get install libghc-hsql-mysql-dev
    yum install mysql-devel  
    
    2. configure error: Invalid Net-SNMP directory - unable to find net-snmp-config
    apt-get install snmp snmpd
    yum -y install net-snmp-devel
    依然报这个错误,则安装libsnmp-dev
    apt-get install libsnmp-dev
    yum install libsnmp-devel
    
    3. configure: error: unixODBC library not found
    apt-get install unixodbc-dev
    yum install unixODBC-devel
    
    4. configure: error: SSH2 library not found
    apt-get install libssh2-1-dev
    yum install libssh2
    
    5. configure: error: Invalid OPENIPMI directory - unableto find ipmiif.h
    apt-get install libopenipmi-dev
    yum install OpenIPMI-devel
    
    6. configure: error: OpenSSL library libssl or libcryptonot found
    apt-get install libcurl4-openssl-dev
    yum install openssl-devel
    
    7. configure: error: Curl library not found
    apt-get install libcurl3-dev
    yum install libcurl-devel
    
    8. configure: error: LIBXML2 library not found
    apt-get install libxml2-dev
    yum install libxml2-devel -y
    
    9. configure: error: Unable to find "javac"executable in path
    apt-get install openjdk-7-jdk
    yum install java-devel -y
    
    10. configure: error: Jabber library not found
    apt-get install libiksemel-dev
    yum install iksemel-devel -y
    
    11. configure: error: Invalid Net-SNMP directory - unableto find net-snmp-config
    apt-get install libsnmp-dev
    yum install net-snmp net-snmp-devel
    
    12. configure: error: Invalid LDAP directory - unable tofind ldap.h
    apt-get install libldap2-dev
    yum install openldap-devel
    
    13. configure: error: Unable to use libevent (libevent check failed)
    apt-get install  libevent-dev
    yum install libevent-devel
    
    14. Unable to use libpcre (libpcre check failed) 
    apt-get install libpcre3-dev
    yum install libpcre3-devel
    
  • 最后配置遇到的问题

    1. php配置不符合要求
    先找到php所读的配置文件位置
    php -i |grep php.ini
    然后修改为合适的值
    
    2. 数据库连接报错Error connecting to database: No such file or directory
    修改php.ini,在最后添加一行:
    mysqli.default_socket = /var/run/mysqld/mysqld.sock
    
    3. Unable to create the configuration file 
    web服务器的用户对zabbix的前端目录的conf文件夹没有写权限,可以直接下载文件传进去或者赋权给web服务器的用户
    
    4. Database Type 不能选择MySQL的原因是没有安装php5-mysql
    apt-get install php5-mysql
    yum install php-mysql
    
     5. php ldap off warning
    这是由于php安装的时候没有把ldap编译进去,如果php是编译安装的话,进入php的源码目录
    cd ext/ldap
    phpize
    ./configure  --with-php-config=/usr/local/php/bin/php-config --with-ldap
    如果编译报错configure: error: Cannot find ldap libraries in /usr/lib.
    - debian按下面的操作
    ln -s /usr/lib/x86_64-linux-gnu/libldap.so /usr/lib/libldap.so && ln -s /usr/lib/x86_64-linux-gnu/liblber.so /usr/lib/liblber.so
    - centos按下面的操作
    ln -s /usr/lib64/libldap.so /usr/lib/libldap.so && ln -s /usr/lib64/liblber.so /usr/lib/liblber.so
    - 再重新进行编译,编译成功之后进行安装
    make && make install
    - 然后查看一下插件是否添加成功,看是否有ldap.so文件
    ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/ # no-debug-zts-20151012不一定叫这个名字
    - 然后修改php.ini文件,在
     ; If you wish to have an extension loaded automatically, use the following
     ; syntax:下面添加一行,注意不要 ;
     extension=ldap.so
    - 重载nginx,php
    nginx -s reload 
    service php-fpm  reload 
    6. login as guest zabbix无法进入登陆界面
    如果你是Apache用户,应该不存在此问题,如果是nginx有可能因为配置不当而出现,我们需要修改php.ini 
    vim /usr/local/php/etc/php.ini #定位到你的php.ini,进行修改
    cgi.fix_pathinfo=0
    改为
    cgi.fix_pathinfo=1
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 我的工作能给谁带来快乐?我想工作至少要先给自己带来快乐。 第一份工作,做了几年,曾经带给自己充实和快乐的感觉,当熟...
    057Bonnie阅读 217评论 3 2
  • zsh的全称叫oh my zsh,它是terminal的一个插件,它能让terminal的目录结构更加清晰。话不多...
    trinstan阅读 2,538评论 0 0
  • 分不清是罪有应得,还是无巧不成书。上辈子你做错了什么,今生罚你跟我住。我一身毛病罄竹难书,还敢闲你爱唠叨。要不是...
    Z永不逝去的阳光阅读 1,057评论 1 1
  • 最近总是很晚才睡觉,感觉最近岁月刻下的痕迹深了 。笑起来有眼袋,我真不想接受!我不想长大,我该怎么去补救啊!我要早...
    华丽的金多虾阅读 230评论 0 0