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服务
监控项页面配置
查看最新数据
虽然你可能会在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"] 整个是可以获取进程索引的
一些最常用的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可以百度一下
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都会监控。
查看数据
点击历史记录
这里文件权限都是755 主要是让zabbix拥有读权限
查看数据
备注:不管新日志、老日志,只要他们有变更,zabbix都会监控。
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端口是否能正常连接
添加监控
添加图形
外部检查是由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