• 2--Zabbix客户端安装 ; 制作模板


    一、 Zabbix 监控基础架构

    zabbix-agent(数据采集)—>zabbix-server(数据分析|报警)—> 数据库(数据存储)<—zabbix web(数据展示)

    img

    二、 zabbix 快速监控主机(客户端安装)

    zabbix5.0版本推出了使用go语言重写的agent2,也是5.0版本新特性,agent2有如下特性:

    • 完成的插件框架支持,可扩张服务及应用监控
    • 支持灵活的采集周期调度
    • 更高效的数据采集及传输
    • 可完全替换先有的agent
    • ............

    agent2默认使用的10050端口,与zabbix agent端口一样,不修改端口情况下,同一台机器不能同时启动zabbix agent 与 zabbix agent2

    1、两台客户端安装步骤

    # 0、下载epel源
    [root@zabbix01 ~]# yum install epel-release -y
    
    # 1 、获取zabbix官方源
    [root@zabbix01 ~]# rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm 
    
    # 2、修改源
    [root@zabbix01 ~]# sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
    [root@zabbix01 ~]# yum clean all && yum makecache
    
    #3、注意时间正确
    [root@zbz-agent1 ~]# yum install -y ntpdate
    [root@zbz-agent1 ~]# ntpdate -u ntp.aliyun.com
    [root@zbz-agent1 ~]# mv /etc/localtime{,.bak}      # 统一时区
    [root@zbz-agent1 ~]# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    
    #4、安装agent2
    [root@zbz-agent1 ~]# yum install zabbix-agent2 -y
    
    #5、查看配置文件
    [root@zbz-agent1 ~]# cat /etc/zabbix/zabbix_agent2.conf  默认配置文件
    [root@zbz-agent1 ~]# cat /usr/sbin/zabbix_agent2    默认二进制文件
    
    #6、启动agent2且开机自启
    [root@zbz-agent1 ~]# systemctl enable --now zabbix-agent2
    
    #7、检查端口
    [root@zbz-agent1 ~]#  netstat -tunlp|grep zabbix
    tcp6       0      0 :::10050                :::*                    LISTEN      1876/zabbix_agent2 
    
    #8、查看systemctl管理的单元文件
    [root@zbz-agent1 ~]# cat /lib/systemd/system/zabbix-agent2.service 
    
    #9、修改agent2配置文件,修改如下,填写zabbi-server主机ip和主机名
    [root@zbz-agent1 ~]# vim /etc/zabbix/zabbix_agent2.conf 
    PidFile=/var/run/zabbix/zabbix_agent2.pid
    LogFile=/var/log/zabbix/zabbix_agent2.log
    LogFileSize=0
    Server=192.168.15.61    # 改成服务端地址ip
    ServerActive=192.168.15.61  #同上
    Hostname=zbz-agent1     # 改成本台机器的主机名
    Include=/etc/zabbix/zabbix_agent2.d/*.conf
    ControlSocket=/tmp/agent.sock
    
    #10、重启agent2
    [root@zbz-agent1 ~]# systemctl restart zabbix-agent2
    

    2、检测server-client连通性

    服务端

    # 在服务端上通过命令,主动获取数据
    [root@zabbix ~]#  yum install zabbix-get -y
    
    # 命令检测服务端是否能连接上客户端
    [root@zabbix ~]# zabbix_get -s '192.168.15.8' -p 10050 -k "agent.ping"
    1
    [root@zabbix ~]# zabbix_get -s '192.168.15.8' -p 10050 -k "system.hostname"
    zbz-agent1
    

    3、zabbix-web界面,添加主机

    三、 自定义监控内容(制作模板)

    zabbix自带模板Template OS Linux(Template App Zabbix Agent)提供CPU、内存、磁盘、网卡等常规监控,只要新加主机关联此模板,就可自动添加这些监控项。

    1.项目需求

    监控当前有几个用户是登录状态
    需求:限制登录人数不超过3个,超过3个就报警

    自定义key

    # zabbix自带的key
    [root@zabbix ~]# zabbix_get -s '192.168.15.8' -p 10050 -k "system.uname"
    Linux zbz-agent1 3.10.0-1160.31.1.el7.x86_64 #1 SMP Thu Jun 10 13:32:12 UTC 2021 x86_64
    [root@zabbix ~]# zabbix_get -s '192.168.15.8' -p 10050 -k "system.hostname"
    zbz-agent1
    
    #若是写错了key,则报错,未知的指标
    [root@zabbix ~]# zabbix_get -s '192.168.15.8' -p 10050 -k "system.hostname1"
    ZBX_NOTSUPPORTED: Unknown metric system.hostname1
    

    查看模板-监控项

    监控项里的【键值】
    就是zabbix-get 使用的key
    
    如。检测文件系统空间大小
    [root@zabbix ~]# zabbix_get -s 192.168.15.8 -p 10050 -k "vfs.fs.size[/,used]"
    3215724544
    

    2.自定义监控项

    # 1.显示登录人数的命令
    [root@zbz-agent1 ~]# who |wc -l 
    1
    
    # 手动创建zabbix的配置文件,用于自定义key
    需要添加监控项配置文件,路径    /etc/zabbix/zabbix_agent2.d/
    
    # zabbix配置文件,大多数软件配置都会使用include形式来优化配置文件
    [root@zbz-agent1 zabbix_agent2.d]# grep -i '^include' /etc/zabbix/zabbix_agent2.conf
    Include=/etc/zabbix/zabbix_agent2.d/*.conf
    
    #自定义的配置文件,语法是
    UserParameter=<key>,<shell command>
    UserParameter=login-user,who|wc -l
    UserParameter=login-user,/bin/sh /server/scripts/login.sh
    
    #要注意的是key名要唯一,可以写入多个key
    [root@zbz-agent1 zabbix_agent2.d]# vim /etc/zabbix/zabbix_agent2.d/userparameter_login.conf
    UserParameter=login.user,who|wc -l
    
    #重启agent
    [root@zbz-agent1 zabbix_agent2.d]# systemctl restart zabbix-agent2
    
    #在服务端,用命令检测自定义的key
    [root@zabbix ~]# zabbix_get -s 192.168.15.8 -p 10050 -k "login.user"
    1
    
    [root@zabbix ~]# zabbix_get -s 192.168.15.8 -p 10050 -k "login.user"
    2     # 再登一个
    
    #客户端
    [root@zbz-agent1 ~]# who
    root     pts/0        2021-08-02 16:08 (192.168.15.1)
    root     pts/1        2021-08-02 18:50 (192.168.15.1)
    

    3.服务端注册模板(页面操作)

    整个流程是:

    • 创建模板
    • 创建应用集:对监控项分类
    • 创建监控项:定义item,监控的内容
    • 创建触发器:当监控项获取到值,且达到触发条件就会告警
    • 创建图形
    • 主机进行模板关联

    4.需求:监控TCP11种状态集

    1).命令行实现

    [root@web01 ~]# netstat -ant|grep -c TIME_WAIT
    55
    [root@web01 ~]# netstat -ant|grep -c LISTEN
    12
    
    [root@web01 ~]# netstat -tan|awk '$1~/tcp/{print $NF}'|sort|uniq -c|sort -nr
         41 TIME_WAIT
          6 LISTEN
          2 ESTABLISHED
    

    3).编写zabbix监控文件(传参形式)

    [root@web01 ~]# cat /etc/zabbix/zabbix_agentd.d/tcp_status.conf 
    UserParameter=tcp_state[*],netstat -ant|grep -c $1
    root@web01 ~]# systemctl restart zabbix-agent.service
    

    4).server端进行测试

    [root@m01 ~]# rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
    [root@m01 ~]# yum install zabbix-get.x86_64 -y 
    [root@m01 ~]# zabbix_get -s 10.0.1.7 -k tcp_state[TIME_WAIT]
    51
    [root@m01 ~]# zabbix_get -s 10.0.1.7 -k tcp_state[LISTEN]   
    12
    

    5).web端添加

    img

    img

    6).克隆监控项

    由于TCP有多种状态,需要添加多个监控项,我们可以使用克隆快速达到创建的效果

    img

    img
    img

    其他的状态依次添加即可

    7).创建图形

    img

    8).查看图形

    img

    9).设置触发器

    img

    img
    img

    img

  • 相关阅读:
    九度OJ 1185:特殊排序 (排序)
    九度OJ 1184:二叉树遍历 (二叉树)
    九度OJ 1183:守形数 (数字特性)
    九度OJ 1182:统计单词 (计数)
    九度OJ 1181:遍历链表 (链表、排序)
    九度OJ 1180:对称矩阵 (矩阵计算)
    PCH 中定义宏 系统版本
    UIScrollView
    GestureRecognizer
    UITextField 属性
  • 原文地址:https://www.cnblogs.com/caodan01/p/15093071.html
Copyright © 2020-2023  润新知