在SNMP中获取CPU核数的OID是多少

在SNMP中获取CPU核数的OID是多少,snmp,Snmp,有人知道在SNMP中获取CPU核数的OID是什么吗?我想得到一个整数值 谢谢。您可以对这个OID执行SNMP漫游:1.3.6.1.2.1.25.3.3.1.2它将返回每个CPU的负载,您可以简单地计算结果,您将知道内核的数量 OID1.3.6.1.2.1.25.3.3.1.2遵循标准/RFC中的HOST-RESOURCES-MIB,因此它应该在其他平台上工作。 我使用SharpSnmpLib的示例代码: using Lextm.SharpSnmpLib; using Lextm.SharpSn

有人知道在SNMP中获取CPU核数的OID是什么吗?我想得到一个整数值


谢谢。

您可以对这个OID执行SNMP漫游:
1.3.6.1.2.1.25.3.3.1.2
它将返回每个CPU的负载,您可以简单地计算结果,您将知道内核的数量

OID
1.3.6.1.2.1.25.3.3.1.2
遵循标准/RFC中的HOST-RESOURCES-MIB,因此它应该在其他平台上工作。

我使用SharpSnmpLib的示例代码:

using Lextm.SharpSnmpLib;
using Lextm.SharpSnmpLib.Messaging;
using Lextm.SharpSnmpLib.Security;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication
{
  class Program
  {
    static void Main(string[] args)
    {

      var result = new List<Variable>();
      Messenger.BulkWalk(VersionCode.V2,
                     new IPEndPoint(IPAddress.Parse("10.10.10.23"), 161),
                     new OctetString("public"),
                     new ObjectIdentifier("1.3.6.1.2.1.25.3.3.1.2"),
                     result,
                     6000,
                     10,
                     WalkMode.WithinSubtree,
                     null,
                     null);
    }
  }
}
使用Lextm.SharpSnmpLib;
使用Lextm.SharpSnmpLib.Messaging;
使用Lextm.SharpSnmpLib.Security;
使用制度;
使用System.Collections.Generic;
使用System.Linq;
Net系统;
使用系统文本;
使用System.Threading.Tasks;
命名空间控制台应用程序
{
班级计划
{
静态void Main(字符串[]参数)
{
var result=新列表();
Messenger.BulkWalk(VersionCode.V2,
新的IPEndPoint(IPAddress.Parse(“10.10.10.23”),161),
新的八进制字符串(“公共”),
新的目标标识符(“1.3.6.1.2.1.25.3.3.1.2”),
结果,,
6000,
10,
WalkMode.WithinSubtree,
无效的
无效);
}
}
}
result
的计数将是
4
,因为我使用的是4核的Intel i5。

以下是基于@celso catarino neto先前回答的版本

➜ snmptable -M +.  -m +ALL -v 2c -c public -Pu -Ci  mylinuxserver  HOST-RESOURCES-MIB::hrProcessorTable
SNMP table: HOST-RESOURCES-MIB::hrProcessorTable

 index        hrProcessorFrwID hrProcessorLoad
   768 SNMPv2-SMI::zeroDotZero              42
   769 SNMPv2-SMI::zeroDotZero              32
   770 SNMPv2-SMI::zeroDotZero              40
   771 SNMPv2-SMI::zeroDotZero              37
这部电影的老版本是


使用snmpwalk工具进行此操作

$ snmpwalk -c public <machine ip-addr> 1.3.6.1.2.1.25.3.3.1.2 | wc -l
$snmpwalk-c public 1.3.6.1.2.1.25.3.3.1.2 | wc-l

它将返回一个整数作为所需的CPU核数

,这完全取决于主机提供的MIB!也有可能您的主机上根本无法从SNMP获得信息。FoggyDay,我认为您的评论可能是对这个问题的一个不错的回答。=)
$ snmpwalk -c public <machine ip-addr> 1.3.6.1.2.1.25.3.3.1.2 | wc -l