Dataproc utilizza le immagini per raggruppare connettori utili Google Cloud e componenti Apache Spark e Apache Hadoop in un unico pacchetto che può essere sottoposto a deployment su un cluster Dataproc. Queste immagini contengono il sistema operativo di base (Debian o Ubuntu) per il cluster, insieme ai componenti principali e facoltativi necessari per eseguire i job, come Spark, Hadoop e Hive. Queste immagini vengono aggiornate periodicamente per includere nuovi miglioramenti e funzionalità. Il controllo delle versioni di Dataproc consente di selezionare set di versioni software quando crei i cluster.
Come funziona il controllo delle versioni
Quando viene creata un'immagine, le viene assegnato un numero di versione immagine nel seguente formato:
version_major.version_minor.version_sub_minor-os_distribution
Vengono mantenute le seguenti distribuzioni del sistema operativo:
| Codice di distribuzione del sistema operativo | Distribuzione del sistema operativo |
|---|---|
| debian12 | Debian 12 |
| debian10 | Debian 10 |
| debian11 | Debian 11 |
| rocky8 | Rocky Linux 8 |
| rocky9 | Rocky Linux 9 |
| ubuntu18 | Ubuntu 18.04 LTS |
| ubuntu20 | Ubuntu 20.04 LTS |
| ubuntu22 | Ubuntu 22.04 LTS |
Consulta le versioni precedenti delle immagini per le distribuzioni del sistema operativo supportate in precedenza.
La prassi consigliata è specificare la versione dell'immagine major.minor per gli ambienti di produzione o quando la compatibilità con versioni di componenti specifici è importante. Le distribuzioni del sistema operativo e secondarie vengono impostate automaticamente sull'ultima release settimanale.
Seleziona versioni
Quando crei un nuovo cluster Dataproc, per impostazione predefinita viene utilizzata l'ultima versione dell'immagine Debian disponibile. Puoi selezionare una
versione dell'immagine Debian, Rocky Linux o Ubuntu quando crei un cluster (consulta l'
elenco delle versioni delle immagini Dataproc).
Quando specifichi immagini basate su Debian, puoi omettere il suffisso del codice di distribuzione del sistema operativo, ad esempio specificando 2.0 per selezionare l'immagine 2.0-debian10.
Il suffisso del sistema operativo deve essere utilizzato per selezionare un'immagine basata su Rocky Linux o Ubuntu, ad esempio specificando 2.0-ubuntu18.
Comando g-cloud
Quando utilizzi il comando gcloud dataproc clusters create, puoi utilizzare l'argomento --image-version per specificare una versione dell'immagine per il nuovo cluster.
Esempio di immagine Debian:
gcloud dataproc clusters create CLUSTER_NAME \ --image-version=2.0 \ --region=REGION
Esempio di immagine Ubuntu:
gcloud dataproc clusters create CLUSTER_NAME \ --image-version=2.0-ubuntu18 \ --region=REGION
La best practice è omettere la versione secondaria in modo che venga utilizzata l'ultima versione secondaria. Tuttavia, se necessario, è possibile specificare la versione secondaria, ad esempio 2.0.20.
Puoi controllare la versione attuale con Google Cloud CLI.
gcloud dataproc clusters describe CLUSTER_NAME \ --region=REGION
API REST
Puoi specificare il SoftwareConfig
imageVersion
campo come parte di una
cluster.create
richiesta API.
Esempio
POST /v1/projects/project-id/regions/us-central1/clusters/
{
"projectId": "project-id",
"clusterName": "example-cluster",
"config": {
"configBucket": "",
"gceClusterConfig": {
"subnetworkUri": "default",
"zoneUri": "us-central1-b"
},
"masterConfig": {
...
}
},
"workerConfig": {
...
}
},
"softwareConfig": {
"imageVersion": "2.0"
}
}
}
Console
Apri la pagina Crea un cluster di Dataproc. Il riquadro Configura cluster è selezionato. Il campo Tipo di immagine e Versione nella sezione Controllo delle versioni mostra l'immagine che verrà utilizzata durante la creazione del cluster. Viene visualizzata anche la data di rilascio dell'immagine. Inizialmente, l'immagine predefinita, l'ultima versione di Debian disponibile, viene visualizzata come selezionata. Fai clic su Cambia per visualizzare un elenco delle immagini disponibili. Puoi selezionare un'immagine standard o personalizzata da utilizzare per il cluster.
Quando vengono create nuove versioni
Le nuove versioni principali vengono create periodicamente per incorporare uno o più dei seguenti elementi:
- Release principali per:
- Spark, Hadoop e altri componenti Big Data
- Google Cloud connettori
- Modifiche o aggiornamenti importanti alla funzionalità Dataproc
Le nuove versioni di anteprima (con suffisso -RC) vengono rilasciate prima della release di una nuova versione principale:
- Le immagini di anteprima non sono destinate all'uso nei workload di produzione.
- Le versioni dei componenti delle immagini di anteprima potrebbero essere sottoposte ad upgrade all'ultima versione del componente disponibile nella versione dell'immagine GA post-anteprima.
Le nuove versioni secondarie vengono create periodicamente per incorporare uno o più dei seguenti elementi:
- Release e aggiornamenti secondari per:
- Spark, Hadoop e altri componenti Big Data
- Google Cloud connettori
- Modifiche o aggiornamenti secondari alla funzionalità Dataproc
Quando viene creata una nuova versione secondaria, la relativa immagine Debian diventa quella predefinita per la versione principale e rappresenta l'ultima release della versione principale.
Le nuove versioni secondarie vengono create periodicamente per incorporare uno o più dei seguenti elementi:
- Patch o correzioni per un componente nell'immagine
- Upgrade della versione secondaria del componente
Versione dell'immagine e supporto Dataproc
Le versioni secondarie delle immagini sono supportate per 24 mesi dopo la release GA (disponibilità generale) iniziale. Durante questo periodo, i cluster che utilizzano queste versioni immagine sono idonei al supporto (per ricevere le correzioni, ricrea il cluster utilizzando l'ultima versione secondaria dell'immagine supportata). Al termine del periodo di supporto, i cluster che utilizzano le versioni delle immagini non sono idonei al supporto.
Versioni precedenti delle immagini
Distribuzioni del sistema operativo supportate in precedenza
Le seguenti distribuzioni del sistema operativo erano supportate in precedenza:
| Codice di distribuzione del sistema operativo | Distribuzione del sistema operativo | Ultima patch (fine del supporto) |
|---|---|---|
| debian9 | Debian 9 | 10 luglio 2020 |
| deb8 | Debian 8 | 26 ottobre 2018 |
Versioni delle immagini senza distribuzione del sistema operativo esplicita
Prima del 16 agosto 2018, le versioni delle immagini venivano create con Debian 8 e omettevano il codice di distribuzione del sistema operativo. Vengono specificate nel seguente formato:
version_major.version_minor.version_sub_minor
Versioni 0.1 e 0.2
Le versioni delle immagini rilasciate come release alfa o beta prima della
disponibilità generale della versione 1.0 di Dataproc
non sono soggette alle
norme di assistenza di Dataproc.
Note importanti sul controllo delle versioni
- Le versioni delle immagini contengono i seguenti componenti:
- Componenti principali installati su tutti i cluster, come Spark, Hadoop, e Hive
- Componenti facoltativi specificati durante la creazione di un cluster
- I cluster Dataproc non vengono aggiornati automaticamente quando vengono rilasciate nuove versioni delle immagini.
- Consigli:
- Esegui i cluster con l'ultima
versione immagine secondaria.
I metadati dell'immagine includono un'etichetta
previous-subminor, impostata sutruese il cluster non utilizza l'ultima versione immagine secondaria.- Per visualizzare i metadati dell'immagine:
- Esegui il seguente
gcloud compute images list --filtercomando per elencare il nome della risorsa di un'immagine Dataproc.gcloud compute images list --project=PROJECT_NAME --filter="labels.goog-dataproc-version ~ ^IMAGE_VERSION (such as
2.2.16-debian12)" - Esegui il seguente
gcloud compute images describeper visualizzare i metadati dell'immagine.gcloud compute images describe --project=PROJECT_NAME IMAGE_NAME"
- Esegui il seguente
- Per visualizzare i metadati dell'immagine:
- Verifica e convalida che le tue applicazioni vengano eseguite correttamente sui cluster creati con le nuove versioni immagine, in particolare quando utilizzi le nuove release delle versioni principali delle immagini.