zabbix2.2安装配置使用<at>centos6.5_x86_64

...

 

 

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.51cto.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  查看 配置文件的位置

[root@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都要安装

    [root@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

    # 安装好之后可以查看一下数据库程序包安装的位置,特别要注意红色的数据库文件

    [root@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

    [root@node1 ~]# cd /etc/zabbix/[root@node1 zabbix]# ls web zabbix_server.conf[root@node1 zabbix]# vim zabbix_server.conf

    DBHost=172.16.27.88 # 连接数据库的主机名

    DBName=zabbix # 数据库名

    DBUser=zabbix # 连接数据库所使用的用户

    DBPassword=linux # 用户的数据

    DBPort=3306 # 连接数据库的端口

    配置文件中各参数的详细说明如下表,按需要启动这些参数:

     

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

    StartTrappers=8

    捕获的初始值(0-1000)
    StartPingers=4 ping的初始值(0-1000)
    StartDiscoverers=0 自动发现的初始值(0-250)
    CacheSize=384M 缓存空间大小
    CacheUpdateFrequency=300 缓存更新的频率
    StartDBSyncers=8 数据库同步时间
    TrendCacheSize=128M 总趋势缓存大小
    AlertScriptsPath=/path/something/script 脚本的存放位置
    LogSlowQueries=1000 日志慢查询设定

     

    第二步:如果数据库跟zabbix server不在同一台主机上,那就要去远程主机上创建数据库了和给用户授权了,这里我们也是在不同的上机上进行操作:

    [root@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这三个文件导入到已经创建好的数据库中去;

     

    [root@node1 zabbix]# rpm -q mysql

    mysql-5.1.71-1.el6.x86_64

    # 使用刚授权的远程用户把数据导入到数据库中去

    [root@node1 ~]# mysql -uroot -plinux -h172.16.27.88 zabbix < /usr/share/doc/zabbix-server-mysql-2.0.8/create/schema.sql [root@node1 ~]# mysql -uroot -plinux -h172.16.27.88 zabbix < /usr/share/doc/zabbix-server-mysql-2.0.8/create/images.sql

    [root@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服务器端修改一下时区

    [root@node1 zabbix]# vim /etc/php.inidate.timezone = Asia/Shanghai[root@node1 zabbix]# service httpd restart

    Stopping httpd: [ OK ]Starting httpd: [ OK ][root@node1 zabbix]#

     

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

     

    [root@node1 zabbix]# service zabbix-server start

    Starting Zabbix server: [ OK ]

    [root@node1 zabbix]# ss -tlnp

    wKiom1NzBCiCgx7kAAPJ6kMwRI4944.jpg

    wKiom1NzBG3DSI57AANrHc7qWZU530.jpg

    wKiom1NzBLqTQws4AAGJXrk4p8I194.jpg

    wKioL1NzBLvR7zImAAFZQOM_XPE355.jpg

    wKioL1NzBNnic8PEAAGJarsTVdA124.jpg

    wKioL1NzBPbg6_8-AADFBKoikAw206.jpg

    wKiom1NzBTug6dN5AAGltdw5QEg201.jpg

    wKioL1NzBTuwYTTvAARjtCt72Lw178.jpg

     

    到这里就就算是配置安装好了,那接下来的的很多操作基本上都是在这个界面上完成的,定义各个监.控对象等。现在我们再找几个节点,也就是再弄几台虚拟机安装上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,而后再安装其实主机测试使用:

    [root@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的服务器端的地址

    [root@node0 ~]# cd /etc/zabbix/[root@node0 zabbix]# ls zabbix_agentd.conf zabbix_agentd.d[root@node0 zabbix]# vim zabbix_agentd.conf Server=172.16.27.1# 只需要改这个监.控服务器地址就可以启动了

    [root@node0 ~]# service zabbix-agent startStarting Zabbix agent: [ OK ][root@node0 ~]# ss -tnlp # zabbix agent监听的端口是10050sss

     

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

    wKiom1NzOQWCRNgjAAPlYqncxuA931.jpg

    wKioL1NzORGQsRGYAAQjuYDwuTA488.jpg

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

    wKioL1NzOWqSvWJ9AAKzHYFy6cA259.jpg

    wKiom1NzOcDiS-70AAODvWe7Hyo857.jpg

    wKioL1NzObjTMdseAANS20_QqwU825.jpg

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

    wKiom1NzOhKx1vUpAALJHSh0eWI255.jpg

    wKioL1NzOhCzetSYAAPHEhQS2kM282.jpg

    wKiom1NzOm3xtXbHAAK5-TMrPkI725.jpg

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

    wKioL1NzOmPhSi3hAAFeK1dqXRY848.jpg

    wKioL1NzOpSwiyzaAAErob9By5k698.jpg

    wKiom1NzOtux0SGXAANX77yHZFM116.jpg

    wKiom1NzOvrw5WofAAPcXar9GPE343.jpg

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

    1、定义模板和发现主机,并自动添加主机:

    wKiom1NzY82zmiqoAALsAiDoC_k396.jpg

    wKiom1NzZATyeCW-AAKWO1q-8LE849.jpg

    wKioL1NzZBSBVucAAAHs3215yR8064.jpg

    wKiom1NzZMLxy4qkAAIukFwQArw331.jpg

     

    定义一个发现规则:

    wKioL1NzZ0HRPsGAAAJJDfTh7QE475.jpg

    wKioL1NzZXHRLh8tAAGIQhTw34s421.jpg

    wKiom1NzZcyQkauLAAEgKrvF1_0560.jpg

    wKioL1NzZqegztsXAAILmlrbPk0719.jpg

    wKiom1NzZvWQIq9EAAGcw8oKwXs029.jpg

    wKiom1NzZ72BtefRAAPeUZXY6z0444.jpg

    wKioL1NzZ7TT7HVDAACZJHJJWz8049.jpg

     

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

    wKiom1NzemWB9vSkAAGMI2v2r2g079.jpg

    wKioL1NzembiE8LwAAI8tMwcwfU947.jpg

    wKiom1NzerDSpNwYAAHx2GCvvNw425.jpg

    wKioL1NzeqnTcdU_AAKKbWUIrDk504.jpg

    wKiom1NzewPTigyRAAD4Nzacoi4066.jpg

    wKioL1Nze8Cg1IkvAALb8xifCcM511.jpg

    定义一个actions:

    wKiom1Nze33QJTPWAALgD-hDM2E863.jpg

    wKioL1Nze3ng316qAAKpQLUo2Tk082.jpg

    wKiom1Nze8Gi6bOFAAHlUl2aK00026.jpg

    当流量超过我们定义的阈值时就会发送报告信息,通过邮件发送信息给我们的监.控用户:

     

    总结:

    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

 

 

 

 

 

 

posted @ 2014-05-27 18:06  陳聽溪  阅读(645)  评论(0)    收藏  举报