zabbix4.0理论+操作——02(zabbix部署+邮件报警)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix4.0理论+操作——02(zabbix部署+邮件报警)相关的知识,希望对你有一定的参考价值。
zabbix理论+操作——02(zabbix部署+邮件报警)实验环境
监控端:192.168.136.168
被监控端:192.168.136.185
安装LAMP
yum install -y httpd mariadb-server mariadb php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mhash
vim /etc/httpd/conf/httpd.conf
ServerName www.benet.com
DirectoryIndex index.html index.php
vi /etc/php.ini
date.timezone = PRC //设置中国时区
systemctl stop firewalld.service
setenforce 0
systemctl start httpd.service
systemctl start mariadb.service
netstat -ntap | egrep ‘(80|3306)‘
mysql_secure_installation
vi /var/www/html/index.php
<?php
phpinfo();
?>
mysql -u root -p
#为zabbix设置一个数据库,并且要设置一个用户去管理它
CREATE DATABASE zabbix character set utf8 collate utf8_bin;
GRANT all privileges ON *.* TO ‘zabbix‘@‘%‘ IDENTIFIED BY ‘admin123‘;
flush privileges;
#写一个测试首页
[root@localhost ~]# cd /var/www/html/
[root@localhost html]# vim index.php
<?php
phpinfo();
?>
#验证zabbix能否连接数据库
<?php
$link=mysql_connect(‘192.168.136.167‘,‘zabbix‘,‘admin123‘);
if($link) echo "<h1>Success!!</h1>";
else echo "Fail!!";
mysql_close();
?>
---------解决本地无法登录问题(可忽略)---------------
[root@localhost html]# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or g.
Your MariaDB connection id is 9
Server version: 5.5.64-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type ‘help;‘ or ‘h‘ for help. Type ‘c‘ to clear the current input statement.
MariaDB [(none)]> select user,host from mysql.user; //有空用户名称占用导致本地无法登录远程可登录
+--------+-----------------------+
| user | host |
+--------+-----------------------+
| zabbix | % |
| root | 127.0.0.1 |
| root | ::1 |
| | localhost |
| root | localhost |
| | localhost.localdomain |
+--------+-----------------------+
6 rows in set (0.01 sec)
drop user ‘‘@localhost;
drop user ‘‘@cacti;
flush privileges;
----------------以下开始部署zabbix Server-------
yum install php-bcmath php-mbstring -y
rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm //会自动生成yum源文件,保证系统可以上网
yum install zabbix-server-mysql zabbix-web-mysql -y
zcat /usr/share/doc/zabbix-server-mysql-4.0.0/create.sql.gz | mysql -uzabbix -p zabbix //生成数据库文件,注意密码不要输成root的
grep -n ‘^‘[a-Z] /etc/zabbix/zabbix_server.conf
38:LogFile=/var/log/zabbix/zabbix_server.log
49:LogFileSize=0
72:PidFile=/var/run/zabbix/zabbix_server.pid
82:SocketDir=/var/run/zabbix
101:DBName=zabbix
117:DBUser=zabbix
125:DBPassword=admin123 //修改本行
347:SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
465:Timeout=4
507:AlertScriptsPath=/usr/lib/zabbix/alertscripts
517:ExternalScripts=/usr/lib/zabbix/externalscripts
553:LogSlowQueries=3000
vim /etc/httpd/conf.d/zabbix.conf //修改时区
php_value date.timezone Asia/Shanghai
vim /usr/share/zabbix/include/defines.inc.php //修正图表中文乱码
:%s /graphfont/kaiti/g //从微软系统下复制相应的字体文件到 /usr/share/zabbix/fonts 目录中注意字体名称要对应配置文件,且注意大小写
cp STKAITI.TTF /usr/share/zabbix/fonts/
systemctl enable zabbix-server
systemctl start zabbix-server
netstat -anpt | grep zabbix //监听在10051端口上
systemctl restart httpd.service
http://192.168.136.168/zabbix/ //安装后登录 用户名Admin 密码:zabbix
设置中文环境
Administrator-Users-点击用户-语言中设置
-----------配置代理端-就是被控服务器----如果服务器也需要被自己监控也需要安装--zabbix-agent--
rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm
yum install -y zabbix-agent
grep -n ‘^‘[a-Z] /etc/zabbix/zabbix_agentd.conf
13:PidFile=/var/run/zabbix/zabbix_agentd.pid
32:LogFile=/var/log/zabbix/zabbix_agentd.log
43:LogFileSize=0
98:Server=192.168.175.155
139:ServerActive=192.168.175.155
150:Hostname=test
268:Include=/etc/zabbix/zabbix_agentd.d/*.conf
service firewalld stop
setenforce 0
systemctl enable zabbix-agent.service
systemctl restart zabbix-agent.service
netstat -anpt | grep zabbix //监听在10050端口
---------------增加被控主机--在WEB平台上做-----
配置-主机-创建主机:
主机页面根据需求配置
模板页需要链接模板,根据需要链接相应的模板
0K
--------配置邮件报警功能---服务器上配置---------
yum install mailx
vi /etc/mail.rc //注意网易邮箱需要开启客户端授权码进行第三方登录
----文件末尾新增---
set from=1960277503@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=1960277503@qq.com
set smtp-auth-password=邮箱密码
set smtp-auth=login
echo "hello world" | mail -s "testmail" 1960277503@qq.com //测试发信正常
cd /usr/lib/zabbix/alertscripts
vi mailx.sh //编写发邮件脚本
#!/bin/bash
#send mail
messages=`echo $3 | tr ‘
‘ ‘
‘`
subject=`echo $2 | tr ‘
‘ ‘
‘`
echo "${messages}" | mail -s "${subject}" $1 >>/tmp/mailx.log 2>&1
------
touch /tmp/mailx.log
chown -R zabbix.zabbix /tmp/mailx.log
chmod +x /usr/lib/zabbix/alertscripts/mailx.sh
chown -R zabbix.zabbix /usr/lib/zabbix/
./mailx.sh 13951868284@139.com "主题" "内容" //测试发邮件脚本是否可以正常工作
-----在服务器WEB上配置----
管理-》报警媒体类型-》创建媒体类型-》
名称:Mail-Test
类型:脚本
脚本名称:mailx.sh
脚本参数://新增以下三个参数
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
管理-用户-点击Admin-报警媒介:
类型:Mail-Test //调用上面的脚本
收件人:13951868284@139.com
其它默认-保存
配置-》动作-》创建动作-》删除默认标签,修改触发条件
名称:Mailx
条件 A 主机群组=Linux servers
操作-》如下配置
默认操作步骤持续时间 60
默认接收人 : {TRIGGER.STATUS}:{TRIGGER.NAME}
默认信息:
告警主机:{HOST.NAME}
告警 IP:{HOST.IP}
告警时间:{EVENT.DATE}-{EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}:{ITEM.VALUE}
事件 ID:{EVENT.ID}
操作细节:-》
操作类型:发送消息
发送到用户:Admin (Zabbix Administrator)
仅送到:Mail-Test //一定要配置否则邮件发送不成功
恢复操作:{TRIGGER.STATUS}:{TRIGGER.NAME}
恢复信息:
恢复主机:{HOST.NAME}
恢复 IP:{HOST.IP}
恢复时间:{EVENT.DATE}-{EVENT.TIME}
恢复等级:{TRIGGER.SEVERITY}
恢复信息:{TRIGGER.NAME}:{ITEM.VALUE}
恢复 ID:{EVENT.ID}
操作细节:-》
操作类型:发送消息
发送到用户:Admin (Zabbix Administrator)
仅送到:Mail-Test //一定要配置否则邮件发送不成功
systemctl restart zabbix-server
systemctl restart zabbix-agent.service
------以下是测试报警-----
可以在被控主机上模拟相关参数超过阈值,如磁盘空间。然后验证邮件收发。
systemctl stop zabbix-agent.service //在被监控主机上关闭 测试报警邮件接收
以上是关于zabbix4.0理论+操作——02(zabbix部署+邮件报警)的主要内容,如果未能解决你的问题,请参考以下文章
zabbix-02-CentOS7.4安装zabbix4.0