Vous pouvez copier la configuration d'un cluster virtuel Dataproc sur GKE existant, mettre à jour la configuration copiée, puis créer un cluster Dataproc sur GKE à l'aide de la configuration mise à jour.
Procédure de recréation et de mise à jour d'un cluster Dataproc sur GKE
gcloud
1. Définissez les variables d'environnement :
CLUSTER=existing Dataproc on GKE cluster name \ REGION=region
Exportez la configuration existante du cluster Dataproc sur GKE vers un fichier YAML.
gcloud dataproc clusters export $CLUSTER \ --region=$REGION > "${CLUSTER}-config.yaml"
Mettez à jour la configuration.
Supprimez le champ
kubernetesNamespace
. La suppression de ce champ est nécessaire pour éviter un conflit d'espace de noms lorsque vous créez le cluster mis à jour.Exemple de commande
sed
pour supprimer le champkubernetesNamespace
:sed -E "s/kubernetesNamespace: .+$//g" ${CLUSTER}-config.yaml
Apportez des modifications supplémentaires pour mettre à jour les paramètres de configuration du cluster virtuel Dataproc sur GKE, par exemple en modifiant la componentVersion Spark.
Supprimez le cluster virtuel Dataproc sur GKE existant si vous créez un cluster portant le même nom que celui qu'il met à jour (si vous remplacez le cluster d'origine).
Attendez la fin de l'opération de suppression précédente, puis importez la configuration du cluster mise à jour pour créer un cluster virtuel Dataproc sur GKE avec les paramètres de configuration mis à jour.
gcloud dataproc clusters import $CLUSTER \ --region=$REGION \ --source="${CLUSTER}-config.yaml"
API
1. Définissez les variables d'environnement :
CLUSTER=existing Dataproc on GKE cluster name \ REGION=region
Exportez la configuration existante du cluster Dataproc sur GKE vers un fichier 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"
Supprimez le champ
kubernetesNamespace
. La suppression de ce champ est nécessaire pour éviter un conflit d'espace de noms lors de la création du cluster mis à jour.Exemple de commande
jq
pour supprimer le champkubernetesNamespace
:jq 'del(.virtualClusterConfig.kubernetesClusterConfig.kubernetesNamespace)'
- Apportez des modifications supplémentaires pour mettre à jour les paramètres de configuration du cluster virtuel Dataproc sur GKE, par exemple en modifiant la componentVersion Spark.
Supprimez le cluster virtuel Dataproc sur GKE existant si vous créez un cluster portant le même nom que celui qu'il met à jour (si vous remplacez le cluster d'origine).
curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://dataproc.googleapis.com/v1/projects/${PROJECT}/regions/${REGION}/clusters/${CLUSTER}"
Attendez la fin de l'opération de suppression précédente, puis importez la configuration du cluster mise à jour pour créer un cluster virtuel Dataproc sur GKE avec les paramètres mis à jour.
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 ne permet pas de recréer un cluster virtuel Dataproc sur GKE en important la configuration d'un cluster existant.