zoukankan      html  css  js  c++  java
  • zabbix 监控安装

    注意:此篇是在安装好lnmp环境后才能部署的操作,所以,做之前准备好lnmp环境,或者可以参考我做的lnmp环境,之后接着此篇开始安装

    监控系统Zabbix-3.2.1的安装

    zabbix-server端的操作

    zabbix服务器端要提前安装好LNMP环境(mysqlnginxphp5的安装目录均是/usr/local

    创建Zabbix运行的用户:

    # userd -g zabbix zabbix
    # useradd -g zabbix zabbix
    

    安装libcurlnet-snmp:

    # yum -y install net-snmp net-snmp-devel curl-devel java-1.8.0-openjdk java-1.8.0-openjdk-devel  OpenIPMI-devel  libssh2-devel

    注:OpenIPMI-devel 和libssh2-devel软件包使用centos在线yum软件源安装

    安装Fping:

    # tar -xvf fping-3.12.tar.gz
    # cd fping-3.12/
    # ./configure && make && make install
    # chown -R root:zabbix /usr/local/sbin/fping
    # chmod 4710 /usr/local/sbin/fping 
    # ll /usr/local/sbin/fping 
    -rws--x---. 1 root zabbix 93506 4月 27 09:26 /usr/local/sbin/fping

    安装Zabbix Server:

     

    # tar -xvf zabbix-3.2.1.tar.gz
    # cd zabbix-3.2.1/
    # ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-java --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-openipmi
    

      

    注意:编译时最好带上--enable-java这个参数,方便后续监控tomcat程序所用。

    --with-ssh2 是不需要在客户端服务器上面安装Zabbix agent,如果需要使用ssh检查,需要在编译的时候加上这项,最低需要libssh2 1.0.0版本,需要安装ssh开发包

    --with-openipmi用户可以利用 IPMI 监视服务器的物理特征,如温度、电压、电扇工作状态、电源供应等

    如果添加了--enable-proxy, 那么会生成getsender两条命令. 如下, 用于接收agent发生过来的信息, 同时发送给server.

    # make && make install
    # ln -s /usr/local/zabbix/bin/* /usr/local/bin/
    # ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/
    

      

    Zabbix Server配置与启动
    创建Zabbix数据库和MySQL用户:

    mysql> create database zabbix character set utf8;
    Query OK, 1 row affected (0.00 sec)
    
    mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix';
    Query OK, 0 rows affected, 1 warning (0.00 sec)
    
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
    

     

    导入Zabbix初始数据:

    切换到zabbix的解压目录下

     

    [root@localhost zabbix-3.2.1]# cd database/mysql/
    [root@localhost mysql]# pwd
    /data/src/zabbix/zabbix-3.2.1/database/mysql
    [root@localhost mysql]# ls
    data.sql  images.sql  schema.sql

    进行zabbix初始数据导入

    [root@localhost mysql]# mysql -uzabbix -pzabbix -hlocalhost zabbix < images.sql 
    mysql: [Warning] Using a password on the command line interface can be insecure.
    [root@localhost mysql]# mysql -uzabbix -pzabbix -hlocalhost zabbix < data.sql
    mysql: [Warning] Using a password on the command line interface can be insecure.
    

    编辑/usr/local/zabbix/etc/zabbix_server.conf:

    # vim /usr/local/zabbix/etc/zabbix_server.conf
    LogFile=/usr/local/zabbix/logs/zabbix_server.log
    PidFile=/usr/local/zabbix/logs/zabbix_server.pid
    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=zabbix
    DBPort=3306
    FpingLocation=/usr/local/sbin/fping
    

    创建日志目录并设置属主属组

    # mkdir -p /usr/local/zabbix/logs
    # chown -R zabbix:zabbix /usr/local/zabbix
    

    启动Zabbix Server:

    # /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
    /usr/local/zabbix/sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.20: cannot open shared object file: No such file or directory 

    解决方法:

    ld.so.conf中加入/usr/local/mysql/lib

    # vim /etc/ld.so.conf
    include ld.so.conf.d/*.conf
    /usr/local/mysql/lib
    /usr/local/lib
    

      

    # ldconfig
    

     

    再次执行zabbix_server启动

     

    # /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
    # ps -ef f|grep zabbix_server
    root      23511  13356  0 10:04 pts/0    S+     0:00          \_ grep --color=auto zabbix_server
    zabbix    23456      1  0 10:03 ?        S      0:00 /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
    zabbix    23457  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: configuration syncer [waiting 60 sec for processes]
    zabbix    23458  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: db watchdog [synced alerts config in 0.013618 sec, idle 60 sec]
    zabbix    23459  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: poller #1 [got 0 values in 0.000012 sec, idle 5 sec]
    zabbix    23460  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: poller #2 [got 0 values in 0.000009 sec, idle 5 sec]
    zabbix    23461  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: poller #3 [got 0 values in 0.000018 sec, idle 5 sec]
    zabbix    23462  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: poller #4 [got 0 values in 0.000012 sec, idle 5 sec]
    zabbix    23463  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: poller #5 [got 0 values in 0.000012 sec, idle 5 sec]
    zabbix    23464  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: unreachable poller #1 [got 0 values in 0.000012 sec, idle 5 sec]
    zabbix    23465  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: trapper #1 [processed data in 0.000000 sec, waiting for connection]
    zabbix    23466  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: trapper #2 [processed data in 0.000000 sec, waiting for connection]
    zabbix    23467  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: trapper #3 [processed data in 0.000000 sec, waiting for connection]
    zabbix    23468  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: trapper #4 [processed data in 0.000000 sec, waiting for connection]
    zabbix    23469  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: trapper #5 [processed data in 0.000000 sec, waiting for connection]
    zabbix    23470  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: icmp pinger #1 [got 0 values in 0.000003 sec, idle 5 sec]
    zabbix    23471  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: alerter [sent alerts: 0 success, 0 fail in 0.001350 sec, idle 30 sec]
    zabbix    23472  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: housekeeper [startup idle for 30 minutes]
    zabbix    23473  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: timer #1 [processed 0 triggers, 0 events in 0.000168 sec, 0 maintenances in 0.004566 sec, idle 30 sec]
    zabbix    23474  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: http poller #1 [got 0 values in 0.001100 sec, idle 5 sec]
    zabbix    23475  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: discoverer #1 [processed 0 rules in 0.002285 sec, idle 60 sec]
    zabbix    23476  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: history syncer #1 [synced 0 items in 0.000002 sec, idle 1 sec]
    zabbix    23477  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: history syncer #2 [synced 0 items in 0.000001 sec, idle 1 sec]
    zabbix    23478  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: history syncer #3 [synced 0 items in 0.000002 sec, idle 1 sec]
    zabbix    23479  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: history syncer #4 [synced 0 items in 0.000002 sec, idle 1 sec]
    zabbix    23480  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: escalator #1 [processed 0 escalations in 0.001507 sec, idle 3 sec]
    zabbix    23481  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: proxy poller #1 [exchanged data with 0 proxies in 0.000003 sec, idle 5 sec]
    zabbix    23482  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: self-monitoring [processed data in 0.000009 sec, idle 1 sec]
    zabbix    23483  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: task manager [processed 0 task(s) in 0.000433 sec, idle 5 sec]
    [root@localhost mysql]# 
    

     

      

    添加开机启动脚本

     

     

    [root@localhost zabbix-3.2.1]# cp misc/init.d/fedora/core/zabbix_server  /etc/rc.d/init.d/zabbix_server
    [root@localhost zabbix-3.2.1]# cp misc/init.d/fedora/core/zabbix_agentd  /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
    # chkconfig --add zabbix_server
    # chkconfig --add zabbix_agentd
    # chkconfig zabbix_server on
    chkconfig zabbix_agentd on
    

      

    修改zabbix开机启动脚本中的zabbix安装目录

    vim /etc/rc.d/init.d/zabbix_server #编辑服务端配置文件

     

    # vim /etc/rc.d/init.d/zabbix_server
    修改下面两项
    BASEDIR=/usr/local/zabbix
    PIDFILE=/usr/local/zabbix/logs/$BINARY_NAME.pid    #pid文件路径 

     

     

    vim /etc/rc.d/init.d/zabbix_agentd #编辑客户端配置文件

     

    # vim /etc/rc.d/init.d/zabbix_agentd 
    修改下面两项
    BASEDIR=/usr/local/zabbix
    PIDFILE=/usr/local/zabbix/logs/$BINARY_NAME.pid
    

      

    # systemctl daemon-reload
    # /etc/init.d/zabbix_server stop
    Stopping zabbix_server (via systemctl):                    [  确定  ]
    # /etc/init.d/zabbix_server start
    Starting zabbix_server (via systemctl):                    [  确定  ]
    # netstat -tanpl |grep zabbix
    tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      27324/zabbix_agentd 
    tcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN      23456/zabbix_server 
    

      此时关闭防火墙或者做防火墙规则

    配置zabbix web页面

    在安装目录将frontends拷贝到指定的web root:

    # cp -r frontends/php/ /usr/local/nginx1.10/html/zabbix
    # chown -R www:www /usr/local/nginx1.10/html/zabbix
    

      

    注:/usr/local/nginx/htmlNginx默认站点目录 wwwNginx运行账户

    :PHP需要至少开启扩展:

     

    gd,bcmath,ctype,libXML,xmlreader,xmlwriter,session,sockets,mbstring,gettext,mysql

    如下,查看是否包括了上面所提到的扩展模块

     

     

    # /usr/local/php5.6/bin/php -m
    [PHP Modules]
    bcmath
    bz2
    Core
    ctype
    curl
    date
    dom
    ereg
    fileinfo
    filter
    ftp
    gd
    gettext
    hash
    iconv
    json
    libxml
    mbstring
    mcrypt
    mhash
    mysql
    mysqli
    openssl
    pcntl
    pcre
    PDO
    pdo_sqlite
    Phar
    posix
    Reflection
    session
    shmop
    SimpleXML
    soap
    sockets
    SPL
    sqlite3
    standard
    sysvsem
    tokenizer
    xml
    xmlreader
    xmlrpc
    xmlwriter
    zip
    zlib
    

     

      

    安装Web

    访问Web界面http://192.168.92.129/zabbix,进行相关web配置,配置完成后使用默认用户admin(密码:zabbix)登陆即可

    进入ZABBIX WEB安装画面

    进入ZABBIX检测画面

    对数据库进行设置,这里如果数据库在本地的话端口可以使用0

     

    点击Next step 一下步进行zabbix server 细节的设置  这一步可以默认

    点击安装,安装完成后  如果没有错误就会进入完成画面

    完成画面有设置文件放在服务器的位置,请记下来

    点击Finish 完成 

    使用Admin  用默认密码 zabbix 登录

    登录后画面如下

    至此 ZABBIX的基础安装完成

    注:

    1. 显示简体中文界面

    在安装数据库时已经将zabbix库设置了utf-8字符

    首先确定zabbix开启了中文支持功能:
    登录到zabbix服务器的数据目录下(前面部署的zabbix数据目录是/usr/local/nginx1.10/html/zabbix/),打开 locales.inc.php文件

     

    # cd /usr/local/nginx1.10/html/zabbix/include/
    [root@localhost include]# ls
    acknow.inc.php       events.inc.php          js.inc.php            screens.inc.php
    actions.inc.php      forms.inc.php           locales.inc.php       services.inc.php
    audit.inc.php        func.inc.php            maintenances.inc.php  sounds.inc.php
    blocks.inc.php       gettextwrapper.inc.php  maps.inc.php          translateDefines.inc.php
    classes              graphs.inc.php          media.inc.php         triggers.inc.php
    config.inc.php       groups.inc.php          menu.inc.php          users.inc.php
    correlation.inc.php  hosts.inc.php           page_footer.php       validate.inc.php
    db.inc.php           html.inc.php            page_header.php       valuemap.inc.php
    debug.inc.php        httptest.inc.php        perm.inc.php          views
    defines.inc.php      ident.inc.php           profiles.inc.php
    discovery.inc.php    images.inc.php          regexp.inc.php
    draw.inc.php         items.inc.php           schema.inc.php
    [root@localhost include]# vim locales.inc.php 
    function getLocales() {
            return [
                    'en_GB' => ['name' => _('English (en_GB)'),     'display' => true],
                    'en_US' => ['name' => _('English (en_US)'),     'display' => true],
                    'bg_BG' => ['name' => _('Bulgarian (bg_BG)'),   'display' => false],
                    'zh_CN' => ['name' => _('Chinese (zh_CN)'),     'display' => true],
                    'zh_TW' => ['name' => _('Chinese (zh_TW)'),     'display' => false],
                    'cs_CZ' => ['name' => _('Czech (cs_CZ)'),       'display' => true],
                    'nl_NL' => ['name' => _('Dutch (nl_NL)'),       'display' => false],
                    'fi_FI' => ['name' => _('Finnish (fi_FI)'),     'display' => false],
                    'fr_FR' => ['name' => _('French (fr_FR)'),      'display' => true],
                    'ka_GE' => ['name' => _('Georgian (ka_GE)'),    'display' => false],

    登陆zabbix后,点击右上角的用户图标,将语言设置为中文  

    按照如图选择Chinese(zh_CN)点击update

    如下图,此时可以显示中文了

    解决zabbix绘图中出现中文乱码问题:

    a.windows下控制面板->字体->选择一种中文字库例如“宋体

    b.把它拷贝到zabbixweb端的fonts目录下例如:/usr/local/nginx1.10/html/zabbix/fonts/,并且把TTF后缀改为ttf

    # cp SIMSUN.TTC  /usr/local/nginx1.10/html/zabbix/fonts/
    # mv SIMSUN.TTC SIMSUN.ttf
    # ls
    DejaVuSans.ttf SIMSUN.ttf
    # pwd
    /usr/local/nginx1.10/html/zabbix/fonts
    

    并且将之前的字体文件DejaVuSans.ttf移动到别处

    c.然后,接着修改代码include/defines.inc.php文件中的字体配置,将里面关于字体设置从DejaVuSans替换成SIMSUN  

    # vim /usr/local/nginx1.10/html/zabbix/include/defines.inc.php
    会修改两处
    vim替换技巧  “:%s/DejaVuSans/SIMSUN”

    其中:SIMSUN为字库名字,不包含ttf后缀

    这样,修改后,zabbix监控图形中的中文字就不会出现乱码了

    第二部分,安装zabbix客户端

    既然要监控我们就要添加要监控的主机,在添加主机之前我们首先要在被检测主机上面安装agent,安装agent比较简单,我们也是按照安装server的流程,下载软件包,在编译的时候,我们只选择agent

    192.168.92.130作为zabbix的被监控端,提供webmysql应用

    安装Zabbix,配置Zabbix agent:

    在192.168.92.130上配置如下:

     

    # groupadd zabbix
    # useradd -g zabbix zabbix
    # yum -y install gcc cc cl # yum -y install net-snmp net-snmp-devel curl-devel java-1.8.0-openjdk java-1.8.0-openjdk-devel OpenIPMI-devel libssh2-devel

     

      

     

    # tar -xvf zabbix-3.2.1.tar.gz
    # cd zabbix-3.2.1/
    # ./configure --prefix=/data/soft/zabbix --enable-agent
    #  make && make install
    # cp misc/init.d/fedora/core/zabbix_agentd  /etc/init.d/
    # mkdir -p /usr/local/zabbix/logs
    # chown -R zabbix:zabbix /usr/local/zabbix/

     

    配置开机自动启动:

     

    # chkconfig --add zabbix_agentd
    # chkconfig zabbix_agentd  on
    

      

    修改zabbix开机启动脚本中的zabbix安装目录

     

    # vim /etc/rc.d/init.d/zabbix_agentd
    修改下面两处
     BASEDIR=/usr/local/zabbix/
    PIDFILE=/usr/local/zabbix/logs/$BINARY_NAME.pid
    

     

     

    # systemctl daemon-reload 

    编辑zabbix_agentd.conf

     

    # vi /usr/local/zabbix/etc/zabbix_agentd.conf
    

      

     PidFile=/usr/local/zabbix/logs/zabbix_agentd.pid
    LogFile=/usr/local/zabbix/logs/zabbix_agentd.log
    Server=192.168..92.129
    ServerActive=192.168.92.129
    Hostname=192.168.92.130
    Timeout=15
    Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
    

    注:

    其中ServerServerActive都指定zabbixserverIP地址,不同的是,前者是被动后者是主动。也就是说Server这个配置是用来允许192.168.31.225这个ip来我这取数据。而serverActive192.168.31.225的意思是,客户端主动提交数据给他。

    Hostname=XXX,这个定义的名字必须和web页面里面host的名字一样。

    启动zabbix_agentd:

      

    # /etc/init.d/zabbix_agentd start
    Starting zabbix_agentd (via systemctl):                    [  确定  ]
    # netstat -anpt | grep zabbix_agentd
    tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      60832/zabbix_agentd  

    zabbix客户端要么关闭防火墙,要么做防火墙规则

    到此,zabbix3.2.1监控系统的基本环境安装完成

    实现zabbix添加监测项

    添加对Linux主机的监控

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

    登录zabbix,先在配置”-“主机里添加主机监控,监控os资源:内存,cpuio,负载,带宽等.

    登录zabbix,先在配置”-“主机单击”创建主机”

    注意:下图中的主机名称要和zabbix_agentd.conf文件中设置的Hostname”后面的名称一致!

    主机名称:192.168.92.130

    群组:Linux servers

    agent代理程序接口ip192.168.92.130

    已启用:勾选

    其它选项默认即可

    切换到模板

     

     未完,待续。。。。。。。。。。。。。。。。。。。

     

     

      

     

  • 相关阅读:
    OpenCV——IplImage
    OpenCV——常用函数查询
    OpenCV——Sobel和拉普拉斯变换
    OpenCV——CvSeq动态结构序列
    OpenCV——人脸检测
    Java—Integer类
    Java—NumberFormat与DecimalFormat类
    sql事务机制
    存储过程
    java中的抽象类和接口
  • 原文地址:https://www.cnblogs.com/nshgo/p/8960827.html
Copyright © 2011-2022 走看看