Zabbix自定义监控内容实验(带自动报警)

2024-01-08 16:15:32

实验前准备
zabbix服务端:192.168.188.17
zabbix客户端:192.168.188.11

  1. 部署zabbix服务端(192.168.188.17)
    zabbix-server 内存至少2G,推荐4G
    (1) 关闭防火墙
    systemctl stop firewalld
    setenforce 0
    (2)获取zabbix下载源
    rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
    (3)更换zabbix.repo为阿里源,下得快一点
    cd /etc/yum.repos.d
    sed -i ‘s#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#’ zabbix.repo
    yum clean all && yum makecache
    yum install -y zabbix-server-mysql zabbix-agent
    (4)安装SCL,便于安装高版本php
    yum install -y centos-release-scl
    修改zabbix-front前端源,安装zabbix前端环境到scl环境下
    vim zabbix.repo
    开启安装源
    在这里插入图片描述
    yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl
    (5)安装zabbix所需的数据库,把zabbix服务端所需要的数据库结构直接下载下来
    yum install -y mariadb-server mariadb
    开启
    systemctl start mariadb
    初始化数据库,并设置密码,比如123
    mysql_secure_installation
    在这里插入图片描述
    创建zabbix所需要的数据库并为zabbix用户授权
    mysql -u root -p123
    create DATABASE zabbix character set utf8 collate utf8_bin;
    GRANT all ON zabbix.* TO ‘zabbix’@‘%’ IDENTIFIED BY ‘zabbix’;
    flush privileges;
    查询Zabbix数据库文件的位置
    在这里插入图片描述
    解压Zabbix自带的数据库的建库语句压缩包并导入到mariadb数据库中
    zcat /usr/share/doc/zabbix-server-mysql-5.0.40/create.sql.gz | mysql -uroot -p123 zabbix
    (6)修改zabbix server配置文件
    vim /etc/zabbix/zabbix_server.conf
    改数据库密码
    在这里插入图片描述
    修改zabbix的php配置文件
    vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
    改时区
    在这里插入图片描述
    (7)启动zabbix相关服务
    systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
    (8)测试
    浏览器访问:http:192.168.188.17/zabbix
    点击下一步
    在这里插入图片描述
    设置数据库的密码zabbix
    在这里插入图片描述
    安装完成后点击finish然后登录,默认账号为Admin,密码为zabbix
    在这里插入图片描述
    登录后点击左侧菜单栏User settings,在Language中选择chines(zh_CN),再点击Update更新
    在这里插入图片描述
    (9)如果中文乱码怎么办?
    在虚拟机上安装相应的工具
    yum install -y wqy-microhei-fonts
    \cp -f /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf
  2. 部署zabbix客户端(192.168.188.11)
    (1)关闭防火墙
    systemctl stop firewalld
    setenforce 0
    (2)客户端和服务端都配置时间同步
    yum -y install ntpdate
    ntpdate -u ntp.aliyun.com
    在这里插入图片描述
    客户端配置时区,与服务器保持一致
    mv /etc/localtime{,.bak} 这一步就是在备份
    ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    (3)设置zabbix的下载源,安装zabbix-agent2
    rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
    cd /etc/yum.repos.d
    sed -i ‘s#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#’ /etc/yum.repos.d/zabbix.repo
    yum install -y zabbix-agent2
    (4)修改agent2配置文件
    vim /etc/zabbix/zabbix_agent2.conf
    指定zabbix服务端的IP地址
    在这里插入图片描述
    指定zabbix服务端的IP地址
    在这里插入图片描述
    指定当前zabbix客户端的主机名
    在这里插入图片描述
    把当前主机的主机名也改一下
    hostnamectl set-hostname zbx-agent01
    bash
    在这里插入图片描述
    (5)启动zabbix-agent2
    systemctl start zabbix-agent2
    查看端口,是否正常启动
    netstat -anpt | grep zabbix
    在这里插入图片描述
    (6)在服务端验证zabbix-agent2的连通性
    安装zabbix主动获取数据的命令
    yum -y install zabbix-get
    获取数据
    zabbix_get -s ‘192.168.10.21’ -p 10050 -k ‘agent.ping’
    zabbix_get -s ‘192.168.10.21’ -p 10050 -k ‘system.hostname’
    在这里插入图片描述
    (7)在Web页面中添加agent主机
    左侧菜单栏配置中点击主机,点击创建主机,如下配置
    在这里插入图片描述
    再点击上方菜单栏中的模板,链接新模板后点击添加
    在这里插入图片描述
    注意看只有可用性那一栏有绿色亮着的才是能用的
    在这里插入图片描述
  3. 自定义监控内容
    假设需要限制登录人数,当登录人数超过3个就发出警报信息
    (1)在客户端上定义key
    我们要先知道获取登录人数的命令是什么
    who | wc -l
    可以看到我这台客户端已经有三个登录用户了
    在这里插入图片描述
    创建zabbix的监控项配置文件,用于自定义key
    vim /etc/zabbix/zabbix_agent2.conf
    表示将自定义的监控项配置文件创建在zabbix_agent2.d目录中
    在这里插入图片描述
    在下面定义一下自定义监控项的格式,默认就是这个格式
    在这里插入图片描述
    在zabbix_agent2.d目录中创建自定义配置项的文件
    cd /etc/zabbix/zabbix_agent2.d/
    这个文件名字随便取,但必须是.conf后缀
    vim User_login.conf
    里面只需要按定义的格式写一条就行
    UserParameter=login.user,who|wc -l
    这里的login.user就是key,这个名字可以随便取,key对应的value就是后面那条shell command的执行结果
    在这里插入图片描述
    重启服务
    systemctl restart zabbix-agent2
    (2)先去服务端验证一下这个监控项能不能用,我们这就是通过查看login.user这个key对应的value来监控客户端的登录人数
    zabbix_get -s ‘192.168.188.11’ -p 10050 -k ‘login.user’
    能看到确实是三个没问题
    在这里插入图片描述
    (3)在Web页面创建自定义监控模板,总共五步走
    第一步创建模板
    在这里插入图片描述
    在这里插入图片描述
    现在就可以在模板里找到这个模板了
    在这里插入图片描述
    第二步点击Template Login User创建应用集,应用集是用于管理监控项的
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    第三步创建监控项
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    第四步创建触发器,触发器就是在监控项满足一定条件时触发警报
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    第四点五步创建图形,这一步不是必须的,可以学习一下
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    第五步将主机与模板关联起来
    在这里插入图片描述
    在这里插入图片描述
    此时就可以看到图表形式的监控了
    在这里插入图片描述
    (4)为了方便测试我们可以在仪表盘上加一个组件,专门监测客户端
    在这里插入图片描述
    在这里插入图片描述
    添加完毕,目前风平浪静
    在这里插入图片描述
    然后我们再开一个shell,成为第四个登录的用户
    在这里插入图片描述
    然后就能看到告警了
    在这里插入图片描述
    关了第四个登录,就会显示已解决的状态
    在这里插入图片描述
    (5)为了更方便运维,还可以设置邮件报警
    在这里插入图片描述
    在这里插入图片描述
    QQ邮箱的授权码怎么获得
    登录QQ邮箱后点击右上角“账号与安全”
    在这里插入图片描述
    在这里插入图片描述
    后面按提示操作就可以获得授权码了
    在这里插入图片描述
    可以测试一下
    在这里插入图片描述
    在这里插入图片描述
    点击测试就能收到测试邮件了,说明没问题
    在这里插入图片描述
    继续做完成自动化告警
    在这里插入图片描述
    在这里插入图片描述
    测试一下,再登录一个,触发报警,看看能不能实现自动报警
    仪表盘上有了
    在这里插入图片描述
    邮箱里也收到了
    在这里插入图片描述

文章来源:https://blog.csdn.net/qq_53772682/article/details/135389502
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。