• Zabbix磁盘性能监控


    iostat统计磁盘信息的时候,使用的是/proc/diskstats ,cat /proc/diskstats显示如下

    1       0 ram0 0 0 0 0 0 0 0 0 0 0 0
       1       1 ram1 0 0 0 0 0 0 0 0 0 0 0
       1       2 ram2 0 0 0 0 0 0 0 0 0 0 0
       1       3 ram3 0 0 0 0 0 0 0 0 0 0 0
       1       4 ram4 0 0 0 0 0 0 0 0 0 0 0
       1       5 ram5 0 0 0 0 0 0 0 0 0 0 0
       1       6 ram6 0 0 0 0 0 0 0 0 0 0 0
       1       7 ram7 0 0 0 0 0 0 0 0 0 0 0
       1       8 ram8 0 0 0 0 0 0 0 0 0 0 0
       1       9 ram9 0 0 0 0 0 0 0 0 0 0 0
       1      10 ram10 0 0 0 0 0 0 0 0 0 0 0
       1      11 ram11 0 0 0 0 0 0 0 0 0 0 0
       1      12 ram12 0 0 0 0 0 0 0 0 0 0 0
       1      13 ram13 0 0 0 0 0 0 0 0 0 0 0
       1      14 ram14 0 0 0 0 0 0 0 0 0 0 0
       1      15 ram15 0 0 0 0 0 0 0 0 0 0 0
       7       0 loop0 0 0 0 0 0 0 0 0 0 0 0
       7       1 loop1 0 0 0 0 0 0 0 0 0 0 0
       7       2 loop2 0 0 0 0 0 0 0 0 0 0 0
       7       3 loop3 0 0 0 0 0 0 0 0 0 0 0
       7       4 loop4 0 0 0 0 0 0 0 0 0 0 0
       7       5 loop5 0 0 0 0 0 0 0 0 0 0 0
       7       6 loop6 0 0 0 0 0 0 0 0 0 0 0
       7       7 loop7 0 0 0 0 0 0 0 0 0 0 0
       8       0 sda 3836 1551 149462 7579 3762686 31005542 278146400 23009652 0 14464012 23013470
       8       1 sda1 668 242 24098 267 8 2 32 40 0 283 306
       8       2 sda2 3015 1309 124140 7239 3762678 31005540 278146368 23009612 0 14463763 23013091
      11       0 sr0 0 0 0 0 0 0 0 0 0 0 0
     253       0 dm-0 3639 0 118434 13132 34768259 0 278146072 392988355 0 14464578 393025110
     253       1 dm-1 300 0 2400 523 0 0 0 0 0 213 523
     253       2 dm-2 321 0 2562 283 37 0 296 266 0 317 549

    这个命令用于显示磁盘、分区和统计信息

    sda为整个硬盘的统计信息

    sda1为第一个分区的统计信息

    sda2为第二个分区的统计信息。

    ramdisk设备为通过软件将RAM当做硬盘来使用的一项技术。

    硬盘参数详解如下:

    8   0   sda    3836      1551          149462       7579           3762686    31005542       278146400    23009652          0                      14464012                 23013470
    编号 设备  读完成次数  合并完成次数   读扇区次数   读操作花费毫秒数   写完成次数   合并写完成次数   写扇区次数   写操作花费的毫秒数   正在处理的输入/输出请求数   输入/输出操作花费的毫秒数   输入/输出操作花费的加权毫秒数。

     有了这些信息我们就可以添加进zabbix进行监控

    1. 添加userparameter_io.conf配置文件

       在/etc/zabbix/zabbix_agentd.d下添加userparameter_io.conf, 文件内容如下:

    UserParameter=custom.vfs.dev.read.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$4}' //磁盘读的次数
    UserParameter=custom.vfs.dev.read.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$7}' //磁盘读的毫秒数
    UserParameter=custom.vfs.dev.write.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$8}' //磁盘写的次数
    UserParameter=custom.vfs.dev.write.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$11}' //磁盘写的毫秒数
    UserParameter=custom.vfs.dev.io.active[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$12}' //正在处理的输入输出的请求数
    UserParameter=custom.vfs.dev.io.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$13}' //花费在IO操作上的毫秒数
    UserParameter=custom.vfs.dev.read.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$6}' //读扇区的次数(一个扇区的等于512B)
    UserParameter=custom.vfs.dev.write.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$10}' //写扇区的次数(一个扇区的等于512B)

     2、重启zabbix-agent服务

       systemctl restart zabbix-agent

      3、测试zabbix-server获取数据

        zabbix_get -s 目标服务器IP -p 10050 -k custom.vfs.dev.write.ops[sda] 

     4、配置zabbix-server

        进入web界面—》配置—》模板—创建模板,或者直接在现有的Linux模板下添加监控项

     配置第一个监控项

       Name:  Disk:$1:Read:Bytes/sec
       Key:  custom.vfs.dev.read.sectors[sda]
       Units: B/sec
       Store value: speed per second       //会进行差值计算
       Use custom multiplier     512      //会对值乘以512,因为这里是一个扇区,转换为字节为512B

    第二监控项:和第一个一样的配置过程

                      Name:Disk:$1:Write:Bytes/sec
                      Key:          custom.vfs.dev.write.sectors[sda]
                      Units:        B/sec
                      Store value: speed per second
                      Use custom multiplier     512

      第三个监控项配置参数

                     Name:Disk:$1:Read:ops per second
                      Key:          custom.vfs.dev.read.ops[sda]
                      Units:        ops/second
                      Store value: speed per second

      第四个监控项配置参数:

                     Name: Disk:$1:Write:ops per second
                      Key:          custom.vfs.dev.write.ops[sda]
                      Units:        ops/second
                      Store value: speed per second

     第五个监控项配置参数:

                     Name: Disk:$1:Read:ms
                      Key:         custom.vfs.dev.read.ms[sda]
                      Units:      ms
                      Store value: speed per second

     第六个监控项配置参数:

                     Name:Disk:$1:Write:ms
                      Key:         custom.vfs.dev.write.ms[sda]
                      Units:      ms
                      Store value: speed per second

     IO操作的输入输出没有配置监控项,主要监控的是磁盘的读写情况,接着添加相应的图形即可

  • 相关阅读:
    在VirtualBox安装debian8.8(完整版)
    Ubuntu18.04 离线安装 docker
    基于JWT的Token认证机制及安全问题
    BTree
    ConcurrentHashMap原理
    Utf8BomRemover
    Spring源码下载
    【intellij idea】Project Structure 讲解 Ctrl+Alt+Shift+S
    idea使用过程中, maven包已经正常下载,但是项目中依然无法引入,提示不存在
    java正则判断字符串是否含有中文、数字、字母
  • 原文地址:https://www.cnblogs.com/w787815/p/7261091.html
Copyright © 2020-2023  润新知