CentOS 6.4 x64 zabbix 2.2.2 编译安装

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/$/ /' <<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代理  模式    默认为 主动模式

原文地址:https://www.cnblogs.com/jicki/p/5546953.html