Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

Troubleshooting Subscription Manager in Red Hat Enterprise Linux

Red Hat Subscription Management 1

to respond to problems with Red Hat Subscription Manager and Subscription Asset Manager

Red Hat Subscription Management Documentation Team

October 1, 2013

Abstract

Troubleshoot problems with the subscription-manager tool in Red Hat Enterprise Linux.

1. Troubleshooting Red Hat Subscription Manager

Because of differences in other services, features in Red Hat Subscription Manager, and environments, there are some bugs or limits to functionality for Red Hat Subscription Manager. This section contains some workarounds and troubleshooting information from some of these issues.

1.1. Red Hat Enterprise Linux 5.9

1.1.1. Guest Fact Shows UUID Unknown

For virtual guests, the Subscription Manager daemons use dmidecode to read the System Management BIOS (SMBIOS) value, which is used to retrieve the guest UUID. On 64-bit Intel architecture, the SMBIOS information is controlled by the Intel firmware and stored in a read-only binary entry. Therefore, it is not possible to retrieve the UUID or set a new and readable UUID.
Because the guest UUID is unreadable, running the facts command on the guest system shows a value of Unknown in the virt.facts file for the system (virt.uuid: Unknown). This means that the guest does not have any association with the host machine and, therefore, does not inherit some subscriptions.
The facts used by Subscription Manager can be edited manually to add the UUID:
  1. Obtain the guest name or guest ID.
  2. On the virtual host, use virsh to retrieve the guest UUID. For example, for a guest named rhel5server_virt1:
    virsh domuuid rhel5server_virt1
  3. On the guest, manually create a facts file:
    vim /etc/rhsm/facts/virt.facts
  4. Add a line which contains the given UUID.
        {
          "virt.uuid": "$VIRSH_UUID"
          }
Creating the facts file and inserting the proper UUID means that Subscription Manager properly identifies the guest rather than using an Unknown value.

1.2. Red Hat Enterprise Linux 6.2

1.2.1. Manually Setting a Preferred Operating System Release

Beginning in Red Hat Enterprise Linux 6.3, Red Hat Subscription Manager could set a preferred operating system version to use to limit automatic updates for a system. This is one of several preferences that can be set to use for autoattaching subscriptions. However, it is not possible to set a preferred operating system through Red Hat Subscription Manager on older versions of Red Hat Enterprise Linux.
The system can be restricted to a certain operating system version on Red Hat Enterprise Linux 6.2 by editing the yum configuration. For example, to limit yum updates to 6.2-version packages:
[root@server ~]# echo 6.2 > /etc/yum/vars/releasever

2. Troubleshooting Subscription Asset Manager

Because of differences in other services, features in Red Hat Subscription Manager, and environments, there are some bugs or limits to functionality for Red Hat Subscription Manager. This section contains some workarounds and troubleshooting information from some of these issues.

2.1. Subscription Asset Manager 1.3

2.1.1. Required Upgrades for Instance-Based Subscription Changes

A new model of pricing and counting subscriptions conincident with the Subscription Asset Manager 1.3 release. Subscription Asset Manager 1.3 (and updated Red Hat Subscription Manager) can properly parse and apply these updated subscriptions as well as the former subscription structure. Older versions of Subscription Asset Manager cannot.

Important

If any subscriptions will be purchased after October 1, 2013, those subscriptions will use the new instance-based model. All Subscription Asset Manager servers must be upgraded to version 1.3 in order to use those new subscriptions. Older versions of Subscription Asset Manager are not compatible with the new instance-based subscriptions.
Additionally, it is strongly recommended that the local Red Hat Subscription Manager packages be updated on all local systems in order to use the new instance-based subscriptions.
The upgrade process requires backing up Subscription Asset Manager and its databases and managing indexes, along with updating packages. The full upgrade procedure is covered in the Using Subscription Asset Manager guide in the subscription documentation set.

2.1.2. Common Problems with Enhanced Reporting

Q: Why are no systems displayed in the report?
Q: I tried to create a new report, but I got the error Validation failed: A server name has not been defined in the database. The backend splice tool must execute at least one time.
Q: Why are all systems marked as invalid?
Q: I updated subscriptions for a system or my Satellite server in Subscription Asset Manager, but those changes are not being reflected in the report.
Q: The link to the Satellite 5.6 UI in the report results is returning an HTTP 404 error.
Q: I had other organizations and systems registered with my Subscription Asset Manager server, but they have disappeared from the UI. What happened?
Q:
Why are no systems displayed in the report?
A:
This means that the information is not being pulled into the reporting database, and there are several potential points of failure:
  • The information isn't being pulled from the Satellite server.
  • The information is being corrupted or improperly formatted when it is sent to the Subscription Asset Manager server.
  • The information is not being properly transmitted from Subscription Asset Manager into the reporting database.
  • The information is not being properly stored in the database.
  • The information stored in Subscription Asset Manager is outdated.
First, make sure that the sync script is running by checking the history in the sync tool log, /var/log/splice/spacewalk_splice_tool.log.
Then, make sure that the Mongo service is running and listening on port 27017. If the Mongo service is not running, then the Subscription Asset Manager services cannot start.
[root@sam-server ~]# service mongod status
[root@sam-server ~]# telnet localhost 27017
If the service is running, check the Mongo database to look for sync entries. For example:
[root@sam-server ~]# mongo checkin_service --eval "printjson(db.marketing_product_usage.count())"
If neither of those reveal a problem, or if they do not have relevant entries, then run the reporting debug script:
[root@sam-server ~]# /usr/bin/splice-debug
This collects all relevant configuration and log files for the reporting server and exports the data to a file in the /tmp directory name splice-debug-YYYY-MM-DD-TIME. For example, /tmp/splice-debug-2013-06-14-T15-22-19.
That directory can be zipped and sent to support if necessary.
Q:
I tried to create a new report, but I got the error Validation failed: A server name has not been defined in the database. The backend splice tool must execute at least one time.
A:
The initial run of the spacewalk-splice-checkin utility on the Subscription Asset Manager server pulls the data out of the Satellite server and into the Subscription Asset Manager database. Without that run, there is no Satellite information and the report cannot be set up with the required Satellite server and organizations.
Q:
Why are all systems marked as invalid?
A:
Check that a manifest has been imported. The manifest tells Subscription Asset Manager what subscriptions the Satellite server has attached to it; without the manifest, reporting assumes that no subscriptions are available.
Q:
I updated subscriptions for a system or my Satellite server in Subscription Asset Manager, but those changes are not being reflected in the report.
A:
The sync script runs every four hours, so it may not have synchronized the changes yet. Run the script by hand (which may take several minutes to finish):
[root@sam-server ~]# su - splice -s /bin/bash
[splice@sam-server ~]$ spacewalk-splice-checkin
Q:
The link to the Satellite 5.6 UI in the report results is returning an HTTP 404 error.
A:
Check that the rhn-search process is running on the Satellite 5.6 machine.
Q:
I had other organizations and systems registered with my Subscription Asset Manager server, but they have disappeared from the UI. What happened?
A:
If a Subscription Asset Manager instance used in enhanced reporting has non-Satellite organizations added to it, those organizations may be overwritten and removed in the Subscription Asset Manager database as part of the sync process.

Warning

A Subscription Asset Manager instance used for enhanced reporting can only be used as a reporting server for Satellite. It cannot be used a regular Subscription Asset Manager instance to manage systems or data could be lost.

3. Revision History

Revision History
Revision 1.3-6January 24, 2018Anni Bond
Updated title and how to create a documentation bug in Bugzilla.
Revision 1.3-5September 18, 2013Deon Ballard
New content and reorganization for the SAM 1.3 release.

Legal Notice

Copyright © 2013 Red Hat, Inc.
This document is licensed by Red Hat under the Creative Commons Attribution-ShareAlike 3.0 Unported License. If you distribute this document, or a modified version of it, you must provide attribution to Red Hat, Inc. and provide a link to the original. If the document is modified, all Red Hat trademarks must be removed.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.