Red Hat Satellite 6.x client status shows "Guest has not been reported on any host and is using a temporary unmapped guest subscription"

Solution Verified - Updated -

Environment

  • Red Hat Satellite 6.x

Issue

  • Red Hat Satellite 6.x client status shows "Guest has not been reported on any host and is using a temporary unmapped guest subscription"
  • Systems registered to Red Hat Satellite 6.x status shows "temporary unmapped guest subscription"

Resolution

  • Make sure you have virt-who configured and service is running fine.
  • Restart virt-who service to make sure that all recent guest to host mapping reported to the Satellite and check /var/log/rhsm/rhsm.log to make sure virt-who service is running fine.
  • Check if hypervisor hosting this guest is reported to the Satellite? If yes, ensure virt-who based subscription is attached to the Hypervisor.
  • Refer to Subscription-manager for the former Red Hat Network User: Part 3 - Understanding virt-who which explains what virt-who is/does, and includes answers to many questions such as "How do I know if I am using a temporary subscription?" and "What actions do I need to take if system is using a temporary subscription?"

Root Cause

  • Virt-who is not configured to utilize Virtual subscription.
  • Affected guest(or hypervisor which is hosting the affected guest) is not reported to the Red Hat Satellite by the virt-who.
  • Virt-who service is not running and having some issue.
  • In Satellite, virt-who based Subscription is not attached to the hypervisor which is hosting this system.

Diagnostic Steps

  • Verify if the virt-who is configured and if its running
[root@virt-who ~]# grep -v ^# /etc/virt-who.d/<conf-file>
[root@virt-who ~]# service virt-who status
  • Check /var/log/rhsm/rhsm.logs for any virt-who error.

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

15 Comments

I have checked all the above and still it doesn't work.

This article in no why addresses how to resolve the issue. What few steps are provided are simply to install virt-who. After installation and enabling the service the error still exist and the lack of further troubleshooting is a waste of time. There needs to be detail as why I need virt-who in the first place and second how these steps will resolve the issue as well as steps to resolve if the above steps fail which they do.

Resolving the 'issue' requires you to do one of three things.

  • Nothing. After 24 hours, the guest will attach a subscription from the list of available subscriptions in your account / organization. Note: guests may consume physical subscriptions OR 1 virtual datacenter subscription EACH. (Which is non-desired).

  • Install virt-who and then do nothing. Installing virt-who reports to RHSM or Satellite 6.1 on which hypervisor a guest runs on. Once virt-who is running, generally no further action is required. When the temporary subscription expires, the guest will attach a virtual subscription based upon the hypervisor it runs on.

  • Install virt-who and explicitly change the subscription. If you either dont wish to wait 24 hours OR you want to be more granular as to which subscription is used, install & configure virt-who, and then update the guest to use whichever subscription you like.

As far as why there is a 24-hr subscription, see this comment, which describes in detail the reasoning behind it.

virt-who supports RHEV / VMware only. What should I do with VMs running over non RHEV/VMWare environment? e.g. AWS or Rackspace Ubuntu + openstack.

we are in a migration from rh to satellite6 and we want to use the guest status as migration option (rhel datacenter license not yet fully migrated from rh to satellite). how long the guest subscriptions are guilty and can be used to update a system? how many (concurrent) guest subscriptions are supported (with satellite6)?

This is a problem when provisioning new servers. How can you force virt-who to run adhoc so that it will pull the proper subscription?

edit

systemctl restart virt-who on the satellite server forces virt-who to run then you can run your register command to get the subscriptions right.

@Jamie thank you, restarting virt-who on the Satellite server turns out to be the solution to a problem that's been occurring for us for a while. We had VM's vmotioned to non-licensed hosts before registration, so registration failed, but then we'd been having to wait for 24H before we could correct it.

This states that this is for RHEL6 but RHEL7 is having same issue 3.10.0-957.1.3.el7.x86_64 +-------------------------------------------+ System Status Details +-------------------------------------------+ Overall Status: Insufficient

Red Hat Enterprise Linux for Virtual Datacenters with Smart Management, Standard: - Guest has not been reported on any host and is using a temporary unmapped guest subscription. For more information, please see https://access.redhat.com/solutions/1592573

I use a RHES 7.8 template, which i generated, and deploy new virtual machines from it.

Before the template conversion i did:

subscription-manager clean

Remove the template from satellite (6.4)

After the deployoment, every time the same error occurs and i have to manually follow the solution.

It seems, that there's a residue in the satellite databse, so please tell me, how to clean up a deleted host and how to check it.

I pretty sure, there's a little bug in the virt-how software with regards to caching.

@Rich:

You can schedule the virt-who down to 1h !

Rgds.

Franz

This is brain-dead design, and has been broken for years. VMware vMotion works on a timescale of seconds. Virt-who works on a time frame of 2-3 hours.

It's time Red Hat / IBM get with the programme and ditch this licensing model.

It's just plainly broken.

Even the work arounds given by Red Hat to use ephemeral license keys to force a temporary license don't work reliably. The only thing you can do is wait 2-3 hours for a guest to pick up a correct guest virt-who license

As above:

VM is running on a licensed hypervisor - CHECK Satellite virt-who configuration includes that licensed hypervisor - CHECK

Cleaning out /etc/pki/consumer/* and rerunning the subscription command:

subscription-manager register --activationkey="ak_DUMMY,ak_NONRHEL_RHEL8,ak_RHEL8_PROD" --org="org_MyORG"

CHECK

Result:

[root@XXXXXX ~]# subscription-manager status +-------------------------------------------+ System Status Details +-------------------------------------------+ Overall Status: Insufficient

Red Hat Enterprise Linux for Virtual Datacenters with Smart Management, Standard: - Guest has not been reported on any host and is using a temporary unmapped guest subscription. For more information, please see https://access.redhat.com/solutions/1592573

System Purpose Status: Not Specified

[root@XXXXXX ~]# uptime 12:33:40 up 1:03, 1 user, load average: 2.03, 2.06, 2.02

Hi Christopher, if you don't want to wait, my temporary workraround:

1.) systemctl  stop virt-who.service
2.) virt-who -d (wait till finished, then press CTRL-C)
3.) systemctl  start virt-who.service

Rgds. Franz

Yes, I know you can restart virt-who service on Satellite (assuming you have root ssh access, which, given that Satellite should be used with role based access control, you probably shouldn't).

It's still a nasty piece of software.

I just set up a cron job to restart virt-who every 15 mins.

*/15 * * * * systemctl restart virt-who ~

This way if I create a server, I dont have to wait 2-3 hours. I know that every 15 mins it'll show up. Its dumb, but sometimes you just gotta do what you gotta do.

In my environment we are using hyper-v host.. is there a way for the system to recongize the guest vm? otherwise does this temporary unmapped entitlement get expired?

This software is clinically brain-dead.

Even AFTER restarting virt-who on the Satellite server, and clients are set to auto-attach, they still don't.

eg:

[root@XXXXXXXX ~]# subscription-manager auto-attach
Auto-attach preference: enabled

[root@XXXXXXXX ~]# subscription-manager list
+-------------------------------------------+
    Installed Product Status
+-------------------------------------------+
Product Name:   Red Hat Enterprise Linux for x86_64
Product ID:     479
Version:        8.3
Arch:           x86_64
Status:         Not Subscribed
Status Details: Not supported by a valid subscription.
Starts:
Ends:           

[root@XXXXXXXX ~]# subscription-manager attach
Installed Product Current Status:
Product Name: Red Hat Enterprise Linux for x86_64
Status:       Subscribed

And sometimes, when you do an manual auto attach (NOW THERE'S AN OXYMORON), the VM will pick up a production physical/virtual license instead.