Bug 1322859

Summary: [RFE] Report Hypervisor version info as a fact on the Hypervisor
Product: Red Hat Enterprise Linux 7 Reporter: Chris Snyder <csnyder>
Component: virt-whoAssignee: Radek Novacek <rnovacek>
Status: CLOSED ERRATA QA Contact: Eko <hsun>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.3CC: lmiksik, ovasik, shihliu
Target Milestone: rcKeywords: FutureFeature
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: virt-who-0.17-1.el7 Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-11-04 05:08:53 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Chris Snyder 2016-03-31 13:09:53 UTC
Description of problem:
Virt-who presently collects and sends up version and type information
about the hypervisors it reports on. The request is to submit these as facts on the hypervisor itself.


How reproducible:
100%

Actual results:
Hypervisor version and type are submitted as guest attributes.


Expected results:
Hypervisor version and type info are added as facts to the hypervisor itself

Comment 1 Radek Novacek 2016-04-21 09:08:05 UTC
Chris, should virt-who report the hypervisor version and type to both hypervisor and guest? Or is hypervisor fact enough?

Comment 2 Chris Snyder 2016-04-21 18:08:22 UTC
I believe so. We are tracking the guest attributes for each guest id reported but do not see the hypervisor type and version being used anywhere. As that information changes when the guest id moved from one hypervisor to another I think (candlepin) should keep track of it on the hypervisor consumer and not on each guest.

Thanks!

Comment 3 Radek Novacek 2016-04-26 13:59:46 UTC
Thanks for your answer.

Is there predefined fact names that could be used for hypervisor type and version facts?

Comment 4 Radek Novacek 2016-05-03 08:50:54 UTC
For now, I've added `hypervisor.type` and `hypervisor.version` facts to the list of facts that virt-who report for each hypervisor.

I can rename them if needed.

https://github.com/virt-who/virt-who/commit/4c67f88a6d2881c8db9392afd3dadcf370a2122d

Comment 5 Radek Novacek 2016-05-17 13:33:21 UTC
Fixed in virt-who-0.17-1.el7.

Comment 7 Liushihui 2016-06-03 08:27:01 UTC
Verified it on virt-who-0.17-2.el7.noarch since virt-who can report Hypervisor version info as a fact. 

Verified version:
Satellite6.2-20160601
subscription-manager-1.17.6-1.el7.x86_64
python-rhsm-1.17.2-1.el7.x86_64
python-rhsm-1.17.2-1.el7.x86_64

Verified process:
1. Register system to satellite5.7
2. Configure virt-who run at esx mode and check virt-who's log.
# virt-who -o -d --satellite5 --satellite-server=sat57nosyn.redhat.com --satellite-username=admin --satellite-password=admin  --esx-server=10.73.2.95 --esx-username=administrator --esx-password=Welcome1! --esx 
"hypervisorId": {
	"hypervisorId": "3e504d56-3982-037b-f3e6-669289892fa1"
}, 
"name": "bootp-73-5-248.rhts.eng.pek2.redhat.com", 
"guestIds": [
	{
		"guestId": "4206405a-4133-bd0c-f8a5-9c7bc1355837", 
		"state": 1, 
		"attributes": {
			"active": 1, 
			"virtWhoType": "esx"
		}
	}
], 
"facts": {
	"hypervisor.type": "VMware ESXi", =====> Hypervisor type
	"cpu.cpu_socket(s)": "4", 
	"hypervisor.version": "6.0.0" =====> Hypervisor version
}

3. Configure virt-who run at libvirt mode and check virt-who's log.
# virt-who -o -b --satellite5 --satellite-server=sat57nosyn.redhat.com --satellite-username=admin --satellite-password=admin  --libvirt --libvirt-server=qemu://
"hypervisors": [
	{
		"hypervisorId": {
			"hypervisorId": "0370b9ba-59f9-45de-96d7-78f6f2eb78a4"
		}, 
		"guestIds": [
			{
				"guestId": "4d25d078-112d-42ad-8710-226b760ec9e5", 
				"state": 1, 
				"attributes": {
					"active": 1, 
					"virtWhoType": "libvirt"
				}
			}
		], 
		"facts": {
			"hypervisor.type": "QEMU",  =====> Hypervisor type
			"cpu.cpu_socket(s)": "1", 
			"hypervisor.version": 2006000 =====> Hypervisor version
		}
	}
]

Result:
Virt-who can get hypervisor's type and version as fact on satellite5.7. Therefore, verify it.

Comment 9 errata-xmlrpc 2016-11-04 05:08:53 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-2387.html