zoukankan      html  css  js  c++  java
  • 分布式监控系统Zabbix-3.0.3-完整安装记录(1)

    分布式监控系统Zabbix-3.0.3的安装记录

    环境说明
    zabbix-server:192.168.1.30     #zabbix的服务端(若要监控本机,则需要配置本机的Zabbix agent,下面会提到)
    zabbix-agent:192.168.1.7     #zabbix的客户端(被监控端,需要配置Zabbix agent,下面会提到)

    一、zabbix-server端的操作记录(192.168.1.30 )

    zabbix服务器端要提前安装好LNMP环境(mysql,nginx,php5的安装目录均是/usr/local)

    创建Zabbix运行的用户:
    [root@Zabbix-server ~]# groupadd zabbix
    [root@Zabbix-server ~]# useradd -g zabbix zabbix

    安装libcurl和net-snmp:
    [root@Zabbix-server ~]# yum install net-snmp-devel curl-devel

    安装Fping:
    [root@Zabbix-server ~]# cd /usr/local/src
    [root@Zabbix-server src]# wget -c http://fping.org/dist/fping-3.4.tar.gz
    [root@Zabbix-server src]# tar zxvf fping-3.4.tar.gz
    [root@Zabbix-server src]# cd fping-3.4
    [root@Zabbix-server fping-3.4]# ./configure
    [root@Zabbix-server fping-3.4]# make && make install
    [root@Zabbix-server fping-3.4]# chown root:zabbix /usr/local/sbin/fping
    [root@Zabbix-server fping-3.4]# chmod 4710 /usr/local/sbin/fping

    安装Zabbix Server:
    [root@Zabbix-server ~]# cd /usr/local/src
    [root@Zabbix-server src]# wget -c http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/3.0.3/zabbix-3.0.3.tar.gz
    [root@Zabbix-server src]# tar zxvf zabbix-3.0.3.tar.gz
    [root@Zabbix-server src]# cd zabbix-3.0.3
    [root@Zabbix-server zabbix-3.0.3]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-java --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl

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

    ==========zabbix编译时可能出现的报错及其解决办法=============
    error: Invalid Net-SNMP directory - unable to find net-snmp-config
    # yum install  net-snmp-devel
    
    configure: error: Jabber library not found
    #yum install iksemel-devel -y 即可,
    
    configure: error: LIBXML2 library not found
    #yum install libxml2-devel -y
    
    configure: error: unixODBC library not found
    #yum install unixODBC-devel -y
    
    configure: error: Invalid OPENIPMI directory - unable to findipmiif.h
    #yum install OpenIPMI-devel
    
    configure:error: Unable to find "javac" executable in pathyum install java-devel -y
    缺少java,可安装java,比如java6,java7或java8
    可以参考https://www.cnblogs.com/kevingrace/p/5870814.html
    #yum -y install java-1.7.0-openjdk*
    
    configure: error: Curl library not found
    # yum install curl-devel -y
    
    configure: error: SSH2 library not found
    #yum install -y libssh2-devel

    [root@Zabbix-server zabbix-3.0.3]# make && make install

    Zabbix Server配置与启动
    创建Zabbix数据库和MySQL用户:
    [root@Zabbix-server ~]# mysql -p
    ........
    mysql> create schema zabbix character set utf8;
    Query OK, 1 row affected (0.05 sec)
    mysql> create user 'zabbix'@'%' identified by '123456';
    Query OK, 0 rows affected (0.16 sec)
    mysql> grant all on zabbix.* to 'zabbix'@'%';
    Query OK, 0 rows affected (0.03 sec)
    mysql> flush privileges;
    Query OK, 0 rows affected (0.04 sec)

    导入Zabbix初始数据:
    切换到zabbix的解压目录下,这里是/usr/local/src目录下
    [root@Zabbix-server ~]# cd /usr/local/src
    [root@Zabbix-server src]# cd zabbix-3.0.3
    [root@Zabbix-server zabbix-3.0.3]#cd database/mysql/
    [root@Zabbix-server mysql]# pwd
    /usr/local/src/zabbix-3.0.3/database/mysql
    [root@Zabbix-server mysql]# ls
    data.sql images.sql schema.sql
    [root@Zabbix-server mysql]# mysql -uroot -p       #登陆mysql,进行zabbix初始数据导入(记得要先"use zabbix"库之后再导入)
    mysql> set sql_log_bin=0;
    mysql> source ./schema.sql;
    mysql> source ./images.sql;
    mysql> source ./data.sql;
    mysql> set sql_log_bin=1;

    编辑/usr/local/zabbix/etc/zabbix_server.conf:
    [root@Zabbix-server ~]#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=192.168.1.30
    DBName=zabbix
    DBUser=zabbix
    DBPassword=123456
    DBPort=3306
    FpingLocation=/usr/local/sbin/fping

    从安装目录拷贝zabbix_server脚本,并编辑:
    [root@Zabbix-server ~]# cd /usr/local/src
    [root@Zabbix-server src]# cd zabbix-3.0.3
    [root@Zabbix-server zabbix-3.0.3]# cp misc/init.d/fedora/core5/zabbix_server /etc/init.d/
    [root@Zabbix-server zabbix-3.0.3]# mkdir -p /usr/local/zabbix/logs
    [root@Zabbix-server zabbix-3.0.3]# chown -R zabbix:zabbix /usr/local/zabbix
    [root@Zabbix-server zabbix-3.0.3]# vim /etc/init.d/zabbix_server
    [root@Zabbix-server zabbix-3.0.3]# cat /etc/init.d/zabbix_server
    ...
    ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_server"
    CONF_FILE="/usr/local/zabbix/etc/zabbix_server.conf"
    ...
    start() {
    ...
    daemon $ZABBIX_BIN -c $CONF_FILE
    ...
    }

    调整防火墙规则(开放端口10051):
    [root@Zabbix-server ~]# vim /etc/sysconfig/iptables
    ...
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 10051 -j ACCEPT
    ...

    [root@Zabbix-server ~]# /etc/init.d/iptables restart

    启动Zabbix Server:
    [root@Zabbix-server ~]# service zabbix_server start                  #也可以直接/usr/local/zabbix/sbin/zabbix_server方式启动
    Starting Zabbix Server: [ OK ]

    停止Zabbix Server:
    [root@Zabbix-server ~]# service zabbix_server stop
    Stopping Zabbix Server: [ OK ]

    配置开机自动启动:
    [root@Zabbix-server ~]# chkconfig --add zabbix_server
    [root@Zabbix-server ~]# chkconfig --level 35 zabbix_server on

    Zabbix的Web前端
    在安装目录将frontends拷贝到指定的web root:
    [root@Zabbix-server ~]# mkdir -p /data/www/zabbix
    [root@Zabbix-server ~]# cd /usr/local/src
    [root@Zabbix-server src]# cd zabbix-3.0.3
    [root@Zabbix-server zabbix-3.0.3]#cp -a frontends/php/* /data/www/zabbix/
    [root@Zabbix-server zabbix-3.0.3]# chown -R www:www /data/www/zabbix

    Nginx配置:
    [root@Zabbix-server ~]# cat /usr/local/nginx/conf/vhost/zabbix.conf

    server {
            listen       80;
            server_name  zabbix.zrwm.com;
    
    
            location / {
                root   /data/www/zabbix;
                index  index.php index.html index.htm ;
            }
    
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
    
            
            location ~ .php$ {
                root           /data/www/zabbix;
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include        fastcgi_params;
            }
    
           
        }

    php.ini配置:
    [root@Zabbix-server ~]# cat /usr/local/php5/etc/php.ini
    ...
    memory_limit = 128M
    post_max_size = 16M
    max_execution_time = 300
    max_input_time = 300
    session.auto_start = 0 ;                   //必须为0
    mbstring.func_overload = 0
    ...
    注:PHP需要至少开启扩展:gd,bcmath,ctype,libXML,xmlreader,xmlwriter,session,sockets,mbstring,gettext,mysql
    如下,查看是否包括了上面所提到的扩展模块
    [root@Zabbix-server ~]# /usr/local/php5/bin/php -m
    [PHP Modules]
    bcmath
    Core
    ctype
    curl
    date
    dom
    ereg
    fileinfo
    filter
    ftp
    gd
    gettext
    hash
    iconv
    json
    libxml
    mbstring
    mcrypt
    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

    [Zend Modules]

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

    在上面zabbix检索的时候可能出现的错误

    1)PHP option "max_execution_time"	120	300	failed
    # vim /data/php/lib/php.ini 
    max_execution_time = 300    //修改为300
    
    然后重启nginx(若是apache+php,就重启apache)
    
    2)PHP bcmath	off		failed
    解决办法:安装php的bcmath扩展
    # yum install *bcmath* --skip-broken
    # cd /data/software/php-5.6.30/ext/bcmath/
    # /data/php/bin/phize
    # ./configure --with-php-config=/data/php/bin/php-config
    # make && make install
    # vim /data/php/lib/php.ini     添加下面内容
    .....
    extension=/data/php/lib/php/extensions/no-debug-zts-20131226/bcmath.so
    
    然后重启php(若是apache+php,就重启apache)
    
    3)about always-populate-raw-post-data must be set -1 的问题:
       PHP option "always_populate_raw_post_data"	on	off	failed
    解决办法:
    # vim /data/vhosts/zabbix/include/classes/setup/CFrontendSetup.php      添加下面这一行
    .......
            public function checkPhpAlwaysPopulateRawPostData() {
                    $current = ini_get('always_populate_raw_post_data');
                    $current = -1;                                             //添加这一行内容
    
                    return [
                            'name' => _s('PHP option "%1$s"', 'always_populate_raw_post_data'),
                            'current' => ($current != -1) ? _('on') : _('off'),
                            'required' => _('off'),
                            'result' => ($current != -1) ? self::CHECK_FATAL : self::CHECK_OK,
                            'error' => _s('PHP option "%1$s" must be set to "%2$s"', 'always_populate_raw_post_data', -1)
                    ];

    如果登录zabbix后,出现下面报错

    解决方法
    [root@Zabbix-server ~]# vim /usr/local/php5/etc/php.ini
    cgi.fix_pathinfo=1
    [root@Zabbix-server ~]# /etc/init.d/php-fpm restart
    
    问题根源
    在zabbix php定位问题发现,zabbix是依据php文件名来设置权限,例如index.php、dashboard.php这些,如果cgi.fix_pathinfo设置为0,
    那么php无法获取到url请求的文件名称,例如访问index.php,获取不到index.php也定位到权限,于是出现这个错误。

    ===========php安装的扩展没有生效的原因及解决办法===========

    在安装zabbix时,lnmp环境部署后,发现有些依赖的php扩展没有安装,例如bcmath、gettext等。
    在后续安装这些扩展,配置好php.ini,并重启php-fpm服务后,发现新安装的php扩展并没有生效(即"php -m"命令后没有查找到)。
    这是因为php-fpm启动时,没指定php.ini,所以一直都没生效!
    
    [root@Zabbix-server etc]# /etc/init.d/php-fpm restart
    Gracefully shutting down php-fpm . done
    Starting php-fpm  done
    [root@Zabbix-server etc]# ps -ef|grep php-fpm
    root     19529     1  0 23:37 ?        00:00:00 php-fpm: master process (/data/php/etc/php-fpm.conf)
    www      19530 19529  0 23:37 ?        00:00:00 php-fpm: pool www
    www      19531 19529  0 23:37 ?        00:00:00 php-fpm: pool www
    root     19533 17173  0 23:37 pts/4    00:00:00 grep --color=auto php-fpm
    
    解决办法:
    1)指定php.ini文件来启动php-fpm服务
    [root@Zabbix-server etc]# /etc/init.d/php-fpm stop
    Gracefully shutting down php-fpm . done
    [root@Zabbix-server etc]# ps -ef|grep php-fpm
    root     19541 17173  0 23:38 pts/4    00:00:00 grep --color=auto php-fpm
    [root@Zabbix-server etc]# /data/php/sbin/php-fpm -y /data/php/etc/php-fpm.conf -c /data/php/etc/php.ini
    [root@Zabbix-server etc]# ps -ef|grep php-fpm
    root     19543     1  0 23:38 ?        00:00:00 php-fpm: master process (/data/php/etc/php-fpm.conf)
    www      19544 19543  0 23:38 ?        00:00:00 php-fpm: pool www
    www      19545 19543  0 23:38 ?        00:00:00 php-fpm: pool www
    root     19547 17173  0 23:39 pts/4    00:00:00 grep --color=auto php-fpm
    
    2)要是上面启动后,安装的php扩展还是没有生效!那就可能是php.ini文件没有放对路径(这里我是直接放在php的etc目录下的,可以尝试放到php的lib目录下)
    [root@Zabbix-server ~]# ll /data/php/etc/php.ini
    -rw-r--r-- 1 root root 73243 10月 13 23:32 /data/php/etc/php.ini
    [root@Zabbix-server ~]# cp /data/php/etc/php.ini /data/php/lib/
    [root@Zabbix-server ~]# ll /data/php/lib/php.ini 
    -rw-r--r-- 1 root root 73243 10月 13 23:35 /data/php/lib/php.ini
    
    然后再接着重启php-fpm服务即可!
    [root@Zabbix-server ~]# /etc/init.d/php-fpm restart
    Gracefully shutting down php-fpm . done
    Starting php-fpm  done
    [root@Zabbix-server ~]# ps -ef|grep php
    root     19564     1  0 23:43 ?        00:00:00 php-fpm: master process (/data/php/etc/php-fpm.conf)
    www      19565 19564  0 23:43 ?        00:00:00 php-fpm: pool www
    www      19566 19564  0 23:43 ?        00:00:00 php-fpm: pool www
    root     19568 17173  0 23:43 pts/4    00:00:00 grep --color=auto php
    [root@Zabbix-server ~]# 

    ===============zabbix登录密码忘记了,重置密码==============

    如果zabbix界面的admin登录密码忘记了,可以登录mysql里面进行修改
    [root@Zabbix-server ~]# mysql -p123456
    ........
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    | test               |
    | zabbix             |
    +--------------------+
    5 rows in set (0.00 sec)
    
    mysql> use zabbix;
    mysql> desc users;
    +----------------+---------------------+------+-----+---------+-------+
    | Field          | Type                | Null | Key | Default | Extra |
    +----------------+---------------------+------+-----+---------+-------+
    | userid         | bigint(20) unsigned | NO   | PRI | NULL    |       |
    | alias          | varchar(100)        | NO   | UNI |         |       |
    | name           | varchar(100)        | NO   |     |         |       |
    | surname        | varchar(100)        | NO   |     |         |       |
    | passwd         | char(32)            | NO   |     |         |       |
    | url            | varchar(255)        | NO   |     |         |       |
    | autologin      | int(11)             | NO   |     | 0       |       |
    | autologout     | int(11)             | NO   |     | 900     |       |
    | lang           | varchar(5)          | NO   |     | en_GB   |       |
    | refresh        | int(11)             | NO   |     | 30      |       |
    | type           | int(11)             | NO   |     | 1       |       |
    | theme          | varchar(128)        | NO   |     | default |       |
    | attempt_failed | int(11)             | NO   |     | 0       |       |
    | attempt_ip     | varchar(39)         | NO   |     |         |       |
    | attempt_clock  | int(11)             | NO   |     | 0       |       |
    | rows_per_page  | int(11)             | NO   |     | 50      |       |
    +----------------+---------------------+------+-----+---------+-------+
    16 rows in set (0.00 sec)
    
    mysql> select alias,passwd from users;
    +-------+----------------------------------+
    | alias | passwd                           |
    +-------+----------------------------------+
    | Admin | 5fce1b3e34b520afeffb37ce08c7cd66 |
    | guest | d41d8cd98f00b204e9800998ecf8427e |
    +-------+----------------------------------+
    2 rows in set (0.00 sec)
    
    mysql> 
    
    重新开个终端,生成一个MD5加密的密码,这里密码设置的是zabbix@123
    [root@Zabbix-server ~]# echo -n zabbix@123|openssl md5
    (stdin)= 535d82a366525c82b94ba4388ed16fad
    
    mysql> update users set passwd="535d82a366525c82b94ba4388ed16fad" where alias="Admin";
    Query OK, 1 row affected (0.03 sec)
    Rows matched: 1  Changed: 1  Warnings: 0
    
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> select alias,passwd from users;
    +-------+----------------------------------+
    | alias | passwd                           |
    +-------+----------------------------------+
    | Admin | 535d82a366525c82b94ba4388ed16fad |
    | guest | d41d8cd98f00b204e9800998ecf8427e |
    +-------+----------------------------------+
    2 rows in set (0.00 sec)
    
    mysql> 
    
    这样,就将zabbix的admin用户密码重置为"zabbix@123"了

    二、zabbix客户端的操作记录(192.168.1.7)

    安装Zabbix,配置Zabbix agent:
    [root@bastion-IDC ~]# cd /usr/local/src/
    [root@bastion-IDC src]# wget -c wget -c http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/3.0.3/zabbix-3.0.3.tar.gz/download
    [root@bastion-IDC src]# cd zabbix-3.0.3
    [root@bastion-IDC zabbix-3.0.3]# ./configure --prefix=/usr/local/zabbix --enable-agent
    [root@bastion-IDC zabbix-3.0.3]# make && make install

    [root@bastion-IDC zabbix-3.0.3]# cp misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/

    配置zabbix_agentd:
    [root@bastion-IDC ~]# groupadd zabbix
    [root@bastion-IDC ~]# useradd -g zabbix zabbix
    [root@bastion-IDC ~]# mkdir -p /usr/local/zabbix/logs
    [root@bastion-IDC ~]# chown zabbix:zabbix -R /usr/local/zabbix/
    [root@bastion-IDC ~]# vim /usr/local/zabbix/etc/zabbix_agentd.conf
    [root@bastion-IDC ~]# cat /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.1.30
    ListenPort=10050
    ServerActive=192.168.1.30
    Hostname=192.168.1.7                                                               [#在192.168.1.7本机的/etc/hosts里做主机映射:“ip  hostname”][也可以设置公网ip]
    Timeout=15
    Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
    ...

    配置Zabbix Agent启动脚本:
    [root@bastion-IDC ~]# cat /etc/init.d/zabbix_agentd
    ...
    prog="Zabbix Agent"
    ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"
    CONF_FILE="/usr/local/zabbix/etc/zabbix_agentd.conf"
    ...
    start() {
    ...
    daemon $ZABBIX_BIN -c $CONF_FILE
    ...
    }
    ...

    开启防火墙端口10050:
    [root@bastion-IDC ~]# cat /etc/sysconfig/iptables
    ...
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 10050 -j ACCEPT
    ...
    [root@bastion-IDC ~]# /etc/init.d/iptables restart

    启动zabbix_agentd:
    [root@bastion-IDC ~]# /etc/init.d/zabbix_agentd start
    Starting Zabbix Agent: [ OK ]

    配置开机自动启动:
    [root@bastion-IDC ~]# chkconfig --add zabbix_agentd
    [root@bastion-IDC ~]# chkconfig --level 35 zabbix_agentd on

    测试下zabbix agent是否正常工作:
    [root@bastion-IDC ~]# /usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf -t system.uptime
    system.uptime [u|68301]

    ==========================zabbix客户机一键安装和配置的脚本==============================

    [root@yum ~]# vim zabbix_agent_install.sh
    #!/bin/bash
    host=`hostname`
    /usr/sbin/useradd zabbix
    cd /usr/local/
    /usr/bin/wget http://192.168.10.55/software/zabbix_agent.tar.gz
    /bin/tar -zvxPf zabbix_agent.tar.gz
    /bin/rm -f zabbix_agent.tar.gz
     
    /bin/chown -R zabbix.zabbix zabbix/
    sed -i "s/Hostname=127.0.0.1/Hostname=`hostname`/g" /usr/local/zabbix/etc/zabbix_agentd.conf
     
    /bin/cp zabbix/zabbix_agentd /etc/rc.d/init.d/
    /bin/cp zabbix/zabbix_agentd /etc/init.d/
    /bin/chmod 755 /etc/rc.d/init.d/zabbix_agentd
    /bin/chmod 755 /etc/init.d/zabbix_agentd
    chattr -ai /etc/sudoers
    chmod 640 /etc/sudoers
    echo "zabbix  ALL=(ALL)      NOPASSWD: ALL" >> /etc/sudoers
    chmod 440 /etc/sudoers
    chattr +ai /etc/sudoers
    #/etc/init.d/zabbix_agentd start /usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf echo "/usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf" >> /etc/rc.local ========================================================================================= 赋予脚本执行权限,并执行脚本进行安装和配置 [root@yum ~]# chmod 755 zabbix_agent_install.sh [root@yum ~]# sh -x zabbix_agent_install.sh 检查zabbix_agent的安装情况 [root@yum ~]# ll -d /usr/local/zabbix drwxr-xr-x 9 zabbix zabbix 4096 12月 25 13:06 /usr/local/zabbix [root@yum ~]# lsof -i:10050 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME zabbix_ag 119763 zabbix 4u IPv4 677580 0t0 TCP *:zabbix-agent (LISTEN) zabbix_ag 119764 zabbix 4u IPv4 677580 0t0 TCP *:zabbix-agent (LISTEN) zabbix_ag 119765 zabbix 4u IPv4 677580 0t0 TCP *:zabbix-agent (LISTEN) zabbix_ag 119766 zabbix 4u IPv4 677580 0t0 TCP *:zabbix-agent (LISTEN) zabbix_ag 119767 zabbix 4u IPv4 677580 0t0 TCP *:zabbix-agent (LISTEN) zabbix_ag 119768 zabbix 4u IPv4 677580 0t0 TCP *:zabbix-agent (LISTEN) [root@yum ~]# ps -ef|grep zabbix_agent zabbix 119763 1 0 2017 ? 00:00:00 /usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf zabbix 119764 119763 0 2017 ? 00:17:05 /usr/local/zabbix/sbin/zabbix_agentd: collector [idle 1 sec] zabbix 119765 119763 0 2017 ? 00:01:47 /usr/local/zabbix/sbin/zabbix_agentd: listener #1 [waiting for connection] zabbix 119766 119763 0 2017 ? 00:01:46 /usr/local/zabbix/sbin/zabbix_agentd: listener #2 [waiting for connection] zabbix 119767 119763 0 2017 ? 00:01:47 /usr/local/zabbix/sbin/zabbix_agentd: listener #3 [waiting for connection] zabbix 119768 119763 0 2017 ? 00:00:13 /usr/local/zabbix/sbin/zabbix_agentd: active checks #1 [idle 1 sec] root 159646 159567 0 16:50 pts/0 00:00:00 grep zabbix_agent ========================================================================================= 上面脚本中的需要注意的: 0)zabbix server端的zabbix_agentd.conf文件里Server和ServerActive都配置成zabbix server端ip地址,主动和被动模式都采用。 1)在zabbix的server端将编译安装并配置好的目录(比如/usr/local/zabbix,里面包括zabbix_agent的配置)进行打包,打包后的命令为zabbix_agent.tar.gz (或者可以将server端zabbix编译安装和配置的目录只保留agent的部分进行打包),打包后存放地址为:http://10.0.8.40:8001/zabbix_agent.tar.gz 2)将zabbix_agentd.conf文件中的Hostname部分配置成agent客户机的主机名。由于我在线上部署了内网DNS域名环境,所有机器的DNS域名地址都修改为内网 dns的地址,所以这里将Hostname直接修改为内网DNS解析后的主机域名就可以了。但是要千万注意:zabbix的web界面的"配置"->"主机"的主机名一定也要 写成一致的主机名(两者配置一定要一致,要么都是ip,要么都是主机名)

    -----------------------------------------------------------------------------------------------------------------------------

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

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

    配置过一段时间后,观察下监控图效果出来了没:

    ------------------------------------------------------------------------
    在zabbix界面中,默认要查看多个主机的监控数据时需要不停的切换。其实可以在一个页面中批量查看多个主机的监控项的数据,这就需要使用Screen方法(Screen 的方法是将每个item的graph放到一个屏幕上,即在聚合图形里选择要放在一个screen里的图形,事先创建一个拓扑图。注意选择磁盘空间监控项的图形时,图形样式调整“层积“显示),但是看起来不够明晰;最好是将各机器的同一item放到同一个graph里。比如一个Nginx的组里有10台机器,将这10台机器的内存使用率放到一个graph里,方便在测试时查看。
    在zabbix的前端要创建此类的graph只能通过手工一个一个的加,不能创建此类的templates。在网上有批量创建Screen的针对API的python脚本。

    -------------------------------------------------------------------------------------------------------------------------
    zabbix监控获取数据的途径有简单检查,zabbix agent,snmp。可以通过zabbix agent获取客户机的cpu、内存、磁盘io等监控数据;但是对于交互机(打印机,路由器等网络设备)的监控就要用到snmp协议,snmp通过特定的oid值来获取对应的数据。交换机需要开启snmp协议,通过snmpwalk 可以抓取到数据就可以了(snmpwalk -v 2c -c public *.*.*.*)

    ------------------------------------------------------------------------------------------------------------------------
    使用zabbix的ICMP Ping模版实现对客户端网络状态的监控
    如上正确安装及配置fping,然后在服务端进行zabbix用户测试fping命令
    [root@Zabbix-server ~]# /usr/local/sbin/fping www.baidu.com
    www.baidu.com is alive //说明命令返回成功。

    接着在zabbix监控界面里添加主机设置,并选择添加模版template icmp ping。然后点开这个模块,可以选择想要的监控项的图形,效果如下:

    -----------------------------------------Zabbix监控项CPU Load数值与服务器上uptime的实际值不符合--------------------------------------
    现象说明:
    zabbix监控项cpu load的数值跟被监控机本地uptime显示的负载值对不上,前者数值小于后者。

    产生原因:
    现在服务器的cpu基本都是多核的,但zabbix监控项cpu load参数里默认显示的是一个核心的参数,
    而不是总和,所以两者数值对不上。

    解决办法:
    "配置"->"模板"->"Template OS Linux"->"监控项"->"Processor load (1 min average per core)"
    点开,将system.cpu.load[percpu,avg1]改为system.cpu.load[all,avg1],即将percpu改为all。
    其余5 min和15 min的load监控项的改法一样!保存等几分钟即可显示。

    -----------------------------------添加网络监控项的触发器(报警设置)--------------------------------
    注意:
    网络监控的默认单位是bps,监控报警一般看的是Mbps,需要转为为bps。比如超过8M报警,那触发器的值即为8*1024*1024=8388608

  • 相关阅读:
    Azure PowerShell (7) 使用CSV文件批量设置Virtual Machine Endpoint
    Windows Azure Cloud Service (39) 如何将现有Web应用迁移到Azure PaaS平台
    Azure China (7) 使用WebMetrix将Web Site发布至Azure China
    Microsoft Azure News(4) Azure新D系列虚拟机上线
    Windows Azure Cloud Service (38) 微软IaaS与PaaS比较
    Windows Azure Cloud Service (37) 浅谈Cloud Service
    Azure PowerShell (6) 设置单个Virtual Machine Endpoint
    Azure PowerShell (5) 使用Azure PowerShell创建简单的Azure虚拟机和Linux虚拟机
    功能代码(1)---通过Jquery来处理复选框
    案例1.用Ajax实现用户名的校验
  • 原文地址:https://www.cnblogs.com/kevingrace/p/5762147.html
Copyright © 2011-2022 走看看