Bug 884973 - Hyper-v: Failed to get guest consumer ID when searching by host consumer ID on SAM server side
Hyper-v: Failed to get guest consumer ID when searching by host consumer ID o...
Status: CLOSED CURRENTRELEASE
Product: Subscription Asset Manager
Classification: Red Hat
Component: candlepin (Show other bugs)
1.2
Unspecified Unspecified
unspecified Severity urgent
: rc
: ---
Assigned To: Devan Goodwin
SAM QE List
:
Depends On:
Blocks: sam12-tracker
  Show dependency treegraph
 
Reported: 2012-12-07 03:14 EST by gaoshang
Modified: 2013-06-07 13:25 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-06-07 13:23:10 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description gaoshang 2012-12-07 03:14:03 EST
Description of problem:
When testing host/guest association on Hyper-v, register both host and guest to SAM server, we should be able to get guest consumer id in file: https://$samIP/sam/api/consumers/$host_consumer_id in order to record relatioshap of host/guest.
But it is failed to get guest consumer id, this will cause no bonus pool found in guest at all.

Version-Release number of selected component (if applicable):
virt-who-0.8-5.el6.noarch
subscription-manager-1.1.11-1.el6.x86_64
python-rhsm-1.1.6-1.el6.x86_64
candlepin-0.7.19-1.el6_3.noarch
katello-headpin-1.2.6-3h.el6_3.noarch

How reproducible:
always

Steps to Reproduce:
1.Configure the virt-who for testing on Hyper-v

    [root@gg-rhel-20121206 ~]# cat /etc/sysconfig/virt-who 
    # starting virt-who as service.
    VIRTWHO_BACKGROUND=1

    # Enable debugging output.
    VIRTWHO_DEBUG=1
    ......
    # Register guest using Hyper-V
    VIRTWHO_HYPERV=1

    ......
    # Options for HYPER-V mode
    VIRTWHO_HYPERV_OWNER=ACME_Corporation
    VIRTWHO_HYPERV_ENV=env1
    VIRTWHO_HYPERV_SERVER=10.66.65.163
    VIRTWHO_HYPERV_USERNAME=Administrator
    VIRTWHO_HYPERV_PASSWORD=qwer1234P

2. register both host and guest to SAM server
3. Restart the virt-who service
    [root@gg-rhel-20121206 ~]# service virt-who restart
    Stopping virt-who:                                         [  OK  ]
    Starting virt-who:                                         [  OK  ]
4. Get the guests' and host's cosummer ids

  host:

    [root@gg-rhel-20121206 ~]# subscription-manager identity
    Current identity is: 49313e76-fc80-4295-9835-e4816ff2c456
    name: gg-rhel-20121206
    org name: ACME_Corporation
    org id: ACME_Corporation

  guest:

    [root@dhcp-65-164 ~]# subscription-manager identity
    Current identity is: cfee13b7-8887-4f73-96b5-473ba5814542 
    name: dhcp-65-164.nay.redhat.com 
    org name: ACME_Corporation 
    org id: 8ac28dbf3b5efb3c013b5efc41840001

5. Check guest's consummer id on SAM server side.
    [root@dhcp-65-164 ~]# curl -u admin:admin -k https://10.66.13.15/sam/api/consumers/49313e76-fc80-4295-9835-e4816ff2c456 > virtuuid
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100  8264    0  8264    0     0  23316      0 --:--:-- --:--:-- --:--:-- 35774
    [root@dhcp-65-164 ~]# cat virtuuid | grep "cfee13b7-8887-4f73-96b5-473ba5814542"
    [root@dhcp-65-164 ~]# 

  
Actual results:
guest's consummer id is not found on SAM server side

Expected results:
guest's consummer id should be found on SAM server side, and bonus pool should be found in guest if host consumed related subscriptions.

Additional info:
  we find that guest uuid is in low case in guest, while in host rhsm.log file, it is capitalized. Hope it can help.


    [root@dhcp-65-164 ~]# subscription-manager facts --list | grep virt
    lscpu.virtualization_type: full
    virt.host_type: hyperv
    virt.is_guest: True
********************************************************
    virt.uuid: daf0fe10-956b-7b4e-b7dc-b383ce681bb9
********************************************************


    [root@gg-rhel-20121206 ~]# tail -n 20 /var/log/rhsm/rhsm.log 
    2012-12-07 15:59:06,930 [DEBUG]  @cert_sorter.py:125 - unentitled products: []
    2012-12-07 15:59:06,930 [DEBUG]  @cert_sorter.py:126 - future products: []
    2012-12-07 15:59:06,930 [DEBUG]  @cert_sorter.py:127 - partial stacks: []
    2012-12-07 15:59:06,930 [DEBUG]  @cert_sorter.py:128 - valid stacks: []
    2012-12-07 16:03:46,979 [WARNING]  @virt-who.py:462 - Listening for events is not available in VDSM, ESX, RHEV-M or Hyper-V mode
    2012-12-07 16:03:47,078 [DEBUG]  @hyperv.py:165 - Hyper-V url: http://10.66.65.163:5985/wsman
    2012-12-07 16:03:47,078 [DEBUG]  @virt-who.py:475 - Virt-who is running in hyperv mode
    2012-12-07 16:03:47,079 [DEBUG]  @virt-who.py:482 - Starting infinite loop with 3600 seconds interval and event handling
    2012-12-07 16:03:47,081 [DEBUG]  @hyperv.py:215 - Using NTLM authentication
    2012-12-07 16:03:47,087 [DEBUG]  @hyperv.py:242 - NTLM authentication successful
********************************************************
    2012-12-07 16:03:47,977 [DEBUG]  @subscriptionmanager.py:89 - Sending update in hosts-to-guests mapping: {'60527517-6284-7593-6AAB-75BF2A6375EF': ['DAF0FE10-956B-7B4E-B7DC-B383CE681BB9']}
    2012-12-07 16:03:48,223 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]
********************************************************
Comment 1 Devan Goodwin 2012-12-07 09:22:58 EST
Suspect this may not be a bug, just a misunderstanding due to overloaded use of the term UUID.

We're dealing with two things, a virt guest UUID, and a candlepin consumer UUID.

Hosts running virt-who report their running guests by their virt UUID, the host doesn't actually know what the consumer's guest UUID is.

When doing a GET /consumers/HOSTUUID you will see a list of virt guest UUIDs, presumably in your case daf0fe10-956b-7b4e-b7dc-b383ce681bb9 should actually be in there.

However to get the actual consumer UUID for the guest in candlepin you need to leverage a separate API call:

GET /consumers/HOSTUUID/guests

This will return actual consumer info for all guests reported by that host, who have registered to candlepin. 

Please let me know if this helps.
Comment 2 gaoshang 2012-12-09 23:05:19 EST
This is a test case, we can get guest consumer UUID when running https://$samIP/sam/api/consumers/$host_consumer_id in other platforms.

I mistook host consumer UUID in step 5 above, since host is Hyper-v, we should check guest with Hyper-v host consumer UUID "60527517-6284-7593-6AAB-75BF2A6375EF" which can be found in SAM web UI.
Also searched virt guest UUIDs(daf0fe10-956b-7b4e-b7dc-b383ce681bb9), can not find it too, see following message.

5. Check guest's consummer id on SAM server side.
    [root@gg-rhel-20121206 ~]# curl -u admin:admin -k https://10.66.13.15/sam/api/consumers/60527517-6284-7593-6AAB-75BF2A6375EF > virtuuid
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    102  4598    0  4598    0     0  27037      0 --:--:-- --:--:-- --:--:-- 37080
    [root@gg-rhel-20121206 ~]# cat virtuuid | grep "cfee13b7-8887-4f73-96b5-473ba5814542"
    [root@gg-rhel-20121206 ~]# 
    [root@gg-rhel-20121206 ~]# cat virtuuid | grep "daf0fe10-956b-7b4e-b7dc-b383ce681bb9"
    [root@gg-rhel-20121206 ~]# 

In SAM's web UI, find Hper-v host, go to Systems --> Details --> System Info, in the end of this page, there is Host & Guest Info, Guests should not be None, since we have guest installed.

Host & Guest Info
    System Type
        Hypervisor
    Guests
        None

Problem cause by this:

In SAM's web UI, find Hper-v host, go to Systems --> Subscriptions, subscribe Hyper-v with subscriptions that can generate bonus pool. 
In guest, related bonus pool (MachineType should be virtual) should be found, but no bonus pool exist.

[root@dhcp-65-164 ~]# subscription-manager list --available
+-------------------------------------------+
    Available Subscriptions
+-------------------------------------------+


ProductName:       	Resilient Storage (8 sockets)
ProductId:         	RH1316844                
PoolId:            	8ac28dbf3b6ed7cb013b6edadd1200be
Quantity:          	17                       
Multi-Entitlement: 	No                       
Expires:           	02/24/2013               
MachineType:       	physical                 


ProductName:       	Red Hat Enterprise Linux Server for HPC Compute Node,
                        Self-support (8 sockets) (Up to 1 guest)
ProductId:         	RH0604852                
PoolId:            	8ac28dbf3b6ed7cb013b6edadcdd00b0
Quantity:          	24                       
Multi-Entitlement: 	No                       
Expires:           	12/21/2012               
MachineType:       	physical                 


ProductName:       	Scalable File System (8 sockets)
ProductId:         	RH1416373                
PoolId:            	8ac28dbf3b6ed7cb013b6edadcb500a1
Quantity:          	7                        
Multi-Entitlement: 	No                       
Expires:           	02/24/2013               
MachineType:       	physical                 


ProductName:       	Red Hat Employee Subscription
ProductId:         	SYS0395                  
PoolId:            	8ac28dbf3b6ed7cb013b6edadc81008c
Quantity:          	45                       
Multi-Entitlement: 	No                       
Expires:           	09/26/2013               
MachineType:       	physical                 


ProductName:       	60 Day Supported CloudForms Evaluation
ProductId:         	SER0408                  
PoolId:            	8ac28dbf3b6ed7cb013b6edadaf6007e
Quantity:          	28                       
Multi-Entitlement: 	No                       
Expires:           	01/01/2013               
MachineType:       	physical
Comment 3 Devan Goodwin 2012-12-10 08:24:04 EST
Could you provide full output for:

GET https://10.66.13.15/sam/api/consumers/HOST

and

GET https://10.66.13.15/sam/api/consumers/GUEST
Comment 4 Devan Goodwin 2012-12-10 08:29:17 EST
Ignore previous comment, I can hit the host in question myself and see.
Comment 5 Devan Goodwin 2012-12-10 08:34:08 EST
Currently  curl -u admin:admin -k https://10.66.13.15/sam/api/consumers/60527517-6284-7593-6AAB-75BF2A6375EF is reporting:

  "guests": [],


So it has no guest mapping currently, however in your initial post it appears that it did:

    2012-12-07 16:03:47,977 [DEBUG]  @subscriptionmanager.py:89 - Sending update in hosts-to-guests mapping: {'60527517-6284-7593-6AAB-75BF2A6375EF': ['DAF0FE10-956B-7B4E-B7DC-B383CE681BB9']}
    2012-12-07 16:03:48,223 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]

Is the guest currently running or is it shut down?




In comment #2 you mention: "In SAM's web UI, find Hper-v host, go to Systems --> Subscriptions, subscribe Hyper-v with subscriptions that can generate bonus pool."

Could you clarify exactly what subscription this is? Specifically the product ID.
Comment 6 Devan Goodwin 2012-12-10 09:54:46 EST
Apologies this is very confusing with a few pieces of information reported above.

60527517-6284-7593-6AAB-75BF2A6375EF appears to be the hyper-v host consumer, this is the actual one we are interested in as the host.

49313e76-fc80-4295-9835-e4816ff2c456 appears to be a kvm guest but if I understand this correctly, this is a KVM guest being used to *simulate* a hyper-v host, so this UUID from his identity should be completely ignored, it is not the correct one we want to be looking at for anything. This probably would not even need to be registered for this scenario.



cfee13b7-8887-4f73-96b5-473ba5814542 appears to be the guest UUID in SAM. It is reporting: 

    "virt.host_type": "hyperv",
    "virt.is_guest": "true",
    "virt.uuid": "daf0fe10-956b-7b4e-b7dc-b383ce681bb9"



So given the message in the logs in original report:

    2012-12-07 16:03:47,977 [DEBUG]  @subscriptionmanager.py:89 - Sending update in hosts-to-guests mapping: {'60527517-6284-7593-6AAB-75BF2A6375EF': ['DAF0FE10-956B-7B4E-B7DC-B383CE681BB9']}
    2012-12-07 16:03:48,223 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]

I am starting to understand.

The use of grep above is hiding what we really need to see, we need to know if anything goes into the list of guest IDs at all, this could tell us if it were going in with the wrong case as you suspected or not, but we can't tell, and unfortunately the list is totally empty right now. 




I still need several pieces of information:

1. Why does 60527517-6284-7593-6AAB-75BF2A6375EF report "guests": [] currently despite the log message above? I suspect this is because the guest is not currently running?

2. What exact product ID was on the subscription given to the host system in SAM which would create a virt bonus pool?

3. Was the above subscription given to 60527517-6284-7593-6AAB-75BF2A6375EF (correct) or consumer  60527517-6284-7593-6AAB-75BF2A6375EF (incorrect).
Comment 7 gaoshang 2012-12-10 22:45:13 EST
(In reply to comment #6)
> Apologies this is very confusing with a few pieces of information reported
> above.
> 
> 60527517-6284-7593-6AAB-75BF2A6375EF appears to be the hyper-v host
> consumer, this is the actual one we are interested in as the host.
> 
> 49313e76-fc80-4295-9835-e4816ff2c456 appears to be a kvm guest but if I
> understand this correctly, this is a KVM guest being used to *simulate* a
> hyper-v host, so this UUID from his identity should be completely ignored,
> it is not the correct one we want to be looking at for anything. This
> probably would not even need to be registered for this scenario.
> 
> 
> 
> cfee13b7-8887-4f73-96b5-473ba5814542 appears to be the guest UUID in SAM. It
> is reporting: 
> 
>     "virt.host_type": "hyperv",
>     "virt.is_guest": "true",
>     "virt.uuid": "daf0fe10-956b-7b4e-b7dc-b383ce681bb9"
> 
> 
> 
> So given the message in the logs in original report:
> 
>     2012-12-07 16:03:47,977 [DEBUG]  @subscriptionmanager.py:89 - Sending
> update in hosts-to-guests mapping: {'60527517-6284-7593-6AAB-75BF2A6375EF':
> ['DAF0FE10-956B-7B4E-B7DC-B383CE681BB9']}
>     2012-12-07 16:03:48,223 [INFO]  @virt-who.py:203 - Updated host:
> 60527517-6284-7593-6AAB-75BF2A6375EF with guests:
> [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]
> 
> I am starting to understand.
> 
> The use of grep above is hiding what we really need to see, we need to know
> if anything goes into the list of guest IDs at all, this could tell us if it
> were going in with the wrong case as you suspected or not, but we can't
> tell, and unfortunately the list is totally empty right now. 
> 
> 
> 
> 
> I still need several pieces of information:
> 
> 1. Why does 60527517-6284-7593-6AAB-75BF2A6375EF report "guests": []
> currently despite the log message above? I suspect this is because the guest
> is not currently running?

 I think that's the key point of this bug. The guest is always in running status.

> 2. What exact product ID was on the subscription given to the host system in
> SAM which would create a virt bonus pool?
 Usually we subscribe following subscription which can generate bonus pool. Note, since host is hyper-v, we can only subscribe it via SAM Web UI. But I can't find product ID here https://10.66.13.15/sam/subscriptions#panel=subscription_8ac28dbf3b6ed7cb013b6edadcdd00b0, so I attached it's productID listed in guest.

[root@dhcp-65-164 ~]# subscription-manager list --available
ProductName:       	Red Hat Enterprise Linux Server for HPC Compute Node,
                        Self-support (8 sockets) (Up to 1 guest)
ProductId:         	RH0604852                
PoolId:            	8ac28dbf3b6ed7cb013b6edadcdd00b0
Quantity:          	24                       
Multi-Entitlement: 	No                       
Expires:           	12/21/2012               
MachineType:       	physical


> 3. Was the above subscription given to 60527517-6284-7593-6AAB-75BF2A6375EF
> (correct) or consumer  60527517-6284-7593-6AAB-75BF2A6375EF (incorrect).
 See above reply 2, I subscrbied hyper-v host(60527517-6284-7593-6AAB-75BF2A6375EF) via SAM Web UI.
Comment 8 Devan Goodwin 2012-12-11 15:41:22 EST
virt-who is consistently trying to update the guest ID, I can find no entries where it thinks the guest isn't running so this looks ok on that side:

2012-12-11 19:20:35,854 [WARNING]  @virt-who.py:462 - Listening for events is not available in VDSM, ESX, RHEV-M or Hyper-V mode
2012-12-11 19:20:35,948 [DEBUG]  @virt-who.py:475 - Virt-who is running in hyperv mode
2012-12-11 19:20:35,948 [DEBUG]  @virt-who.py:482 - Starting infinite loop with 3600 seconds interval and event handling
2012-12-11 19:20:37,137 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]
2012-12-11 20:20:40,250 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]
2012-12-11 21:20:45,049 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]
2012-12-11 22:20:49,781 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]
2012-12-11 23:20:54,497 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]
2012-12-12 00:20:59,253 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]
2012-12-12 01:21:03,046 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]
2012-12-12 02:21:07,877 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]
2012-12-12 03:21:12,606 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]



I can see consumer modified events in SAM every time I restart virt-who service, the parameters show as empty. Guests seems to stay empty as far as API is concerned.

If I enable debug logging in Candlepin I can see:

Dec 11 15:45:57 [http-8443-1] DEBUG org.candlepin.servlet.filter.logging.LoggingFilter - ====ResponseBody====
Dec 11 15:45:57 [http-8443-1] DEBUG org.candlepin.servlet.filter.logging.LoggingFilter - {"created":[],"updated":[{"created":"2012-12-07T05:22:15.907+0000","updated":"2012-12-11T20:45:57.783+0000","id":"8ac28dbf3b6ed7cb013b73d066e41ae0","uuid":"60527517-6284-7593-6AAB-75BF2A6375EF","name":"60527517-6284-7593-6AAB-75BF2A6375EF","username":null,"entitlementStatus":"valid","serviceLevel":"","releaseVer":{"releaseVer":null},"type":{"id":"1004","label":"hypervisor","manifest":false},"owner":{"id":"8ac28dbf3b5efb3c013b5efc41840001","key":"ACME_Corporation","displayName":"ACME_Corporation","href":"/owners/ACME_Corporation"},"environment":null,"entitlementCount":1,"lastCheckin":null,"installedProducts":[],"canActivate":false,"guestIds":[{"created":"2012-12-11T20:45:57.540+0000","updated":"2012-12-11T20:45:57.540+0000","id":"8ac28dbf3b8bb768013b8bb781a40001","guestId":"DAF0FE10-956B-7B4E-B7DC-B383CE681BB9"}],"autoheal":true,"href":"/consumers/60527517-6284-7593-6AAB-75BF2A6375EF"}],"failedUpdate":[]}


And indeed if we look in the Candlepin database:

candlepin=# select id from cp_consumer where uuid='60527517-6284-7593-6AAB-75BF2A6375EF';
                id                
----------------------------------
 8ac28dbf3b6ed7cb013b73d066e41ae0
(1 row)

candlepin=# select * from cp_consumer_guests where consumer_id = '8ac28dbf3b6ed7cb013b73d066e41ae0';
                id                |          created          |          updated          |               guest_id               |           consumer_id            
----------------------------------+---------------------------+---------------------------+--------------------------------------+----------------------------------
 8ac28dbf3b8bb768013b8bb781a40001 | 2012-12-11 15:45:57.54-05 | 2012-12-11 15:45:57.54-05 | DAF0FE10-956B-7B4E-B7DC-B383CE681BB9 | 8ac28dbf3b6ed7cb013b73d066e41ae0
(1 row)

candlepin=# 


But the API still shows empty list:

(dgoodwin@lenovo /var/log) $ curl -u admin:admin -k https://10.66.13.15/sam/api/consumers/60527517-6284-7593-6AAB-75BF2A6375EF | json.py | grep guest
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  4598    0  4598    0     0    474      0 --:--:--  0:00:09 --:--:--  1245
  "guests": [],
(dgoodwin@lenovo /var/log) $ 



I think this might be an issue with SAM/Katello, digging more.
Comment 9 Devan Goodwin 2012-12-11 15:58:23 EST
Candlepin logs also show this on a GET /consumers, which doesn't match what I see with curl, so this looks very much like it's lost in between SAM layers.

"guestIds":[{"created":"2012-12-11T20:45:57.540+0000","updated":"2012-12-11T20:45:57.540+0000","id":"8ac28dbf3b8bb768013b8bb781a40001","guestId":"DAF0FE10-956B-7B4E-B7DC-B383CE681BB9"}]
Comment 10 Devan Goodwin 2012-12-11 16:05:33 EST
Just realized candlepin is giving back "guestIds", but the caller sees "guests", and it appears SAM is doing this intermediate step effectively changing the response.


That is strange, possibly not a good idea, but probably not the cause of the issue here, it should find the guest matchings.


And as it turns out, gaoshang was onto the problem immediately in original report, virt-who is reporting DAF0FE10-956B-7B4E-B7DC-B383CE681BB9 as the guest virt UUID, and the guest itself is reporting "virt.uuid": "daf0fe10-956b-7b4e-b7dc-b383ce681bb9", which clearly doesn't match due to the case change.

Ideally virt-who would not report upper case, but that is probably just how hyper-v reports it and it's sketchy to try to assume it should be lower cased.

However it's possibly even more sketchy to assume to change the case on incoming virt UUIDs...
Comment 11 Devan Goodwin 2012-12-12 15:42:18 EST
Made all virt guest UUID comparisons case insensitive.

candlepin.git master 6a4810741fa1387017108af47ea36309d996c965

Will appear in 0.7.23 which will be built for SAM 1.2 soon.
Comment 13 gaoshang 2012-12-21 00:20:36 EST
Since SAM-1.2-RHEL-6-20121218.n.0 failed to deploy, waiting for new sam compose, will verify this bug ASAP.
Comment 14 gaoshang 2012-12-25 00:34:34 EST
This bug has been verified and passed.

1, Get host consumer UUID (60527517-6284-7593-6AAB-75BF2A6375EF)
[root@gg-rhel-snapshot2 ~]# tail -f /var/log/rhsm/rhsm.log 
2012-12-25 13:19:13,583 [WARNING]  @virt-who.py:462 - Listening for events is not available in VDSM, ESX, RHEV-M or Hyper-V mode
2012-12-25 13:19:13,671 [DEBUG]  @hyperv.py:165 - Hyper-V url: http://10.66.65.163:5985/wsman
2012-12-25 13:19:13,672 [DEBUG]  @virt-who.py:475 - Virt-who is running in hyperv mode
2012-12-25 13:19:13,672 [DEBUG]  @virt-who.py:482 - Starting infinite loop with 3600 seconds interval and event handling
2012-12-25 13:19:13,676 [DEBUG]  @hyperv.py:215 - Using NTLM authentication
2012-12-25 13:19:13,683 [DEBUG]  @hyperv.py:242 - NTLM authentication successful
2012-12-25 13:19:14,515 [DEBUG]  @subscriptionmanager.py:89 - Sending update in hosts-to-guests mapping: {'60527517-6284-7593-6AAB-75BF2A6375EF': ['DAF0FE10-956B-7B4E-B7DC-B383CE681BB9']}
2012-12-25 13:19:14,690 [INFO]  @virt-who.py:203 - Updated host: 60527517-6284-7593-6AAB-75BF2A6375EF with guests: [DAF0FE10-956B-7B4E-B7DC-B383CE681BB9]

2, Get guest consumer UUID (03c22027-dc0b-42ae-af91-aa03c4c576a2)
[root@dhcp-65-164 ~]# subscription-manager identity
Current identity is: 03c22027-dc0b-42ae-af91-aa03c4c576a2 
name: dhcp-65-164.nay.redhat.com 
org name: ACME_Corporation 
org id: 8ac28c703bcaee4d013bcaefdc740001

3, Check guest consumer UUID in SAM via host consumer UUID
[root@gg-rhel-snapshot2 ~]# curl -u admin:admin -k https://10.66.12.240/sam/api/consumers/60527517-6284-7593-6AAB-75BF2A6375EF | grep "03c22027-dc0b-42ae-af91-aa03c4c576a2"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  4821    0  4821    0     0  24746      0 --:--:-- --:--:-- --:--:-- 32795
{"guests":[{"description":null,"system_template_id":null,"type":"System","updated_at":null,"location":null,"environment_id":null,"name":"dhcp-65-164.nay.redhat.com","created_at":null,"uuid":"03c22027-dc0b-42ae-af91-aa03c4c576a2"}],"description":"Initial Registration Params","system_template_id":null,"autoheal":true,"release":null,"id":55,"activation_key":[],"serviceLevel":"","updated_at":"2012-12-25T03:42:45Z","ipv4_address":null,"facts":{"uname.machine":"x86_64"},"location":"None","environment_id":2,"name":"60527517-6284-7593-6AAB-75BF2A6375EF","href":"/consumers/60527517-6284-7593-6AAB-75BF2A6375EF","releaseVer":{"releaseVer":null},"environment":{"description":null,"organization_id":1,"id":2,"library":false,"updated_at":"2012-12-24T03:26:56Z","prior_id":1,"organization":"ACME_Corporation","name":"env1","created_at":"2012-12-24T03:26:56Z","label":"env1","prior":"Library"},"created_at":"2012-12-25T03:42:45Z","uuid":"60527517-6284-7593-6AAB-75BF2A6375EF","owner":{"id":"8ac28c703bcaee4d013bcaefdc740001","displayName":"ACME_Corporation","href":"/owners/ACME_Corporation","key":"ACME_Corporation"},"idCert":{"created":"2012-12-25T03:42:45.311+0000","id":"8ac28c703bcaee4d013bd027c43f0c05","updated":"2012-12-25T03:42:45.311+0000","serial":{"created":"2012-12-25T03:42:45.196+0000","updated":"2012-12-25T03:42:45.196+0000","id":7385733209466003382,"collected":false,"revoked":false,"expiration":"2028-12-25T03:42:45.196+0000","serial":7385733209466003382},"cert":"-----BEGIN CERTIFICATE-----\nMIIEcjCCA1qgAwIBAgIIZn9lOQQG37YwDQYJKoZIhvcNAQEFBQAwejELMAkGA1UE\nBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRAwDgYDVQQHEwdSYWxlaWdo\nMRAwDgYDVQQKEwdSZWQgSGF0MREwDwYDVQQLEwhDbG91ZCBCVTEbMBkGA1UEAxMS\nc2Ftc2Vydi5yZWRoYXQuY29tMB4XDTEyMTIyNTAzNDI0NVoXDTI4MTIyNTAzNDI0\nNVowLzEtMCsGA1UEAxMkNjA1Mjc1MTctNjI4NC03NTkzLTZBQUItNzVCRjJBNjM3\nNUVGMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAhukuPOO5RvzZa32/\nnivqBvYMel7T/6SGMShKx6PHpFJW714jwRBT1aNhRlFo1y/OaZXs/ZFULfQkfJzl\n0s2UwjufrmLBIG72K4x09Olwhk36Zo3+mtT7JKlXWIb7mMu6H9zeVdpfVPMgX8Oz\nYkTzH2KAixHvvD/vydHFjUuQh1lHvmhyLMdnVQPKhhZfLkvjv6URn0b4kr9wLjcR\nvvNtbnws7nT8Gtmfy4cd59RnIVaON3fnNKEsYvae0zDVWzHVeFd60JLflm+3E9H4\nyX7cUIqMBSaa5QVlwknBm6mJ9kfM/KpMGXfUha2HDAl2E6q1Omogh2EapIKWHm7C\nRyRB8QIDAQABo4IBRTCCAUEwEQYJYIZIAYb4QgEBBAQDAgWgMAsGA1UdDwQEAwIE\nsDCBrAYDVR0jBIGkMIGhgBQL3OjQ4g0MOCfqib8J0qA4w0cNdqF+pHwwejELMAkG\nA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRAwDgYDVQQHEwdSYWxl\naWdoMRAwDgYDVQQKEwdSZWQgSGF0MREwDwYDVQQLEwhDbG91ZCBCVTEbMBkGA1UE\nAxMSc2Ftc2Vydi5yZWRoYXQuY29tggkAgUuJc4NrleQwHQYDVR0OBBYEFFD4L7sZ\nQkPKUI3s1wdsK9trcW5IMBMGA1UdJQQMMAoGCCsGAQUFBwMCMDwGA1UdEQQ1MDOk\nMTAvMS0wKwYDVQQDDCQ2MDUyNzUxNy02Mjg0LTc1OTMtNkFBQi03NUJGMkE2Mzc1\nRUYwDQYJKoZIhvcNAQEFBQADggEBAJTJUzamVDpunZzGQaLeJfzMVln/uz97lpbC\neA7m6cfa4JY/J5jnu1fe7HFLN7wfP+5AV+vvZkY7knglRcL6YroCedcn3WlTGNol\nyrLWnX1KJIRt7PLWdAPmSCK9I/1CVJPVdbhqEubmwCWuGObP6GYrAD1q8niuyEOY\nDjxV0jCvRoPrn/8i1aU4KzFbvEsmjekQNWdFJu4EGdtNjOgMohSlpN1oMWwn0IHW\n+Ack92cHJSwHKhwn445w9ECbHoZS88H83nRFSxH3KQF+BuA3KQljAWAs4Bk9wYTG\nSRPK/A8qNj9bi+i9RUYS/tLkdqtAwlmDG8Obew/l4MM3gZa7KP4=\n-----END CERTIFICATE-----\n","key":"-----BEGIN RSA PRIVATE KEY-----\nMIIEpAIBAAKCAQEAhukuPOO5RvzZa32/nivqBvYMel7T/6SGMShKx6PHpFJW714j\nwRBT1aNhRlFo1y/OaZXs/ZFULfQkfJzl0s2UwjufrmLBIG72K4x09Olwhk36Zo3+\nmtT7JKlXWIb7mMu6H9zeVdpfVPMgX8OzYkTzH2KAixHvvD/vydHFjUuQh1lHvmhy\nLMdnVQPKhhZfLkvjv6URn0b4kr9wLjcRvvNtbnws7nT8Gtmfy4cd59RnIVaON3fn\nNKEsYvae0zDVWzHVeFd60JLflm+3E9H4yX7cUIqMBSaa5QVlwknBm6mJ9kfM/KpM\nGXfUha2HDAl2E6q1Omogh2EapIKWHm7CRyRB8QIDAQABAoIBAHXloPqlJ2zZ2kcN\nhT78sW+T5iOqaymk5YBf7bm5buYy7rYQVr6JPjocpQ2GZ1Bl/sRWuNx+/EmMabZc\nhptJ/Q4gfNMwigWF8qrr++lrd2JnEsQ8ops8NJ09P4+lpolIwEbIBaSRSW47abdG\nlqTyDGUI97yQ2Chy12JPZ4yq1IryOYiJUIOz7Py8W4yQrreFHaQ4WJ94A0Znj+lt\ngrjwxNUf7jpGyWzSnF9eE0vPvyIBX+C5h/NtixiNigDvsYJR9uv4vknfP5iduXCm\nK2zplAiVAw2ohtjoSbVkMAkouHehLmUz6JsRM3vdcwBqLmLVhpKDAZ3tbE1chCL2\nZkQv4eECgYEA2u9Jfhyd3yajYbpEFY4i6ejVk9JDjmoYSO/oKLhezFGVa7GNb5+H\nnB2vkeEU2bzC4p61L3D9lqf4DKVNXLRb+I+/A1OoaVwZ73tYEDcxwPNHRmlMcK4v\nsrVpM4ZUHtN/k1J0IoJs/TICnkdgporBEWR8V401lRJQQptsTV1B4VcCgYEAncBE\no4v5+Bq9IbPqVr+TQ9GiacbJ1IOBHPC46u2IlqUWOmFSGDZk9h4UQRERrZF89G3F\nk1bVwvltV28Iwdd89cU7MlqP8uKO6eVcNcwsRpZmupCt6SBGSxvVey230gyapCCQ\nba4ZVH9A/uB+HpyZNhcuq2Zz/uO5T3kqG67RgfcCgYEAxDcRNuWO2CBY7Y1y1567\ny8fRItqfkVOk0DmzaEtVKukzcYF/sTrY3yH76FJBzaNPRqvW1t39aLjBpxO/cgZz\nJyItn12q4kKZO/jfxCizfqqKhqB40cRLG29bCcKqQbZr8C1FyGf8JjBcCF8QUDKr\nNltI1W7JRwFSzV9egTfDg6ECgYA6CBn4BC1f3Q5IkLQbV3xoTX0u5mcnG31q1Q9h\ntSIzMOX9cgHOUGxRsf0Hdq0HKedKz/sH2cDnafSUXo9dJ9WbYAQH4RLlafzjBHIo\nhEShbwC5jzG6+hmB1epx1v6xcduNl0EqaAp/cBTL7m/W+QrPwDV17kmrscBhARTB\nfE0sPwKBgQC4ZgVA1x1fPvzwF8Zami6ECyI2BMcsNBbz0Eb0tuDLtGjeRrU5IBa0\nJFbck8N/D0BqgQY1HbQzd9U+vAy1RXm7n5dIW0Y4X7+V6iWIeCWrxVRRMitl5hhe\nFEzUddcO16QoAYCZISu0JNDXrVYBRi5/uRhAhnXo7pox483Jxjaeng==\n-----END RSA PRIVATE KEY-----\n"}}
[root@gg-rhel-snapshot2 ~]# 

4, Host subscribe related subscriptions via SAM web ui, check bonus pool in guest, bonus pool is generated.
[root@dhcp-65-164 ~]# subscription-manager list --available
+-------------------------------------------+
    Available Subscriptions
+-------------------------------------------+


ProductName:       	Resilient Storage (8 sockets)
ProductId:         	RH1316844                
PoolId:            	8ac28c703bcaee4d013bd04149d60f19
Quantity:          	unlimited                
Multi-Entitlement: 	No                       
Expires:           	02/24/2013               
MachineType:       	virtual                  


ProductName:       	Scalable File System (8 sockets)
ProductId:         	RH1416373                
PoolId:            	8ac28c703bcaee4d013bd04148b30f01
Quantity:          	unlimited                
Multi-Entitlement: 	No                       
Expires:           	02/24/2013               
MachineType:       	virtual                  


ProductName:       	60 Day Supported CloudForms Evaluation
ProductId:         	SER0408                  
PoolId:            	8ac28c703bcaee4d013bcaf3e7f600b6
Quantity:          	29                       
Multi-Entitlement: 	No                       
Expires:           	01/01/2013               
MachineType:       	physical                 


ProductName:       	Resilient Storage (8 sockets)
ProductId:         	RH1316844                
PoolId:            	8ac28c703bcaee4d013bcaf3e6ab0081
Quantity:          	17                       
Multi-Entitlement: 	No                       
Expires:           	02/24/2013               
MachineType:       	physical                 


ProductName:       	Scalable File System (8 sockets)
ProductId:         	RH1416373                
PoolId:            	8ac28c703bcaee4d013bcaf3e86d00c3
Quantity:          	9                        
Multi-Entitlement: 	No                       
Expires:           	02/24/2013               
MachineType:       	physical                 


ProductName:       	Red Hat Employee Subscription
ProductId:         	SYS0395                  
PoolId:            	8ac28c703bcaee4d013bcaf3e76500a1
Quantity:          	50                       
Multi-Entitlement: 	No                       
Expires:           	09/26/2013               
MachineType:       	physical 

5, In SAM's web UI, find Hper-v host, go to Systems --> Details --> System Info, in the end of this page, there is Host & Guest Info, Guests existed.

Host & Guest Info
System Type Hypervisor
Guests dhcp-65-164.nay.redhat.com
Comment 15 Bryan Kearney 2013-06-07 13:23:10 EDT
Closing out verified bugs from 1.2. Somehow the errata tool missed them.
Comment 16 Bryan Kearney 2013-06-07 13:25:15 EDT
Closing out verified bugs from 1.2. Somehow the errata tool missed them.

Note You need to log in before you can comment on or make changes to this bug.