设为首页 收藏本站
查看: 1587|回复: 0

[经验分享] zabbix2.2安装配置使用centos6.5_x86_64

[复制链接]

尚未签到

发表于 2015-9-9 13:09:08 | 显示全部楼层 |阅读模式
  ...
  
  
  http://www.zabbix.com/download.php
  #############################################################################
  https://www.zabbix.com/wiki/howto/install/centos/centosinstall

Zabbix on RHEL/CentOS 4, 5 and 6 using packages


  Must be in two steps. First you have to configure the EPEL repository fromhttp://fedoraproject.org/wiki/EPEL/FAQ#howtouse.
  And then you can install Zabbix as on Fedora with

# yum install zabbix zabbix-agent zabbix-web
  where




  • zabbix is Zabbix server


  • zabbix-agent is Zabbix Agent


  • zabbix-web is Zabbix Web interface


  • zabbix-proxy (optional) is Zabbix Proxy
  The agent and server config file are then located in /etc/zabbix directory.
  Note: it currently installs version 1.8.10 (December 2011) on RHEL/CentOS 6. See here for updates.
  

Zabbix Installation


  We will be installing following components:




  • Zabbix Server (for gathering data)


  • Zabbix Agent (for monitoring)


  • Net-SNMP (for SNMP Support)


  • Jabber (for notifications)


  • OpenIPMI (for monitoring)


  • cURL (for web monitoring)
  

Dependencies


  First install all the dependencies with yum using the command

# yum install zlib-devel mysql-devel glibc-devel curl-devel gcc automake mysql libidn-devel openssl-devel net-snmp-devel rpm-devel OpenIPMI-devel

Compile and Install Source


  Now that we have our dependencies set up we need to download the actual source, this can also be done with the wget command.

# wget http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/1.8.1/zabbix-1.8.1.tar.gz?use_mirror=freefr
  After it has downloaded the file we can unzip and untar with following command.

# gunzip zabbix-1.8.1.tar.gz && tar -xvf zabbix-1.8.1.tar
  This should have created a folder called zabbix-1.8.1 in your home directory. Next we need to browse to the directory and configure our setup.

# cd zabbix-1.8.1
# ./configure --enable-server --with-mysql --with-net-snmp --with-jabber --with-libcurl --with-openipmi --enable-agent
  ===============
  http://jicki.blog.iyunv.com/1323993/1358689
  A. 服务端安装配置
  
  1.下载zabbix 2.x 最新版本
  http://www.zabbix.com/download.php
  
  2.安装配置所需要软件(zabbix需要一个lamp环境) 使用 yum 安装既可
  yum -y install httpd php php-devel php-gd php-bcmath php-mbstring mysql mysql-devel mysql-serverphp-xml php-mysql gd net-snmp net-snmp-devel net-snmp-utils curl-devel
  
  chkconfig httpd on
  chkconfig mysqld on
  chkconfig snmpd on
  
  3.创建用户zabbix
  
  useradd zabbix
  
  4. 安装zabbix
  
  tar zxvf zabbix-2.2.2.tar.gz
  
  cd zabbix-2.2.2
  
  ./configure --prefix=/opt/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl
  
  make install
  
  创建mysql数据库
  mysql -uroot -p123456
  
  create database zabbix character set utf8;
  
  use zabbix
  
  source schema.sql
  
  source images.sql
  
  source data.sql
  
  配置zabbix连接数据库选项
  
  vi /opt/local/zabbix/etc/zabbix_server.conf
  
  DBHost=localhost
  DBUser=zabbix
  DBPassword=123456
  DBSocket=/var/lib/mysql/mysql.sock
  DBPort=3306
  
  启动zabbix
  
  /opt/local/zabbix/sbin/zabbix_server
  
  
  配置zabbix web管理接口
  
  mkdir /opt/htdocs/zabbix
  
  cp -a /opt/software/zabbix-2.2.2/frontends/php/* /opt/htdocs/zabbix/
  
  chown -R apache:apache /opt/htdocs/zabbix/
  
  httpd 配置一个虚拟主机
  
  
  访问 http://localhost/setup.php  进行安装
  
  然后下一步 会对 php 的参数有要求~安装要求进行修改 php.ini
  
  然后下一步 按照要求配置参数
  
  完全以后!!
  
  通过web登录,默认用户:admin 密码:zabbix
  
  如需要显示中文可通过:右上角“Profile”--"Language" 选择“chinese(zh_CN)”之后保存
  
  
  
  B. 客户端安装配置
  1.下载zabbix 2.x 最新版本客户端 agents
  http://www.zabbix.com/download.php
  http://www.zabbix.com/downloads/2.2.1/zabbix_agents_2.2.1.linux2_6.i386.tar.gz
  
  useradd zabbix
  
  mkdir /opt/local/zabbix
  
  tar zxvf zabbix_agents_2.0.0.linux2_6.i386.tar.gz -C /opt/local/zabbix/
  
  cd /opt/local/zabbix/conf
  
  修改下面的配置文件
  
  vi zabbix_agentd.conf
  
  Server= xxx.xxx.xxx.xxx  
  
  修改为服务端的IP
  
  然后启动 agent 服务
  
  /opt/local/zabbix/sbin/zabbix_agentd -c /opt/local/zabbix/conf/zabbix_agentd.conf
  
  
  (  在64系统里执行32位程序如果出现/lib/ld-linux.so.2:
  bad ELF interpreter: No such file or directory,安装下glic即可
  
  yum install glibc.i686  )
  
  netstat -nlp | grep zabbix_agentd
  tcp        0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      11174/zabbix_agentd
  
  
  
  
  --------------------------------------------------------------------------------------
  zabbix   之邮件报警
  
  安装msmtp
  
  首先需要下载msmtp这个组件,可以从这里下载(http://msmtp.sourceforge.net/)
  
  http://sourceforge.net/projects/msmtp/files/msmtp/
  
  tar jxvf msmtp-1.4.31.tar.bz2
  
  cd msmtp-1.4.31
  
  ./configure && make && make install
  
  
  cd /opt/local/zabbix
  
  vi .msmtprc
  
  ------------------------------------------------------
  account zabbix                      #调用时的用户
  host smtp.qq.com                   #邮件服务器
  port 25
  from jicki@qq.com
  auth login                          #验证方式
  tls off                             #不使用tls
  user jicki@qq.com
  password xxxxxxx
  logfile /var/log/zext_msmtp.log     #记录日志
  ------------------------------------------------------
  
  touch /var/log/zext_msmtp.log
  chown zabbix:zabbix /var/log/zext_msmtp.log
  chmod 0600 /opt/local/zabbix/.msmtprc
  chown zabbix:zabbix /opt/local/zabbix/.msmtprc
  
  
  
  配置好msmtprc 以后.. 配置 邮件发送脚本
  
  vi /usr/bin/zext_msmtp.sh
  
  ----------------------------------------------------------------------------------------------
  
  #! /bin/sh
  DEBUG=1
  if [ $DEBUG -gt 0 ]
  then
  exec 2>>/var/log/zext_msmtp.log
  set -x
  fi
  FROM='jicki@qq.com'
  MSMTP_ACCOUNT='zabbix'
  # Parameters (as passed by Zabbix):
  #  $1 : Recipient
  #  $2 : Subject
  #  $3 : Message
  recipient=$1
  subject=$2
  message=$3
  date=`date --rfc-2822`
  sed 's/$/\r/' <<EOF | /usr/local/bin/msmtp --account $MSMTP_ACCOUNT $recipient
  From: <$FROM>
  To: <$recipient>
  Subject: $subject
  Date: $date
  $message
  EOF
  
  ---------------------------------------------------------------------------------------------
  
  chmod 755 /usr/bin/zext_msmtp.sh
  chown zabbix:zabbix /usr/bin/zext_msmtp.sh
  
  
  (注: 出现 msmtp: account zabbix not found: no configuration file available 的错误)
  使用 msmtp -P  查看 配置文件的位置
  [iyunv@localhost log]# msmtp -P
  ignoring system configuration file /usr/local/etc/msmtprc: No such file or directory
  ignoring user configuration file /root/.msmtprc: No such file or directory
  falling back to default account
  msmtp: account default not found: no configuration file available
  
  将配置文件放在其中一个地方  然后授权 zabbix 下用户的权限 否则问题依旧
  
  chown zabbix:zabbix /usr/local/etc/msmtprc
  
  
  
  
  完成以后!!就在 Web -- > 管理 -- > 示警媒介类型 -- > 创建媒体类型
  
  名称   zext_msmtp
  类型   脚本
  脚本名称 zext_msmtp.sh
  
  
  然后在右上角  基本资料 -- > 示警媒介 -- > 添加
  
  类型 zext_msmtp
  收件人  jicki@qq.com
  当作用中时  默认
  用此如果示警度  全选
  状态  已启用
  
  可以添加多个
  
  ---------------------------------------------------------------------------------------
  
  
  
  zabbix   之手机短信报警
  
  首先 拿到公司的短信接口  嘿嘿!!!
  
  我们公司的短信接口是PHP的~所有就让PHP开发部给一个短信接口
  
  http://xxxx.com/xxx/send.php
  
  然后用一个 python 的脚本
  
  脚本内容
  
  ----------------------------------------------------------------------------------------
  
  #!/usr/bin/env python
  #fileencoding:utf-8
  URL = 'http://xxxx.com/xxx/send.php'
  import sys
  import urllib
  import urllib2
  import time
  def sendsms(mobile,content):
  content = '[%s] %s' % (time.strftime('%Y%m%d %H:%M:%S'),content)
  data = {'mobile':mobile,'content':content}
  body = urllib.urlencode(data)
  request = urllib2.Request(URL,body)
  urldata = urllib2.urlopen(request)
  #print urldata.read()
  if __name__ == '__main__':
  sendsms(sys.argv[1],sys.argv[2])
  
  ----------------------------------------------------------------------------------------
  
  保存为 send.py  并授权 /opt/local/zabbix/share/zabbix/alertscripts/send.py
  
  chmod +x /opt/local/zabbix/share/zabbix/alertscripts/send.py
  
  
  
  完成以后!!就在 Web -- > 管理 -- > 示警媒介类型 -- > 创建媒体类型
  
  名称   SMS
  类型   脚本
  脚本名称 send.py
  
  
  然后在右上角  基本资料 -- > 示警媒介 -- > 添加
  
  类型 SMS
  收件人  18888888888
  当作用中时  默认
  用此如果示警度  选择比较紧急的
  状态  已启用
  
  可以添加多个
  
  
  -------------------------------------------------------------------------------------
  
  
  
  zabbix的监控Mongodb
  
  在安装有Mongodb的机器上配置如下:
  
  vi zabbix_agentd.conf
  
  UserParameter=MongoDB.Status
  • ,/bin/echo "db.serverStatus().$1" | /opt/local/mongodb/bin/mongo admin | grep "$2"| awk -F: '{print $$2}'|awk -F, '{print $$1}'
      
      注: 注意Mongodb 安装路径
      
      保存修改以后~重启 zabbix_agentd 服务
      
      --------------------------------------------------------------------------------------
      Web 上配置 Mongodb 监控模板    模板在附件     组态 --> 模板 ---> 汇入  
      
      然后查看模板   编辑  项目   将模式 改成 Agent代理  模式    默认为 主动模式
      ============================
      http://www.yunvn.com/thread-19749-1-1.html
       zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix由2部分构成,zabbixserver与可选组件zabbix agent。
            一、Zabbix简介
            1.1Zabbix简介
              Zabbix是一个企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利。官方网站:http://www.zabbix.com官方文档:http://www.zabbix.com/documentation/2.0/manual/quickstart。Zabbix通过C/S模式采集数据,通过B/S模式在web端展示和配置。
            Zabbix运行条件:
              Server:Zabbix Server需运行在LAMP(Linux+Apache+Mysql+PHP)环境下,对硬件要求低。
              Agent:目前已有的agent基本支持市面常见的OS,包含Linux、HPUX、Solaris、Sun、windows。
              SNMP:支持各类常见的网络设备
            1.2Zabbix功能
              具备常见的商业监控软件所具备的功能(主机的性能监控、网络设备性能监控、数据库性能监控、FTP等通用协议监控、多种告警方式、详细的报表图表绘制)支持自动发现网络设备和服务器;支持分布式,能集中展示、管理分布式的监控点;扩展性强,server提供通用接口,可以自己开发完善各类监控。
            1.3 优劣势
              优点:开源,无软件成本投入;Server对设备性能要求低(实际测试环境:虚拟机CentOS5,2GCPU 1G内存,监控5台设备,CPU使用率基本保持在10%以下,内存剩余400M以上);支持设备多;支持分布式集中管理;开放式接口,扩展性强。
              缺点:中文资料较少。
             
            二、zabbix安装
            CentOS5.8 上安装 Zabbix 2.2
            环境:
            CentOS5.8 64 Bit    Zabbix 2.2
            Zabbixserver ip: 10.0.215.126
            使用yum安装软件,首先安装 yum-fastestmirror 插件,用来找到最快的源。
            yuminstall yum-fastestmirror -y
            3.安装 Apache、PHP、MySQL
            软件清单

                                                                           软件                                 
                           
                                                                            版本                                
                           
                                                                           Apache                                 
                           
                                                                            httpd-2.2.3                                 
                           
                                                                           Mysql                                 
                           
                                                                            mysql-5.0.95                                 
                           
                                                                           Php                                 
                           
                                                                            PHP  -5.3.27                                 
                           
                                                                           Zabbix                                 
                           
                                                                            Zabbix  -2.20                                 
                           
      
             
            1、安装组件
            yuminstall make mysql-server httpd php mysql-devel gcc net-snmp-devel curl-develperl-DBI php-gd php-mysql php-bcmath php-mbstring php-xml -y
            useraddzabbix
            2、启动mysql
    service mysqld start
    mysqladmin –u root password root 设定mysql数据库管理员的账号密码
    mysql –u root –p
            输入密码root
    3、创建zabbix数据库
    Mysql> create database zabbix character set utf8;
    Mysql> grant all on zabbix.* TO zabbix@'localhost' identified by'zabbixpass'; 授权本机通过账号zabbix密码zabbixpass访问数据库的所有权限
    Mysql> flush privileges;
    4、导入数据库sql
    zabbix-2.0.6/database/mysql
    mysql -h localhost -uroot -proot zabbix <schema.sql 这里应该用zabbix和zabbix来导入sql文件,由于root是管理员账号,所以本地可以直接用来连接
            mysql-h localhost -uroot -proot zabbix <images.sql 这里应该用zabbix和zabbix来导入sql文件
            mysql-h localhost -uroot -proot zabbix <data.sql 这里应该用zabbix和zabbix来导入sql文件
    5、添加用户
            添加用户:
            groupaddzabbix
            useraddzabbix -g zabbix
    6、编译安装
    ./configure --with-mysql --with-net-snmp --with-libcurl --enable-server--enable-agent --enable-proxy --prefix=/usr/local/zabbix
    make && make install
    7、添加端口
    vim /etc/services
    zabbix-agent 10050/tcp # Zabbix Agent
    zabbix-agent 10050/udp # Zabbix Agent
    zabbix-trapper 10051/tcp # Zabbix Trapper
    zabbix-trapper 10051/udp # Zabbix Trapper
    8、修改配置文件
    修改/etc/httpd/conf/httpd.conf
    DirectoryIndex index.html index.html.var index.php
    修改/usr/local/zabbix/etc/zabbix_server.conf参数:
    DBName=zabbix
    DBUser=zabbix
    DBPassword=zabbix
    cp misc/init.d/fedora/core5/zabbix_server /etc/init.d/
    cp misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/
    chmod 700 /etc/init.d/zabbix_*

    vim /etc/init.d/zabbix_server
    修改
    ZABBIX_BIN="/usr/local/sbin/zabbix_server"

    ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_server"
    vim /etc/init.d/zabbix_agentd
    修改
    ZABBIX_BIN="/usr/local/sbin/zabbix_agentd"

    ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"
    9、启动服务并设置开机启动
    /etc/init.d/zabbix_server start
    /etc/init.d/zabbix_agentd start

    chkconfig zabbix_server on
    chkconfig zabbix_agentd on
    10、修改php相关参数
    # vi /etc/php.ini 找到如下几项,改成下面的值,前面有;号的要删掉
    max_execution_time = 300
    max_input_time = 300
    date.timezone = PRC
    post_max_size = 32M

    重启httpd
    /etc/init.d/httpd restart
    11、配置php文件
    # cd zabbix-2.0.6
    # cd frontends/
    # cp -rf php /var/www/html/
    # cd /var/www/html
    # mv php zabbix
    # chown -R zabbix:zabbix zabbix
             
             zabbix2.2版本默认到zabbix安装目录下的etc文件中去找server的配置文件,如果想另指配置文件位置比如/etc/zabbix
            可以./configure中添加--sysconfig=/etc/zabbix
            由于 zabbix 使用 fping 替代了 ping 作为 icmp 的工具,所以要安装 fping
            可以从 http://fping.sourceforge.net/ 上下载 fping 的源代码,解压编译安装。
            进入 fping 解压后的源代码目录
            ./configure   
            
            makeinstall   
            
            修改/etc/zabbix/zabbix_server.conf
            FpingLocation=/usr/local/sbin/fping   
            
            拷贝zabbix服务器的frontend php 程序到 http server 的主目录下
            cp-r frontend/php/* /var/www/html/   
            
            使用浏览器登陆到 zabbix server
            http://你的IP地址/index.php
            会出现如下配置服务器界面
    <ignore_js_op>

            
            一路 next 进入配置检查页面,会发现 PHP max execution 和PHP Timezone 两项检查失败,如下:

    <ignore_js_op>
            
            修改 /etc/php.ini ,修改以下两项
            max_execution_time= 300
            
            date.timezone= Asia/Chongqing   
            
            重启httpd
            service httpd restart   
            
            在页面上点击 retry ,检查成功
            next 进入下一页面,检查 mysql 连接


            
            填写 mysql 连接参数,Test Connection ,成功
            一路 next,出现如下页面

    <ignore_js_op>
            
            点击 save configuration file ,将文件上传到虚拟机的 /var/www/html/conf 目录下,点击 retry ,成功。
            一路 next ,进入登陆页面
    <ignore_js_op>
            
            输入管理用户名:admin 默认口令 zabbix 登陆。进入Configuration -》Hosts 选择 Zabbix Server 然后 Activate Select,Zabbix Server (本机)的监控激活。进入 Monitoring Dashboard,可以看到 Zabbix Server 的监控结果

    <ignore_js_op>
    有一点要注意:agent端配置好之后,添加host,需要添加模板才会显示绿色成功连接哟。


    <ignore_js_op>
            
            
            好了,大功告成!
            
    zabbix agent安装配置
    至于zabbix agent的安装就很简单了,将源码安装包拷到客户机上,解压后
            groupaddzabbix
            useraddzabbix -g zabbix
            1、编译安装
    ./configure --with-net-snmp --with-libcurl --enable-agent --enable-proxy--prefix=/usr/local/zabbix
    make && make install
    2、添加端口
    vim /etc/services
    zabbix-agent 10050/tcp # Zabbix Agent
    zabbix-agent 10050/udp # Zabbix Agent
    zabbix-trapper 10051/tcp # Zabbix Trapper
    zabbix-trapper 10051/udp # Zabbix Trapper
    3、修改配置文件
    cp misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/
            chown-R zabbix:zabbix /etc/init.d/zabbix_*
    chmod 700 /etc/init.d/zabbix_*
    su - zabbix
    vim /etc/init.d/zabbix_agentd
    修改
    ZABBIX_BIN="/usr/local/sbin/zabbix_agentd"

    ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"
            
    4、启动服务并设置开机启动
            /etc/init.d/zabbix_agentdstart
            chkconfigzabbix_agentd on
      
      
      ##########################################################
      http://www.it165.net/os/html/201405/8300.html


    •   一、Zabbix基本介绍:
        zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。它能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题。zabbix由2部分构成,zabbix server与可选组件zabbix agent。zabbix server:可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平台之上。zabbix agent:需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。zabbix agent可以运行在Linux ,Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000/2003/XP/Vista等系统之上。 Server:指安装zabbix服务的服务器(以下简称服务器端),是最重要的部份,主要安装在linux系统上(支持多种操作系统),采用mysql存储监.控数据并使用apache+php的方式呈现。  Agent:指安装在被监.控设备上的zabbix代理(以下简称代理),被监.控设备上的数据由代理收集后统一上传到服务器端由服务器端收集、整理并呈现。  SNMP:也是agent的一种,指支持SNMP协议的设备(也可以是服务器),通过设定SNMP的参数将相关监.控数据传送至服务器端(大部份的交换机、防火墙等网络设备都支持SNMP协议)。  IPMI:Agent的另一种方式,主要应用于设备的物理性能监.控,例如设备的温度、风扇的转速等。
        zabbix的体系结构图:
      QTBnMzgyLmpwZw==" src="http://www.it165.net/uploadfile/files/2014/0515/2014051509221076.jpg" title="zabbix体系结构.jpg" />
        
        二、Zabbix安装配置
        第一步:下载所需要用的的程序包:1、zabbix-2.0.8-3.el6.x86_64.rpm # 主程序包2、zabbix-agent-2.0.8-3.el6.x86_64.rpm # 被监.控端需要安装的代理程序包3、zabbix-get-2.0.8-3.el6.x86_64.rpm # 去被监.控端拉取数据的程序包4、zabbix-sender-2.0.8-3.el6.x86_64.rpm # 发送数据所需要安培的程序包5、zabbix-server-2.0.8-3.el6.x86_64.rpm # 做为服务器端所需要安装的各6、zabbix-server-mysql-2.0.8-3.el6.x86_64.rpm # 服务器端安装数据库程序包7、zabbix-web-2.0.8-3.el6.noarch.rpm # web界面需要安装的程序包8、zabbix-web-mysql-2.0.8-3.el6.noarch.rpm # web界面需要安装的数据库程序包

        # 作为服务器端需要安装的程序包除了2和4都要安装
        [iyunv@node1 ~]# yum -y install zabbix-2.0.8-3.el6.x86_64.rpm zabbix-get-2.0.8-3.el6.x86_64.rpm zabbix-server-2.0.8-3.el6.x86_64.rpm zabbix-server-mysql-2.0.8-3.el6.x86_64.rpm zabbix-web-2.0.8-3.el6.noarch.rpm zabbix-web-mysql-2.0.8-3.el6.noarch.rpm
        # 安装好之后可以查看一下数据库程序包安装的位置,特别要注意红色的数据库文件
        [iyunv@node1 ~]# rpm -ql zabbix-server-mysql/usr/sbin/zabbix_server_mysql/usr/share/doc/zabbix-server-mysql-2.0.8/usr/share/doc/zabbix-server-mysql-2.0.8/create/usr/share/doc/zabbix-server-mysql-2.0.8/create/data.sql/usr/share/doc/zabbix-server-mysql-2.0.8/create/images.sql/usr/share/doc/zabbix-server-mysql-2.0.8/create/schema.sql
        [iyunv@node1 ~]# cd /etc/zabbix/[iyunv@node1 zabbix]# ls web zabbix_server.conf[iyunv@node1 zabbix]# vim zabbix_server.conf
        DBHost=172.16.27.88 # 连接数据库的主机名
        DBName=zabbix # 数据库名
        DBUser=zabbix # 连接数据库所使用的用户
        DBPassword=linux # 用户的数据

      DBPort=3306 # 连接数据库的端口
        配置文件中各参数的详细说明如下表,按需要启动这些参数:
        

      DBName=zabbixzabbix所属数据库名称
      DBUser=zabbixzabbix所属数据库用户
      DBPassword=www.tanxw.comzabbix数据库密码
      StartPollers=30轮询的初始值(0-1000)
      StartIPMIPollers=4IPMI轮询的初始值(0-1000)
      StartPollersUnreachable=30轮询不可达的主机数(包括IPMI 0-1000)
        StartTrappers=8

      捕获的初始值(0-1000)
      StartPingers=4ping的初始值(0-1000)
      StartDiscoverers=0自动发现的初始值(0-250)
      CacheSize=384M缓存空间大小
      CacheUpdateFrequency=300缓存更新的频率
      StartDBSyncers=8数据库同步时间
      TrendCacheSize=128M总趋势缓存大小
      AlertScriptsPath=/path/something/script脚本的存放位置
      LogSlowQueries=1000日志慢查询设定
        
        第二步:如果数据库跟zabbix server不在同一台主机上,那就要去远程主机上创建数据库了和给用户授权了,这里我们也是在不同的上机上进行操作:

      [iyunv@node0 ~]# mysql -uroot -pEnter password: Welcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 8174Server version: 10.0.10-MariaDB-log MariaDB ServerCopyright (c) 2000, 2014, Oracle, SkySQL Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> GRANT ALL ON *.* TO 'root'@'172.16.%.%' IDENTIFIED BY 'linux' WITH GRANT OPTION;Query OK, 0 rows affected (0.06 sec)  MariaDB [none]> GRANT ALL ON zabbix.* TO 'zabbix'@'172.16.%.%' IDENTIFIED BY 'linux';Query OK, 0 rows affected (0.27 sec)
        
        MariaDB [(none)]> FLUSH PRIVILEGES;
        Query OK, 0 rows affected (0.01 sec)
        MariaDB [(none)]> CREATE DATABASE zabbix;
        Query OK, 0 rows affected (0.31 sec)
        
        MariaDB [(none)]> SHOW DATABASES;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || test || zabbix |+--------------------+5 rows in set (0.16 sec)MariaDB [(none)]>

        
        第三步:在服务器端安装上mysql客户端,或者把上面安装zabbix-server-mysql生成的数据库文件复制到数据库服务器上去,再导入到数据库中去,这里我们使用的是远程导入,就是在zabbix服务器端安装上mysql客户端,再把/usr/share/doc/zabbix-server-mysql-2.0.8/create/data.sql、/usr/share/doc/zabbix-server-mysql-2.0.8/create/images.sql、/usr/share/doc/zabbix-server-mysql-2.0.8/create/schema.sql这三个文件导入到已经创建好的数据库中去;
        

      [iyunv@node1 zabbix]# rpm -q mysql  mysql-5.1.71-1.el6.x86_64
        # 使用刚授权的远程用户把数据导入到数据库中去

      [iyunv@node1 ~]# mysql -uroot -plinux -h172.16.27.88 zabbix < /usr/share/doc/zabbix-server-mysql-2.0.8/create/schema.sql [iyunv@node1 ~]# mysql -uroot -plinux -h172.16.27.88 zabbix < /usr/share/doc/zabbix-server-mysql-2.0.8/create/images.sql  [iyunv@node1 ~]# mysql -uroot -plinux -h172.16.27.88 zabbix < /usr/share/doc/zabbix-server-mysql-2.0.8/create/data.sql
        # 而后再回去172.16.27.88这台主机上的数据库中查看一下导入的数据是否成功
        MariaDB [(none)]> USE zabbixDatabase changedMariaDB [zabbix]> SHOW TABLES;+-----------------------+| Tables_in_zabbix |+-----------------------+| acknowledges || actions || alerts || applications |
        .........................
        103 rows in set (0.07 sec)MariaDB [zabbix]>
        # 再回到zabbix-server服务器端修改一下时区
        [iyunv@node1 zabbix]# vim /etc/php.inidate.timezone = Asia/Shanghai[iyunv@node1 zabbix]# service httpd restart
        Stopping httpd: [ OK ]Starting httpd: [ OK ][iyunv@node1 zabbix]#

        
        第四步:启动zabbix-servere服务,这里要注意的是httpd安装好和php也要安装上,启动httpd服务和zabbix-server之后就可以在页面上访问安装了,zabbix-server会启动一大堆进程,默认监听的端口是10051:
        

        [iyunv@node1 zabbix]# service zabbix-server start
        Starting Zabbix server: [ OK ]
        [iyunv@node1 zabbix]# ss -tlnp









        
        到这里就就算是配置安装好了,那接下来的的很多操作基本上都是在这个界面上完成的,定义各个监.控对象等。现在我们再找几个节点,也就是再弄几台虚拟机安装上zabbix-agent,把这几个安装了zabbix-agent的主机添加到监.控服务中来:
        1、在被监.控的主机上安装zabbix-2.0.8-3.el6.x86_64.rpm zabbix-agent-2.0.8-3.el6.x86_64.rpm zabbix-sender-2.0.8-3.el6.x86_64.rpm这几个包,但sender这个包不是必须的,只有在被监.控端主动向服务器端发送监.控数据库时才需要安装,这里我们就一并安装了吧,先把数据库这台主机安装上agent,而后再安装其实主机测试使用:

        [iyunv@node0 ~]# yum -y locainstall zabbix-2.0.8-3.el6.x86_64.rpm zabbix-agent-2.0.8-3.el6.x86_64.rpm zabbix-sender-2.0.8-3.el6.x86_64.rpm
        # 修改配置文件,指定zabbix的服务器端的地址
        [iyunv@node0 ~]# cd /etc/zabbix/[iyunv@node0 zabbix]# ls zabbix_agentd.conf zabbix_agentd.d[iyunv@node0 zabbix]# vim zabbix_agentd.conf Server=172.16.27.1# 只需要改这个监.控服务器地址就可以启动了
        [iyunv@node0 ~]# service zabbix-agent startStarting Zabbix agent: [ OK ][iyunv@node0 ~]# ss -tnlp # zabbix agent监听的端口是10050sss

        
        2、添加监.控主机到zabbix服务中去,在这里要说的是里面的选项很多,不过官方文档有很详细的说明,https://www.zabbix.com/documentation/2.0/manual/config/hosts/host


        3、再创建一个监.控项item,点击上图中的Item项,再点击右上角的create item就可以创建item项了,这里我们添加两个做为测试,一个是eth0的数据流出量和流入量:



        4、创建图形展示数据,点击Graphs,再点create graphs就可以创建图形展示数据了,填上相关的参数:



        5、多个图组合在一个屏幕上查看的创建,也就是定义screens:




        基本的监.控对象定义大概就是这个步骤,很多的监.控项还需要多花时间去了解认识,还是要结合官方文档了解清楚,这样才可以准确定义我们所需要监.控的对象,那接下来我们再来定义邮件通知、自动发现并添加主机和定义模板:
        1、定义模板和发现主机,并自动添加主机:




        
        定义一个发现规则:







        
        2、报警发送邮件的定义,先定义一个媒介,而后再去定义一个用户,用来接收邮件的:






        定义一个actions:



        当流量超过我们定义的阈值时就会发送报告信息,通过邮件发送信息给我们的监.控用户:
        
        总结:
        zabbix是一个很强大并且开源的监.控系统,很多功能有待我们去了解去发现,通过上面的一些相关配置我们大概了解一这个监.控系统的基本的配置过程了,当然,于由水平有限,不难会出错或做得不到位的,还望大神多多指点。

      
      
      http://coolnull.com/217.html
      
      说明:
    zabbix由2部分构成,zabbix server与可选组件zabbix agent。
      zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平台上。
      zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。zabbix agent可以运行在Linux ,Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000/2003/XP/Vista)等系统之上。
    实现:
    1.获取zabbix,zabbix最新版2.0.3:

    wget http://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.0.3/zabbix-2.0.3.tar.gz//因为zabbix-2.0版本中并没有系统启动服务脚本,因此下载zabbix-1.8的,拷贝其中有的misc/init.d/redhat/zabbix_server,zabbix_agentd
    wget http://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/1.8.2/zabbix-1.8.2.tar.gz<span id="more-217"></span>
      
    2.yum安装zabbix需要的其他组件

    yum -y install net-snmp-devel curl-devel
      
    3.为zabbix添加用户并创建数据库

    groupadd zabbix            //添加zabbix组
    useradd zabbix -g zabbix   //新建zabbix用户并将其加入到zabbix组
    tar zxvf zabbix-2.0.3.tar.gz
    cd zabbix-2.0.3>create database zabbix character set utf8;//新建zabbix数据库>grant all on zabbix.* to zabbix@localhost identified by'redhat';//给zabbix这个数据库授权,只允许zabbix这个用户通过本地登录,zabbix用户的密码为redhat//将zabbix源码包中的数据导入到新建的zabbix数据库,这一步是zabbix2.0.3与其他旧版不同的,在版本2.0.3里数据库的结构和名字都变了,而且导入也要严格按照顺序来。
    mysql -uzabbix -p'redhat' zabbix </zabbix/zabbix-2.0.3/database/mysql/schema.sql      #zabbix的数据库表结构
    mysql -uzabbix -p'redhat' zabbix </zabbix/zabbix-2.0.3/database/mysql/images.sql      #待查
    mysql -uzabbix -p'redhat' zabbix </zabbix/zabbix-2.0.3/database/mysql/data.sql        #zabbix的数据库数据./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --with-mysql=/usr/local/webserver/mysql/bin/mysql_config --with-net-snmp --with-libcurl
    //--prefix指定zabbix安装目录,--enable-server 支持zabbix服务器,--enable-agent支持zabbix代理,--enable-proxy 支持zabbix代理服务器,--with-mysql 使用MySQL客户端库可以选择指定路径mysql_config,--with-net-snmp 使用net - snmp软件包,择性地指定路径NET - SNMP配置, --with-libcurl 使用curl包
    make && make install
      //若./configure 出现hecking for mysql_config… configure: error: MySQL library not found,可以使用find / -name “mysql_config”来查看,更改–with-mysql的位置
    //若./configure出现错误configure: error: Invalid NET-SNMP directory – unable to find net-snmp-config,可以通过yum install net-snmp-devel来解决
    4.为zabbix server添加端口

    # cat >> /etc/services <<eof
    zabbix-agent    10050/tcp                           #ZabbixAgent
    zabbix-agent    10050/udp                           #Zabbix Agent
    zabbix-trapper  10051/tcp                            #ZabbixTrapper
    zabbix-trapper  10051/udp                             #Zabbix Trapper
    EOF
      
    5.拷贝配置文件到相应的目录下,这一步也是2.0.3改动的地方,以往的配置文件都是存放在源码包下的misc/conf/目录中,这次不是。将zabbix-1.8中的zabbix-server,zabbix-agentd.conf拷贝到/etc/zabbix

    mkdir /etc/zabbix
    cp -rf /zabbix/zabbix-1.8/conf/*  /etc/zabbix
      
    6.更改zabbix-server.conf配置文件中数据库相关的用户名密码
    vim /etc/zabbix/zabbix_server.conf,修改以下三项:

    DBName=zabbix
    DBUser=zabbix
    DBPassword=redhat
    //DBPassword 默认是被注释掉的,需要自己添加
      
    7.给zabbix-2.0.3服务端程序做软链接

    cd /usr/local/zabbix/bin/for i in*;do ln -s /usr/local/zabbix/bin/${i}/usr/bin/${i};done
    cd /usr/local/zabbix/sbin/for i in*;do ln -s /usr/local/zabbix/sbin/${i}/usr/sbin/${i};done//添加数据库Lib文件位置到/etc/ld.so.conf中,并使其生效
    echo /usr/local/webserver/mysql/lib/mysql/>>/etc/ld.so.conf
    ldconfig
    //拷贝相应的web程序到相关WEB服务目录下
    cp -r zabbix-2.0.3/frontends/php /www/
    chown -R www:www /www/zabbix
      
    8.拷贝zabbix服务端和客户端启动脚本到/etc/init.d目录下.

    //因为zabbix-2.0.3下/misc/init.d/并没有redhat启动脚本,因此下载zabbix-1.8,拷贝zabbix-1.8/misc/init.d/zabbix_server,zabbix_agentd
    cp zabbix-1.8.2/misc/init.d/zabbix_server /etc/init.d
    chmod +x /etc/init.d/zabbix_server     # 为脚本加上可执行权限
    cp zabbix-2.0.3/misc/init.d/zabbix_agentd /etc/init.d
    chmod +x /etc/init.d/zabbix_agentd
    #修改/etc/init.d/zabbix_server,zabbix_agentd,将
      
    9.启动zabbix,并且添加开机自启动

    service zabbix-server start
    service zabbix-agentd start        //启动服务
    chkconfig zabbix-server on
    chkconfig zabbix-agentd on         //开机自启动
      
    10.在Nginx服务中添加zabbix虚拟主机

    vim /usr/local/nginx/conf/vhosts/monitor.conf
    server
    {
    listen       80;
    server_name  monitor.nobody.com;#access_log   logs/zabbix_access.log  main;
    root   /www/zabbix;
    index  index.html index.htm index.php;
    location ~.*.(php|php5)?$
    {#fastcgi_pass  unix:/tmp/php-cgi.sock;
    fastcgi_pass  127.0.0.1:9000;
    fastcgi_index index.php;
    include fcgi.conf;}}
      
    11.修改PHP配置文件php.ini内容

    vim /usr/local/webserver/php/etc/php.ini
    date.timezone =Asia/Shanghai
    post_max_size =32M
    max_execution_time =300
    max_input_time =300
      注:更改完之后需要重启nginx和php,启动重启之后最好使用ps -ef | grep php 查看下
    12.浏览器安装打开http://monitor.nobody.com进行安装
    检测php组件,全部OK才可以点击next
    最后一栏 PHP gettext 肯定是No状态,因为在LNMP中没有加入 PHP gettext,所以需要动态编译下php添加gettext。
    13.php添加gettext模块

    //进入到php源码包中,php源码包中包含有gettext
    cd /opt/php-5.1.2/ext/gettext
    /usr/local/webserver/php/bin/phpize
    ./configure --with-php-config=/usr/local/webserver/php/bin/php-config --with-gettext
    make && make install
    //在/usr/local/webserver/php/lib/php/extensions下产生一个gettext.so文件//确定 php.ini文件中的extension_dir=/opt/php/lib/php/extensions 跟 extension=gettext.so//重启php,nginx//可以通过/usr/local/webserver/php/bin/php -m|grep gettext来查看是否添加了gettext模块
      
    14.连接zabbix数据库
    设置zabbix服务IP和端口等等,就可以进入了
    15.默认用户名:admin 密码:zabbix
      
      
      
      
      
      

  • 运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
    2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
    3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
    4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
    5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
    6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
    7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
    8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

    所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-111515-1-1.html 上篇帖子: MySQL 5.5 外键不能引用分区表主键 下篇帖子: ubuntu环境下zabbix2.0数据库迁移升级到zabbix2.2
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    扫码加入运维网微信交流群X

    扫码加入运维网微信交流群

    扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

    扫描微信二维码查看详情

    客服E-mail:kefu@iyunv.com 客服QQ:1061981298


    QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


    提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


    本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



    合作伙伴: 青云cloud

    快速回复 返回顶部 返回列表