zabbix部署记录

  1. 下载zabbix 2.2.2 最新版本

http://www.zabbix.com/download.php

系统环境:centos6.5 X86

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 lrzsz

#yum 
-y install php php-*curl-devel mysql mysql-server httpd php mysql-devel
gnutls mysql-developenldap-devel OpenIPMI OpenIPMI* ncurses-devel unixODBC
unixODBC-develmysql-connector-odbc libstdc* libX* gcc vim make alsa-lib
jpackage-utils pcrepcre-devel net-snmp net-snmp-devel net-snmp-libs
net-snmp-perl net-snmp-utilsrsyslog-* curl curl-devel  java* gnutls-devellibgssapi_krb5.so.2
libz.so.1 libstdc++.so.6

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

make

5.创建mysql数据库

mysql -uroot -p111111

create database zabbix character set utf8;

use zabbix

导入库

mysql -uroot -p111111 zabbix <
schema.sql

mysql -uroot -p111111 zabbix <
images.sql

mysql -uroot -p111111 zabbix < data.sql

6.配置zabbix连接数据库选项

vi /opt/local/zabbix/etc/zabbix_server.conf

DBHost=localhost

DBUser=zabbix

DBPassword=111111

DBSocket=/var/lib/mysql/mysql.sock

DBPort=3306

StartJavaPollers=5

AlertScriptsPath=/opt/local/zabbix/alertscripts

启动进程

/opt/local/zabbix/sbin/zabbix_server

/opt/local/zabbix/sbin/zabbix_agentd

service mysqld start

7.配置web并写入启动项

cp
/usr/local/src/zabbix/zabbix-2.2.2/misc/init.d/tru64/zabbix_server /etc/init.d/

cp
/usr/local/src/zabbix/zabbix-2.2.2/misc/init.d/tru64/zabbix_agentd /etc/init.d/

cp -R
/usr/local/src/zabbix/zabbix-2.2.2/frontends/php /var/www/html/zabbix

sed -i ‘s/^DBUser=.*$/DBUser=zabbix/g‘
/opt/local/zabbix/etc/zabbix_server.conf

sed -i
‘s/^.*DBPassword=.*$/DBPassword=zabbix/g‘
/opt/local/zabbix/etc/zabbix_server.conf

sed -i
‘s/BASEDIR=\/usr\/local/BASEDIR=\/opt\/local\/zabbix/g‘
/etc/init.d/zabbix_server

sed -i
‘s/BASEDIR=\/usr\/local/BASEDIR=\/opt\/local\/zabbix/g‘
/etc/init.d/zabbix_agentd

cp -R
/usr/local/src/zabbix/zabbix-2.2.2/frontends/php/* /var/www/html/

**修改图形乱码**

cd /var/www/html/conf/fonts/

rz -y 上传字体 simkai.ttf

mv DejaVuSans.ttf DejaVuSans.ttf.bak 备份原有字体

mv simkai.ttf DejaVuSans.ttf 替换原有字体为中文楷体

8.IE页面配置

IE框内输入:http://serverIP/setup.php

点击next,

Zabbix检测安装组件是否完整安装

红框内根据提示,修改/etc/php.ini相关的参数

Php-bcmath 如果无法找到,直接yum
install –y php-bcmath

直到全部显示为绿色,OK。点击下一步。

此页面填入数据库密码即可,点击下一步。

默认即可,下一步。

前面的配置检测,如无故障报错,下一步。

此处页面是安装好之后的页面,正常第一次页面会告诉你无法在/var/www/html/conf/文件夹下找到zabbix.conf.php文件,此处需要你在这个页面将zabbix.conf.php文件下载到本地,然后上传到/var/www/html/conf/目录下即可。然后让系统自己检测一遍,点击完成。

登陆zabbix页面。默认user:admin  passwd:zabbix

@@排错@@

  1. 页面报错zabbix server is not running:the information
        displayed may not be current.

关闭selinux

/etc/sysconfig/selinux

编辑zabbix.conf.php文件,文件位置

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

把$ZBX_SERVER的值改为本机的IP地址$ZBX_SERVER
=  ‘serverIP’代替hostname

2.zabbix_server.log出现的提示

zabbix_server.log出现的提示

2009:20121023:193549.354 Sending list of active checks to [serverIP]
failed: host [CentOS65] not found

这是因为zabbix_agentd.conf配置文件中的Hostname与web中的主机名对应。

####Zabbix discoverer processes more than 75% busy####

启用自动发现功能出现此错误。

解决方法:

在zabbix_server.conf中的

修改StartDiscoverers的值,根据需求修改.

默认为1.

禁用zabbix重装

*****Zabbix之fetion报警****

首先下载fetion包。(fetion包在目录/usr/local/src)

解压。Cd /usr/local/src

tar -zxvf
fetion.tar.gz  -C /usr/local/

cd fetion/    fetion目录下有3个包

(第一个为依赖库文件,第二个为fetion运行文件 第三个为系统文件)

cp fetion /bin/

vi /etc/ld.so.conf.d/fetion.conf #创建飞信运行的配置文件

添加:/usr/local/fetion

chmod 775 /etc/ld.so.conf.d/fetion.conf

ldconfig 
##创建关联

cd 
/bin/ && ldd fetion  查看所依赖的包  根据提示 拷贝相关库文件到对应的地方

cp /usr/local/fetion/ld-linux.so.2 /lib/

cp libACE-5.7.2.so /lib64/

cp libACE_SSL-5.7.2.so /lib64/

cp libACE_SSL-5.7.2.so /lib/

cp libssl.so.4 /lib/

cp libstdc++.so.6 /lib/

yum install libz.so.1 –y

yum install -y libgssapi_krb5.so.2

yum install krb5-libs

根据相关的对应提示,如包自带的就copy 如没有请下载。

测试feition   moble 发送的号码  pwd 密码  to 接收的手机号码

/bin/fetion --mobile xxxxxxxxxx
--pwd=xxxxxxxx --to=xxxxxxxxx --msg-

utf8="test"

如测试成功。开始创建飞信脚本。  (注意:第一次使用fetion有验证码,请自行把fetion生成的验证码图片copy到本地,再输入到机器)

cd
/opt/local/zabbix/share/zabbix/alertscripts/

vi sms.sh 
## 创建飞信脚本

touch /var/log/sms.log 创建日志文件。

./sms.sh *********** hello world  测试脚本。

如OK,请自行到页面配置。

@@插件安装[email protected]@

git clone https://github.com/spide4k/zatree.git zatree


cp -r zatree/zabbix-2.2.x $ZABBIX_PATH/zatree

cd $ZABBIX_PATH/zatree/addfile

cp -f CLineGraphDraw_Zabbix.php
 CGraphDraw_Zabbix.php CImageTextTable_Zabbix.php
 $ZABBIX_PATH/include/classes/graphdraw/

cp -f zabbix.php zabbix_chart.php $ZABBIX_PATH/

cp -f CItemValue.php $ZABBIX_PATH/api/classes/

cp -f menu.inc.php $ZABBIX_PATH/include/

cp -f main.js $ZABBIX_PATH/js/

cp -f API.php $ZABBIX_PATH/include/classes/api/

3:支持web
 interface,修改配置文件

vi
 $ZABBIX_PATH/zatree/zabbix_config.php
   ‘user‘=>‘xxx‘, //你的用户名
   ‘passowrd‘=>‘xxx‘, //你的密码

4:导航增加Zatree入口,修改menu.inc.php,main.js

vi $ZABBIX_PATH/include/menu.inc.php

在login数组前添加以下内容:

‘zatree‘=>array(       
   ‘label‘ => _(‘zatree‘),         
   ‘user_type‘ => USER_TYPE_ZABBIX_USER,       
   ‘default_page_id‘  => 0,       
   ‘force_disable_all_nodes‘ => true,         
   ‘pages‘ =>array(                
             array(‘url‘ =>
 ‘zabbix.php‘,‘label‘ => _(‘Zatree‘),)               
   ),

vim vi $ZABBIX_PATH/js/main.js

替换106行

menus:
 {‘empty‘: 0, ‘view‘: 0, ‘cm‘: 0, ‘reports‘: 0, ‘config‘: 0, ‘admin‘: 0,
 ‘zatree‘:0},

66:增加封装的api类

vi
 $ZABBIX_PATH/include/classes/api/API.php

在70行附近,添加如下内容:

‘usermedia‘ => ‘CUserMedia‘,
           ‘itemvalue‘
 =>‘CItemValue‘,
           ‘webcheck‘ => ‘CWebCheck‘

7:登陆zabbix,在导航里可以看到一个Zatree的菜单,然后开始使用zetree.

cp -rf zatree
 $ZABBIX_PATH/

cd
 $ZABBIX_PATH/zatree/addfile

cp
 class.cchart_zabbix.php class.cgraphdraw_zabbix.php
 class.cimagetexttable_zabbix.php $ZABBIX_PATH/include/classes/

cp zabbix.php
 zabbix_chart.php $ZABBIX_PATH/

cp CItemValue.php
 $ZABBIX_PATH/api/classes/

###mail报警#####

yum
 install mailx #安装

CentOS
 5.x 编译安装mailx,直接yum安装的mailx版本太旧,使用外部邮件发送会有问题。

yum
 remove mailx #卸载系统自带的旧版mailx

下载mailx:

http://nchc.dl.sourceforge.net/project/heirloom/heirloom-mailx/12.4/mailx-12.4.tar.bz2

tar
 jxvf mailx-12.4.tar.bz2 #解压

cd
 mailx-12.4 #进入目录

make #编译

make
 install UCBINSTALL=/usr/bin/install #安装

ln -s
 /usr/local/bin/mailx /bin/mail #创建mailx到mail的软连接

ln -s
 /etc/nail.rc /etc/mail.rc #创建mailx配置文件软连接

whereis
 mailx #查看安装路径

mailx
 -V #查看版本信息

配置Zabbix服务端外部邮箱

vi
 /etc/mail.rc #编辑,添加以下信息

set from=[email protected] smtp=smtp.163.com

set smtp-auth-user=[email protected] smtp-auth-password=123456

set smtp-auth=login

:wq! #保存退出

echo "zabbix
 test mail" |mail -s "zabbix" [email protected]

#测试发送邮件,标题zabbix,邮件内容:zabbix test mail,发送到的邮箱:[email protected]

#这时候,邮箱[email protected]会收到来自[email protected]的测试邮件

四、配置Zabbix服务端邮件报警

1、打开Zabbix

管理-示警媒介类型-创建媒体类型

名称:Sendmail

类型:脚本

脚本名称:sendmail.sh

已启用:勾选

存档

2、设置Zabbix用户报警邮箱地址

组态-用户-Admin (Zabbix Administrator)

切换到示警媒介-添加

类型:Sendmail

收件人:[email protected]

其他默认即可,也可

以根据需要设置

状态:已启用

存档

3、设置Zabbix触发报警的动作

组态-动作-创建动作

名称:Action-Email

默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生:
 {TRIGGER.NAME}故障!

默认信息:

告警主机:{HOSTNAME1}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}

恢复信息:打钩

恢复主旨:恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}:
 {TRIGGER.NAME}已恢复!

恢复信息:

告警主机:{HOSTNAME1}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}

已启用:打钩

切换到操作选项

新的

操作类型:送出信息

送到用户:添加

默认信息:打钩

选择用户:Admin

选择

仅送到:Sendmail

存档

4、添加Zabbix服务端邮件发送脚本

cd
 /usr/local/zabbix/share/zabbix/alertscripts #进入脚本存放目录

vi
 sendmail.sh #编辑,添加以下代码

#!/bin/sh

echo "$3"
 | mail -s "$2" $1

:wq! #保存退出

chown zabbix.zabbix
 /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh

#设置脚本所有者为zabbix用户

chmod +x
 /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh

#设置脚本执行权限

五、测试Zabbix报警

关闭Zabbix客户端服务

service
 zabbix_agentd stop

查看[email protected]邮箱,会收到报警邮件

再开启Zabbix客户端服务

service
 zabbix_agentd start

查看[email protected]邮箱,会收到恢复邮件

使用外部邮箱账号发送报警邮件设置完成。

时间: 2024-11-01 14:32:14

zabbix部署记录的相关文章

Docker可视化界面(Consul+Shipyard+Swarm+Service Discover)部署记录

前面一篇说到了Docker管理工具-Swarm部署记录,基于这个环境,下面记录下Docker可视化界面部署过程: 1)下载相关惊喜 manager-node节点(182.48.115.237) [[email protected] ~]# docker pull progrium/consul [[email protected] ~]# docker pull rethinkdb [[email protected] ~]# docker pull shipyard/shipyard [[em

zabbix部署(Linux上部署/监控端/被监控端)

一.监控系统的简单介绍 (1)cacti:存储数据能力强,报警性能差 (2)nagios:报警性能差,存储数据仅有简单的一段可以判断是否在合理范围内的数据长度,储存在内存中.比如,连续采样数据存储,有连续三次不在合理范围内的数据就报警 (3)zabbix:结合上面两种工具的优点,又可以存储数据,又可以报警 二.zabbix特性 (1)数据采样:通过snmp.ssh.telnet.agent.ipmi.jmx等通道采集被监控主机的数据.可以自定义检测机制和自定义时间间隔 (2)实时绘图:展示,读取

centos6.5腾讯云django环境部署记录---1、系统准备

一.腾讯云一开始是root用户,为了避免不可挽救就"毁灭性打击",我们先来创建一个新用户. 1.创建用户: 2.给新用户赋予sudo使用权限: (1).回到root用户,修改文件权限. (2).编辑/etc/sudoers文件,增加你的用户 (3).撤销文件的写权限. 最后:在新用户模式下,如果出现permissions denied,加上sudo 二.安装和配置vsftp 此处参考http://www.cnblogs.com/surge/p/3868270.html. (1).安装v

openldap 集中身份认证部署记录

一. 使用openldap集中身份认证,可以集中登录服务器,这样root 密码就可以腾出来了,最主要是方便帐号管理. server  172.168.10.23 client  172.168.10.14 1.在server端部署: [[email protected] ]# yum install openldap-*    #安装openldap-clients,openldap-devel,openldap,openldap-servers,openldap-servers-sql [[e

zabbix部署安装

先为zabbix准备基础LAMP环境 http://13145207.blog.51cto.com/6841514/1338890 yum -y install gcc gcc-c++ autoconf php-mysql httpd-manual mod_ssl mod_perl mod_auth_mysql php-gd php-xml php-ldap php-pear php-xmlrpc mysql-connector-odbc mysql-devel libdbi-dbd-mysql

MySQL高可用架构-MHA环境部署记录

一.MHA介绍 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司)开发,是日本的一位 MySQL专家采用Perl语言编写的一个脚本管理工具,该工具仅适用于MySQLReplication(二层)环境,目的在于维持Master主库的高可用性.是一套优秀的作为MySQL高可用性 环境下故障切

Linux系统下yum镜像源环境部署记录

之前介绍了Linux环境下本地yum源配置方法,不过这个是最简单最基础的配置,在yum安装的时候可能有些软件包不够齐全,下面说下完整yun镜像源系统环境部署记录(yum源更新脚本下载地址:https://pan.baidu.com/s/1miMNPgc     提取密码:hq6u): 1)安装nginx,用于yum镜像源访问配置 [[email protected] ~]# yum -y install gcc pcre-devel zlib-devel openssl-devel [[emai

Docker网络解决方案-Flannel部署记录

Docker跨主机容器间网络通信实现的工具有Pipework.Flannel.Weave.Open vSwitch(虚拟交换机).Calico实现跨主机容器间的通信.其中Pipework.Weave.Flannel,三者的区别是: Weave的思路 在每个宿主机上布置一个特殊的route的容器,不同宿主机的route容器连接起来. route拦截所有普通容器的ip请求,并通过udp包发送到其他宿主机上的普通容器. 这样在跨机的多个容器端看到的就是同一个扁平网络. weave解决了网络问题,不过部

GlusterFS分布式存储集群部署记录-相关补充

接着上一篇Centos7下GlusterFS分布式存储集群环境部署记录文档,继续做一些补充记录,希望能加深对GlusterFS存储操作的理解和熟悉度. ========================清理glusterfs存储环境========================= 由上面可知,该glusterfs存储集群有四个节点: [[email protected] ~]# cat /etc/hosts ....... 192.168.10.239 GlusterFS-master 192.