Ricrea e aggiorna un cluster virtuale Dataproc su GKE

Puoi copiare la configurazione di un cluster virtuale Dataproc su GKE esistente, aggiornare la configurazione copiata e poi creare un nuovo cluster Dataproc su GKE utilizzando la configurazione aggiornata.

Ricrea e aggiorna un cluster Dataproc su GKE

gcloud

  1. Imposta le variabili di ambiente:

    CLUSTER=existing Dataproc on GKE  cluster name \
      REGION=region
    

  2. Esporta la configurazione del cluster Dataproc su GKE esistente in un file YAML.

    gcloud dataproc clusters export $CLUSTER \
        --region=$REGION > "${CLUSTER}-config.yaml"
    

  3. Aggiorna la configurazione.

    1. Rimuovi il campo kubernetesNamespace. La rimozione di questo campo è necessaria per evitare un conflitto di spazio dei nomi quando crei il cluster aggiornato.

      Esempio di comando sed per rimuovere il campo kubernetesNamespace:

      sed -E "s/kubernetesNamespace: .+$//g" ${CLUSTER}-config.yaml
      

    2. Apporta ulteriori modifiche per aggiornare le impostazioni di configurazione del cluster virtuale Dataproc su GKE, ad esempio modificando componentVersion di Spark.

  4. Elimina il cluster virtuale Dataproc su GKE esistente se crei un cluster che ha lo stesso nome del cluster che stai aggiornando (se stai sostituendo il cluster originale).

  5. Attendi il completamento dell'operazione di eliminazione precedente, quindi importa la configurazione del cluster aggiornata per creare un nuovo cluster virtuale Dataproc su GKE con le impostazioni di configurazione aggiornate.

    gcloud dataproc clusters import $CLUSTER \
        --region=$REGION \
        --source="${CLUSTER}-config.yaml"

API

  1. Imposta le variabili di ambiente:

    CLUSTER=existing Dataproc on GKE  cluster name \
      REGION=region
    

  2. Esporta la configurazione del cluster Dataproc su GKE esistente in un file YAML.

    curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)"  "https://dataproc.googleapis.com/v1/projects/${PROJECT}/regions/${REGION}/clusters/${CLUSTER}?alt=json" > "${CLUSTER}-config.json"

  3. Aggiorna la configurazione.

    1. Rimuovi il campo kubernetesNamespace. La rimozione di questo campo è necessaria per evitare un conflitto di spazio dei nomi quando crei il cluster aggiornato.

      Esempio di comando jq per rimuovere il campo kubernetesNamespace:

      jq 'del(.virtualClusterConfig.kubernetesClusterConfig.kubernetesNamespace)'
      

    2. Apporta ulteriori modifiche per aggiornare le impostazioni di configurazione del cluster virtuale Dataproc su GKE, ad esempio modificando componentVersion di Spark.

  4. Elimina il cluster virtuale Dataproc su GKE esistente se crei un cluster con lo stesso nome del cluster che stai aggiornando (se stai sostituendo il cluster originale).

    curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://dataproc.googleapis.com/v1/projects/${PROJECT}/regions/${REGION}/clusters/${CLUSTER}"
    

  5. Attendi il completamento dell'operazione di eliminazione precedente, quindi importa la configurazione del cluster aggiornata per creare un nuovo cluster virtuale Dataproc su GKE con le impostazioni aggiornate.

    curl -i -X POST  -H "Authorization: Bearer $(gcloud auth print-access-token)"  -H "Content-Type: application/json; charset=utf-8" -d "@${CLUSTER}-config.json" "https://dataproc.googleapis.com/v1/projects/${PROJECT}/regions/${REGION}/clusters?alt=json"
    

Console

La console Google Cloud non supporta la ricreazione di un cluster virtuale Dataproc su GKE importando la configurazione di un cluster esistente.