More relevant Hardware Information

Hi

For the purpose of a custom report, I’m looking for the name of the cluster that I still can’t find.

Normally I should find it as a property of the hardware inspector but I only find proxied, serial of, uuid of and virtual of

I can’t find more relevant information about the hardware like cluster name, Total number of core in physical host, …

This information is available in BFI, is it possible to use this information in BigFix WebReport relevance

Your help please

Hi, yes, it is.

Physical CPUs (sockets): count of cpupackage
Number of cores per CPU (socket): cores of cpupackage

For cluster data, I used WMI to retrieve:
if (exists service “clussvc”) then (if (exists wmi “\root\MSCluster” and (exists selects “* from MSCluster_Node” of wmi “\root\MSCluster” | FALSE) and (exists selects “* from MSCluster_NodeToActiveGroup” of wmi “\root\MSCluster” | FALSE) and (exists selects “* from MSCluster_ClusterToNode” of wmi “\root\MSCluster” | FALSE)) then (unique values of ((“Cluster Name: " & item 0 of item 2 of it & " | Cluster Resource Group: " & item 0 of item 0 of it & " | Active Node: " & item 1 of item 0 of it & " | Preferred Owner: " & (if (exist item 0 of item 3 of it and exist item 1 of item 3 of it and item 0 of item 3 of it = item 0 of item 0 of it) then (item 1 of item 3 of it) else (“Not Set”)) & " | State: " & item 1 of item 1 of it) of (((substring between “%22” of item 0 of it, substring between “%22” of item 1 of it) of (string value of property “PartComponent” of it, string value of property “GroupComponent” of it ) of select objects “PartComponent, GroupComponent from MSCluster_NodeToActiveGroup” of wmi “root\MSCluster”),((string value of property “Name” of it, ((if (it=”-1") then “StateUnknown” else if (it=“0”) then “Up” else if (it=“1”) then “Down” else if (it=“2”) then “Paused” else if (it=“3”) then “Joining” else “relevance unknown”) of (string value of property “State” of it))) of select objects “Name, State from MSCluster_Node” of wmi “root\MSCluster”), ((substring between “%22” of item 0 of it, substring between “%22” of item 1 of it) of(string value of property “Antecedent” of it, string value of property “Dependent” of it) of select objects “Antecedent, Dependent from MSCluster_ClusterToNode” of wmi “root\MSCluster”), (if (exists select objects “GroupComponent, PartComponent from MSCluster_ResourceGroupToPreferredNode” of wmi “root\MSCluster”) then ((substring between “%22” of item 0 of it, substring between “%22” of item 1 of it) of (string value of property “GroupComponent” of it, string value of property “PartComponent” of it) of select objects “GroupComponent, PartComponent from MSCluster_ResourceGroupToPreferredNode” of wmi “root\MSCluster”) else ((substring between “%22” of item 0 of it, substring between “%22” of item 1 of it) of ("%22%22","%22%22")))) whose (item 1 of item 0 of it = item 0 of item 1 of it and item 1 of item 0 of it = item 1 of item 2 of it))) else “NoClusteredGroupResources”) else error “Not A Cluster”

It will show you something along those lines:
Cluster Name: …| Cluster Resource Group: … | Active Node: … | Preferred Owner: … | State: Up

I do have one property to pull what the actual clustered resources are too if you are interested, I can share that with you too.

Hello

Thank you for this information, I was finally able to solve the problem but only halfway. Indeed I have an environment with Windwos, Linux and AIX servers. The proposed solution covers only Windows servers, I’m looking for a solution valid for any type of OS. Can you please help me to find it

Regarding CPUs, my goal is to have the total number of CPUs per host that hosts the VMs or the AIX LPAR.
count of cpupackage : returns only the number of CPU per VM, LPAR or physical server if it is not virtualized.
If I have several VMs on the same host. VM1 2CPU, VM2 3CPU, I want to find the total number of CPU per host in this case it’s 5

Sincerely

You may need to engage Support team then - assuming you have configured BFI correctly and you have VM Managers for all machines, that data is essentially in BFI and just a matter of extracting it, however, that’s where the problem lies - BFI does not have interface to produce any kind of hypervisor-based reports available (been through that before myself).

BigFix (the platform) can interrogate the endpoints but it will not be able to interconnect what VM is hosted on what hypervisor for anything other than Windows (quite easy to pull it there via reg key). Of course if you have CMDB or something along the lines where you physically know what the hosts are and used the above properties to just pull the numbers (the inspectors should work for all OS platform).

I actually do have an RFE to do exactly that - produce front end to produce this sort of data.

So are you saying total number of CPU packages? If so that is available in https://developer.bigfix.com/relevance/reference/cpupackage.html

The cpupackage inspector is supposed to represent a physical cpu, so if you have 4 physical CPUs then count of cpupackage would give you 4. If each cpupackage had 2 SMT hardware threads and 4 cores then each package would have 8 total SMT threads so (thread of it * core of it) of cpupackage would give you what ONE package had, then just multiply it up by the count and you in this case would get 32 SMT threads in the system.

This is platform agnostic so you can do it on all recent agents.

For something that ties the host with a virtual cluster, you would need the Cloud offering so see https://help.hcltechsw.com/bigfix/10.0/webui/Platform/Config/c_cloudplugins.html and this could correlate data with the local host