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.

Procedura per ricreare e aggiornare un cluster Dataproc su GKE

gcloud

1. Imposta le variabili di ambiente:

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

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

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

  2. Aggiorna la configurazione.

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

      Comando sed di esempio 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 la componentVersion di Spark.

  3. Elimina il cluster virtuale Dataproc su GKE esistente se crei un cluster con lo stesso nome del cluster in fase di aggiornamento (se stai sostituendo il cluster originale).

  4. 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
  

  1. 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"

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

    Comando jq di esempio per rimuovere il campo kubernetesNamespace:

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

    1. Apporta ulteriori modifiche per aggiornare le impostazioni di configurazione del cluster virtuale Dataproc su GKE, ad esempio modificando la componentVersion di Spark.
  3. Elimina il cluster virtuale Dataproc su GKE esistente se vuoi creare un cluster con lo stesso nome del cluster in fase di aggiornamento (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}"
    

  4. 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.