zabbix-server 192.168.146.201
zabbix-agent 192.168.146.201
192.168.146.205
zabbix-server
1,安装数据库
https://blog.csdn.net/PpikachuP/article/details/88823158
2,
安装zabbix的源
#rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
安装zabbix组件
#yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
3,
创建数据库用户
#mysql -uroot -p123
>create database zabbix character set utf8 collate utf8_bin;
>grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
>quit;
4,导入zabbix服务器所需要的表和数据
#zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
5,修改配置文件
#vim /etc/zabbix/zabbix_server.conf
#修改以下几项
#数据库密码
DBPassword=zabbix
编辑文件设置时区
#vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Europe/Riga (打开注释)修改成(Asia/Shanghai
浏览器访问
http://192.168.146.201/zabbix
第一次是zabbix/zabbix
第二次是Admin/zabbix
解决web界面乱码方块
在windows下的C:\Windows\Fonts下找到宋体字文件simsun.ttc
上传到linux服务器中
#cd /usr/share/zabbix/fonts
将原来的字体备份
#mv graphfont.ttf graphfont.ttf.bak
把windows中的字体改名为graphfont.ttf
#mv simsun.ttc graphfont.ttf
修改server端的/etc/hosts文件,把要监控的所有agent客户端的ip和主机名添加的静态域名解析里
zabbix-agent
#rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
#yum -y install zabbix-agent
修改配置文件
#vim /etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1
#改成 监控端的ip 被动模式
ServerActive=127.0.0.1
#改成 监控端的ip 主动模式
Hostname=Zabbix server
#把这项注释掉
# HostnameItem=system.hostname
#把这项注释去掉 (自动获取主机名)
#systemctl restart zabbix-agent
7,创建要监控的主机
ZBX为绿代表正常可监控,或查看日志/var/log/zabbix//zabbix_server.log,出现enabling,
8,设置邮件报警
#yum -y intall mailx
#vim /etc/mail.rc
set [email protected] smtp=smtp.163.com
set [email protected] smtp-auth-password=xxx
set smtp-auth=login
测试
#echo "zabbix test mail" |mail -s "zabbix" [email protected]
测试发送邮件,标题zabbix,邮件内容:zabbix test mail,发送到的邮箱:[email protected]
添加Zabbix服务端邮件发送脚本
#cd /usr/lib/zabbix/alertscripts
进入脚本存放目录
#vim sendmail.sh
#!/usr/bin/sh
echo 'start' >> /tmp/zabbix.log
messages=`echo $3 | tr '\r\n' '\n'`
subject=`echo $2 | tr '\r\n' '\n'`
echo "${messages}" | mail -s "${subject}" $1
echo "${messages}" >> /tmp/zabbix.log
echo "end" >> /tmp/zabbix.log
date >> /tmp/zabbix.log
echo '-------------' >> /tmp/zabbix.log
#chown zabbix.zabbix sendmail.sh
#chmod 755 sendmail.sh
#touch /tmp/zabbix.log
#chown zabbix.zabbix /tmp/zabbix.log
设置脚本所有者为zabbix用户
chmod +x sendmail.sh
设置脚本执行权限
测试
./sendmail.sh [email protected] zabbixserver message
添加报警媒介
添加到用户
创建触发器(添加动作)
主题:
Problem: {EVENT.NAME}故障{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}
测试,把zabbix-agent down掉,查看邮件