VMware vSphere RHEL-Gäste über Red Hat Satellite 6.2 an RHSM berichten

Wer Red Hat Satellite 6 einsetzt, um virtualisierte Red Hat Enterprise Linux-Systeme zu verwalten, muss zur Lizenzzuweisung Red Hat Subscription Management (RHSM) verwenden. Gegenüber der vorher verwendeten Red Hat Network Classic-Lizenzsierung kommen hier signierte Manifest-Zertifikate zum Einsatz. In größeren Systemlandschaften ist es so auch einfacher, verwendete und benötigte Lizenzen aufzulisten, da sich RHSM in Hypervisor integrieren kann. Mithilfe einer auf dem Red Hat Satellite-Server ausgeführten Software werden ausgeführte RHEL-Instanzen und verwendete Hypervisor erkannt und an RHSM berichtet, um die korrekte Lizenzierung sicherzustellen. Es wird keine Fremdsoftware auf dem Hypervisor benötigt - ein Zugriff auf die Hypervisor-API ist ausreichend. Für das Auslesen der Laufzeitinformationen ist es ratsam einen read-only Service-Account einzurichten.

Die konventionelle Subskriptionsverwaltung steht übrigens ab dem 31. Juli 2017 nicht mehr zur Verfügung - auch nicht für Red Hat Satellite 5. Benutzer der älteren Management-Suite müssen ebenso auf RHSM migrieren.

Vorab sollte sichergestellt werden, dass sich die zu verwalteten Systeme mindestens auf den Versionsständen 5.7, 6.1 und 7.0 oder höher befinden. Wenn Red Hat Satellite 6 zum Einsatz kommt, muss das virt-who Paket auf diesem System installiert werden. Darüber hinaus ist es empfehlenswert, pro Hypervisor oder vCenter Server entsprechende Konfigurationsdateien zu erstellen - beispielsweise für eine vCenter-Instanz:

1# cat /etc/virt-who.d/vcenter.conf
2[vcenter]
3type=esx
4server=vcenter.stankowic.loc
5username=svc-readonly@vsphere.local
6encrypted_password=xxxxxxxx
7owner=RHSM_ID
8env=Library

Sehr wichtig ist übrigens, den Benutzernamen im Format name@sso.tld und nicht sso.tldname einzugeben! Wird letzteres angegeben, werden Benutzername und Passwort nicht korrekt übergeben und es kommt somit zu fehlerhaften Logins.

RHSM_ID muss durch die RHSM Organisations-ID ersetzt werden. Diese findet man einfachsten, wenn man das folgende Kommando auf dem Red Hat Satellite Server ausführt, da dieser ja im Idealfall bereits über RHSM registriert ist:

1# subscription-manager identity
2system identity: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
3name: satellite.stankowic.loc
4org name: xxxxxxx
5org ID: xxxxxxx

An dieser Stelle ist die offizielle Dokumentation leider etwas dünn. Ich hatte demzufolge zuerst die interne Satellite Organisations-ID angegeben und war über die folgende Fehlermeldung im RHSM-Protokoll (/var/log/rhsm/rhsm.log) verwundert:

12017-05-11 09:13:55,657 [virtwho.main ERROR] MainProcess(6049):MainThread @executor.py:send:143 - Unable to send data: Communication with subscription manager failed with code 404: Organization with id 1 could not be found.

Auch das Verwenden des Namens funktionierte natürlich nicht:

12017-05-11 09:13:26,845 [virtwho.main ERROR] MainProcess(5809):MainThread @executor.py:send:143 - Unable to send data: Communication with subscription manager failed with code 404: Organization with id Stankowic could not be found.

Das Resultat war, dass verwaltete Systeme lediglich über eine temporäre Subskription verfügten:

 1# subscription-manager status
 2+-------------------------------------------+
 3 System Status Details
 4+-------------------------------------------+
 5Overall Status: Insufficient
 6
 7Red Hat Enterprise Linux for SAP applications, Premium (1-2 sockets)(Up to 4
 8guests) with Smart Management:
 9- Guest has not been reported on any host and is using a temporary unmapped
10 guest subscription.

Temporär bedeutet, dass das betroffene System lediglich für maximal 24 Stunden Zugriff auf die Software-Pakete erhält.

Bei der ersten Einrichtung von virt-who ist es empfehlenswert, den Debug-Modus zu aktivieren:

1# vi /etc/sysconfig/virt-who
2VIRTWHO_BACKGROUND=1
3VIRTWHO_DEBUG=1
4VIRTWHO_SATELLITE6=1

Sofern Benutzername und Passwort stimmen, kann das erfolgreiche Erkennen und Berichten der virtuellen RHEL-Instanzen im RHSM-Protokoll eingesehen werden:

12017-05-11 10:14:40,523 [virtwho.main DEBUG] MainProcess(15626):MainThread @executor.py:send_report:101 - Report for config "vcenter" sent

Auf dem temporär berechtigten RHEL-System wurden die folgenden zwei Befehle ausgeführt - anschließend war es vollständig berechtigt:

1# subscription-manager attach
2# subscription-manager status
3+-------------------------------------------+
4 System Status Details
5+-------------------------------------------+
6Overall Status: Current

Übersetzungen: