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
- Se non hai mai utilizzato Batch, rivedi Inizia a utilizzare Batch e abilita Batch, completando prerequisiti per progetti e utenti.
-
Per ottenere le autorizzazioni necessarie per creare un job, chiedi all'amministratore di concederti seguenti ruoli IAM:
-
Editor job batch (
roles/batch.jobsEditor
) del progetto -
Utente account di servizio (
roles/iam.serviceAccountUser
) sull'account di servizio del job, che per impostazione predefinita è l'account di servizio Compute Engine predefinito
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite la ruoli o altri ruoli predefiniti ruoli.
-
Editor job batch (
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:
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.
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.
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
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:
IMAGE_PROJECT_ID
: il valore ID progetto del progetto che contiene l'immagine. Ad esempio, Immagini batch, specificabatch-custom-image
.IMAGE_FAMILY
: la famiglia di immagini, che include una o più immagini specifiche e rappresenta il tipo e versione principale del sistema operativo. Ad esempio, per vedere tutte le famiglie di immagini del sistema operativo VM Batch, visualizza un elenco di immagini del sistema operativo VM.
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, specificabatch-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
opd-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.
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:
IMAGE_PROJECT_ID
: il valore ID progetto del progetto che contiene l'immagine. Ad esempio, Immagini batch, specificabatch-custom-image
.IMAGE_FAMILY
: la famiglia di immagini, che include una o più immagini specifiche e rappresenta il tipo e versione principale del sistema operativo. Ad esempio, per vedere tutte le famiglie di immagini del sistema operativo VM Batch. Visualizza un elenco di immagini del sistema operativo VM.
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, specificabatch-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
opd-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
- Se hai problemi durante la creazione o l'esecuzione di un job, consulta la sezione Risoluzione dei problemi.
- Scopri di più su dischi di avvio e immagini del sistema operativo VM.
- Scopri di più sulla creazione di un job.
- Scopri come visualizzare lavori e attività.