Questo documento spiega i concetti dell'ambiente del sistema operativo, ovvero i dischi di avvio e l'immagine del sistema operativo, per le istanze di macchine virtuali (VM) Compute Engine che eseguono job batch.
Un job viene eseguito eseguendo le istruzioni sul disco di avvio di ciascuna delle sue VM. Ogni disco di avvio contiene un bootloader, un file system e un sistema operativo. Facoltativamente, puoi configurare l'ambiente del sistema operativo VM per un job in uno dei seguenti modi:
- Per configurare solo il software sui dischi di avvio, specifica l'immagine del sistema operativo VM del job.
- Per configurare qualsiasi proprietà del disco di avvio, tra cui l'immagine del sistema operativo VM, la dimensione del disco e/o il tipo di disco, personalizza i dischi di avvio del job.
Le seguenti sezioni descrivono quando configurare l'ambiente del sistema operativo, l'ambiente predefinito del sistema operativo, le opzioni per l'immagine del sistema operativo delle VM e le opzioni del disco di avvio.
Quando configurare l'ambiente del sistema operativo
Esamina questa sezione per determinare se configurare l'immagine e/o i dischi di avvio del sistema operativo VM quando crei un job o utilizzi la configurazione predefinita.
Configura l'immagine del sistema operativo VM per un job nei seguenti casi:
Se il vincolo del criterio delle immagini attendibili (
compute.trustedImageProjects
) impedisce di creare un job con l'immagine predefinita del sistema operativo VM.Per ulteriori informazioni sul vincolo del criterio per le immagini attendibili, consulta Controllare l'accesso alle immagini del sistema operativo VM per il batch.
Se preferisci non utilizzare o non puoi utilizzare l'immagine predefinita del sistema operativo VM per il job. Ad esempio, se gli elementi eseguibili che hai definito per un job richiedono un'applicazione non supportata dall'immagine predefinita, potresti essere in grado di specificare un'immagine diversa del sistema operativo VM pubblica. In alternativa, se vuoi preinstallare un'applicazione necessaria per il tuo job al fine di ridurre il runtime, puoi creare e specificare un'immagine personalizzata.
Configura il disco di avvio per un job nei seguenti casi:
- Se preferisci non utilizzare o non puoi utilizzare il disco di avvio predefinito per il job. Ad esempio, se gli elementi eseguibili o l'immagine del sistema operativo VM che hai definito per un job richiedono ulteriore spazio di archiviazione sul disco di avvio, potresti dover personalizzare il disco di avvio per un job al fine di aumentarne le dimensioni.
Se non hai ancora la certezza che il tuo job richieda la configurazione dell'immagine e/o dei dischi di avvio del sistema operativo VM, puoi esaminare la seguente sezione per comprendere la configurazione predefinita. Inoltre, puoi anche provare a creare ed eseguire il job con la configurazione predefinita. Se il job non riesce con la configurazione predefinita, puoi provare a determinare se il problema è stato causato dall'immagine del sistema operativo della VM o dal disco di avvio eseguendo la risoluzione dei problemi.
In caso contrario, se non hai bisogno o non vuoi configurare l'immagine del sistema operativo VM e/o il disco di avvio per un job, lascia queste proprietà non definite per utilizzare la configurazione predefinita.
Ambiente del sistema operativo predefinito
Esamina questa sezione per comprendere la configurazione predefinita per i dischi di avvio e l'immagine del sistema operativo VM di un job. Ad esempio, puoi utilizzare la configurazione predefinita come riferimento per determinare la modalità di configurazione dell'ambiente del sistema operativo per un job.
Quando crei un job e non definisci l'immagine del sistema operativo VM, per impostazione predefinita il job utilizza una delle seguenti immagini del sistema operativo VM:
- Se il job contiene solo elementi eseguibili di container, utilizza la versione più recente dell'immagine COS (Batch Container-Optimized OS).
- In caso contrario, il job utilizza la versione più recente dell'immagine Debian Batch.
Quando crei un job e non definisci le altre proprietà dei dischi di avvio, per impostazione predefinita il job utilizza le seguenti opzioni:
tipo di disco permanente: il tipo di disco permanente predefinito è
pd-balanced
.size: la dimensione predefinita per il disco di avvio di ogni VM è determinata dalla seguente formula per $ defaultBootDiskSize $. Inoltre, la dimensione predefinita viene arrotondata per essere compresa tra 30 GB e 10.000 GB.
\[ defaultBootDiskSize=reservationSize+(taskSize*parallelTasksPerVm) \]
Questa formula contiene i seguenti valori:
$ prenotateSize $: la dimensione riservata in GB per il software richiesto per la VM, ad esempio l'immagine del sistema operativo VM. Per la dimensione predefinita del disco di avvio, Batch prenota 10 GB.
$ taskSize $: la dimensione del disco di avvio per ogni attività in GB, che viene determinata convertendo le unità del campo delle dimensioni del disco di avvio per attività (
bootDiskMib
).$ parallelTasksPerVM $: il numero massimo di attività che possono essere eseguite contemporaneamente su una VM. Per ulteriori informazioni, consulta la formula per $ parallelTasksPerVM $.
interface: l'interfaccia viene selezionata automaticamente come NVMe o SCSI a seconda del tipo di macchina delle VM del job. Facoltativamente, puoi specificare un tipo di macchina quando definisci il tipo di risorse da utilizzare in un job. Per l'interfaccia predefinita di ogni tipo di macchina, consulta Scelta di un'interfaccia nella documentazione di Compute Engine.
Opzioni per l'immagine del sistema operativo delle VM
Le seguenti sezioni descrivono le opzioni per le immagini del sistema operativo VM per Batch, inclusi tutti i tipi di immagini del sistema operativo VM supportate dai job batch e le restrizioni per le immagini del sistema operativo VM supportate. Quando specifichi l'immagine del sistema operativo VM per un job, puoi specificare un nome o una famiglia di immagini per qualsiasi immagine supportata del sistema operativo VM consentita dalle limitazioni.
Immagini del sistema operativo VM supportate
I job batch possono supportare i seguenti tipi di immagini del sistema operativo VM:
Immagini pubbliche: immagini fornite e gestite da Google, dalle community open source e da fornitori di terze parti. In particolare, i job batch possono utilizzare immagini pubbliche di Batch o Compute Engine.
Immagini batch: immagini fornite e gestite da Batch, archiviate nel progetto immagine
batch-custom-image
e consigliate per i job batch.Le immagini batch sono disponibili nei seguenti sistemi operativi: quando visualizzi famiglie di immagini e nomi di immagini da Batch, il sistema operativo è indicato dal prefisso corrispondente.
- Batch Debian (prefisso
batch-debian
): un sistema operativo basato su Debian ottimizzato per i job Batch. Questo sistema operativo è l'impostazione predefinita per i job con qualsiasi eseguibile di script. - Batch Container-Optimized OS (prefisso
batch-cos
): un sistema operativo basato su Container-Optimized OS da Google Cloud ottimizzato per job batch con container. Questo sistema operativo è l'impostazione predefinita per i job con solo container eseguibili. - Batch CentOS (prefisso
batch-centos
): un sistema operativo basato su CentOS Linux ottimizzato per i job Batch. - Batch High-Performance Computing (HPC) CentOS (prefisso
batch-hpc-centos
): un sistema operativo basato sulle immagini HPC di CentOS di Google Cloud ottimizzato per i job batch con carichi HPC. - Batch High-Performance Computing (HPC) Rocky Linux (prefisso
batch-hpc-rocky
): un sistema operativo basato sulle immagini HPC di Rocky Linux di Google Cloud ottimizzato per i job batch con carichi HPC.
Per visualizzare i nomi e le famiglie delle immagini specifiche in Batch che puoi specificare per un job, segui i passaggi per visualizzare le immagini del sistema operativo VM da Batch.
- Batch Debian (prefisso
Immagini Compute Engine: immagini pubbliche disponibili in Compute Engine, descritte nella pagina Dettagli del sistema operativo nella documentazione di Compute Engine.
Batch supporta solo le immagini di Compute Engine disponibili pubblicamente (GA) dai seguenti sistemi operativi:
Immagini personalizzate: immagini che crei, possiedi e controlli l'accesso utilizzando Compute Engine. Scopri di più sulle immagini personalizzate nella documentazione di Compute Engine.
Limitazioni per le immagini VM OS
Le immagini supportate del sistema operativo VM che un job può specificare sono soggette alle seguenti restrizioni:
Per le immagini batch, la durata di supporto garantita dell'immagine è di 180 giorni. La data di inizio di un'immagine batch è indicata nel nome dell'immagine, ad esempio l'immagine
batch-cos-stable-official-20230719-00-p00
risale al 19 luglio 2023 (20230719
). Non è garantito che le immagini batch contrassegnate come obsolete siano supportate.Alcune configurazioni di job richiedono l'accesso esterno per l'immagine. In particolare, quando un job non ha accesso esterno e non consente l'accesso tramite Cloud NAT o l'accesso privato Google, sono supportate solo le seguenti immagini:
- Per i job che utilizzano GPU e solo elementi eseguibili dei container, è supportata solo l'immagine predefinita (l'ultima immagine del sistema operativo Batch Container-Optimized OS).
- In caso contrario, i job supportano solo le immagini batch.
Se il vincolo del criterio per le immagini attendibili è abilitato, non puoi utilizzare qualsiasi immagine del sistema operativo VM non consentita dal criteri per l'utilizzo di immagini attendibili.
Facoltativamente, un amministratore del progetto, della cartella o dell'organizzazione può configurare il vincolo del criterio delle immagini attendibili per limitare le immagini del sistema operativo VM che possono essere utilizzate per creare dischi di avvio. Ad esempio, il vincolo del criterio per le immagini attendibili può essere utilizzato per richiedere agli utenti di creare VM contenenti software approvato che soddisfi i tuoi requisiti di criteri o sicurezza. Per ulteriori informazioni, consulta Controllare l'accesso alle immagini del sistema operativo VM per Batch.
L'immagine del sistema operativo VM per il job deve avere i driver per l'interfaccia dei dischi di avvio e degli eventuali volumi di archiviazione su disco permanente installati. La maggior parte delle immagini pubbliche installa automaticamente i driver NVMe e SCSI, incluse tutte le immagini batch.
Non è possibile configurare l'interfaccia dei dischi permanenti, pertanto l'immagine del sistema operativo VM richiede i driver per l'interfaccia predefinita.
Se un job specifica qualsiasi immagine del sistema operativo VM che non è né un'immagine batch né un'immagine personalizzata basata su un'immagine batch, Batch installa i pacchetti obbligatori sulle VM del job dopo l'avvio. Questi pacchetti obbligatori possono variare in base alle diverse configurazioni dei job e cambiano nel tempo, e sono necessari affinché Batch esegua il job.
Opzioni del disco di avvio
Questa sezione descrive le opzioni per il tipo e le dimensioni dei dischi di avvio per batch. Quando personalizzi i dischi di avvio per un job, puoi specificare l'immagine, il tipo e/o le dimensioni del sistema operativo delle VM. Per informazioni su come specificare l'immagine del sistema operativo VM, consulta Opzioni per l'immagine del sistema operativo VM in questo documento.
Per il tipo di disco di avvio, Batch supporta tutti i tipi di dischi permanenti nella documentazione di Compute Engine.
Per le dimensioni del disco di avvio, Batch supporta tutte le dimensioni e gli incrementi per i dischi permanenti nella documentazione di Compute Engine che soddisfano i seguenti requisiti:
Per i job batch, la dimensione minima del disco di avvio è 30 GB.
Affinché un job batch venga eseguito correttamente, la dimensione del disco di avvio deve essere abbastanza grande da allocare l'immagine del sistema operativo VM del job e le attività eseguite su ogni VM. Ad esempio, consulta la formula per la dimensione predefinita del disco di avvio in questo documento.
Passaggi successivi
- Scopri di più sull'ambiente del sistema operativo per un job:
- In alternativa, per creare un job che utilizza l'ambiente del sistema operativo predefinito, consulta Creare ed eseguire un job di base.