zabbix

+++++++++++++++++++++++++++++++

zabbix简介

  zabbix是一个高度集成的监控解决方案

  可实现企业级的开源分布式监控

  zabbix通过c/s模式采集监控数据

  zabbix通过b/s模式实现web管理

zabbix监控拓扑

  

监控服务器

  监控服务器可以通过snmpagent采集数据

  数据可以写入mysqloracle等数据库中

  服务器使用lamp实现web前端的管理

被监控主机

  被监控主机需要安装agent

  常见的网络设备一般支持snmp

zabbix功能

  具备常见的商业监控软件所具备的功能

  主机性能监控、网络设备监控、数据库监控等

  多种报警机制

  支持自动发现网络设备和服务器

  可以通过配置自动发现服务器规则来实现

  支持分布式,能集中展示、管理分布式的监控点

  编写插件容易,可以自定义监控项

  具有实时绘图功能

一、部署监控服务器运行环境 (LAMP平台)

  1.1运行环境

    #yum  -y   install  httpd   php   mariadb-server   mariadb   php-mysql  mariadb-devel

    #systemctl  start mariadb ;systemctl  enable mariadb

    # service httpd start;chkconfig httpd on   

    #初始化mariadb密码

    #mysql

    MariaDB [(none)]>use mysql;

    MariaDB [(none)]>update user set password=password("itnihao") where user='root';

    MariaDB [(none)]>flush privileges;

  1.2测试运行环境(测php能否连上mysql

    vim /var/www/html/linkdb.php

    <?php

    $a=mysql_connect("localhost","root","itnihao");

    if($a){echo "ok";}else{echo  "err";}

    ?>

    # elinks  -dump http://localhost/linkdb.php

、安装提供zabbix监控服务

  2.1装包

    #rpm  -q  gcc   gcc-c++  make

    #tar -zxvf zabbix-3.2.3.tar.gz

    #cd zabbix-3.2.3/

    #./configure --prefix=/usr/local/zabbix --enable-server --enable-agent    --with-mysql

    # make && make  install

    #useradd  zabbix

    # ls /usr/local/zabbix/

    bin   可执行命令            etc   配置文件          lib    库文件

    sbin   服务程序文件       share 帮助文件

  2.2创建存储配置信息的表

    MariaDB [(none)]> create  database zabbixdb;

    MariaDB [(none)]> grant all on  zabbixdb.* to yaya@'localhost' identified by '123456';

    #cd zabbix-3.2.3/database/mysql

    # mysql -uyaya -p123456  zabbixdb  < ./schema.sql

    # mysql -uyaya -p123456  zabbixdb < ./images.sql

    #mysql -uyaya -p123456  zabbixdb < ./data.sql

    #mysql -uyaya -p123456  zabbixdb  -e   'show  tables;'

、访问web页面做初始化配置

  3.1拷贝网页文件

    #cd zabbix-3.2.3/frontends/

    #cp -r  php/    /var/www/html/zabbix

    #chmod -R 777  /var/www/html/zabbix

    # firefox  http://192.168.4.5/zabbix

  3.2安装依赖的软件包并修改配置参数

    vim /etc/php.ini

    394 max_input_time = 300

    384 max_execution_time = 300

    672 post_max_size = 16M

    878 date.timezone = Asia/Shanghai

    # service httpd restart

    #rpm -ivh  --nodeps (忽略依赖关系)  php-bcmath-5.4.45-13.el7.remi.x86_64.rpm  php-mbstring-5.4.45-13.el7.remi.x86_64.rpm

    # yum -y  install  php-gd php-xml

    # service httpd restart

    # firefox  http://192.168.4.5/zabbix

  存放初始化配置信息文件

    /var/www/html/zabbix/conf/zabbix.conf.php

  管理员 admin

  密码    zabbix

3.4 启动监控服务zabbix_server

   修改主配置文件(根据初始化设置使用的库)

    # vim   /usr/local/zabbix/etc/zabbix_server.conf

    87 DBName=zabbixdb

    103 DBUser=yaya

    111 DBPassword=123456

  启动服务zabbix_server 

    #cp /root/zabbix-3.2.3/misc/init.d/fedora/core/zabbix_server    /etc/init.d/

    #chmod  +x  /etc/init.d/zabbix_server

    # sed -i "22s;/usr/local;&/zabbix;"  /etc/init.d/zabbix_server    //修改启动脚本加载目录    22  BASEDIR=/usr/local/zabbix

    # /etc/init.d/zabbix_server start

    # netstat -utnalp  | grep :10051

 、配置zabbix服务

  4.1 监控本机

    a 运行zabbix_agentd 服务

      修改主配置文件(根据初始化设置使用的库)

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

      91   Server=127.0.0.1           //指定允许访问的地址

      132 ServerActive=127.0.0.1:10051      //指定监控服务器和端口号

    启动服务zabbix_server

      #cp /root/zabbix-3.2.3/misc/init.d/fedora/core/zabbix_agentd    /etc/init.d/

      #chmod +x  /etc/init.d/zabbix_agentd

      # sed -i "22s;/usr/local;&/zabbix;"  /etc/init.d/zabbix_agentd    //修改启动脚本加载目录  22  BASEDIR=/usr/local/zabbix

      #/etc/init.d/zabbix_agentd  start

      #netstat  -utnalp  | grep :10050

  登录管理页面,启用监控本机(配置--主机 状态-启用  zbx变绿--监控上)

  查看监控信息(监测中--最新数据)

  给已监控主机设置使用的新模版(配置--模版)

##########################################

4.2 监控远端主机(192.168.4.10)

  a 配置被监控端 192.168.4.10

    1运行zabbix_agnentd服务

    #rpm -q gcc gcc-c++

    #tar -zxvf zabbix-3.2.3.tar.gz

    #cd zabbix-3.2.3/

    #./configure --prefix=/usr/local/zabbix --enable-agent

    #make &&  make install

    #useradd zabbix

    # ls /usr/local/zabbix/

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

    91 Server=127.0.0.1, 192.168.4.5

    132 ServerActive=192.168.4.5:10051

    #cp misc/init.d/fedora/core/zabbix_agentd  /etc/init.d/

    #chmod +x /etc/init.d/zabbix_agentd

    #sed -i '22s;/usr/local;&/zabbix;' /etc/init.d/zabbix_agentd

    #sed -n '22p' /etc/init.d/zabbix_agentd

    #/etc/init.d/zabbix_agentd start

    #netstat -utnalp  | grep :10050

  b配置监控服务器192.168.4.5  (配置--主机--创建主机)

    1 添加新监控的主机并选择监控模版(配置--模版Template OS Linux包含 Template App Zabbix Agent 包含 http监控

    2 查看监控信息(监测中--最新信息)

##########################################

4.3自定义监控模版

  监控远端主机10 系统用户数量

  监控远端主机10 能登录系统的用户数量

  监控远端主机10 不能登录系统的用户数量

  a 配置被监控端192.168.4.10

    系统总用户数量  不能够登录系统的用户数量 能登录系统的用户数量

    #awk -F ":" '$7!="/bin/bash"{i++}END{print i}'  /etc/passwd

    # grep -v   "/bin/bash" /etc/passwd | wc -l

    #wc -l /etc/passwd | awk  '{print $1}'

    #awk -F ":" '$7=="/bin/bash"{j++}END{print j}'  /etc/passwd

    # grep "/bin/bash" /etc/passwd | wc -l

  1 被监控端启用自定义监控命令

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

    262 Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/    //自定义监控文件路径

    278 UnsafeUserParameters=1 //1启用自定义命令

    #格式:UserParameter=<key>,<shell command>

  定义监控命令给zabbix服务使用(或脚本)

    # cd  /usr/local/zabbix/etc/zabbix_agentd.conf.d/

    # vim  mycomm.conf

    UserParameter=get_sum_users,wc -l /etc/passwd | awk  '{print $1}'

    UserParameter=get_login_users,awk -F ":" '$7=="/bin/bash"{j++}END{print j}' /etc/passwd

    UserParameter=get_notlogin_users,awk -F ":" '$7!="/bin/bash"{i++}END{print i}'  /etc/passwd

  2 重启zabbix_agentd服务

    # /etc/init.d/zabbix_agentd stop

    #/etc/init.d/zabbix_agentd start

    # netstat -antpu | grep 10050

  3 测试自定义监控命令

    #/usr/local/zabbix/bin/zabbix_get -s 127.0.0.1 -p 10050 -k  get_sum_users

    #useradd  yaya9

    #/usr/local/zabbix/bin/zabbix_get -s 127.0.0.1 -p 10050 -k  get_sum_users

  b 配置监控服务器192.168.4.5

    1测试能否在命令行下使用被监控端自定义的监控命令

      #/usr/local/zabbix/bin/zabbix_get  -s 192.168.4.10 -p 10050 -k get_sum_users

      #/usr/local/zabbix/bin/zabbix_get  -s 192.168.4.10 -p 10050 -k get_login_users

      #/usr/local/zabbix/bin/zabbix_get -s 192.168.4.10 -p 10050  -k get_notlogin_users

    2 登录监控服务管理页面做如下配置

      1 创建新模版  atmp10  (模版名按英文字母排序)

      2 创建应用集  yyjone  (监控项在应用集里)

      3 创建监控项并指定使用的命令   sumusers  nologinusers  loginusers  键值填命令

      4 监控10主机是调用新创建的模版

      5 查看监控信息

  c 创建监控项时调用zabbix内置命令

      # netstat -antpu | grep :80

      #  echo 2344 > /var/www/html/index.html

      #  curl http://192.168.4.10

      #   grep -n 80 /etc/httpd/conf/httpd.conf

      #   sed -i '42s/80/8090/'  /etc/httpd/conf/httpd.conf

      #   grep -n 80 /etc/httpd/conf/httpd.conf

      #   systemctl restart httpd

      #   netstat -antpu | grep :8090

      mon_10_httpd  -> 键值net.tcp.service[http,192.168.4.10,8090]

++++++++++++++++++++++++++++++++++

posted @ 2018-07-27 19:00  wwchihiro  阅读(248)  评论(0编辑  收藏  举报