编译安装zabbix3.4及实现邮件报警

环境准备:
  lnmp

下载zabbix3.4
  wget -c http://cdn-us.filecluster.com/Zabbix/zabbix-3.4.11.tar.gz
  tar -xf zabbix-3.4.11.tar.gz

创建zabbix数据库
  mysql -uroot -p
  mysql> create database zabbix character set utf8 collate utf8_bin;
  mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'Zabbix';
  mysql -uroot -pZabbix zabbix < /root/zabbix-3.4.11/database/mysql/schema.sql
  mysql -uroot -pZabbix zabbix < /root/zabbix-3.4.11/database/mysql/images.sql
  mysql -uroot -pZabbix zabbix < /root/zabbix-3.4.11/database/mysql/data.sql

新建zabbix用户及用户组
  groupadd zabbix
  useradd -g zabbix -s /sbin/nologin zabbix

安装依赖包
  yum -y install net-snmp-devel libssh2 libssh2-devel curl-devel libevent libevent-devel 

安装zabbix server agent
  cd /root/zabbix-3.4.11
  ./configure --prefix=/usr/local/zabbix  --sysconfdir=/etc/zabbix --enable-server --enable-agent --with-ssh2 --with-openssl --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2
  make install

修改zabbix默认日志文件位置
  mkdir /var/log/zabbix/
  chown -R zabbix.zabbix /var/log/zabbix

修改配置文件
  vim /etc/zabbix/zabbix_server.conf

1 DBName=zabbix
2 DBUser=zabbix
3 DBPassword=Zabbix
4 LogFile=/var/log/zabbix/zabbix_server.log

  vim /etc/zabbix/zabbix_agentd.conf

1 LogFile=/var/log/zabbix/zabbix_agentd.log
2 Server=192.168.121.11
3 Hostname= zabbix server

设置启动脚本

  cp /usr/local/zabbix/sbin/* /usr/local/sbin/
  cp /usr/local/mysql/lib/libmysqlclient.so /usr/lib64
  cp /usr/local/mysql/lib/libmariadb.so.3 /usr/lib64
  cp /root/zabbix-3.4.11/misc/init.d/fedora/core5/* /etc/init.d/
  chkconfig --add zabbix_agentd
  chkconfig --add zabbix_server
  chkconfig zabbix_agentd on
  chkconfig zabbix_server on
  service zabbix_server start
  service zabbix_agentd start

创建zabbix网站目录
  mkdir /usr/local/nginx/html/zabbix
  cp /root/zabbix-3.4.11/frontends/php/* /usr/local/nginx/html/zabbix  -a
  chown -R  nginx:nginx /usr/local/nginx/html/zabbix 

vim /usr/local/etc/php.ini

1 max_input_time=300
2 post_max_size = 32M
3 max_execution_time = 300
4 data_zone=RPC

zabbix图形支持中文
  vim /usr/local/nginx/html/zabbix/include/defines.inc.php 修改两处DejaVuSans=simkai
  上传simkai.ttf到 /usr/local/nginx/html/zabbix/fonts/目录下

http://192.168.121.11/zabbix/setup.php

开启防火墙端口

  firewall-cmd --zone=public --permanent --add-port=10050-10051/tcp
  firewall-cmd --zone=public --permanent --add-port=10050-10051/udp
  firewall-cmd --reload

设置zabbix邮件报警
  关闭sendmail或者postfix
    yum remove sendmail
    yum remove postfix
  安装mailx
   yum install mailx dos2unix -y
   vim /etc/mail.rc

1 set from="[email protected]"
2 set smtp=smtp.163.com
3 set smtp-auth-user=test@163.com
4 set smtp-auth-password=passwd
5 set smtp-auth=login

  测试邮件设置是否正常
  echo "zabbix test mail" |mail -s "zabbix" [email protected]

管理--报警媒介类型--创建报警媒介类型--选择脚本类型--填写脚本名称emai_vps.sh
  增加三个脚本参数 {ALERT.SENDTO} {ALERT.SUBJECT} {ALERT.MESSAGE}
用户--报警媒介--选择脚本
动作--创建动作--填写动作名称
  操作:

1   {TRIGGER.STATUS},服务器:{HOSTNAME1}:{TRIGGER.NAME}故障发生!
2   告警主机:{HOSTNAME1}
3   告警时间:{EVENT.DATE} {EVENT.TIME}
4   告警等级:{TRIGGER.SEVERITY}
5   告警信息: {TRIGGER.NAME}
6   告警项目:{TRIGGER.KEY1}
7   问题详情:{ITEM.NAME}:{ITEM.VALUE}
8   事件ID:{EVENT.ID}

  恢复操作:

1       {TRIGGER.STATUS}:服务器:{HOSTNAME1}: {TRIGGER.NAME}故障恢复!
2        告警主机:{HOSTNAME1}
3        告警时间:{EVENT.DATE} {EVENT.TIME}
4        告警等级:{TRIGGER.SEVERITY}
5        告警信息: {TRIGGER.NAME}
6        告警项目:{TRIGGER.KEY1}
7        当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
8        事件ID:{EVENT.ID}

  确认操作:

1         {TRIGGER.STATUS}: 管理员{USER.FULLNAME}服务器:{HOSTNAME1}:{TRIGGER.NAME}故障确认!
2         管理员{USER.FULLNAME} 在{ACK.DATE} {ACK.TIME} {ACK.MESSAGE}确认故障信息。
3         告警主机:{HOSTNAME1}
4         告警时间:{EVENT.DATE}{EVENT.TIME}
5         告警等级:{TRIGGER.SEVERITY}
6         告警信息: {TRIGGER.NAME}
7         告警项目:{TRIGGER.KEY1}
8         问题详情:{ITEM.NAME}:{ITEM.VALUE}
9         事件ID:{EVENT.ID}

添加Zabbix服务端邮件发送脚本
  vi /etc/zabbix/zabbix_server.conf 修改AlertScriptsPath=/etc/zabbix/alertscripts
  mkdir /etc/zabbix/alertscripts
  chown zabbix.zabbix /etc/zabbix/alertscripts
  vim emai_vps.sh

1 #!/bin/bash
2 file=/tmp/zabbix_mail.txt
3 echo "$3" > $file
4 dos2unix -k $file #转码中文
5 /bin/mail -s "$2" $1 < $file

  chmod u+x email_vps.sh 
  chown zabbix.zabbix email_vps.sh 

猜你喜欢

转载自www.cnblogs.com/chenxiaoweiworkinghard/p/9746401.html