Java教程

zabbix各种监控类型(十)

本文主要是介绍zabbix各种监控类型(十),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

zabbix自带各种类型的监控 

监控项类型不止以上这些

监控项类型不止以上这些

监控项类型不止以上这些

1 zabbix客户端

我们自定义一个zabbix 客户端类型的监控项

配置文件解析

cat /etc/zabbix/zabbix_agentd.conf |grep -Ev "^$|^#"

PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
EnableRemoteCommands=1
LogRemoteCommands=1
Server=192.168.64.135
ServerActive=192.168.64.135
Hostname=192.168.64.140
Include=/etc/zabbix/zabbix_agentd.d/*.conf #这个说明可以在该目录下创建.conf文件  可以被检测到

配置监控项配置文件

[root@tff_128 zabbix_agentd.d]# 
[root@tff_128 zabbix_agentd.d]# 
[root@tff_128 zabbix_agentd.d]# 
[root@tff_128 zabbix_agentd.d]# 
[root@tff_128 zabbix_agentd.d]# pwd
/etc/zabbix/zabbix_agentd.d
[root@tff_128 zabbix_agentd.d]# ls
userparameter_httpd.conf  userparameter_mysql.conf  userparameter_tomcat.conf
[root@tff_128 zabbix_agentd.d]# cat userparameter_httpd.conf
UserParameter=check-httpd-sum,ps -ef|grep -v grep|grep httpd|wc -l
[root@tff_128 zabbix_agentd.d]# 

重启一下agent服务

监控项页面配置

查看最新数据

 

2 snmp监控

动态索引

虽然你可能会在SNMP OID中找到所需的索引号(例如网络接口),但有时你不能完全依赖不变的索引号。

索引号可能是动态的 - 它们可能会随时间而改变,因此你的监控项可能会停止工作。

为了避免这种情况,可以定义一个考虑到索引号改变的可能性的OID。

使用OID的特殊语法:

<OID of data>["index","<base OID of index>","<string to search for>"]
参数 描
OID of data 主OID用于监控项上的数据检索。
index 处理方法。目前支持一种方法:
index – 搜索索引,并将其附加到数据OID
base OID of index 该OID将被搜索以获取与该字符串对应的索引值。
string to search for 用于在进行查找时与值精确匹配的字符串。区分大小写。

实验环节

这里的关键词路径都可以在snmpwalk -v2c -c public 192.168.64.131 这里获取的 我取部分关键词发现也可以的

hrSWRunPerfMem怎么来的

snmpwalk -v2c -c public 192.168.64.131 hrSWRunPerfMem

index 默认写法

hrSWRunPath怎么来的

snmpwalk -v2c -c public 192.168.64.131 hrSWRunPath

/usr/sbin/httpd怎么来的

snmpwalk -v2c -c public 192.168.64.131 hrSWRunPath|grep httpd

 

["index","hrSWRunPath", "/usr/sbin/httpd"] 整个是可以获取进程索引的

特定OID

一些最常用的SNMP OID自动转换为Zabbix的数字表示。 例如, ifIndex 被翻译为 1.3.6.1.2.1.2.2.1.1,则将 ifIndex.0 转换为 1.3.6.1.2.1.2.2.1.1.0

该表罗列了特定的OID。

特定OID 标识符 描述
ifIndex 1.3.6.1.2.1.2.2.1.1 每个接口的唯一值。
ifDescr 1.3.6.1.2.1.2.2.1.2 包含有关接口信息的文本字符串。该字符串应包括制造商的名称、产品名称和硬件接口的版本。
ifType 1.3.6.1.2.1.2.2.1.3 接口的类型,根据物理/链路协议,在协议栈的网络层“下面”进行快速区分。

更多SNMP OID可以百度一下

 

3 日志监控项(zabbix客户端主动式)

1、 zabbix日志监控表达式描述

1)log[/var/log/syslog,<regexp>,<encoding>,<maxlines>,<mode>,<output>]

2)logtr[/var/log/.*.log,<regexp>,<encoding>,<maxlines>,<mode>,<output>]

参数介绍:

l regexp:要匹配内容的正则表达式,或者直接写你要检索的内容也可以。譬如一个ERROR 二个 ERROR|FALSE,当然你也可以不写,就采集了所有的日志了

l encoding:编码相关,linux建议用UTF-8,WIN建议用ANSI,具体情况具体分析

l maxlines:一次性最多提交多少行,这个参数覆盖配置文件zabbxi_agentd.conf中的’MaxLinesPerSecond’,默认留空

l mode:默认是all,也可以是skip,skip会跳过老数据,这个最好是skip,不然会采集历史数据

l output:输出给zabbixserver的数据。可以是\1、\2一直\9,\1表示第一个正则表达式匹配出得内容,\2表示第二个正则表达式匹配错的内容。这个没怎么用

log支持日志切割,只监控当前文件夹固定文件日志

logrt支持文件正则,支持多个日志文件采集,不管新旧文件,只要他们有变更,zabbix都会监控。

实验环节

log类型

查看数据

点击历史记录

logrt类型

这里文件权限都是755 主要是让zabbix拥有读权限

查看数据

备注:不管新日志、老日志,只要他们有变更,zabbix都会监控。

 

4 简单检查

Zabbix的简单检查(simple check)主要使用ICMP协议对客户端进行监控,通过ping的方式来查看客户端网络状态。

1、icmppingloss [<target>,<packets>,<interval>,<size>,<timeout>]

说明:通过ICMP协议(也就是ping)检查主机是否存活,返回结果为1时代表存活,0为失败

参数:<target>被监控主机的IP地址或主机名、<packets>一共发送多少个ICMP包、<interval>每次发送ICMP包的间隔、<size>每个ICMP包的大小、<timeout>超时时间

例:icmpping[,4],连续发送4个数据包,只要有一个返回结果为1,代表主机为存活状态

2、icmppingsec[<target>,<packets>,<interval>,<size>,<timeout>,<mode>]  说明:检测丢包率

参数:<mode>可选min(最小值)、max(最大值)、avg(平均值)

3、icmpping[<target>,<packets>,<interval>,<size>,<timeout>]  说明:返回PING的响应时间

参数:同样参数不作赘述

4、net.tcp.service.perf[service,<ip>,<port>]  说明:检查服务的性能,返回为0代表服务不可用,否则的话返回值是对应服务所花的时间,以秒为单位

参数:<service>可选值有tcp、ssh、http、ftp、smtp、https等,<port>为具体端口,不指定端口的话采用所指定服务的标准端口,如http代表80;如指定的是tcp,则必须再指定端口

例:net.tcp.service.perf[tcp,,80],检测80端口的连接时间

5、net.tcp.service[service,<ip>,<port>]

说明:检查指定的TCP端口是否可以连接

参数:同上

例:net.tcp.service[,,22],检测22端口是否能正常连接

实验环节

检测85端口是否能正常连接

添加监控

添加图形

 

5 外部检查

概述

外部检查是由Zabbix服务器通过运行shell脚本或二进制执行的检查。

外部检查不需要在被监控的主机上运行任何代理。

监控项Key的语法是:

script[<parameter1>,<parameter2>,...]
 

当:

参数 定
script shell脚本或二进制文件的名称。
parameter(s) 可选的命令行参数。

如果你不想将任何参数传递给脚本,可以使用:

script[] 或者script
 

Zabbix服务器将查找定义为外部脚本的位置的目录(Zabbix服务器配置文件中的参数“ExternalScripts”),然后执行该命令。 该命令将以Zabbix用户执行,因此,任何访问权限或环境变量都应在包装器脚本中处理,并且该命令的权限应允许该用户执行它。只有指定目录中的命令才可执行。

实验环节

统计用户在线数量

脚本必须在这个路径/usr/lib/zabbix/externalscripts

添加监控

添加图形

参考链接:

https://www.zabbix.com/documentation/3.4/zh/manual

 

这篇关于zabbix各种监控类型(十)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!