Bug 1098420

Summary: Virt-who should report guest attributes in order to support virt-guest-limit feature
Product: Red Hat Enterprise Linux 6 Reporter: Radek Novacek <rnovacek>
Component: virt-whoAssignee: Radek Novacek <rnovacek>
Status: CLOSED NOTABUG QA Contact: gaoshang <sgao>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.5CC: acathrow, jsefler, ovasik, redakkan
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1098019 Environment:
Last Closed: 2014-05-16 07:35:26 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:
Embargoed:
Bug Depends On: 1095597, 1098019    
Bug Blocks: 1039651    

Description Radek Novacek 2014-05-16 07:12:40 UTC
This is a request to backport this feature to RHEL-6.5.

+++ This bug was initially created as a clone of Bug #1098019 +++

+++ This bug was initially created as a clone of Bug #1095597 +++

Description of problem:

Observed that with the virt-who-0.9-1.el5 version, guest attributes are not getting reported on rhel5.11 server, due to this the host(having subscription with guest-limit 4) is not reporting the compliance status to yellow when more no.of guest are running on the host 

Version-Release number of selected component (if applicable):
rpm -qa | grep virt-who
virt-who-0.9-1.el5

[root@jsefler-7server ~]# rpm -q virt-who --changelog | grep guest -B1
* Fri Jan 10 2014 Radek Novacek <rnovacek> 0.8-12


How reproducible:
3/3

Steps to Reproduce:
1.Register and attach guest-limit subscription to host
2.Create guest machines on the host and restart virt-who service
3.Verify the guest attributes using the guest id

[root@ibm-x3250m4-05  curl -u stage_test_43:***** --insecure --request GET https://subscription.rhn.stage.redhat.com:443/subscription/consumers/9e229787-69ea-4cc4-9b5d-0f626f83e69b/guestids | python -m simplejson/tool

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   174    0   174    0     0    141      0 --:--:--  0:00:01 --:--:--  169k
[
    {
        "created": "2014-05-06T12:57:54.000+0000",
        "guestId": "de1ff247-82dd-a3d5-fbd2-4733a5dab296",
        "id": "8a99f98445cce56f0145d19ca3b7251f",
        "updated": "2014-05-06T12:57:54.000+0000"
    }
]
[root@ibm-x3250m4-05 ~]#  curl -u stage_test_43:***** --insecure --request GET https://subscription.rhn.stage.redhat.com:443/subscription/consumers/9e229787-69ea-4cc4-9b5d-0f626f83e69b/guestids/de1ff247-82dd-a3d5-fbd2-4733a5dab296 | python -m simplejson/tool

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   188    0   188    0     0     26      0 --:--:--  0:00:06 --:--:--    41
{
    "attributes": {},  ---> attribute sets are empty
    "created": "2014-05-06T12:57:54.000+0000",
    "guestId": "de1ff247-82dd-a3d5-fbd2-4733a5dab296",
    "id": "8a99f98445cce56f0145d19ca3b7251f",
    "updated": "2014-05-06T12:57:54.000+0000"
}

Actual results:
Observed that the guest ids are not reporting the guest attributes

Expected results:
guest attributes should be present
ex:with virt-who-0.8-12.el7.noarch, guest attributes are getting reported on rhel7

[root@hp-dl360egen8-01 ~]# curl -u stage_2013_model_test:*****  --insecure --request GET https://subscription.rhn.stage.redhat.com:443/subscription/consumers/075618cc-5e06-4187-95f8-050307c31226/guestids/2db50cf9-64c1-4a18-8e6b-b4db25ff2267 | python -m json.tool
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   248    0   248    0     0     38      0 --:--:--  0:00:06 --:--:--    63
{
    "attributes": {
        "active": "1",
        "hypervisorType": "QEMU",    --->> guest attributes
        "virtWhoType": "libvirt"
    },
    "created": "2014-05-07T13:55:46.000+0000",
    "guestId": "2db50cf9-64c1-4a18-8e6b-b4db25ff2267",
    "id": "8a99f98645d319ec0145d6f7fa242d1e",
    "updated": "2014-05-07T13:55:46.000+0000"
}

Additional info:
The same feature should be included on rhel66 as well

--- Additional comment from Radek Novacek on 2014-05-09 02:18:26 EDT ---

Could you please put virt-who to debug mode (set VIRTWHO_DEBUG=1 in /etc/sysconfig/virt-who), reproduce the bug and then attach the log (/var/log/rhsm/rhsm.log) here? Thank you.

--- Additional comment from Rehana on 2014-05-09 02:40:19 EDT ---

Due to the bug #1095860 against stage server, i couldn't retest against stage; so i have used to my local candlepin set up to retest, hope this helps.

[root@ibm-x3250m4-05 ~]# cat /etc/sysconfig/virt-who  | grep VIRTWHO_DEBUG
VIRTWHO_DEBUG=1

[root@ibm-x3250m4-05 ~]# service virt-who restart
Stopping virt-who: [  OK  ]
Starting virt-who: [  OK  ]


[root@ibm-x3250m4-05 ~]# curl -u username:passwd --insecure --request GET https://ip:8443/candlepin/consumers/13293036-23f9-4e2f-ba3a-72095f93d23e/guestids | python -m simplejson/tool
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   347    0   347    0     0    248      0 --:--:--  0:00:01 --:--:--     0
[
    {
        "created": "2014-05-09T06:43:51.401+0000", 
        "guestId": "de1ff247-82dd-a3d5-fbd2-4733a5dab296", 
        "id": "8ac6a36245b14d950145dfb941e95807", 
        "updated": "2014-05-09T06:43:51.401+0000"
    }, 
    {
        "created": "2014-05-09T06:43:51.396+0000", 
        "guestId": "b3ace9e5-f699-2ef8-34eb-9ca5c7e1d19b", 
        "id": "8ac6a36245b14d950145dfb941e45805", 
        "updated": "2014-05-09T06:43:51.396+0000"
    }
]
[root@ibm-x3250m4-05 ~]# curl -u username:passwd --insecure --request GET https://ip:8443/candlepin/consumers/13293036-23f9-4e2f-ba3a-72095f93d23e/guestids/de1ff247-82dd-a3d5-fbd2-4733a5dab296 | python -m simplejson/tool
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   188    0   188    0     0    135      0 --:--:--  0:00:01 --:--:--     0
{
    "attributes": {}, 
    "created": "2014-05-09T06:43:51.401+0000", 
    "guestId": "de1ff247-82dd-a3d5-fbd2-4733a5dab296", 
    "id": "8ac6a36245b14d950145dfb941e95807", 
    "updated": "2014-05-09T06:43:51.401+0000"
}



rhsm.log

 tail -f /var/log/rhsm/rhsm.log
2014-05-09 02:34:33,345 [DEBUG] subscription-manager @connection.py:450 - Making request: GET /candlepin/consumers/13293036-23f9-4e2f-ba3a-72095f93d23e
2014-05-09 02:34:35,088 [DEBUG] subscription-manager @connection.py:473 - Response: status=200, requestUuid=87de3f3b-b4e4-4ee4-827b-10fae0416073
2014-05-09 02:34:35,088 [WARNING] subscription-manager @connection.py:477 - Clock skew detected, please check your system time
2014-05-09 02:34:35,091 [DEBUG] subscription-manager @cache.py:290 - Started thread to write cache: /var/lib/rhsm/cache/product_status.json
2014-05-09 02:34:35,092 [INFO] subscription-manager @managercli.py:194 - Attempted to auto-attach/heal the system.
2014-05-09 02:34:35,096 [DEBUG] subscription-manager @dbus_interface.py:74 - installed python-dbus doesn't support 'get_default_main_loop'
2014-05-09 02:34:35,099 [DEBUG] subscription-manager @dbus_interface.py:67 - installed python-dbus doesn't support 'follow_name_owner_changes'
2014-05-09 02:34:35,350 [INFO] rhsmd @rhsmd:193 - rhsmd started
2014-05-09 02:34:35,355 [INFO] rhsmd @rhsmd:148 - D-Bus interface com.redhat.SubscriptionManager.EntitlementStatus.update_status called with status = 1
2014-05-09 02:34:35,460 [INFO] rhsmd @rhsmd:116 - D-Bus signal com.redhat.SubscriptionManager.EntitlementStatus.entitlement_status_changed emitted
2014-05-09 02:36:20,333 [DEBUG]  @virt-who.py:512 - Starting event loop
2014-05-09 02:36:21,842 [DEBUG]  @virt-who.py:528 - Virt-who is running in libvirt mode
2014-05-09 02:36:21,842 [DEBUG]  @virt-who.py:535 - Starting infinite loop with 3600 seconds interval and event handling
2014-05-09 02:36:21,843 [DEBUG]  @virt.py:56 - Virtual machine found: rhel64: b3ace9e5-f699-2ef8-34eb-9ca5c7e1d19b
2014-05-09 02:36:21,844 [DEBUG]  @virt.py:56 - Virtual machine found: rhel5111: de1ff247-82dd-a3d5-fbd2-4733a5dab296
2014-05-09 02:36:21,845 [DEBUG]  @subscriptionmanager.py:81 - Sending list of uuids: ['b3ace9e5-f699-2ef8-34eb-9ca5c7e1d19b', 'de1ff247-82dd-a3d5-fbd2-4733a5dab296']

--- Additional comment from Radek Novacek on 2014-05-09 03:09:38 EDT ---

Thank you.

There was one patch missing in the upstream master branch of virt-who that is in the RHEL-7 branch. Fixed by upstream commit:

https://git.fedorahosted.org/cgit/virt-who.git/commit/?id=ee127e3a7c4281776f84c2a09229b73be54cd054

Would like to see virt-who support for guest-limit attribute in rhel6.6 as well.

Comment 2 Radek Novacek 2014-05-16 07:35:26 UTC
Sorry, this bug was cloned by mistake.