概述
1. 环境准备:
zabbix-server 192.168.101.128 mysql5.7
zabbix-client 192.168.101.130
2.搭建过程:
server端:
安装zabbix:
rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
yum -y install zabbix-server-mysql zabbix-web-mysql
安装数据库mysql:
rpm -ivh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
yum repolist enabled | grep "mysql.*-community.*"
yum -y install mysql-community-server
systemctl start mysqld.service && systemctl enable mysqld.service
初始化数据库:
#查看初始密码
cat /var/log/mysqld.log | grep password
#登陆数据库
mysql -uroot -p
#修改密码
set password = password('43478254018@qq.com');
#创建数据库并授权
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'Zabbix123!';
#导入初始数据
cd /usr/share/doc/zabbix-server-mysql-3.4.8/
zcat create.sql.gz | mysql -uzabbix -pZabbix123! -D zabbix
#验证结果
show tables from zabbix;
select count(*) tables, table_schema from information_schema.tables where table_schema ='zabbix';
修改配置文件:
vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=Zabbix123!
#修改安装目录和权限
chown -R zabbix:zabbix /etc/zabbix/
chmod -R 755 /etc/zabbix/
#启动服务并加入开机启动
systemctl start zabbix-server && systemctl enable zabbix-server
#配置php
vim /etc/httpd/conf.d/zabbix.conf
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
# php_value date.timezone Europe/Riga
#去掉时区前的#号并修改为Asia/Shanghai:
php_value date.timezone Asia/Shanghai
#启动apache服务,并设置开机自启
systemctl restart httpd && systemctl enable httpd
登陆网页:
http://192.168.101.128/zabbix
根据提示填写相关的信息就好了 默认登陆用户密码:Admin/zabbix
agent端:
安装zabbix:
rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
yum -y install zabbix-agent
#配置zabbix-agent
sed -i 's/^ *Server=127.0.0.1/Server=192.168.101.128/g' /etc/zabbix/zabbix_agentd.conf
sed -i 's/^ *ServerActive=127.0.0.1/ServerActive=192.168.101.128/g' /etc/zabbix/zabbix_agentd.conf
sed -i 's/^ *Hostname=Zabbix server/Hostname=192.168.101.130/g' /etc/zabbix/zabbix_agentd.conf
'''
Server:被动模式,允许哪台机器连接到aget。
ServerActive: 主动模式,向哪台服务器传送数据。
Hostname:唯一,需与添加主机时‘主机名称’保持一致。
Zabbix agents可以执行被动和主动两种检查方式。
在passive check 模式中agent应答数据请求,Zabbix server(或者proxy)询问agent数据,如CPU 的负载情况,然后Zabbix agent回送结果。
Active checks 处理过程将相对复杂。 Agent必须首先从Zabbix sever索取监控项列表以进行独立处理,然后周期性地发送新的值给server。
执行被动或主动检查是通过选择相应的监测项目类型来配置的。
本文选择被动模式,当zabbix-server监控主机过多出现性能问题时可考虑主动模式。
'''
权限设置:
chown -R zabbix:zabbix /etc/zabbix
chmod -R 755 /etc/zabbix
#启动服务
systemctl start zabbix-agent && systemctl enable zabbix-agent
3. web端设置
更改显示语言为中文
添加主机:192.168.101.130
主机名称:可以使用字母数字、空格、点”.“、中划线”-“、下划线”_“,必须唯一。与agent中配置文件zabbix_agentd.conf的‘Hostname’参数保持一致。
可见的名称:显示在网页列表上供展示的名称。
新的群组:为主机新建分组,所有访问权限都分配到主机组,而不是单独的主机。这也是主机需要属于至少一个组的原因。
IP地址:被监控主机的ip地址。
其它配置默认。
选择模板:template os linux
如果显示乱码就在server端安装字体:
yum -y install wqy-microhei-fonts && cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf
新建监控项:
新建监控项为监控主机运行时长,当主机运行时长超过3个月(180天)触发告警(系统默认模板‘Template OS Linux’已有uptime的信息,记录主机启动时间)。
agent端修改被监控端的zabbix_agent.conf配置文件
[root@zabbix-agent ~]# view /etc/zabbix/zabbix_agentd.conf
UnsafeUserParameters=1
UserParameter=checkuptime,cat /proc/uptime| awk -F. '{run_days=$1 / 86400;print(run_days)}'
重启服务
[root@zabbix-agent ~]# systemctl restart zabbix-agent
server测试
安装zabbix-get。Zabbix get 是一种命令行应用,它可以用于与Zabbix agent进行通信,并从agent哪里获取所需的信息 该应用通常被用于Zabbix agent故障排除。
[root@zabbix-server ~]# yum -y install zabbix-get
测试命令
[root@zabbix-server ~]# zabbix_get -s 192.168.101.130 -k checkuptime
0.307488
新建模板
此处图片较多 详情参考:https://www.linuxidc.com/Linux/2018-09/154433.htm
对于监控项,名称(Name)、值(Key)、信息类型(Type of information)为必选项,且Key唯一
略过.....
邮件推送:
zabbxi实现邮件告警推送有两种方式:
a.使用zabbix服务端的本地邮箱账号发送,邮件名为:user@hostname.localdomain,user为发送邮件的用户,hostname为zabbix-server的主机名,该邮箱只能发送,不能接收外部邮件;
b.使用外部邮箱指定为告警发送邮箱。
一般公司都有邮件系统,为方便管理,本文采用外部邮箱方式发送告警。(申请163邮箱号:zabbix_test_123@163.com ,注意开启客户端授权)
1.关闭postfix
[root@zabbix-server ~]# systemctl stop postfix
[root@zabbix-server ~]# systemctl disable postfix
postfix为本地邮箱推送方式需安装的软件,若同时配置本地和外部邮箱两种发送方式,系统会优先采用外部邮箱方式,所以该步骤不是必须但最好关闭这个服务。
2.安装邮件发送工具mailx
[root@zabbix-server ~]# yum -y install mailx
查看mailx版本:
[root@zabbix-server ~]# mail -V
12.5 7/5/10
3.配置外部邮箱
[root@zabbix-server ~]# vim /etc/mail.rc
set from=zabbix_test_123@163.com
set smtp=smtp.163.com
set smtp-auth-user=zabbix_test_123@163.com
set smtp-auth-password=xxx
set smtp-auth=login
‘smtp-auth-password’为‘客户端授权密码’
#测试
echo "zabbix test mail 123" |mail -s "zabbix" zabbix_test_123@163.com
4.编写邮件发送脚本
修改脚本路径
[root@zabbix-server ~]# vim /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/etc/zabbix/alertscripts
编写脚本mail.sh
[root@zabbix-server ~]# cd /etc/zabbix/
[root@zabbix-server zabbix]# mkdir alertscripts && cd alertscripts && touch mail.sh
[root@zabbix-server alertscripts]# more mail.sh
#!/bin/bash
echo "$3" | mail -s "$2" $1
[root@zabbix-server alertscripts]# chmod 755 mail.sh
$1:收件人邮箱地址;$2:邮件标题;$3:邮件内容
先记录到此
https://www.linuxidc.com/Linux/2018-09/154433.htm
https://www.linuxidc.com/Linux/2018-09/154434.htm
最后
以上就是凶狠秋天为你收集整理的centos 7 zabbix搭建以及邮件微信告警实现的全部内容,希望文章能够帮你解决centos 7 zabbix搭建以及邮件微信告警实现所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复