Zabbix-自带监控项与Kye
开启主机自动发现
⦁选择配置 ->自动发现 ->创建自动发现->ip范围必须连续,不连续的话逗号分开
⦁更新间隔 -> 2s ->更新
⦁检查 -> 选择新的 -> ICMP ping ->更新
⦁动作 ->事件源(自动发现) –>创建动作 ->iP地址
⦁主机IP =192.168.1.1 192.168.1.254
⦁在线/不在线>=1秒
操作(这里是否报警)->删除
⦁点击操作->选择新的标签->操作类型->添加主机->添加
⦁点击操作->选择新的标签->操作类型->添加主机群组->选择一个群组->添加
⦁点击操作->选择新的标签->操作类型->与模板相关联->选择你要添加的模板->添加
⦁点击操作->选择新的标签->操作类型->启用主机->添加
⦁最后点击->自动发现->启用自动发现即可
## 监控进程连接数
⦁首先,直接添加一个主机,我们不要选择模板,直接添加一个裸主机.
⦁其次我们的被控主机安装一下Apache软件,并能在控制端通过zabbix-get命令获取到Apache进程数.
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k proc.num[httpd]
6
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k proc.num[httpd,,,]
6
#以上两种写法相同,具体命令参数应该看文档.
⦁在web界面上,选择监控项->创建监控项->选择键值->修改成proc.num[httpd,,,]
->点击添加.
⦁接着点击图形->创建图形->选择创建的自定义key->保存即可.
## 其他常用监控key
同理,我们就可以使用系统默认的监控key来监控内存,CPU以及网络等流量信息,配置过程同上一个案例相同,只是在配置中使用的配置参数略有区别罢了,此处就不再演示了.
基本的数据采集命令:
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.hostname
localhost.localdomain // 此处才是主机名称
zabbix_get.exe -s 192.168.1.20 -p 10050 -k agent.hostname
centos1 // 此处是我们zabbix中自定义的键值对
zabbix_get.exe -s 192.168.1.20 -p 10050 -k agent.ping
1
zabbix_get.exe -s 192.168.1.20 -p 10050 -k agent.version
4.4.3 // zabbix 的version
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.boottime
1578564779 // 系统启动的时间戳
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.cpu.num
1 // 处理器个数
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.localtime
1578569019 // 当前系统时间戳
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.sw.arch
x86_64 // 返回系统架构
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.sw.os
Linux version 3.10.0-1062.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Wed Aug 7 18:08:02 UTC 2019 // 返回系统详细架构
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.sw.packages[ssh] // 已安装软件列表
[rpm] libssh2-1.8.0-3.el7.x86_64, openssh-7.4p1-21.el7.x86_64, openssh-clients-7.4p1-21.el7.x86_64, openssh-server-7.4p1-21.el7.x86_64
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.uname
Linux localhost.localdomain 3.10.0-1062.el7.x86_64 #1 SMP Wed Aug 7 18:08:02 UTC 2019 x86_64
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.uptime
4438 // 系统运行时长(秒)多少秒使用s/uptime来获取
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.users.num
0 // 登陆用户数
zabbix_get.exe -s 192.168.1.20 -p 10050 -k kernel.maxfiles
96437 // 系统支持最大的open files整数
zabbix_get.exe -s 192.168.1.20 -p 10050 -k kernel.maxproc
65536 // 系统支持最大进程数
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.hw.macaddr
[ens32] 00:50:56:22:6f:d3 // mac 地址列表
>zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.sw.os
Linux version 3.10.0-1062.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Wed Aug 7 18:08:02 UTC 2019 // 操作系统信息
允许远程执行命令:
[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
EnableRemoteCommands=1
[root@localhost ~]# systemctl restart zabbix-agent
D:\zabbix> zabbix_get.exe -s 192.168.1.20 -p 10050 -k "system.run[df -h]"
Filesystem Size Used Avail Use% Mounted on
devtmpfs 480M 0 480M 0% /dev
tmpfs 491M 0 491M 0% /dev/shm
tmpfs 491M 7.4M 484M 2% /run
tmpfs 491M 0 491M 0% /sys/fs/cgroup
/dev/mapper/centos-root 27G 1.7G 26G 7% /
/dev/sda1 1014M 136M 879M 14% /boot
tmpfs 99M 0 99M 0% /run/user/0
监控CPU
system.cpu.util[<cpu>,<type>,<mode>]
-CPU: CPU数量(默认是所有CPU)
-Type: 可用值,idle,nice,user,system,iowait,interrupt,sottrq,steal
-Mode 可用值,avg1(一分钟负载),avg5,avg15
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k system.cpu.util[,,avg1]
0.016692
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.cpu.num
1 // cpu 个数
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.cpu.util
0.016461 // cpu 利用率百分比
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.hw.cpu // cpu 详细信息
processor 0: GenuineIntel Intel(R) Celeron(R) CPU E3500 @ 2.70GHz working at 2700MHz
监控内存
proc.mem[<name>,<user>,<mode>,<cmdline>,<memtype>]
-name 进程名(默认所有进程)
-user 用户名(默认所有用户)
-mode 可选值,avg,max,min,sum
-cmdline 命令过滤
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k proc.mem[httpd,,,]
1376378880
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k proc.mem[]
6479925248
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.swap.in
0 // Swap in (f内存到磁盘) .数字
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.swap.out
0 //Swap out (f内存到磁盘) .数字
zabbix_get.exe -s 192.168.1.20 -p 10050 -k system.swap.size
2147479552 // 交换分区大小字节或者百分比
mode - total (默认), active, anon, buffers, cached, exec, file, free, inactive, pinned, shared, wired, used, pused, available
zabbix_get.exe -s 192.168.1.20 -p 10050 -k vm.memory.size[free]
598949888 // 监控内存变化
监控网卡
net.if.in [if,<mode>] #网卡入口流量
net.if.out [if,<mode>] #网卡出口流量
net.if.total [if,<mode>] #网卡进/出流量总和
-if 网卡名称
-mode 可用值(如下)
bytes 字节数
packets 包数量
errors 错误数量
droppend 丢包数量
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k net.if.in[ens32,bytes]
165983
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k net.if.in[ens32,packets]
2166
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k net.if.out[ens32,packets]
2067
[root@localhost ~]# zabbix_get.exe -s 192.168.1.20 -p 10050 -k net.if.discovery
[{"{#IFNAME}":"ens32"},{"{#IFNAME}":"lo"}] // 列出系统网卡信息
zabbix_get.exe -s 192.168.1.20 -p 10050 -k net.if.total[ens32]
20785083 // 列出网卡总流量
zabbix_get.exe -s 192.168.1.20 -p 10050 -k net.tcp.listen[10050]
1 // 检测指定端口是否开启
zabbix_get.exe -s 192.168.1.20 -p 10050 -k net.tcp.port[,80]
0 // 检测本机web服务是否开启
zabbix_get.exe -s 192.168.1.20 -p 10050 -k net.tcp.service[ssh,,22]
1 // 检测是定服务是否在运行
监控IO/读写
vfs.dev.read [<device>,<type>,<mode>] #磁盘读取
vfs.dev.write [<device>,<type>,<mode>] #磁盘写入
-device 磁盘设备(默认all)
-type sectors,operations,bytes,sps,ops,hps
-mode 默认有(avg1,avg5,avg15)
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k vfs.dev.read[/dev/sda,,avg1]
0.000000
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k vfs.dev.read[all]
195.200000
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k vfs.dev.read[all,,avg1]
195.200000
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k vfs.dev.read[all,,avg5]
177.758242
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k vfs.dev.write[all,,avg5]
465.284483
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k vfs.dev.write[all,,avg1]
877.200000
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k vfs.dev.write[/dev/sda,,]
374.800000
文件操作:
zabbix_get.exe -s 192.168.1.20 -p 10050 -k vfs.file.exists[/etc/passwd]
1 // 检测指定文件是否存在
zabbix_get.exe -s 192.168.1.20 -p 10050 -k vfs.file.md5sum[/etc/passwd]
52f5db4f5688b79b9c07ef5a42ea29af // md5验证
zabbix_get.exe -s 192.168.1.20 -p 10050 -k vfs.file.size[/etc/passwd]
870 // 文件大小字节数
zabbix_get.exe -s 192.168.1.20 -p 10050 -k vfs.file.time[/etc/passwd]
1578566854 // 文件日期时间戳
zabbix_get.exe -s 192.168.1.20 -p 10050 -k vfs.fs.discovery // 列出文件系统所有目录结构
[{"{#FSNAME}":"/","{#FSTYPE}":"rootfs"},{"{#FSNAME}":"/sys","{#FSTYPE}":"sysfs"},{"{#FSNAME}":"/proc","{#FSTYPE}":"proc"},{"{#FSNAME}":"/dev","{#FSTYPE}":"devtmpfs"},{"{#FSNAME}":"/sys/kernel/security","{#FSTYPE}":"securityfs"},{"{#FSNAME}":"/dev/shm"}]
mode - total (默认), free, used, pfree (空闲百分比), pused (使用百分比)
zabbix_get.exe -s 192.168.1.20 -p 10050 -k vfs.fs.inode[/dev,free]
122355 // 检测/dev/空闲空间
zabbix_get.exe -s 192.168.1.20 -p 10050 -k vfs.fs.size[/dev,free]
502525952 // 磁盘空间,返回本地文件系统的使用量字节
## 监控web页状态
首先在被控主机安装httpd服务,并设置好一个页面.
[root@localhost ~]# yum install -y httpd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Package httpd-2.4.6-88.el7.centos.x86_64 already installed and latest version
Nothing to do
[root@localhost ~]# echo "hello world" > /var/www/html/index.html
[root@localhost ~]# systemctl restart httpd
监控主机选择 主机->web场景->创建web场景->步骤->网页状态
.
此时,配置web监控就完成啦,很简单吧,下面继续来看一下自定义key的使用步骤吧.
自定义一个Key
1.下面我们来自定义一个Key来实现监控两个服务,这里我们先写一个脚本,脚本有一个参数当传入http时,返回http的进程数量,当传入system参数时,显示系统的总进程数,此处实在客户端操作的.
#!/bin/bash
num=$1
if [ $num == "http" ]
then
ps aux |grep -v "grep" |grep "http" |wc -l
fi
if [ $num == "system" ]
then
ps aux |wc -l
fi
[root@localhost ~]# chmod 777 -R shell.sh
[root@localhost ~]# bash shell.sh http
7
[root@localhost ~]# bash shell.sh system
192
2.将我们的脚本放入自定义目录,并设置zabbix添加一个key.
[root@localhost ~]# cp -a shell.sh /etc/shell.sh
[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
UnsafeUserParameters=1
UserParameter=shell.shell[*],/etc/shell.sh \$1
[root@localhost ~]# systemctl restart zabbix-agent
3.在zabbix服务端通过zabbix-get命令测试一下效果.
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k shell.shell[http]
7
[root@localhost ~]# zabbix_get -s 192.168.1.25 -k shell.shell[system]
192
4.去web页面配置一下就可以了,很简单吧
主机->监控项->创建监控项
主机->图形->创建图形
Zabbix-自带监控项与Kye的更多相关文章
- zabbix 自带监控项报性能问题解决方法
类似报警信息为:Zabbix discoverer processes more than 75% busy 解决方法:修改zabbix_server配置 原因:每个discovery任务在一定时间内 ...
- 【转载】【zabbix】自定义监控项key值
[转载]https://www.cnblogs.com/zhenglisai/p/6547402.html [zabbix]自定义监控项key值 说明: zabbix自带的默认模版里包括了很多监控 ...
- Zabbix触发器和监控项设置时间范围
目录 一.实际业务场景 业务问题 解决办法 二.Zabbix触发器和监控项与用户预警设置时间范围配置流程 一.触发器设置时间范围 二.监控项设置时间范围 三.用户报警设置启用时间 一.实际业务场景 业 ...
- Zabbix 微信报警Python版(带监控项波动图片)
#!/usr/bin/python # -*- coding: UTF- -*- #Function: 微信报警python版(带波动图) #Environment: python import ur ...
- 013.Zabbix的Items(监控项)
一 Items简介 Items是从主机里面获取的所有数据,可以配置获取监控数据的方式.取值的数据类型.获取数值的间隔.历史数据保存时间.趋势数据保存时间.监控key的分组等. 通常情况下item由ke ...
- 【zabbix】自定义监控项key值
说明: zabbix自带的默认模版里包括了很多监控项,有时候为了满足业务需求,需要根据自己的监控项目自定义监控项,这里介绍一种自定义监控项的方式. 1,首先编写自定义监控脚本,本文以监控httpd进程 ...
- Zabbix设置自定义监控项之——监控tcp连接状态
目录 一.用户自定义参数 二.配置 监控 TCP 连接状态 在实际监控中,除了官方自带的一些监控项,我们很多时候有一些定制化监控,比如特定的服务.TCP 连接状态等等,这时候就需要自定义监控项.自定义 ...
- zabbix 自定义 windows 监控项
zabbix获取windows服务器上数据C:\zabbix_agents\conf\zabbix_agentd.win.confUserParameter=conncount,d:\\tools\\ ...
- zabbix自定义监控项、添加图形、设置触发器、远程执行命令
监控项是在zabbix中手机数据的基础,没有监控项就没有数据,系统自带模板带有大量默认item,自定义item可以定义在模板中,在应用模板即可使用对应item:也可直接在host中定义 目标:自定义监 ...
随机推荐
- Idea中使用Maven编码打包时中文乱码的解决办法
-Dfile.encoding=GBK
- web 新能优化
网上的东西太多了都是搜来的东西 留着自己看吧! 摘自 :http://www.cnblogs.com/50614090/archive/2011/08/19/2145620.html 打开网站慢现状分 ...
- Zookeeper执行原理的详细概述
文章作者:Holy Null,来源:http://holynull.leanote.com/post/Zookeeper,非常感谢作者提供如此优秀的原创文章,作者通过俩个月的努力将<Hadoop ...
- SRS之RTMP的TCP线程(即监听线程)
本文分析的是 SRS 针对 rtmp 的端口建立的 tcp 线程.具体建立过程: SRS之监听端口的管理:RTMP RTMP 的 TCP 线程中各个类之间 handler 的关系图 1. RTMP之T ...
- R语言:时间的转化
一般使用R从数据库导出来的时间数据一般都不是我们能看的懂的(具体是什么格式的我也忘记了),需要做如下转化 as.Date(time,origin = '1970-01-01') 最近从网上爬下来的时间 ...
- vue图片的处理技巧
我们想用 post 向后台发送字符串类型的数据:我们可以不适用 data 来进行数据传输,而是用 params 来进行数据传输 代码的简洁之道:分模块化书写: vue 里面提供对图片的监听事件:loa ...
- 在已开启Chrome窗口上调试
代码 @Test void testNow() { /* First: Add the chrome.exe to the PATH. * Then: open the cmd and input t ...
- 解决JxBrowser中BrowserView控件覆盖其他控件的办法
https://blog.csdn.net/w815878564/article/details/79699559 JxBrowser是一个基于chromium的Java浏览器组件,同时支持Swing ...
- OpenCV学习笔记(15)——更多的轮廓函数
凸缺陷,以及如何找到凸缺陷 找某一点到一个多边形的最短距离 不同形状的匹配 1.凸缺陷 前面已经设计了轮廓的凸包和凸性缺陷的概念.OpenCV中有一个函数cv2.convexityDefect()可以 ...
- JavaScript高程第三版笔记(1-5章)
第2章:在html中使用javascript ①script标签的defer属性 <script type="text/javascript" defer="def ...