第六十三章 使用 SNMP 监控 IRIS - SNMP 故障排除

简介: 第六十三章 使用 SNMP 监控 IRIS - SNMP 故障排除

第六十三章 使用 SNMP 监控 IRIS - SNMP 故障排除

SNMP 故障排除

IRIS 子代理(运行 ^SNMP 例程)取决于操作系统提供的 SNMP 主代理的正确安装和配置。正如 IRIS 作为子代理中所述,^SNMP 例程与此主代理通信有两种主要方式:

  • ^SNMP 主要在 TCP 端口 705 上使用 AgentX 协议。
  • Windows 上,^SNMP 使用安装为 iscsnmp.dllWindows 扩展代理 DLL

操作系统应该提供配置 SNMP 代理的详细说明,系统管理员应该花一些时间来了解如何执行此操作。如果在使 IRISSNMP 代理通信时遇到问题,以下是一些基本的故障排除指南和提示。

所有系统

  • 确保 SNMP 代理独立于 IRIS 工作,并且至少可以查询 mib-2.system 树以获取一般系统信息。如果失败,在 Windows 上检查 Windows SNMP 服务;在 UNIX®/Linux 上查看 SNMP 守护程序 (snmpd) 是否正在运行。

如果可以成功查询 SNMP 系统信息但不能查询 IRIS MIB,则检查 IRIS 中运行 ^SNMP 例程的后台进程。尝试使用 $$start^SNMP() 函数启动它。如果例程启动但没有继续运行,请检查 IRIS install-dir/mgr 目录中的 messages.logSNMP.log 日志文件中的错误。在 Windows 上,iscsnmp.dll 会在 Windows\System32\snmpdbg.log 中记录它遇

  • 到的任何错误(在 64Windows 系统上,该文件位于 SysWOW64 子目录中)。
  • 确保 IRIS %Service_Monitor 服务已启用。
  • 如果在 %SYS 命名空间中设置 ^SYS(“MONITOR”,”SNMP”,”DEBUG”)=1 并重新启动 ^SNMP IRIS 子代理进程,则可以将更多信息记录到 SNMP.log 文件中。这会记录有关接收和发送的每条消息的详细信息。

Windows 系统

  • 并非所有 Windows 版本都默认安装 Windows SNMP 服务。您可能需要将此作为附加步骤执行。确保该服务的“属性”对话框的“安全”选项卡至少有一个具有读取权限的公共社区。要发送 SNMP 陷阱,您必须在属性对话框的陷阱选项卡上定义社区名称和目标。
  • IRIS 希望在安装 IRIS 之前安装 SNMP 服务,因此它可以将 iscsnmp.dll 添加到正确的注册表项中。安装 IRIS 后,必须重新启动 SNMP 服务,以便它正确加载 iscsnmp.dll 并可以找到新的 IRIS 实例并与之通信。

注意: IRIS,则iscsnmp.dll无法正确注册,必须在安装Windows SNMP服务后使用set myStatus=$$Register^SNMP()函数来注册。完成后,必须重新启动 SNMP 服务。

  • Windows 上,$$start^SNMP() 函数仅向 SNMP 服务发送信号, IRIS ^SNMP 进程实际上是通过从 SNMP 服务到 IRIS 的回调启动的。该过程可能需要几秒钟才能启动,然后再过几秒钟才能响应查询。

UNIX® 系统

许多 UNIX 操作系统 (IBM AIX®) 目前不支持 AgentX 协议。如果您的系统不支持 AgentX,则必须安装单独的支持 AgentXSNMP 代理,例如 Net-SNMP

带有 Net-SNMP 的 Linux 和 macOS

  • 默认不开启AgentX支持,默认端口不是705,必须修改snmpd.conf文件,添加master agentxagentXSocket TCP:localhost:705,或者在命令行使用snmpd -x TCP:localhost:705 .
  • 必须在 snmpd.conf 中定义 syslocationsyscontactsysservices 等基本系统信息,才能成功启动 snmpd 守护程序。

最新版本的 Net-SNMP 还实现了 VACM(基于视图的访问控制模型)安全性,默认情况下,仅允许访问 mib-2.system 子树;因此, IRIS 子代理启动并运行时没有错误,但没有 SNMP 请求转发到 IRIS

  • 必须扩展 snmpd.conf 中定义的“视图”以包括 IRIS MIB 子树。
  • 要发送 SNMP 陷阱,必须使用 snmpd.conf 中的 trapsink 参数定义目标,例如 trapsink 192.16.61.36 public


MIB 结构

通过 SNMP 接口可用的所有托管对象数据都在 IRIS MIB 文件 ISC-IRIS.mib 中定义,该文件位于 install-dir\SNMP 目录中。通常,SNMP 管理应用程序必须加载 MIB 文件,以便被管理的应用程序能够理解并适当地显示信息。由于此过程因应用程序而异,请查阅管理应用程序文档以了解加载 IRIS MIB 的适当方法。

IRIS MIB 中定义的特定数据记录在文件本身中,因此此处不再重复。但是,了解 IRIS MIB 树的整体结构可能很有价值,尤其是当它与同一系统上的多个实例相关时。

注意:查看 MIB 树的最佳方式是将 MIB 加载到管理应用程序或 MIB 浏览器中。这些工具将 MIB 显示为具有对象 ID (OID)、对象的匹配文本表示和对象描述的树。

SNMP 定义了管理信息结构 (SMI),这是所有被管理对象的特定分层树结构,在 RFC 1155中有详细说明。每个托管对象都由一个唯一的对象标识符 (OID) 命名,它被写成一个由句点分隔的整数序列,例如:1.3.6.1.2.1.1.1MIB 将这个点分整数标识符转换为文本名称。

标准的 SNMP MIB 定义了许多标准的管理对象。如 IRIS 所做的那样,要为标准 MIB 定义特定于应用程序的扩展,应用程序使用定义如下的企业分支:

iso.org.dod.internet.private.enterprises (1.3.6.1.4.1)

互联网编号分配机构 (IANA) 为每个组织分配一个私人企业编号作为层次结构中的下一级。对于 IRIS,这是 16563,代表系统间。

在此之下, IRIS 实现其企业私有子树如下:

  • “产品”或应用程序ID级别。对于IRIS,此值为.4(IscIris)。这用作MIB模块标识。
  • 下一层是“对象”层,它将数据对象与通知分开。对于 IRIS,这些是 .1 (irisObjects)  .2 (irisTraps)。按照惯例,树使用一个简短的小写前缀添加到所有数据对象和通知名称。对于 IRIS,这是 iris。。
  • 下一级是“表”或组级别。所有数据对象都组织到表中,即使表中只有一个实例或“行”。这用于将管理数据对象组织成组。这对于在一台机器上支持多个 IRIS 实例也是必要的。所有表都使用 IRIS 实例名称作为表的第一个索引。这些表还可以有一个或多个附加索引。
  • 下一级始终为 .1,是表的“概念行”(根据 SNMP SMI 的要求)。
  • 最后,该表中包含的各个数据对象,包括任何指定为索引的数据对象。
  • 通知(陷阱)被定义为与“表”处于同一层级的单个条目。
  • 通过通知(陷阱)发送的 IRIS 特定辅助对象被定义为与“表”处于同一层级的单个条目。

例如,将数据库的大小编码为:

1.3.6.1.4.1.16563.4.1.3.1.6.4.84.69.83.84.1

这转化为:

iso.org.dod.internet.private.enterprises.intersystems.isciris.irisObjects
irisDBTab.irisDBRow.irisDBSize.TEST(instname).1(DBindex)

相关文章
|
6月前
|
存储 监控
第六十五章 使用 SNMP 监控 IRIS - 用户定义的 SNMP 监视器类示例
第六十五章 使用 SNMP 监控 IRIS - 用户定义的 SNMP 监视器类示例
50 0
|
6月前
|
监控 程序员 数据库
第六十四章 使用 SNMP 监控 IRIS - 扩展 IRIS MIB
第六十四章 使用 SNMP 监控 IRIS - 扩展 IRIS MIB
56 0
|
6月前
|
监控 网络协议 安全
第六十二章 使用 SNMP 监控 IRIS
第六十二章 使用 SNMP 监控 IRIS
64 0
|
监控 网络架构
Zabbix的snmp监控
Zabbix的snmp监控
111 0
|
运维 监控 数据安全/隐私保护
【运维知识进阶篇】zabbix5.0稳定版详解5(SNMP网络管理协议监控)
【运维知识进阶篇】zabbix5.0稳定版详解5(SNMP网络管理协议监控)
305 0
|
监控 数据安全/隐私保护 网络架构
【Zabbix】Zabbix基于SNMP监控配置
【Zabbix】Zabbix基于SNMP监控配置
593 0
|
存储 消息中间件 Prometheus
统一观测丨使用 Prometheus 监控 SNMP,我们该关注哪些指标?
统一观测丨使用 Prometheus 监控 SNMP,我们该关注哪些指标?
统一观测丨使用 Prometheus 监控 SNMP,我们该关注哪些指标?
|
存储 监控 Linux
zabbix使用snmp监控Linux主机(二十)
使用snmp监控Linux主机 1.snmp协议介绍 SNMP(简单网络管理协议)也是应用层的一种协议,默认端口号为161,我们平时监控Linux主机都是安装一个agent客户端进行监控,但是有的公司还需要监控网络设备和Windows主机,这时就不得不采用snmp协议去监控设备了
725 0
zabbix使用snmp监控Linux主机(二十)
|
存储 监控 安全
Zabbix SNMP监控安装、配置与服务器实例(学习笔记六)
SNMP可以监控路由器、打印机、UPS、摄像头、服务器等。 1、安装、配置snmp  yum install net-snmp* -y # vim /etc/snmp/snmpd.
2715 0
QGS
|
监控 安全 开发者
zabbix5.0.8-SNMP协议监控Windows10-PC
记zabbix5.0.8-SNMP协议监控Windows10-PC
QGS
222 0
zabbix5.0.8-SNMP协议监控Windows10-PC