Abilita la PMU nelle VM


Questo documento descrive come attivare l'unità di monitoraggio del rendimento (PMU) nelle istanze di macchine virtuali (VM) nuove o esistenti.

Dopo aver attivato la PMU in una VM C4 e aver eseguito la connessione alla VM, puoi eseguire e installare il software di monitoraggio delle prestazioni sulla VM per analizzare e ottimizzare le prestazioni del software in esecuzione sulla VM. Questa opzione è utile quando esegui carichi di lavoro sensibili alle prestazioni, come il computing ad alte prestazioni (HPC) o il machine learning (ML).

Prima di iniziare

  • Se non l'hai già fatto, consulta come funziona il PMU.
  • Se non l'hai ancora fatto, configura l'autenticazione. Autenticazione è Il processo di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione Compute Engine come segue.

    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

      Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.

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

        gcloud init

      Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per attivare la PMU in una VM nuova o esistente, chiedi all'amministratore di concederti il ruolo IAM Amministratore istanze Compute (v1) (roles/compute.instanceAdmin.v1) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Questo ruolo predefinito contiene le autorizzazioni necessarie per attivare la PMU in una VM nuova o esistente. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:

Autorizzazioni obbligatorie

Per attivare la PMU in una VM nuova o esistente sono necessarie le seguenti autorizzazioni:

  • Per creare le VM:
    • compute.instances.create sul progetto
    • Per utilizzare un'immagine personalizzata per creare la VM: compute.images.useReadOnly sull'immagine
    • Per utilizzare uno snapshot per creare la VM: compute.snapshots.useReadOnly nello snapshot
    • Per utilizzare un modello di istanza per creare la VM: compute.instanceTemplates.useReadOnly nel modello di istanza
    • Per assegnare una rete legacy alla VM,: compute.networks.use nel progetto
    • Per specificare un indirizzo IP statico per la VM: compute.addresses.use nel progetto
    • Per assegnare un indirizzo IP esterno alla VM quando nel progetto viene utilizzata una rete precedente: compute.networks.useExternalIp
    • Per specificare una subnet per la VM: compute.subnetworks.use nel progetto o nella subnet scelta
    • Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete VPC: compute.subnetworks.useExternalIp nel progetto o nella subnet scelta
    • Per impostare i metadati dell'istanza VM per la VM: compute.instances.setMetadata nel progetto
    • Per impostare i tag per la VM: compute.instances.setTags sulla VM
    • Per impostare le etichette per la VM: compute.instances.setLabels sulla VM
    • Per impostare un account di servizio che la VM deve utilizzare: compute.instances.setServiceAccount sulla VM
    • Per creare un nuovo disco per la VM: compute.disks.create nel progetto
    • Per collegare un disco esistente in modalità di sola lettura o lettura/scrittura: compute.disks.use sul disco
    • Per collegare un disco esistente in modalità di sola lettura: compute.disks.useReadOnly sul disco
  • Per creare un modello di istanza: compute.instanceTemplates.create nel progetto
  • Per aggiornare una VM: compute.instances.update sulla VM

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Abilita la PMU nelle VM

Per attivare la PMU in una o più VM C4, seleziona uno dei seguenti metodi:

Dopo aver abilitato la PMU in una o più VM, puoi installare e utilizzare di monitoraggio delle prestazioni sulle VM.

Attivare la PMU in una VM esistente

Prima di attivare la PMU in una VM esistente, assicurati che la VM utilizzi un tipo di macchina e una piattaforma CPU supportati come segue:

  1. Per verificare il tipo di macchina e la piattaforma CPU della VM, visualizza i dettagli della VM.

  2. Se devi modificare il tipo di macchina della VM, procedi nel seguente modo:

    1. Per verificare che una piattaforma CPU supportata sia disponibile nella zona in cui si trova la VM, consulta Regioni e zone disponibili.

    2. Cambiare il tipo di macchina come segue:

      • Per attivare il tipo di PMU avanzato, devi specificare un tipo di macchina C4 con 96 o 192 vCPU.

      • Altrimenti, per abilitare il tipo PMU architetturale o standard, specifica per qualsiasi tipo di macchina C4.

Non è necessario arrestare la VM per attivare la PMU. Tuttavia, per apportare la modifica devi riavviare la VM come descritto in questa sezione.

Per abilitare la PMU in una VM esistente, seleziona una delle seguenti opzioni:

gcloud

  1. Crea un file YAML vuoto.

  2. Per esportare le proprietà di una VM nel file YAML appena creato, utilizza il comando gcloud compute instances export.

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

    Sostituisci quanto segue:

    • VM_NAME: il nome della VM.

    • YAML_FILE: il percorso del file YAML creato nel passaggio precedente.

    • ZONE: la zona in cui si trova la VM.

  3. Nel file di configurazione YAML, aggiungi performanceMonitoringUnit .

    advancedMachineFeatures:
      performanceMonitoringUnit: PMU_TYPE
    

    Sostituisci PMU_TYPE con uno dei seguenti valori:

    • Tipo di PMU dell'architettura: ARCHITECTURAL

    • Tipo PMU standard: STANDARD

    • Tipo di PMU migliorato: ENHANCED

  4. Per aggiornare la VM e riavviarla, utilizza il comando gcloud compute instances update-from-file con il flag --most-disruptive-allowed-action impostato su RESTART.

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

    Sostituisci quanto segue:

    • VM_NAME: il nome della VM.

    • YAML_FILE: il percorso del file YAML con di configurazione modificati nel passaggio precedente.

    • ZONE: la zona in cui si trova la VM.

REST

  1. Crea un file JSON vuoto.

  2. Per visualizzare le proprietà di una VM esistente, effettua una richiesta GET alla Metodo instances.get.

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

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto in cui si trova la VM individuarlo.

    • ZONE: la zona in cui si trova la VM.

    • VM_NAME: il nome di una VM esistente.

  3. Nel file JSON vuoto creato nei passaggi precedenti, procedi nel seguente modo: seguenti:

    1. Inserisci le proprietà della VM dall'output della richiesta GET.

    2. Aggiungi il campo performanceMonitoringUnit.

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

      Sostituisci PMU_TYPE con uno dei seguenti valori:

      • Tipo di PMU architettonica: ARCHITECTURAL

      • Tipo PMU standard: STANDARD

      • Tipo di PMU migliorato: ENHANCED

  4. Per aggiornare la VM e riavviarla, invia una richiesta PUT alla Metodo instances.update. Nella richiesta, segui questi passaggi:

    • Nell'URL della richiesta, includi il parametro di query most_disruptive_allowed_action impostato su RESTART.

    • Per il corpo della richiesta, utilizza le proprietà della VM dal file JSON che hai creato e aggiornato nei passaggi precedenti.

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

Per ulteriori informazioni sull'aggiornamento delle proprietà di una VM, consulta Aggiornare le proprietà della VM.

Attivare la PMU durante la creazione di una VM

Puoi creare una VM con la PMU abilitata solo in una zona che contiene una piattaforma CPU supportata. Per un elenco di le CPU disponibili per zona, consulta Regioni e zone disponibili.

Per creare una VM con la PMU abilitata, seleziona una delle seguenti opzioni:

gcloud

Per creare una VM con la PMU abilitata, utilizza il comando gcloud compute instances create con il flag --performance-monitoring-unit.

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

Sostituisci quanto segue:

  • VM_NAME: il nome della VM.

  • MACHINE_TYPE: un tipo di macchina C4. Se vuoi abilitare il tipo PMU avanzata, devi specificare un valore C4 con 96 o 192 vCPU. In caso contrario, la creazione della VM non andrà a buon fine.

  • PMU_TYPE: il tipo di PMU da attivare nella VM. Specifica uno dei seguenti valori:

    • Tipo di PMU architettonica: architectural

    • Tipo di PMU standard: standard

    • Tipo di PMU avanzata: enhanced

  • ZONE: la zona in cui creare la VM.

REST

Per creare una VM con la PMU abilitata, invia una richiesta POST al metodo instances.insert. Nel corpo della richiesta, includi il campo performanceMonitoringUnit.

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"
  }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui creare la VM.

  • ZONE: la zona in cui creare la VM.

  • VM_NAME: il nome della VM.

  • MACHINE_TYPE: un tipo di macchina C4. Se vuoi abilitare il tipo PMU avanzata, devi specificare un valore C4 con 96 o 192 vCPU. In caso contrario, la creazione della VM non va a buon fine.

  • IMAGE_PROJECT: il progetto immagine che contiene l'immagine, ad esempio debian-cloud. Per saperne di più sui progetti di immagini supportati, consulta Immagini pubbliche.

  • IMAGE: specifica una delle seguenti opzioni:

    • Una versione specifica dell'immagine del sistema operativo, ad esempio debian-12-bookworm-v20240617.

    • Una famiglia di immagini, che deve essere formattato come family/IMAGE_FAMILY. Questo specifica l'immagine del sistema operativo più recente e non deprecata. Ad esempio, se specifichi family/debian-12, viene utilizzata la versione più recente della famiglia di immagini Debian 12. Per ulteriori informazioni sull'utilizzo delle famiglie di immagini, consulta le best practice per le famiglie di immagini.

  • PMU_TYPE: il tipo di PMU da attivare nella VM. Specifica uno dei seguenti valori:

    • Tipo di PMU architettonica: ARCHITECTURAL

    • Tipo PMU standard: STANDARD

    • Tipo di PMU avanzata: ENHANCED

Per saperne di più sulla creazione di una VM, consulta Crea e avvia un'istanza Compute Engine.

Attivare la PMU durante la creazione collettiva delle VM

Puoi creare VM in blocco con la PMU abilitata solo in zone che contengono un piattaforma CPU supportata. Per un elenco delle CPU disponibili per zona, consulta Regioni e zone disponibili.

Per creare collettivamente VM con la PMU abilitata, seleziona una delle seguenti opzioni:

gcloud

Per creare più VM contemporaneamente con la PMU abilitata, utilizza il comando gcloud compute instances bulk create con il flag --performance-monitoring-unit.

Ad esempio, per creare VM in blocco in una singola zona e specificare un nome esegui questo comando:

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

Sostituisci quanto segue:

  • COUNT: il numero di VM da creare.

  • MACHINE_TYPE: un tipo di macchina C4. Se vuoi abilitare il tipo PMU avanzata, devi specificare un valore C4 con 96 o 192 vCPU. In caso contrario, la creazione della VM non andrà a buon fine.

  • NAME_PATTERN: il pattern del nome delle VM. Per sostituire una sequenza di numeri nel nome di una VM, utilizza una sequenza di caratteri hash (#). Ad esempio, l'utilizzo di vm-# per il pattern del nome genera VM con nomi che iniziano con vm-1, vm-2 e proseguono fino al numero di VM specificate da COUNT.

  • PMU_TYPE: il tipo di PMU da attivare nelle VM. Specifica uno dei seguenti valori:

    • Tipo di PMU architettonica: architectural

    • Tipo di PMU standard: standard

    • Tipo di PMU avanzata: enhanced

  • ZONE: la zona in cui creare le VM collettivamente.

REST

Per creare collettivamente VM con la PMU abilitata, effettua una richiesta POST alla Metodo instances.bulkInsert. Nel corpo della richiesta, includi il campo performanceMonitoringUnit.

Ad esempio, per creare più VM in un'unica zona e specificare un pattern di nomi, invia una richiesta POST come segue:

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"
    }
  }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui creare di VM in blocco.

  • ZONE: la zona in cui creare le VM collettivamente.

  • COUNT: il numero di VM da creare.

  • NAME_PATTERN: il pattern del nome delle VM. Per sostituire una sequenza di numeri nel nome di una VM, utilizza una sequenza di caratteri hash (#). Ad esempio, l'utilizzo di vm-# per il pattern del nome genera VM con nomi che iniziano con vm-1, vm-2 e continuano fino al numero di VM specificato da COUNT.

  • MACHINE_TYPE: un tipo di macchina C4. Se vuoi attivare il tipo di PMU avanzata, devi specificare un tipo di macchina C4 con 96 o 192 vCPU. In caso contrario, la creazione della VM non andrà a buon fine.

  • IMAGE_PROJECT: il progetto immagine che contiene immagine, ad esempio debian-cloud. Per ulteriori informazioni sui per i progetti immagine supportati, consulta Immagini pubbliche.

  • IMAGE: specifica una delle seguenti opzioni:

    • Una versione specifica dell'immagine del sistema operativo, ad esempio debian-12-bookworm-v20240617.

    • Una famiglia di immagini, che deve essere formattato come family/IMAGE_FAMILY. Specifica l'immagine del sistema operativo più recente e non ritirata. Ad esempio, se specifica family/debian-12, la versione più recente in Debian 12 famiglia di immagini. Per ulteriori informazioni sull'utilizzo delle famiglie di immagini, consulta le best practice per le famiglie di immagini.

  • PMU_TYPE: il tipo di PMU da abilitare nelle VM. Specifica uno dei seguenti valori:

    • Tipo di PMU architettonica: ARCHITECTURAL

    • Tipo PMU standard: STANDARD

    • Tipo di PMU migliorato: ENHANCED

  • ZONE: la zona in cui creare collettivamente le VM.

Per saperne di più sulla creazione di VM in blocco, consulta Crea VM in blocco.

Attivare la PMU durante la creazione di un modello di istanza

Se vuoi creare un modello di istanza regionale con PMU abilitato, assicurati che almeno una zona all'interno della regione selezionata contenga un piattaforma CPU supportata. Per un elenco delle CPU disponibili per zona, consulta Regioni e zone disponibili.

Dopo aver creato un modello di istanza con la PMU abilitata, puoi utilizzarlo per:

Per creare un modello di istanza con la PMU abilitata, seleziona una delle seguenti opzioni:

gcloud

Per creare un modello di istanza con la PMU abilitata, utilizza il comando gcloud compute instance-templates create con il flag --performance-monitoring-unit.

Ad esempio, per creare un modello di istanza globale con la PMU abilitata, esegui il seguente comando:

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

Sostituisci quanto segue:

  • INSTANCE_TEMPLATE_NAME: il nome del modello di istanza.

  • MACHINE_TYPE: un Tipo di macchina C4. Se vuoi abilitare il tipo PMU avanzata, devi specificare un valore C4 con 96 o 192 vCPU. In caso contrario, la creazione della VM non va a buon fine.

  • PMU_TYPE: il tipo di PMU da includere nel modello di istanza. Specifica uno dei seguenti valori:

    • Tipo di PMU architettonica: architectural

    • Tipo di PMU standard: standard

    • Tipo di PMU avanzata: enhanced

REST

Per creare un modello di istanza con la PMU abilitata, effettua una richiesta POST a uno dei seguenti metodi:

Nel corpo della richiesta, includi il campo performanceMonitoringUnit.

Ad esempio, per creare un modello di istanza globale con la PMU abilitata, effettua una richiesta POST come segue:

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"
    }
  }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui creare il modello di istanza.

  • INSTANCE_TEMPLATE_NAME: il nome dell'istanza modello.

  • IMAGE_PROJECT: il progetto immagine che contiene l'immagine, ad esempio debian-cloud. Per ulteriori informazioni sui per i progetti immagine supportati, consulta Immagini pubbliche.

  • IMAGE: specifica una delle seguenti opzioni:

    • Una versione specifica dell'immagine del sistema operativo, ad esempio debian-12-bookworm-v20240617.

    • Una famiglia di immagini, che deve essere formattata come family/IMAGE_FAMILY. Questo specifica l'immagine del sistema operativo più recente e non deprecata. Ad esempio, se specifichi family/debian-12, viene utilizzata la versione più recente della famiglia di immagini Debian 12. Per ulteriori informazioni sull'utilizzo delle famiglie di immagini, consulta le best practice per le famiglie di immagini.

  • MACHINE_TYPE: un Tipo di macchina C4. Se vuoi abilitare il tipo PMU avanzata, devi specificare un valore C4 con 96 o 192 vCPU. In caso contrario, la creazione della VM non andrà a buon fine.

  • PMU_TYPE: il tipo di PMU da includere nell'istanza modello. Specifica uno dei seguenti valori:

    • Tipo di PMU architettonica: ARCHITECTURAL

    • Tipo PMU standard: STANDARD

    • Tipo di PMU migliorato: ENHANCED

Per saperne di più sulla creazione di un modello di istanza, consulta Creare modelli di istanze.

Passaggi successivi