首页 > 代码库 > 初探分布式监控利器zabbix

初探分布式监控利器zabbix

Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决方案。
    被监控端:主机通过安装agent方式采集数据,网络设备通过SNMP方式采集数据
    Server端:通过收集SNMP和agent发送的数据,写入数据库(MySQL, ORACLE)再通过php+apache在web前端展示。

zabbix运行条件:
    Server:Zabbix Server需运行在LAMP(Linux+Apache+Mysql+PHP)环境下(或者LNMP),对硬件要求低
    Agent:目前已有的agent基本支持市面常见的OS,包含Linux、HPUX 、Solaris 、Sun 、windows
    SNMP:支持各类常见的网络设备

安装部署:

    1.服务器端安装lamp环境
        yum install gcc gcc-c++ autoconf httpd php mysql mysql-server mysql-devel php-mysql httpd-manual mod_ssl mod_perl mod_auth_mysql php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-bcmath mysql-connector-odbc net-snmp-devel curl-devel -y   

    2.服务器配置lamp使用环境,安装zabbix
        vim /etc/php.int (这块必须修改,不然后面安装会提示环境不符)
                date.timezone = Asia/Shanghai
                max_execution_time = 300
                post_max_size = 32M
                max_input_time = 300
                memory_limit = 128M
                mbstring.func_overload = 2    安装zabbix服务器端
        useradd zabbix    
        tar zxf zabbix-2.2.5.tar.gz
        cd zabbix-2.2.5
        ./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --with-mysql --with-net-snmp --with-libcurl
        make && make install   

   3.查看zabbix端口是否存在

        vi /etc/service  
                zabbix-agent    10050/tcp               # Zabbix Agent
                zabbix-agent    10050/udp               # Zabbix Agent
                zabbix-trapper  10051/tcp               # Zabbix Trapper        
                zabbix-trapper  10051/udp               # Zabbix Trapper   

   4.导入zabbix数据库
        /etc/init.d/mysqld start
        mysql_secure_installation 创建root登录密码wesots
        mysql -pwestos    
                mysql> create database zabbix;
                mysql> grant all on zabbix.* to zabbix@‘localhost‘ indentified by "westos"
                mysql>quit

        用授权的帐号密码登录看是否成功
        mysql -uzabbix -pwestos
        cd zabbix-2.2.5/database/mysql
        mysql -uzabbix -pwestos zabbix < schema.sql 
        mysql -uzabbix -pwestos zabbix < images.sql 
        mysql -uzabbix -pwestos zabbix < data.sql 
        用授权帐号的登录查看数据库导入是否成功
        mkdir /var/log/zabbix    
        chown zabbix.zabbix /var/log/zabbix
        ln -s /usr/local/zabbix/etc /etc/zabbix
        ln -s /usr/local/zabbix/bin/* /usr/bin/
        ln -s /usr/local/zabbix/sbin/* /usr/sbin/   
        cp /root/zabbix-2.2.5/misc/init.d/fedora/core/* /etc/init.d/    #拷贝service启动脚本                 vim /etc/init.d/zabbix_server
             BASEDIR=/usr/local/zabbix
        vim /etc/init.d/zabbix_agentd
             BASEDIR=/usr/local/zabbix    配置zabbix服务端文件
        cd /etc/zabbix
        vim zabbix_server.conf
            LogFile=/var/log/zabbix/zabbix_server.log
            DBName=zabbix
            DBUser=zabbix
            DBPassword=westos    配置zabbix客户端文件(用来监控server本身)
        cd /etc/zabbix
        vim zabbix_agentd.conf
             LogFile=/var/log/zabbix/zabbix_agentd.log
             Server=127.0.0.1 #允许哪些ip访问本机的key
             ServerActive=127.0.0.1:10051 #被动监控,服务端的ip
            Include=/etc/zabbix/zabbix_agentd.conf.d/
            Hostname=yourhostname
            UnsafeUserParameter=1 #创建自己的key时,如果UserParameter包含\ ‘ " ` ? * [] {} ~ ! & ; () <> | # @这些字符,则需要开启这个参数
    5.拷贝web网页到apache目录,启动服务
        cp -r zabbix-2.2.5/frontends/php /var/www/html/zabbix
        chown -R apache.apache /var/www/html/zabbix
        /etc/init.d/zabbix_server start
        /etc/init.d/zabbix_agentd start  

        在web页面中配置zabbix 访问http://serverip/zabbix,按照提示进行安装
         可能出现的为题:
               第六步,6.Install时,提示文件zabbix.conf.php无法创建,则是apache目录无法写入,/var/www/html/zabbix的文件权限不为apache.apache 初次登录的帐号为:admin,密码:zabbix  

    6.客户端安装zabbix_agentd
        useradd zabbix
        tar zxf zabbix-2.2.5.tar.gz
        cd zabbix-2.2.5
        ./configure --prefix=/usr/local/zabbix --enable-agent
        make && make install
        mkdir /var/log/zabbix
        chown zabbix.zabbix /var/log/zabbix
        cp zabbix-2.2.5/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
        vim /etc/init.d/zabbix_agentd
                BASEDIR=/usr/local/zabbix
        ln -s /usr/local/zabbix/etc /etc/zabbix
        ln -s /usr/local/zabbix/bin/* /usr/bin/
        ln -s /usr/local/zabbix/sbin/* /usr/sbin/
        vim /etc/zabbix/zabbix_agentd.conf
                LogFile=/var/log/zabbix/zabbix_agentd.log
                Server=127.0.0.1,10.67.15.208
                ServerActive=10.67.15.208:10051
                Include=/etc/zabbix/zabbix_agentd.conf.d/
                Hostname=yourhostname
                UnsafeUserParameter=1
        /etc/init.d/zabbix_agentd start

现在就可以在web上配置对客户端信息进行监控