Ricrea e aggiorna un cluster

Procedura per ricreare e aggiornare un cluster

Puoi utilizzare lo strumento a riga di comando gcloud o l'API Dataproc per copiare la configurazione da un cluster esistente, aggiornarla e creare un nuovo cluster con la configurazione aggiornata.

Interfaccia a riga di comando gcloud

Le istruzioni di esempio mostrano l'aggiornamento dell'impostazione della versione dell'immagine in una configurazione del cluster. Puoi modificare per aggiornare le diverse impostazioni di configurazione del cluster.

  1. Imposta le variabili.
    export PROJECT=project-id
    export REGION=region
    export OLD_CLUSTER=old-cluster-name
    export NEW_CLUSTER=new-cluster-name
    export NEW_IMAGE_VERSION=image-version (for example, '2.2-debian12')
    
  2. Esporta la configurazione del cluster esistente (precedente) in un file YAML.
    gcloud dataproc clusters export $OLD_CLUSTER \
        --project=$PROJECT \
        --region=$REGION > "${OLD_CLUSTER}-config.yaml"
  3. Aggiorna la configurazione. L'esempio seguente utilizza sed per aggiornare la versione dell'immagine.
    sed -E "s|(^[[:blank:]]+)imageVersion: .+|\1imageVersion: ${NEW_IMAGE_VERSION}|g" "${OLD_CLUSTER}-config.yaml" | sed -E '/^[[:blank:]]+imageUri: /d' > "${NEW_CLUSTER}-config-updated.yaml"
  4. Crea un nuovo cluster con un nuovo nome e la configurazione aggiornata.
    gcloud dataproc clusters import $NEW_CLUSTER \
        --project=$PROJECT \
        --region=$REGION \
        --source="${NEW_CLUSTER}-config-updated.yaml"
  5. Dopo aver confermato che i carichi di lavoro vengono eseguiti nel nuovo cluster senza problemi, per eliminare il cluster esistente (precedente). IMPORTANTE: questo passaggio elimina tutti archiviati in HDFS e sul disco locale nel tuo cluster.
    gcloud dataproc clusters delete $OLD_CLUSTER \
        --project=$PROJECT \
        --region=$REGION

API REST

Le istruzioni di esempio mostrano l'aggiornamento del nome e dell'immagine del cluster le impostazioni della versione in una configurazione cluster. Puoi modificare di variabili di esempio per aggiornare le diverse impostazioni di configurazione del cluster.

  1. Imposta le variabili.
    export PROJECT=project-id
    export REGION=region
    export OLD_CLUSTER=old-cluster-name
    export NEW_CLUSTER=new-cluster-name
    export NEW_IMAGE_VERSION=image-version (for example, '2.2-debian12')
    
    
  2. Esporta la configurazione del cluster esistente (precedente) in un file JSON.
    curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)"  "https://dataproc.googleapis.com/v1/projects/${PROJECT}/regions/${REGION}/clusters/${OLD_CLUSTER}?alt=json" > "${OLD_CLUSTER}-config.json"
  3. Aggiorna la configurazione. L'esempio seguente utilizza jq per aggiornare il nome del cluster e la versione dell'immagine.
    jq ".clusterName = \"${NEW_CLUSTER}\" | .config.softwareConfig.imageVersion=\"${NEW_IMAGE_VERSION}\" | del(.config.workerConfig.imageUri) | del(.config.masterConfig.imageUri)" "${OLD_CLUSTER}-config.json" > "${NEW_CLUSTER}-config-updated.json"
  4. Importa la configurazione del cluster aggiornata per creare un nuovo cluster con la configurazione aggiornata.
    curl -i -X POST  -H "Authorization: Bearer $(gcloud auth print-access-token)"  -H "Content-Type: application/json; charset=utf-8" -d "@${NEW_CLUSTER}-config-updated.json" "https://dataproc.googleapis.com/v1/projects/${PROJECT}/regions/${REGION}/clusters?alt=json"
  5. Dopo aver verificato che i carichi di lavoro vengono eseguiti nel nuovo cluster senza problemi, elimina il cluster esistente (precedente). IMPORTANTE: questo passaggio elimina tutti i dati archiviati in HDFS e sul disco locale nel cluster.
    curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://dataproc.googleapis.com/v1/projects/${PROJECT}/regions/${REGION}/clusters/${OLD_CLUSTER}"
    

Console

La console non supporta la ricreazione di un cluster tramite importazione la configurazione di un cluster.