使用 SNMP 监控 Windows Server

使用 SNMP 监控 Windows Server

这有多难?我想从远程 Win 2k3 计算机获取当前 CPU 性能。我需要使用 SNMP,因为该计算机位于防火墙后面。

假设:

  • 我了解网络/可以配置任何类型的 IP 地址/端口转发/防火墙/东西。
  • 我了解 SNMP - 我知道如何使用我的工具从目标机器上的 OID 获取值。
  • 我知道我想用 SNMP 请求的结果做什么。
  • 我已经在 Windows Server 上启用了 SNMP,并配置了相关的 IP 安全/社区内容。
  • 我已经可以使用 SNMP 询问 Windows 服务器标准内容它有多少个磁盘/网络接口等等。

问题:- 我使用什么 OID 来简单地询问当前的性能使用情况。

我花了很多时间向 Google 询问 - 显然问了错误的问题:S......这有多难?

答案1

用来snmpwalk查看机器的报告,然后选择合适的内容:-)

对于 CPU 利用率,主机资源 MIB 提供了一个 SNMP 表,其中1.3.6.1.2.1.25.3.3列出了每个 CPU 及其当前的利用率百分比,但这些值可能有些误导(100% 并不总是意味着您的系统超载)。

www.oidview.com是进行 MIB 浏览的好地方,它将为您提供 MIB 实体名称以及 OID。

答案2

没有任何用于“性能使用情况”的 OID,您需要进行自己的调查并确定要捕获的内容 - 来自 HOSTS MIB(CPU、RAM、磁盘空间)的很多东西都很常见,但您可能还关心特定于硬件的具体内容(例如特定于供应商的 RAID 卡。)

你使用什么工具?Nagios、OpenNMS 和 MRTG 都有常见场景的模板。

另外,请记住,如果您使用 SNMP v2,则您的社区字符串是明文。

答案3

您可以使用仙人掌在 Linux 或 Windows 上管理 snmp 数据和图表。它将自行发现 oid(使用预加载的模板)并为您生成图表(每日/每月...)它是开源的

答案4

我正在使用它NagiosNagios graphs及时监控 CPU、MEM 和磁盘负载,在 Windows 端我用它NSClient++来连接Nagios服务器

  1. 对于我使用的 CPU check_nt_cpuload,这是一个Nagios插件,
  2. 对于记忆我使用check_memory
  3. 我用它SNMP来检查可用磁盘空间,也用来检查单个进程使用的内存,还用它来SNMP检查进程占用了多少 CPU。我还设置了Nagios在达到垃圾存储量时发送电子邮件(例如,服务器 1 上的内存已满)。

我花了大约 5 天的时间让它工作起来,现在我有大约 10 个挂载的日志,我可以知道在特定时间段内服务器的加载量

相关内容