zoukankan      html  css  js  c++  java
  • Zabbix部署

    原文发表于cu:2016-05-11

    参考文档:

    1. Zabbix安装:http://www.osyunwei.com/archives/7984.html

    一.环境

    ServerCentOS-7-x86_64-1511

    Server IP: 192.168.11.252

    Web环境:CentOS-7-x86_64-1511编译nginx-1.9.12+ mysql-5.7.11+ php-7.0.4

    ClientWin7 x86_64, Chrome/Firefox浏览器

    二.软件获取

    Zabbix官网下载地址:http://www.zabbix.com/download.php

    截至2016-05-11,最新LTS版本下载地址:http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.0.1/zabbix-3.0.1.tar.gz 

    三.安装zabbix

    1. iptables设置

    # zabbix_agent端口10050,agent默认采用被动方式,由server端主动连接agent;agent主动模式,在agent的配置文件中可配置;
    # zabbix_trapper端口10051,agent主动或trapper方式连接server端
    [root@localhost ~]# vim /etc/sysconfig/iptables
    
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 10051 -j ACCEPT
    -A OUTPUT -p tcp -m state --state NEW -m tcp --dport 10050 -j ACCEPT 

    2. 创建/导入数据库

    # 进入mysql数据库创建脚本目录,列出文件,有schema.sql、images.sql、data.sql三个文件
    cd /usr/local/src
    tar -zxvf zabbix-3.0.1.tar.gz
    cd /usr/local/src/zabbix-3.0.1/database/mysql
    ll
    
    # 输入密码,进入MySQL控制台
    mysql -u root -p
     
    # 创建数据库zabbix,并且数据库编码使用utf8
    create database zabbix character set utf8;
    
    # 新建账户zabbix,密码123456,刷新系统授权表
    CREATE USER zabbix IDENTIFIED BY '123456';
    flush privileges;
    
    # 允许zabbix账号能从本机连接到数据库zabbix
    grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by '123456' with grant option;
    flush privileges;
    
    # 进入mysql数据库,查看新建zabbix账号及其权限库zabbix
    use mysql;
    select host,user from user;
    
    # 进入zabbix数据库,导入脚本文件到zabbix数据库,重要:请务必按以下顺序导入
    use zabbix;
    source /usr/local/src/zabbix-3.0.1/database/mysql/schema.sql
    source /usr/local/src/zabbix-3.0.1/database/mysql/images.sql
    source /usr/local/src/zabbix-3.0.1/database/mysql/data.sql
    
    # 或者在系统中直接导入
    mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-3.0.1/database/mysql/schema.sql
    mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-3.0.1/database/mysql/images.sql
    mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-3.0.1/database/mysql/data.sql
    
    # 系统版本不同,文件版本可能不一样,这里是18.0.0;有可能找不到libmysqlclient_r.so.x.0.0文件,不影响
    cd /usr/lib64/mysql
    ln -s libmysqlclient.so.18.0.0 libmysqlclient.so
    ln -s libmysqlclient_r.so.18.0.0 libmysqlclient_r.so

    3. 部署zabbix

    添加用户

    # 创建用户zabbix,将用户zabbix加入到用户组zabbix中
    groupadd zabbix
    useradd -g zabbix -s /sbin/nologin zabbix

    依赖包

    #如果以下软件包在安装Web环境LNMP时已安装过,此步骤可忽略
    yum install net-snmp-devel curl curl-devel mysql-devel

    安装zabbix

    #有可能找不到libiconv.so.2文件,暂时未发现有何影响
    ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2
    
    #使配置立即生效
    /sbin/ldconfig
    
    #find / -name mysql_config 查找位置,如果没有mysql_config,需要安装yum install mysql-devel
    cd /usr/local/src/zabbix-3.0.1
    ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-mysql=/usr/bin/mysql_config
    make
    make install
    
    ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/
    ln -s /usr/local/zabbix/bin/* /usr/local/bin/

    配置

    添加端口

    #添加zabbix服务对应的端口,默认services文档中已添加
    vim /etc/services
    
    # Zabbix
    zabbix-agent 10050/tcp # Zabbix Agent
    zabbix-agent 10050/udp # Zabbix Agent
    zabbix-trapper 10051/tcp # Zabbix Trapper
    zabbix-trapper 10051/udp # Zabbix Trapper

    修改zabbix配置文件

    #zabbix配置文件修改
    vim /usr/local/zabbix/etc/zabbix_server.conf
    
    DBName=zabbix
    DBUser=zabbix
    DBPassword=123456
    ListenIP=127.0.0.1
    AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
    
    #启用自定义key子配置文件路径,并打开对特殊字符的处理
    vim /usr/local/zabbix/etc/zabbix_agentd.conf
    
    Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
    UnsafeUserParameters=1

    添加开机启动脚本

    #服务端
    cp /usr/local/src/zabbix-3.0.1/misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server
    
    #客户端
    cp /usr/local/src/zabbix-3.0.1/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd
    
    #添加脚本执行权限
    chown zabbix:zabbix /etc/rc.d/init.d/zabbix_server
    chown zabbix:zabbix /etc/rc.d/init.d/zabbix_agentd
    chmod +x /etc/rc.d/init.d/zabbix_server
    chmod +x /etc/rc.d/init.d/zabbix_agentd
    
    #编辑服务端启动脚本中zabbix的安装目录
    vim/etc/rc.d/init.d/zabbix_server
    
    BASEDIR=/usr/local/zabbix/
    
    #编辑客户端启动脚本中zabbix的安装目录
    vim /etc/rc.d/init.d/zabbix_agentd
    
    BASEDIR=/usr/local/zabbix/
    
    #添加开机启动
    chkconfig –level 35 zabbix_server on
    chkconfig –level 35 zabbix_agentd on 

    配置web站点

    #解压文件中有模板
    cp -r /usr/local/src/zabbix-3.0.1/frontends/php /usr/local/nginx/html/zabbix
    
    #/usr/local/nginx/html为Nginx默认站点目录,www为nginx运行账户
    chown -R www:www /usr/local/nginx/html/zabbix
     
    #启动zabbix服务端/客户端
    service zabbix_server start
    service zabbix_agentd start

    修改php配置文件参数

    #参数都是zabbix web安装需要的参数,在后面的zabbix启动安装时会检测
    vim /etc/php.ini
    post_max_size =16M
    max_execution_time =300
    max_input_time =300
    
    vim /usr/local/php/etc/php-fpm.d/www.conf
    request_terminate_timeout = 300
     
    #重启php-fpm
    service php-fpm reload

    安装zabbix web

    在浏览器中打开:http://192.168.11.252/zabbix

    第一次运行时,系统会自动重重定向到setup.php进行web安装。

    Next step

    Zabbix web安装会检测安装环境,必须全部通过才能进行下一步安装。

    如下,检测显示有一项未通过检测,

    参数:always_populate_raw_post_data 检测不通过,

    zabbix会主动检测此参数,但php5.6已经没有此参数,可以做如下修改:

    # 注释原76~78行,添加如上几行,当php版本大于5.6时忽略此检测
    # https://blog.memotz.com/276.html
    vim /usr/local/nginx/html/zabbix/include/classes/setup/CFrontendSetup.php
    
    // check for deprecated PHP 5.6.0 option 'always_populate_raw_post_data'
    #if (version_compare(PHP_VERSION, '5.6', '>=')) {
    # $result[] = $this->checkPhpAlwaysPopulateRawPostData();
    #}
    
    if (version_compare(PHP_VERSION, '5.6', '>=') && version_compare(PHP_VERSION, '7.0.4', '<')) {
    $result[] = $this->checkPhpAlwaysPopulateRawPostData();
    }
    $result[] = $this->checkPhpSockets();

     修改后刷新检测,通过,Next step

    配置DB信息,按之前的配置填写即可,注意:database host处如localhost不通过,可查看zabbix是否赋予主机localhost相应权限,如没有,可增加localhost主机或修改配置页中的localhost为127.0.0.1

    修改后刷新检测,通过。

    Next step

    可以默认,也可以设置一个zabbix服务器名。 

    Next step

    Next step

    安装完成,Finish。

    Zabbix登录页,默认账号/密码:admin/zabbix

    zabbix server启动问题

    登录zabbix后,重点观察Dashboard中zabbix server的状态值,有时zabbix并没用运行,VALUE显示值为No,此时可以查看/tmp/zabbix_server.log日志文件定位(在配置文件/usr/local/zabbix/etc/zabbix_server.conf中明确日志文件的位置),经常会因为mysql权限问题导致zabbix_server不能正常启动。

    4. Zabbix汉化(optional)

    修改系统配置文件,使web页面支持简体中文显示

    vim /usr/local/nginx/html/zabbix/include/locales.inc.php
    
    'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => false),
    修改为:
    'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => true),

    替换监控图像上系统默认的字体

    默认字体不支持中文,如果不替换,图像上会显示乱码。

    在Windows系统中的C:WindowsFonts目录中复制出一个中文字体文件,例如msyh.ttf,

    把字体文件msyh.ttf上传到zabbix站点根目录下fonts文件夹中,如/usr/local/nginx/html/zabbix/fonts

    #备份默认的字体文件,修改msyh.ttf名为DejaVusSans.ttf
    mv DejaVusSans.ttf DejaVusSans.ttf-bak
    mv msyh.ttf DejaVusSans.ttf

    修改显示语言

    登录zabbix,AdministratoràUseràAdmin(字体与账户有关),修改Language为Chinese(zh_CN)。

    点击update,退出站点,重新登录即可。

  • 相关阅读:
    [hdu4035]maze
    [codeforce][148d]
    [bzoj3507]通配符匹配
    [BZOJ4831]
    子串
    【洛谷1373】小a和uim之大逃离
    【JZOJ6303】演员
    [jzoj6296]选票
    字符串哈希
    [ABC137d&e]RE
  • 原文地址:https://www.cnblogs.com/netonline/p/7376104.html
Copyright © 2011-2022 走看看