设为首页 收藏本站
查看: 1033|回复: 0

[经验分享] 对zabbix discovery(LLD)的理解

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-10-10 08:41:58 | 显示全部楼层 |阅读模式
对zabbix discovery(LLD)的理解
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
一、主要用法,请参考官网文档
https://www.zabbix.com/documenta ... low_level_discovery

理解:
1、server和agent或者snmp固定时间沟通1次获取数据。
2、处理返回值,通常是一个json格式的k/v词典,k/v 映射到macro上,利用macro和prototypes循环增加items,triggers等内容。
3、通常是在一个template上定义好,直接创建一个host套用模版,等待LLD自动发现。
4、zabbix自带了3种macro的定义:
discovery of file systems:          {#FSNAME}, {#FSTYPE}
discovery of network interfaces:    {#IFNAME}
discovery of SNMP OIDs:             {#SNMPINDEX}, {#SNMPVALUE}


二、QA
【Q】:zabbix是如何使用LLD中的SNMP OIDs来获取数据的
A:仔细阅读官网文档可以发现,zabbix针对SNMP已经内部定义了相关MACRO,直接使用即可。
(查看:3.3 Discovery of SNMP OIDs)
LLD在获取snmp的entity时,可以生成2个macros: {#SNMPINDEX} 和 {#SNMPVALUE}
以这个为例:
# snmpwalk -v 2c -c public 10.10.10.109 1.3.6.1.4.1.674.10892.5.5.1.20.130.4.1.2  
SNMPv2-SMI::enterprises.674.10892.5.5.1.20.130.4.1.2.1 = STRING: "Physical Disk 0:1:0"
SNMPv2-SMI::enterprises.674.10892.5.5.1.20.130.4.1.2.2 = STRING: "Physical Disk 0:1:1"
SNMPv2-SMI::enterprises.674.10892.5.5.1.20.130.4.1.2.3 = STRING: "Physical Disk 0:1:2"

{#SNMPINDEX}会获取1.3.6.1.4.1.674.10892.5.5.1.20.130.4.1.2这串OID中最后一个值;
{#SNMPVALUE}会取得对应的值。
也就是说,
{#SNMPINDEX} -> 1,{#SNMPVALUE} -> "Physical Disk 0:1:0"
{#SNMPINDEX} -> 2,{#SNMPVALUE} -> "Physical Disk 0:1:1"
{#SNMPINDEX} -> 3,{#SNMPVALUE} -> "Physical Disk 0:1:2"

然后我们通过item prototypes来得到获取到的每个值,例如:
KEY: DiskStatus.[{#SNMPINDEX}]
SNMP OID: 1.3.6.1.4.1.674.10892.5.5.1.20.130.4.1.24.{#SNMPINDEX}
对应的数据是:
# snmpwalk -v 2c -c public 10.10.10.109 1.3.6.1.4.1.674.10892.5.5.1.20.130.4.1.24.1
SNMPv2-SMI::enterprises.674.10892.5.5.1.20.130.4.1.24.1 = INTEGER: 3


三、应用
1、监控交换机
直接套用模版【Template SNMP Interfaces】即可。
其中,LLD使用了这个OID(IF-MIB::ifDescr)来获取网卡信息,例如:
# snmpwalk -v 2c -c public 10.0.200.1 IF-MIB::ifDescr
IF-MIB::ifDescr.1 = STRING: GigabitEthernet1/0/1
IF-MIB::ifDescr.2 = STRING: GigabitEthernet1/0/2
IF-MIB::ifDescr.3 = STRING: GigabitEthernet1/0/3
IF-MIB::ifDescr.4 = STRING: GigabitEthernet1/0/4
(略)

结合{#SNMPVALUE}来取值,例如:
【Item prototype】中,【Outgoing traffic on interface $1】我们注意到
Key: ifOutOctets[{#SNMPVALUE}]
SNMP OID: IF-MIB::ifOutOctets.{#SNMPINDEX}

对应的是结果是:
# snmpwalk -v 2c -c public 10.0.200.1 ifOutOctets.1
IF-MIB::ifOutOctets.1 = Counter32: 305669896

即:
ifOutOctets[1] = 305669896




2、监控dell的idrac
参考:https://github.com/endersonmaia/zabbix-templates



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-124911-1-1.html 上篇帖子: zabbix items复制 下篇帖子: centos的zabbix自定义脚本
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表