Crea ed esegui un job che utilizza dischi di avvio personalizzati

Questa pagina descrive come personalizzare i dischi permanenti utilizzati per avviare ogni dell'istanza di macchina virtuale (VM) su cui è eseguito un job.

In particolare, puoi personalizzare dimensioni, tipo e/o Immagine del sistema operativo (OS) di una VM per un disco di avvio. Se vuoi personalizzare solo l'immagine del sistema operativo della VM, consulta Specificare l'immagine del sistema operativo VM per un job .

Per scoprire di più sui dischi di avvio e su quando configurarli, consulta Panoramica dell'ambiente del sistema operativo VM.

Prima di iniziare

Crea ed esegui un job che utilizza un disco di avvio personalizzato

Specifica un disco di avvio personalizzato quando crei un job selezionandone uno uno dei seguenti metodi:

  • Usa un modello di istanza Compute Engine che specifichi un disco di avvio personalizzato preesistente. Se vuoi utilizzare un modello di istanza VM durante la creazione di questo job o utilizzare una un disco di avvio personalizzato preesistente, completa i seguenti passaggi:

    1. Crea o identifica un disco di avvio personalizzato.

      Per i requisiti del disco di avvio per Batch, vedi questo documento e consulta la panoramica dell'ambiente VM OS. Per istruzioni su come creare un disco di avvio, vedi Crea un disco di avvio personalizzato nella documentazione di Compute Engine.

    2. Crea o identifica un modello di istanza VM che includa questo disco di avvio personalizzato.

      Per istruzioni su come creare un modello di istanza VM, consulta Creare modelli di istanza nella documentazione di Compute Engine.

    3. Crea ed esegui un job che includa questo modello di istanza VM.

      Per istruzioni su come creare ed eseguire il job, consulta Definisci le risorse del job utilizzando un modello di istanza VM.

  • Utilizza il campo disco di avvio per specificare un nuovo disco di avvio personalizzato. Come spiegato nelle seguenti istruzioni, puoi per definire un nuovo disco di avvio personalizzato campo disco di avvio (bootDisk) quando crei ed esegui un job utilizzando gcloud CLI o API Batch.

    In particolare, puoi personalizzare il disco di avvio configurando il Campi secondari Immagine sistema operativo VM (image), tipo di disco permanente (type) e/o dimensione (sizeGb). L'opzione Batch imposta un valore predefinito per uno qualsiasi di questi campi secondari che che scegli di omettere.

gcloud

  1. Crea un file JSON che specifichi i dettagli di configurazione del job. Per specificare un nuovo disco di avvio personalizzato per le VM del job, includi il comando bootDisk: campo e campi secondari.

    Ad esempio, per creare un job di script di base che utilizza un nuovo avvio personalizzato disco, crea un file JSON con il seguente contenuto:

    {
        "taskGroups": [
            {
                "taskSpec": {
                    "runnables": [
                        {
                            "script": {
                                "text": "echo Hello world from task ${BATCH_TASK_INDEX}."
                            }
                        }
                    ]
                },
                "taskCount": 3,
                "parallelism": 1
            }
        ],
        "allocationPolicy": {
          "instances": [
            {
              "policy": {
                "bootDisk": {
                  "image": "VM_OS_IMAGE_URI",
                  "type": "BOOT_DISK_TYPE",
                  "sizeGb": BOOT_DISK_SIZE
                }
              }
            }
          ]
        },
        "logsPolicy": {
        "destination": "CLOUD_LOGGING"
      }
    }
    

    Sostituisci quanto segue:

    • VM_OS_IMAGE_URI: un nome risorsa relativa dell'immagine del sistema operativo della VM. Utilizza una delle seguenti opzioni:

      • Specifica un prefisso del sistema operativo batch. Per utilizzare la versione più recente di un sistema operativo Batch specifico, utilizza seguente formato:

        BATCH_OS_PREFIX
        

        Sostituisci BATCH_OS_PREFIX con uno dei Prefissi immagine sistema operativo VM batch: per ad esempio, batch-debian è il prefisso per Batch Debian OS.

      • Specifica una famiglia di immagini. Per utilizzare l'ultima immagine di un per una specifica famiglia di immagini, usa il formato seguente:

        projects/IMAGE_PROJECT_ID/global/images/family/IMAGE_FAMILY
        

        Sostituisci quanto segue:

      • Specifica una versione dell'immagine. per utilizzare una versione specifica del sistema operativo di una VM usa il seguente formato:

        projects/IMAGE_PROJECT_ID/global/images/IMAGE_NAME
        

        Sostituisci quanto segue:

        • IMAGE_PROJECT_ID: il valore ID progetto del progetto che contiene l'immagine. Ad esempio, Immagini batch, specifica batch-custom-image.
        • IMAGE_NAME: il nome dell'immagine, che rappresenta una versione specifica dell'immagine del sistema operativo di una VM. Ad esempio, per vedere tutte le versioni delle immagini del sistema operativo VM Batch. Visualizza un elenco di immagini del sistema operativo VM.
    • BOOT_DISK_TYPE: il valore tipo di disco del disco di avvio, pd-standard, pd-balanced, pd-ssd o pd-extreme. Il tipo di disco predefinito per i dischi di avvio è pd-balanced.

    • BOOT_DISK_SIZE: la dimensione del un nuovo disco di avvio permanente in GB. Questo valore deve rispettare tutti i requisiti per le dimensioni del disco di avvio.

  2. Per creare il job, esegui questo comando Comando gcloud batch jobs submit:

    gcloud batch jobs submit JOB_NAME \
        --location LOCATION \
        --config JSON_CONFIGURATION_FILE
    

    Sostituisci quanto segue:

    • JOB_NAME: il nome di questo job.
    • LOCATION: il valore location per questo lavoro.
    • JSON_CONFIGURATION_FILE: il percorso file JSON con i dettagli di configurazione del job.

API

Per creare un job utilizzando l'API Batch, utilizza Metodo jobs.create e specificare i dettagli di configurazione del job. Per specificare l'immagine del sistema operativo VM per il job, includi la macro bootDisk: campo e campi secondari. Ad esempio, per creare un job di script di base che utilizza un nuovo avvio personalizzato disco, effettua la seguente richiesta POST:

POST https://batch.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/jobs?job_id=JOB_NAME

{
    "taskGroups": [
        {
            "taskSpec": {
                "runnables": [
                    {
                        "script": {
                            "text": "echo Hello world from task ${BATCH_TASK_INDEX}."
                        }
                    }
                ]
            },
            "taskCount": 3,
            "parallelism": 1
        }
    ],
    "allocationPolicy": {
      "instances": [
        {
          "policy": {
            "bootDisk": {
              "image": "VM_OS_IMAGE_URI",
              "type": "BOOT_DISK_TYPE",
              "sizeGb": BOOT_DISK_SIZE
            }
          }
        }
      ]
    },
    "logsPolicy": {
    "destination": "CLOUD_LOGGING"
  }
}

Sostituisci quanto segue:

  • VM_OS_IMAGE_URI: un nome risorsa relativa dell'immagine del sistema operativo della VM. Utilizza una delle seguenti opzioni:

    • Specifica un prefisso del sistema operativo batch. Per utilizzare la versione più recente di un sistema operativo Batch specifico, utilizza seguente formato:

      BATCH_OS_PREFIX
      

      Sostituisci BATCH_OS_PREFIX con uno dei Prefissi immagine sistema operativo VM batch: per ad esempio, batch-debian è il prefisso per Batch Debian OS.

    • Specifica una famiglia di immagini. Per usare l'ultima immagine di un determinato famiglia di immagini, usa il formato seguente:

      projects/IMAGE_PROJECT_ID/global/images/family/IMAGE_FAMILY
      

      Sostituisci quanto segue:

    • Specifica una versione dell'immagine. per utilizzare una versione specifica del sistema operativo di una VM usa il seguente formato:

      projects/IMAGE_PROJECT_ID/global/images/IMAGE_NAME
      

      Sostituisci quanto segue:

      • IMAGE_PROJECT_ID: il valore ID progetto del progetto che contiene l'immagine. Ad esempio, Immagini batch, specifica batch-custom-image.
      • IMAGE_NAME: il nome dell'immagine, che rappresenta una versione specifica dell'immagine del sistema operativo di una VM. Ad esempio, per vedere tutte le versioni delle immagini del sistema operativo VM Batch, visualizza un elenco di immagini del sistema operativo VM.
  • BOOT_DISK_TYPE: il valore tipo di disco del disco di avvio, pd-standard, pd-balanced, pd-ssd o pd-extreme. Il tipo di disco predefinito per i dischi di avvio è pd-balanced.

  • BOOT_DISK_SIZE: la dimensione del un nuovo disco di avvio permanente in GB. Questo valore deve rispettare tutti i requisiti per le dimensioni del disco di avvio.

Passaggi successivi