下载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
@@排错@@
页面报错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,请自行到页面配置。
@@插件安装zatree@@
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
4:导航增加Zatree入口,修改menu.inc.php,main.js vi $ZABBIX_PATH/include/menu.inc.php 在login数组前添加以下内容:
‘zatree‘=>array(
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‘, 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=xxx@163.com smtp=smtp.163.com set smtp-auth-user=xxx@163.com smtp-auth-password=123456 set smtp-auth=login :wq! #保存退出 echo "zabbix test mail" |mail -s "zabbix" yyy@163.com #测试发送邮件,标题zabbix,邮件内容:zabbix test mail,发送到的邮箱:yyy@163.com #这时候,邮箱yyy@163.com会收到来自xxx@163.com的测试邮件 四、配置Zabbix服务端邮件报警 1、打开Zabbix 管理-示警媒介类型-创建媒体类型
名称:Sendmail 类型:脚本 脚本名称:sendmail.sh 已启用:勾选 存档 2、设置Zabbix用户报警邮箱地址 组态-用户-Admin (Zabbix Administrator)
切换到示警媒介-添加 类型:Sendmail 收件人:xxx@163.com 其他默认即可,也可 以根据需要设置 状态:已启用 存档 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 查看xxx@163.com邮箱,会收到报警邮件 再开启Zabbix客户端服务 service zabbix_agentd start 查看xxx@163.com邮箱,会收到恢复邮件 使用外部邮箱账号发送报警邮件设置完成。
|
原文地址:http://dwwendy.blog.51cto.com/2359960/1630598