I had a similar need a while back, specific to virtual hosts. Normal hardware information is stored in the Nodes table like everything else, but the virtual thing is a bit of a mystery. My gut feeling is that it checks for the presence of virtualisation markers (e.g. vmware-tools, MAC address, registry entries) and some of these tools provide the host via a registry entry or similar - so I think SolarWinds compares that host to any known ESX hosts, and if so will mark it as "virtual host on a.server.com", otherwise "host unknown".
If you're just trying to filter physical vs virtual then the EntityType column is your best bet - Orion.VirtualMachine for any ESX Guest, Orion.VIM.Hosts for any ESX Host, and Orion.Nodes for anything else.
Thanks I will see what I can find...basically I'm looking to create a report showing orphaned Virtual Machines so I can research internally and find out the parent ESX host and make sure to get them into monitoring.
In that case, try these:
--Check for nodes whose vmware name is not the same as the orion caption
select caption, Name, UUID, Nodes.NodeID
inner join Nodes on VIM_VirtualMachines.NodeID = nodes.NodeID
where Name <> caption
--Check for Nodes that are in VMware and Orion but not associated to anything
select UUID, Caption
inner join Nodes on Name = Caption
where VIM_VirtualMachines.NodeID is null
--Check for VMs that are not added to Orion
Select Name, PowerState, IPAddress, UUID
where VIM_VirtualMachines.NodeID is null and PowerState = 'poweredOn'
order by Name
Thanks netlogix but that's not quite what I am looking for.
I have several nodes that I have seen where the hardware type shows Virtual Host Unknown when I look at the node details. This tells me that I have discovered them via NPM but I have not discovered their associated ESX host. Everything in the VIM tables shows information learned from an ESX host but I'm looking for data where Orion doesn't have the host.
I need to find a query to give me just that info. I have seen several but I need to know how many I have.
I would expect to see that in nodes but I show no hardware information (physical or virtual) in the nodes table.
hmmm... I can't find it either... bummer I want to know now too.
Orion.VirtualMachine no longer exists. Has anyone figured out a way to report on HardwareType(s) currently monitored ?
I hope this isn't off-topic. Please forgive, if so. I have this supposed SNMP field called "Hardware" that is being populated from.....where? Please see my screencap. It is not in my Custom Properties, and I've exported the MIBs and it is NOT in there. I also checked the 'Nodes' table in the db and it's not there either. Does anyone know where this is being harvested and is there a way to generate it in a report?
I never found a way to harvest this information. This was the exact thing I was trying to do but it's still an outstanding issue for me.
The Hardware Field is in the Nodes Table. We designate a System as Physical if Orion is polling as a standard system. If the System is apart of a Monitored ESX System and you monitor the Virtual Machine within an ESX monitored system, we will designate the system as Virtual.
If you change the Hardware from Physical to Virtual, it may revert during the next Rediscovery interval.
There is no hardware field within the nodes table. I am looking for a way to run a report that lists nodes that are physical and nodes that are virtual. Can you please explain how to accomplish this?
Easiest way would be to create a custom property to the nodes specifying whether they're physical, virtual or other. Run a report including custom property field.
If that's too complicated, have a go at this :)
Hardware Field found on Node Details, its output is not directly stored in DB,
its generated on the fly and its value depends on if Node has been recognized as a Virtual Machine:
Either by 1) It has entry in VIM_VirtualMachines table (i.e. it’s being monitored by VIM)
or 2) One of its network cards MAC address starts with one of the following VMware vendor prefixes - 0003FF%, 000C29%, 005056%, 000569%, 001C14% .
Possible values are:
a) Physical – Node is a physical machine
b) Virtual, host unknown – Node has entry in VIM_VirtualMachines table (but ESX host which is running this VM is not managed) table or MAC address vendor prefix belongs to VMware
c) Virtual hosted by <someNodeCaption> - Node has entry in VIM_VirtualMachines table and ESX host which is running this VM is managed by Orion and IVIM
For the report, there are built in VM Reports, anything else you have to build yourself using ADV SQL, pulling from Nodes, VIM_VirtualMachines Tables.
SELECT Nodes.Caption AS NodeName,
VirtualMachines.DisplayName AS DisplayName
(VirtualMachines INNER JOIN Nodes ON (VirtualMachines.HostNodeID = Nodes.NodeID)
YOU ROCK! Thanks so much!
1 of 1 people found this helpful
Now, this is dated back to 2012... 3 years forward - can anyone answer this question now?
Yep, years later I'm still looking for a way to capture this value...
I have tweaked it a bit and it seems to be picking up all physical hardware now... will need to keep it running for longer to ensure it is working 100% without false-positives/negatives
/Tested on NPM 10.7 and 11.5.2/
FROM Nodes n
INNER JOIN StatusInfo si ON si.StatusId = n.[Status]
LEFT JOIN VIM_VirtualMachines vm ON vm.NodeID = n.NodeID
LEFT JOIN APM_HardwareInfo hi ON hi.NodeID = n.NodeID
n.UnManaged = '0' --not UnManaged
AND n.ObjectSubType = 'SNMP' --SNMP only please
AND vm.NodeID IS NULL --no record found for VM (assuming it is physical)
AND hi.NodeID IS NULL --no record found for Hardware (assuming Hardware is not polled)