zabbix——企业级监控的配置与搭建

一、zabbix概述

  • zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。是一个高度集成的网络监控套件。

1.1 zabbix的特性

  • 数据收集
  • 灵活的阀值定义
  • 高级告警配置
  • 通过内置的绘图方法实现监控数据实时绘图
  • 允许自定义创建多监控项视图
  • 历史数据存储
  • 配置简单
  • 模板中可以添加组监控
  • 自动发现网络设备
  • 快速的web接口
  • Zabbix API提供程序级别的访问接口,第三方程序可以很快接入
  • 安全的权限认证
  • 全特性、agent易扩展
  • C开发,高性能,低内存消耗,易移植
  • 通过Zabbix proxy可以非常容易的创建远程监控

1.2 zabbix重要组件

  • zabbix server
    负责接收agent发送的报告信息的核心组件,所有配置、统计数据及操作数据都由它组织进行

  • database storage
    专用于存储所有配置信息,以及由zabbix收集的数据

  • web interface
    zabbix的GUI接口

  • proxy
    可选组件,常用于监控节点很多的分布式环境中,代理server收集部分数据转发到server,可以减轻server的压力

  • agent
    部署在被监控的主机上,负责收集主机本地数据如cpu、内存、数据库等数据发往server端或proxy端

1.3 监控系统运行流程

  1. agentd需要安装到被监控的主机上,它负责定期收集各项数据,并发送到zabbix server端
  2. zabbix server将数据存储到数据库中,zabbix web根据数据在前端进行展现和绘图。

1.3.1 agentd收集数据的两种模式

  • 主动:agent请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy

  • 被动:server向agent请求获取监控项的数据,agent返回数据。

二、zabbix部署

2.1 部署zabbix监控环境

角色IP
服务器(监控端)192.68.1.14
客户端(被监控端)192.68.1.15

2.2 部署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.example.com:80        # 95 
DirectoryIndex index.php index.html  # 164 添加 index.php 

vim /etc/php.ini 
date.timezone = PRC                  # 878 

开启服务

systemctl start httpd
systemctl start mariadb
netstat -anpt | grep 80
netstat -anpt | grep 3306

初始化数据库

mysql_secure_installation
Enter current password for root (enter for none):     #直接回车,输入root的当前密码(为none输入)
Set root password? [Y/n] y
New password:                      #设置密码为(自己设)
Re-enter new password:             
Password updated successfully!
Reloading privilege tables..
 ... Success!

Remove anonymous users? [Y/n] y     #移除匿名账号

… Success!

Disallow root login remotely? [Y/n] n             #不允许root账号远程登录
 ... skipping.

Remove test database and access to it? [Y/n] y    #移除test数据库,空数据库
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reload privilege tables now? [Y/n] y              #重置权限列表
 ... Success!

mysql -uroot -p123456  

测试php网页

vi /var/www/html/index.php
<?php
phpinfo();
?>

通过网页访问网页即可:192.168.10.14

在这里插入图片描述
连接数据库,对zabbix用户授权

mysql -u root -p
CREATE DATABASE zabbix character set utf8 collate utf8_bin;
GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'admin123';
flush privileges;

验证php与mysql的对接

vi /var/www/html/index.php
<?php
$link=mysql_connect('192.168.1.11 ','zabbix','admin123');
if($link) echo "<h1>Success!!</h1>";
else echo "Fail!!";
mysql_close();
?>

在这里插入图片描述

2.3 部署zabbix服务器

添加两个在线源地址

 # 添加阿里云源区域
vi /etc/yum.repos.d/CentOS-Base.repo  
[Ali]
name=CentOS-$releasever - Base
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

vi /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/\$basearch/
enabled=1
gpgcheck=0

[zabbix-non-supported]
name=Zabbix Official Repository non-supported - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/\$basearch/
enabled=1
gpgcheck=0

清空并添加yum缓存

yum makecache
yum clean all

安装插件

yum install -y php-mbstring php-bcmath		#下载zabbix源,安装zabbix服务端软件
rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
yum install zabbix-server-mysql zabbix-web-mysql  -y  --nogpgcheck		#导入zabbix监控数据库
zcat /usr/share/doc/zabbix-server-mysql-4.0.27/create.sql.gz | mysql -uzabbix -padmin123 zabbix

修改配置文件

vi /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
100:DBName=zabbix
116:DBUser=zabbix
125:DBPassword=admin123      //修改此行即可
356:SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
473:Timeout=4
516:AlertScriptsPath=/usr/lib/zabbix/alertscripts
527:ExternalScripts=/usr/lib/zabbix/externalscripts
563:LogSlowQueries=3000

vi /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai      //修改时区,将此行注释去掉修改即可
vi /usr/share/zabbix/include/defines.inc.php     //下面操作是修改图表中文乱码
:%s /graphfont/kaiti/g 

从微软系统C:\Windows\Fonts下复制相应的字体文件到 /usr/share/zabbix/assets/fonts 目录中注意字体名称要对应配置文件改为kaiti.ttf,且注意大小写

在这里插入图片描述
启动zabbix-server服务,并重启httpd服务

systemctl enable zabbix-server
systemctl start zabbix-server
netstat -anpt | grep zabbix   //监听在10051端口上
systemctl restart httpd.service

网页的配置步骤
http://192.168.1.11 /zabbix/ //安装登录 用户名Admin 密码:zabbix

状态检查
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

在这里插入图片描述登录zabbix网页
在这里插入图片描述根据mysql数据库中的zabbix数据库中的user表中得到在这里插入图片描述
在这里插入图片描述进行语言的修改时很重要的一步,方便我们后续的操作
在这里插入图片描述在这里插入图片描述然后刷新即可
在这里插入图片描述
在zabbix中创建主机
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
为主机添加模板
在这里插入图片描述
在这里插入图片描述

2.4 在zabbix-server上设置邮箱报警

yum -y install mailx

vi /etc/mail.rc	# 在文末添加以下内容
set from=1197678912@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=1197678912@qq.com
set smtp-auth-password=***************授权码
set smtp-auth=login

编写发邮件的脚本

cd /usr/lib/zabbix/alertscripts
vi mailx.sh //编写发邮件脚本
#!/bin/bash
#send mail
messages=`echo $3 | tr '\r\n'  '\n'`
subject=`echo $2 | tr '\r\n'  '\n'`
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  1197678912@qq.com  "test" "nihao"

在这里插入图片描述在zabbix网页浏览器上设置报警媒介

在这里插入图片描述在这里插入图片描述在这里插入图片描述添加后更新即可正常使用

需要做到报警操作,还要在浏览器上面设置动作操作

在这里插入图片描述在这里插入图片描述
需要点击编辑区域的添加,不然会一直显示添加不了
在这里插入图片描述

在这里插入图片描述最后点击动作窗口的添加任务,即可正常的添加动作成功
在这里插入图片描述

2.5 故障模拟

我们可以再被监控端关闭网卡,这样就可以查看是否收到报警邮件来判断之前的设置是否生效

ifconfig ens33 down

在这里插入图片描述我们的邮箱中也收到了报警邮件
在这里插入图片描述在我们进行了紧急的故障修复之后,zabbix也会再次向邮箱发送修复信息,
在这里插入图片描述

总结

不仅仅是连接的故障问题可以报警,我们可以根据生产环境中的不同需求在网页上设置不同的动作操作来达到不同的报警条件,这样人性化的设置让工作的压力会减轻很多。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值