Recréer et mettre à jour un cluster virtuel Google Kubernetes Engine

Vous pouvez copier la configuration d'un cluster virtuel Managed Service pour Apache Spark sur GKE existant, mettre à jour la configuration copiée, puis créer un cluster Managed Service pour Apache Spark sur GKE à l'aide de la configuration mise à jour.

Recréer et mettre à jour un cluster Managed Service pour Apache Spark sur GKE

gcloud

  1. Définissez les variables d'environnement :

    CLUSTER=existing Managed Service for Apache Spark on GKE  cluster name \
      REGION=region
    

  2. Exportez la configuration du cluster Managed Service pour Apache Spark sur GKE existant dans un fichier YAML.

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

  3. Mettez à jour la configuration.

    1. Supprimez le champ kubernetesNamespace. Il est nécessaire de supprimer ce champ pour éviter un conflit d'espace de noms lorsque vous créez le cluster mis à jour.

      Exemple de commande sed pour supprimer le champ kubernetesNamespace :

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

    2. Apportez d'autres modifications pour mettre à jour les paramètres de configuration du cluster virtuel Managed Service pour Apache Spark sur GKE, par exemple en modifiant le componentVersion de Spark.

  4. Supprimez le cluster virtuel Managed Service pour Apache Spark sur GKE existant si vous créez un cluster portant le même nom que celui que vous mettez à jour (si vous remplacez le cluster d'origine).

  5. Attendez que l'opération de suppression précédente soit terminée, puis importez la configuration de cluster mise à jour pour créer un cluster virtuel Managed Service pour Apache Spark 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 Managed Service for Apache Spark on GKE  cluster name \
      REGION=region
    

  2. Exportez la configuration du cluster Managed Service pour Apache Spark sur GKE existant dans 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"

  3. Mettez à jour la configuration.

    1. 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 jq pour supprimer le champ kubernetesNamespace :

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

    2. Apportez d'autres modifications pour mettre à jour les paramètres de configuration du cluster virtuel Managed Service pour Apache Spark sur GKE, par exemple en modifiant le componentVersion de Spark.

  4. Supprimez le cluster virtuel Managed Service pour Apache Spark sur GKE existant si vous créez un cluster portant le même nom que celui que vous mettez à 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}"
    

  5. Attendez que l'opération de suppression précédente soit terminée, puis importez la configuration de cluster mise à jour pour créer un cluster virtuel Managed Service pour Apache Spark 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 Managed Service pour Apache Spark sur GKE en important la configuration d'un cluster existant.