Puoi copiare una configurazione esistente del cluster virtuale Dataproc su GKE, aggiornare la configurazione copiata e quindi creare un nuovo cluster Dataproc su GKE utilizzando la configurazione aggiornata.
Passaggi 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
Esporta la configurazione del cluster Dataproc su GKE esistente in un file YAML.
gcloud dataproc clusters export $CLUSTER \ --region=$REGION > "${CLUSTER}-config.yaml"
Aggiorna la configurazione.
Rimuovi il campo
kubernetesNamespace
. È necessario rimuovere questo campo per evitare conflitti di spazi dei nomi quando crei il cluster aggiornato.Comando
sed
di esempio per rimuovere il campokubernetesNamespace
:sed -E "s/kubernetesNamespace: .+$//g" ${CLUSTER}-config.yaml
Apporta ulteriori modifiche per aggiornare le impostazioni di configurazione del cluster virtuale Dataproc su GKE, ad esempio modificando la versione versione di Spark.
Elimina il cluster virtuale Dataproc su GKE se crei un cluster con lo stesso nome del cluster che sta aggiornando (se stai sostituendo il cluster originale).
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
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"
Rimuovi il campo
kubernetesNamespace
. La rimozione di questo campo è necessaria per evitare conflitti di spazi dei nomi quando crei il cluster aggiornato.Comando di esempio
jq
per rimuovere il campokubernetesNamespace
:jq 'del(.virtualClusterConfig.kubernetesClusterConfig.kubernetesNamespace)'
- Apporta ulteriori modifiche per aggiornare le impostazioni di configurazione del cluster virtuale Dataproc su GKE, ad esempio modificando la versione versione di Spark.
Elimina il cluster virtuale Dataproc su GKE esistente se crei un cluster con lo stesso nome del cluster che sta 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}"
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 una configurazione del cluster esistente.