Gelegentlich kann es vorkommen, dass PAYG-Lizenzen für Ubuntu Pro nicht automatisch in Compute Engine registriert werden. In diesem Dokument wird beschrieben, wie Sie Probleme beheben, die bei der Registrierung von Compute Engine-VM-Instanzen mit Pay-as-you-go-Ubuntu Pro-Lizenzen (PAYG-Ubuntu Pro-Lizenzen) auftreten können.
Registrierungsstatus prüfen
So prüfen Sie, ob Ihre Lizenz registriert ist: Stellen Sie eine Verbindung zur VM her und führen Sie den folgenden Befehl aus.
sudo ua status
Wenn die Registrierung erfolgreich war, sehen Sie eine Ausgabe ähnlich der folgenden und es sind keine weiteren Maßnahmen erforderlich:
SERVICE ENTITLED STATUS DESCRIPTION cc-eal yes disabled Common Criteria EAL2 Provisioning Packages cis yes disabled Security compliance and audit tools esm-apps yes enabled Expanded Security Maintenance for Applications esm-infra yes enabled Expanded Security Maintenance for Infrastructure fips yes disabled NIST-certified core packages fips-updates yes disabled NIST-certified core packages with priority security updates livepatch yes enabled Canonical Livepatch service
Wenn die Registrierung fehlgeschlagen ist und Ubuntu Pro nicht registriert ist, wird eine Meldung ähnlich der folgenden angezeigt:
This machine is not attached to an Ubuntu Pro subscription.
Lizenz manuell registrieren
Wenn Ihre Ubuntu Pro-Lizenz nicht automatisch von Compute Engine registriert wurde, können Sie die Lizenz mit dem folgenden Befehl manuell registrieren:
sudo pro auto-attach
Die Ausgabe sieht in etwa so aus:
Erfolgreiche Registrierung:
This machine is already attached to PROJECT_ID To use a different subscription first run: sudo pro detach.
Fehler bei der Anmeldung:
Internal Server Error
Fehlerbehebung bei der Lizenzregistrierung
Wenn Sie eine Ubuntu Pro-Lizenz nicht manuell registrieren konnten, beheben Sie das Problem so:
Prüfen Sie, ob die VM den Metadatenserver erreichen kann. Führen Sie dazu den folgenden Befehl aus, um die Anzahl der an die VM angehängten Laufwerke zu prüfen:
curl "http://metadata.google.internal/computeMetadata/v1/instance/disks/" -H "Metadata-Flavor: Google"
Die Ausgabe sieht in etwa so aus und zeigt die Anzahl der mit der VM verbundenen Festplatten:
0/ 1/ 2/
Wenn in der Ausgabe nicht die Anzahl der an die VM angehängten Laufwerke angezeigt wird, lesen Sie den Abschnitt Probleme beim Zugriff auf den Metadatenserver beheben.
Prüfen Sie mit dem folgenden Befehl, ob der Google-Gast-Agent ausgeführt wird:
systemctl status google-guest-agent.service
Die Ausgabe sieht in etwa so aus:
● google-guest-agent.service - Google Compute Engine Guest Agent Loaded: loaded (/lib/systemd/system/google-guest-agent.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2023-04-20 16:35:11 PDT; 2h 12min ago Main PID: 4582 (google_guest_ag) Tasks: 10 (limit: 9525)
Wenn der Gast-Agent nicht installiert ist oder die Installation fehlgeschlagen ist, installieren oder installieren Sie die Gastumgebung neu.
Prüfen Sie mit dem folgenden Befehl auf Ihrer lokalen Workstation, ob ein Dienstkonto mit der VM verknüpft ist:
gcloud compute instances describe VM_NAME \ --zone ZONE --format="table(serviceAccounts.email)"
Ersetzen Sie Folgendes:
VM_NAME
: der Name der VMZONE
: die Zone, in der sich die VM befindet
Die Ausgabe sieht in etwa so aus:
EMAIL: ['XXXXXXXX-compute@developer.gserviceaccount.com']
Notieren Sie sich die E‑Mail-Adresse des Dienstkontos.
Prüfen Sie mit der folgenden Abfrage, ob das Dienstkonto aktiviert ist:
gcloud logging read --freshness=90d "SERVICE_ACCOUNT_EMAIL protoPayload.methodName=google.iam.admin.v1.DisableServiceAccount"
Ersetzen Sie
SERVICE_ACCOUNT_EMAIL
durch die E-Mail-Adresse, die mit dem Dienstkonto der VM verknüpft ist.Die Ausgabe sieht in etwa so aus:
insertId: 1ne5thkf13sxec logName: projects/testproject/logs/cloudaudit.googleapis.com%2Factivity protoPayload: '@type': type.googleapis.com/google.cloud.audit.AuditLog authenticationInfo: principalEmail: principalemail@google.com principalSubject: user:pricipalemail@google.com authorizationInfo: granted: true permission: iam.serviceAccounts.disable resource: projects/-/serviceAccounts/XXXXXXXXXXXXXX resourceAttributes: name: projects/-/serviceAccounts/XXXXXXXXXXXXXXXX methodName: google.iam.admin.v1.DisableServiceAccount request: '@type': type.googleapis.com/google.iam.admin.v1.DisableServiceAccountRequest name: projects/testproject/serviceAccounts/
-compute@developer.gserviceaccount.com requestMetadata: destinationAttributes: {} requestAttributes: auth: {} time: '2024-01-25T21:37:55.748811275Z' resourceName: projects/-/serviceAccounts/XXXXXXXXXX response: '@type': type.googleapis.com/google.protobuf.Empty serviceName: iam.googleapis.com status: {} receiveTimestamp: '2024-01-25T21:37:56.409675900Z' resource: labels: email_id: -compute@developer.gserviceaccount.com project_id: testproject unique_id: 'XXXXXXXXXXXXXXXX' type: service_account severity: NOTICE timestamp: '2024-01-25T21:37:55.721215307Z' Wenn das Dienstkonto nicht aktiviert ist, aktivieren Sie es wieder.
Nachdem Sie das Dienstkonto reaktiviert haben, versuchen Sie, die Lizenz gemäß der Anleitung im Abschnitt Lizenz manuell registrieren in diesem Dokument zu registrieren.