PMU in VMs aktivieren


In diesem Dokument wird beschrieben, wie Sie die Leistungsüberwachungseinheit (Performance Monitoring Unit, PMU) in neuen oder vorhandenen VM-Instanzen (virtuellen Maschinen) aktivieren.

Nachdem Sie die PMU in einer C4-VM aktiviert und eine Verbindung zur VM hergestellt haben, können Sie auf der VM eine Software zur Leistungsüberwachung ausführen und installieren, um die Leistung der auf der VM ausgeführten Software zu analysieren und zu optimieren. Das ist nützlich, wenn leistungsempfindliche Arbeitslasten ausgeführt werden, z. B. Hochleistungs-Computing (HPC) oder maschinelles Lernen (ML).

Vorbereitung

  • Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben. Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud-Dienste und APIs überprüft. Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei Compute Engine authentifizieren.

    Select the tab for how you plan to use the samples on this page:

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Weitere Informationen finden Sie unter Für die Verwendung von REST authentifizieren in der Dokumentation zur Google Cloud-Authentifizierung.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) für Ihr Projekt zu gewähren, um die Berechtigungen zu erhalten, die Sie zum Aktivieren der PMU in einer neuen oder vorhandenen VM benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierte Rolle enthält die Berechtigungen, die zum Aktivieren der PMU in einer neuen oder vorhandenen VM erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um die PMU in einer neuen oder vorhandenen VM zu aktivieren:

  • Zum Erstellen von VMs:
    • compute.instances.create für das Projekt
    • Zur Erstellung der VM mit einem benutzerdefinierten Image: compute.images.useReadOnly für das Image
    • Zur Erstellung der VM mithilfe eines Snapshots: compute.snapshots.useReadOnly für den Snapshot
    • Zur Erstellung der VM mithilfe einer Instanzvorlage: compute.instanceTemplates.useReadOnly für die Instanzvorlage
    • Um der VM ein Legacy-Netzwerk zuzuweisen: compute.networks.use für das Projekt
    • Zum Festlegen einer statische IP-Adresse für die VM: compute.addresses.use für das Projekt
    • Zur Zuweisung einer externen IP-Adresse zur VM bei Verwendung eines Legacy-Netzwerks: compute.networks.useExternalIp für das Projekt
    • Um ein Subnetz für die VM anzugeben: compute.subnetworks.use für das Projekt oder für das ausgewählte Subnetz
    • Um der VM eine externe IP-Adresse zuzuweisen, wenn Sie ein VPC-Netzwerk verwenden: compute.subnetworks.useExternalIp für das Projekt oder für das ausgewählte Subnetz
    • Um die Metadaten der VM-Instanz für die VM festzulegen: compute.instances.setMetadata für das Projekt
    • Um Tags für die VM festzulegen: compute.instances.setTags für die VM
    • Um Labels für die VM festzulegen: compute.instances.setLabels für die VM
    • Um ein Dienstkonto festzulegen, das die VM verwenden soll: compute.instances.setServiceAccount für die VM
    • Um ein neues Laufwerk für die VM zu erstellen: compute.disks.create für das Projekt
    • Um ein vorhandenes Laufwerk im Lese- oder Lese‑/Schreibmodus anzuhängen: compute.disks.use für das Laufwerk
    • Um ein vorhandenes Laufwerk im Lesemodus anzuhängen: compute.disks.useReadOnly für das Laufwerk
  • Um eine Instanzvorlage zu erstellen: compute.instanceTemplates.create für das Projekt
  • So aktualisieren Sie eine VM: compute.instances.update auf der VM

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

PMU in VMs aktivieren

Um die PMU in einer oder mehreren C4-VMs zu aktivieren, wählen Sie eine der folgenden Methoden aus:

Nachdem Sie die PMU in einer oder mehreren VMs aktiviert haben, können Sie Leistungsüberwachungssoftware auf den VMs installieren und verwenden.

PMU in einer vorhandenen VM aktivieren

Bevor Sie die PMU in einer vorhandenen VM aktivieren, prüfen Sie, ob die VM einen unterstützten Maschinentyp und eine unterstützte CPU-Plattform verwendet. Gehen Sie dazu so vor:

  1. Prüfen Sie die Details der VM, um den Maschinentyp und die CPU-Plattform der VM zu ermitteln.

  2. Wenn Sie den Maschinentyp der VM ändern müssen, gehen Sie so vor:

    1. Ob eine unterstützte CPU-Plattform in der Zone verfügbar ist, in der sich die VM befindet, erfahren Sie unter Verfügbare Regionen und Zonen.

    2. Ändern Sie den Maschinentyp folgendermaßen:

      • Wenn Sie den erweiterten PMU-Typ aktivieren möchten, müssen Sie einen C4-Maschinentyp mit 96 oder 192 vCPUs angeben.

      • Andernfalls geben Sie einen beliebigen C4-Maschinentyp an, um den PMU-Typ „Architektur“ oder „Standard“ zu aktivieren.

Sie müssen die VM nicht anhalten, um die PMU zu aktivieren. Damit die Änderung wirksam wird, müssen Sie die VM jedoch wie in diesem Abschnitt beschrieben neu starten.

Wählen Sie eine der folgenden Optionen aus, um die PMU in einer vorhandenen VM zu aktivieren:

gcloud

  1. Erstellen Sie eine leere YAML-Datei.

  2. Verwenden Sie den Befehl gcloud compute instances export, um die Eigenschaften einer VM in die gerade erstellte YAML-Datei zu exportieren.

    gcloud compute instances export VM_NAME \
        --destination=YAML_FILE \
        --zone=ZONE
    

    Ersetzen Sie dabei Folgendes:

    • VM_NAME: der Name der VM.

    • YAML_FILE: der Pfad zur YAML-Datei, die Sie im vorherigen Schritt erstellt haben.

    • ZONE ist die Zone, in der sich die VM befindet.

  3. Fügen Sie in der YAML-Konfigurationsdatei das Feld performanceMonitoringUnit hinzu.

    advancedMachineFeatures:
      performanceMonitoringUnit: PMU_TYPE
    

    Ersetzen Sie PMU_TYPE durch einen der folgenden Werte:

    • Typ der architektonischen PMU: ARCHITECTURAL

    • Standard-PMU-Typ: STANDARD

    • Erweiterter PMU-Typ: ENHANCED

  4. Verwenden Sie den Befehl gcloud compute instances update-from-file mit dem Flag --most-disruptive-allowed-action = RESTART, um die VM zu aktualisieren und neu zu starten.

    gcloud compute instances update-from-file VM_NAME \
        --most-disruptive-allowed-action=RESTART \
        --source=YAML_FILE \
        --zone=ZONE
    

    Ersetzen Sie dabei Folgendes:

    • VM_NAME: der Name der VM.

    • YAML_FILE: Pfad zur YAML-Datei mit den Konfigurationsdaten, die Sie im vorherigen Schritt geändert haben.

    • ZONE ist die Zone, in der sich die VM befindet.

REST

  1. Erstellen Sie eine leere JSON-Datei.

  2. Wenn Sie die Eigenschaften einer vorhandenen VM aufrufen möchten, senden Sie eine GET-Anfrage an die Methode instances.get.

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
    

    Ersetzen Sie dabei Folgendes:

    • PROJECT_ID: die Projekt-ID des Projekts, in dem sich die VM befindet.

    • ZONE ist die Zone, in der sich die VM befindet.

    • VM_NAME: Der Name einer vorhandenen VM.

  3. Gehen Sie in der leeren JSON-Datei, die Sie in den vorherigen Schritten erstellt haben, so vor:

    1. Geben Sie die VM-Eigenschaften aus der GET-Anfrageausgabe ein.

    2. Fügen Sie das Feld performanceMonitoringUnit hinzu.

      {
        "advancedMachineFeatures": {
          "performanceMonitoringUnit": "PMU_TYPE"
        },
        ...
      }
      

      Ersetzen Sie PMU_TYPE durch einen der folgenden Werte:

      • Typ der architektonischen PMU: ARCHITECTURAL

      • Standard-PMU-Typ: STANDARD

      • Erweiterter PMU-Typ: ENHANCED

  4. Wenn Sie die VM aktualisieren und neu starten möchten, senden Sie eine PUT-Anfrage an die Methode instances.update. Gehen Sie in der Anfrage so vor:

    • Fügen Sie in der Anfrage-URL den Abfrageparameter most_disruptive_allowed_action mit dem Wert RESTART ein.

    • Verwenden Sie für den Anfragetext die VM-Eigenschaften aus der JSON-Datei, die Sie in den vorherigen Schritten erstellt und aktualisiert haben.

    PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME?most_disruptive_allowed_action=RESTART
    
    {
      "advancedMachineFeatures": {
        "performanceMonitoringUnit": "PMU_TYPE"
      },
      ...
    }
    

Weitere Informationen zum Aktualisieren der Eigenschaften einer VM finden Sie unter VM-Eigenschaften aktualisieren.

PMU beim Erstellen einer VM aktivieren

Sie können eine VM mit aktivierter PMU nur in einer Zone erstellen, die eine unterstützte CPU-Plattform enthält. Eine Liste der verfügbaren CPUs nach Zone finden Sie unter Verfügbare Regionen und Zonen.

Wählen Sie eine der folgenden Optionen aus, um eine VM mit aktivierter PMU zu erstellen:

gcloud

Verwenden Sie zum Erstellen einer VM mit aktivierter PMU den Befehl gcloud compute instances create mit dem Flag --performance-monitoring-unit.

gcloud compute instances create VM_NAME \
    --machine-type=MACHINE_TYPE \
    --performance-monitoring-unit=PMU_TYPE \
    --zone=ZONE

Ersetzen Sie dabei Folgendes:

  • VM_NAME: der Name der VM.

  • MACHINE_TYPE: ein C4-Maschinentyp. Wenn Sie den erweiterten PMU-Typ aktivieren möchten, müssen Sie einen C4-Maschinentyp mit 96 oder 192 vCPUs angeben. Andernfalls schlägt die VM-Erstellung fehl.

  • PMU_TYPE: Der Typ der PMU, die in der VM aktiviert werden soll. Geben Sie einen der folgenden Werte an:

    • Typ der architektonischen PMU: architectural

    • Standard-PMU-Typ: standard

    • Erweiterter PMU-Typ: enhanced

  • ZONE: die Zone, in der die VM-Instanz erstellt werden soll.

REST

Wenn Sie eine VM mit aktivierter PMU erstellen möchten, senden Sie eine POST-Anfrage an die Methode instances.insert. Geben Sie im Anfragetext das Feld performanceMonitoringUnit an.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances

{
  "name": "VM_NAME",
  "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
  "disks": [
    {
      "boot": true,
      "initializeParams": {
        "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
      }
    }
  ],
  "networkInterfaces": [
    {
      "network": "global/networks/default"
    }
  ],
  "advancedMachineFeatures": {
    "performanceMonitoringUnit": "PMU_TYPE"
  }
}

Ersetzen Sie dabei Folgendes:

  • PROJECT_ID: ID des Projekts, in dem die VM erstellt werden soll.

  • ZONE: die Zone, in der die VM-Instanz erstellt werden soll.

  • VM_NAME: der Name der VM.

  • MACHINE_TYPE: ein C4-Maschinentyp. Wenn Sie den erweiterten PMU-Typ aktivieren möchten, müssen Sie einen C4-Maschinentyp mit 96 oder 192 vCPUs angeben. Andernfalls schlägt die VM-Erstellung fehl.

  • IMAGE_PROJECT: das Image-Projekt, das das Image enthält, z. B. debian-cloud. Weitere Informationen zu den unterstützten Image-Projekten finden Sie unter Öffentliche Images.

  • IMAGE: Wählen Sie eine der folgenden Optionen aus:

    • Eine bestimmte Version des Betriebssystem-Images; Beispiel: debian-12-bookworm-v20240617.

    • Eine Image-Familie, die als family/IMAGE_FAMILY formatiert sein muss. Damit wird das neueste nicht verworfene Betriebssystem-Image angegeben. Beispiel: Wenn Sie family/debian-12 angeben, wird die aktuelle Version in der Debian 12-Image-Familie verwendet. Weitere Informationen zur Verwendung von Image-Familien finden Sie unter Best Practices für Image-Familien.

  • PMU_TYPE: Der Typ der PMU, die in der VM aktiviert werden soll. Geben Sie einen der folgenden Werte an:

    • Typ der architektonischen PMU: ARCHITECTURAL

    • Standard-PMU-Typ: STANDARD

    • Erweiterter PMU-Typ: ENHANCED

Weitere Informationen zum Erstellen einer VM finden Sie unter Compute Engine-Instanz erstellen und starten.

PMU beim Erstellen mehrerer VMs gleichzeitig aktivieren

Sie können VMs im Bulk nur mit aktivierter PMU in Zonen erstellen, die eine unterstützte CPU-Plattform enthalten. Eine Liste der verfügbaren CPUs nach Zone finden Sie unter Verfügbare Regionen und Zonen.

Wählen Sie eine der folgenden Optionen aus, um VMs im Bulk mit aktivierter PMU zu erstellen:

gcloud

Wenn Sie VMs im Bulk mit aktivierter PMU erstellen möchten, verwenden Sie den Befehl gcloud compute instances bulk create mit dem Flag --performance-monitoring-unit.

Wenn Sie beispielsweise VMs im Bulk in einer einzelnen Zone erstellen und ein Namensmuster angeben möchten, führen Sie den folgenden Befehl aus:

gcloud compute instances bulk create \
    --count=COUNT \
    --machine-type=MACHINE_TYPE \
    --name-pattern="NAME_PATTERN" \
    --performance-monitoring-unit=PMU_TYPE \
    --zone=ZONE

Ersetzen Sie dabei Folgendes:

  • COUNT ist die Anzahl der zu erstellenden VMs.

  • MACHINE_TYPE: ein C4-Maschinentyp. Wenn Sie den erweiterten PMU-Typ aktivieren möchten, müssen Sie einen C4-Maschinentyp mit 96 oder 192 vCPUs angeben. Andernfalls schlägt die VM-Erstellung fehl.

  • NAME_PATTERN ist das Namensmuster für die VMs. Verwenden Sie eine Abfolge von Hash-Zeichen (#), um eine Zahlenfolge in einem VM-Namen zu ersetzen. Wenn Sie z. B. vm-# für das Namensmuster verwenden, werden VMs mit den Namen vm-1, vm-2 usw. bis zu der durch COUNT angegebenen Anzahl von VMs erzeugt.

  • PMU_TYPE: der Typ der PMU, die in den VMs aktiviert werden soll. Geben Sie einen der folgenden Werte an:

    • Typ der architektonischen PMU: architectural

    • Standard-PMU-Typ: standard

    • Erweiterter PMU-Typ: enhanced

  • ZONE: Zone, in der die VMs im Bulk erstellt werden sollen.

REST

Wenn Sie VMs im Bulk mit aktivierter PMU erstellen möchten, senden Sie eine POST-Anfrage an die Methode instances.bulkInsert. Geben Sie im Anfragetext das Feld performanceMonitoringUnit an.

Wenn Sie beispielsweise VMs im Bulk in einer einzelnen Zone erstellen und ein Namensmuster angeben möchten, stellen Sie eine POST-Anfrage wie hier beschrieben:

POST https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert

{
  "count": COUNT,
  "namePattern": "NAME_PATTERN",
  "instanceProperties": {
    "machineType": "MACHINE_TYPE",
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
        }
      }
    ],
    "networkInterfaces": [
      {
        "network": "global/networks/default"
      }
    ],
    "advancedMachineFeatures": {
      "performanceMonitoringUnit": "PMU_TYPE"
    }
  }
}

Ersetzen Sie dabei Folgendes:

  • PROJECT_ID: ID des Projekts, in dem VMs im Bulk erstellt werden sollen.

  • ZONE: Zone, in der die VMs im Bulk erstellt werden sollen.

  • COUNT ist die Anzahl der zu erstellenden VMs.

  • NAME_PATTERN ist das Namensmuster für die VMs. Verwenden Sie eine Abfolge von Hash-Zeichen (#), um eine Zahlenfolge in einem VM-Namen zu ersetzen. Wenn Sie z. B. vm-# für das Namensmuster verwenden, werden VMs mit den Namen vm-1, vm-2 usw. bis zu der durch COUNT angegebenen Anzahl von VMs erzeugt.

  • MACHINE_TYPE: ein C4-Maschinentyp. Wenn Sie den erweiterten PMU-Typ aktivieren möchten, müssen Sie einen C4-Maschinentyp mit 96 oder 192 vCPUs angeben. Andernfalls schlägt die VM-Erstellung fehl.

  • IMAGE_PROJECT: das Image-Projekt, das das Image enthält, z. B. debian-cloud. Weitere Informationen zu den unterstützten Image-Projekten finden Sie unter Öffentliche Images.

  • IMAGE: Wählen Sie eine der folgenden Optionen aus:

    • Eine bestimmte Version des Betriebssystem-Images; Beispiel: debian-12-bookworm-v20240617.

    • Eine Image-Familie, die als family/IMAGE_FAMILY formatiert sein muss. Damit wird das neueste nicht verworfene Betriebssystem-Image angegeben. Beispiel: Wenn Sie family/debian-12 angeben, wird die aktuelle Version in der Debian 12-Image-Familie verwendet. Weitere Informationen zur Verwendung von Image-Familien finden Sie unter Best Practices für Image-Familien.

  • PMU_TYPE: der Typ der PMU, die in den VMs aktiviert werden soll. Geben Sie einen der folgenden Werte an:

    • Typ der architektonischen PMU: ARCHITECTURAL

    • Standard-PMU-Typ: STANDARD

    • Erweiterter PMU-Typ: ENHANCED

  • ZONE: Zone, in der die VMs im Bulk erstellt werden sollen.

Weitere Informationen zum Erstellen mehrerer VMs finden Sie unter VMs im Bulk erstellen.

PMU beim Erstellen einer Instanzvorlage aktivieren

Wenn Sie eine regionale Instanzvorlage mit aktivierter PMU erstellen möchten, muss mindestens eine Zone in der ausgewählten Region eine unterstützte CPU-Plattform enthalten. Eine Liste der verfügbaren CPUs nach Zone finden Sie unter Verfügbare Regionen und Zonen.

Nachdem Sie eine Instanzvorlage mit aktivierter PMU erstellt haben, können Sie mit der Vorlage Folgendes tun:

Wählen Sie eine der folgenden Optionen aus, um eine Instanzvorlage mit aktivierter PMU zu erstellen:

gcloud

Verwenden Sie zum Erstellen einer Instanzvorlage mit aktivierter PMU den Befehl gcloud compute instance-templates create mit dem Flag --performance-monitoring-unit.

Führen Sie beispielsweise den folgenden Befehl aus, um eine globale Instanzvorlage mit aktivierter PMU zu erstellen:

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --performance-monitoring-unit=PMU_TYPE

Ersetzen Sie dabei Folgendes:

  • INSTANCE_TEMPLATE_NAME ist der Name der Instanzvorlage.

  • MACHINE_TYPE: ein C4-Maschinentyp. Wenn Sie den erweiterten PMU-Typ aktivieren möchten, müssen Sie einen C4-Maschinentyp mit 96 oder 192 vCPUs angeben. Andernfalls schlägt die VM-Erstellung fehl.

  • PMU_TYPE: Der Typ der PMU, die in die Instanzvorlage aufgenommen werden soll. Geben Sie einen der folgenden Werte an:

    • Typ der architektonischen PMU: architectural

    • Standard-PMU-Typ: standard

    • Erweiterter PMU-Typ: enhanced

REST

Wenn Sie eine Instanzvorlage mit aktivierter PMU erstellen möchten, senden Sie eine POST-Anfrage an eine der folgenden Methoden:

Geben Sie im Anfragetext das Feld performanceMonitoringUnit an.

Wenn Sie beispielsweise eine globale Instanzvorlage mit aktivierter PMU erstellen möchten, stellen Sie eine POST-Anfrage wie hier beschrieben:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates

{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
        }
      }
    ],
    "machineType": "MACHINE_TYPE",
    "networkInterfaces": [
      {
        "network": "global/networks/default"
      }
    ],
    "advancedMachineFeatures": {
      "performanceMonitoringUnit": "PMU_TYPE"
    }
  }
}

Ersetzen Sie dabei Folgendes:

  • PROJECT_ID: die ID des Projekts, in dem die Instanzvorlage erstellt werden soll.

  • INSTANCE_TEMPLATE_NAME ist der Name der Instanzvorlage.

  • IMAGE_PROJECT: das Image-Projekt, das das Image enthält, z. B. debian-cloud. Weitere Informationen zu den unterstützten Image-Projekten finden Sie unter Öffentliche Images.

  • IMAGE: Wählen Sie eine der folgenden Optionen aus:

    • Eine bestimmte Version des Betriebssystem-Images; Beispiel: debian-12-bookworm-v20240617.

    • Eine Image-Familie, die als family/IMAGE_FAMILY formatiert sein muss. Damit wird das neueste nicht verworfene Betriebssystem-Image angegeben. Beispiel: Wenn Sie family/debian-12 angeben, wird die aktuelle Version in der Debian 12-Image-Familie verwendet. Weitere Informationen zur Verwendung von Image-Familien finden Sie unter Best Practices für Image-Familien.

  • MACHINE_TYPE: ein C4-Maschinentyp. Wenn Sie den erweiterten PMU-Typ aktivieren möchten, müssen Sie einen C4-Maschinentyp mit 96 oder 192 vCPUs angeben. Andernfalls schlägt die VM-Erstellung fehl.

  • PMU_TYPE: Der Typ der PMU, die in die Instanzvorlage aufgenommen werden soll. Geben Sie einen der folgenden Werte an:

    • Typ der architektonischen PMU: ARCHITECTURAL

    • Standard-PMU-Typ: STANDARD

    • Erweiterter PMU-Typ: ENHANCED

Weitere Informationen zum Erstellen einer Instanzvorlage finden Sie unter Instanzvorlagen erstellen.

Nächste Schritte