Volver a crear y actualizar un clúster virtual de Dataproc en GKE

Puedes copiar la configuración de un clúster virtual de Dataproc en GKE, actualizar la configuración copiada y, a continuación, crear un clúster de Dataproc en GKE con la configuración actualizada.

Volver a crear y actualizar un clúster de Dataproc en GKE

gcloud

  1. Define las variables de entorno:

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

  2. Exporta la configuración del clúster de Dataproc en GKE a un archivo YAML.

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

  3. Actualiza la configuración.

    1. Elimina el campo kubernetesNamespace. Es necesario quitar este campo para evitar un conflicto de espacio de nombres cuando crees el clúster actualizado.

      Ejemplo de comando sed para quitar el campo kubernetesNamespace:

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

    2. Haz cambios adicionales para actualizar la configuración del clúster virtual de Dataproc en GKE, como cambiar la componentVersion de Spark.

  4. Elimina el clúster virtual de Dataproc en GKE si vas a crear un clúster que tenga el mismo nombre que el que se está actualizando (si vas a sustituir el clúster original).

  5. Espera a que finalice la operación de eliminación anterior y, a continuación, importa la configuración del clúster actualizada para crear un clúster virtual de Dataproc en GKE con los ajustes de configuración actualizados.

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

API

  1. Define las variables de entorno:

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

  2. Exporta la configuración del clúster de Dataproc en GKE a un archivo 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. Actualiza la configuración.

    1. Elimina el campo kubernetesNamespace. Es necesario eliminar este campo para evitar un conflicto de espacio de nombres al crear el clúster actualizado.

      Ejemplo de comando jq para quitar el campo kubernetesNamespace:

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

    2. Haz cambios adicionales para actualizar la configuración del clúster virtual de Dataproc en GKE, como cambiar la componentVersion de Spark.

  4. Elimina el clúster virtual de Dataproc en GKE si vas a crear un clúster que tenga el mismo nombre que el clúster que se está actualizando (si vas a sustituir el clúster original).

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

  5. Espera a que finalice la operación de eliminación anterior y, a continuación, importa la configuración del clúster actualizada para crear un clúster virtual de Dataproc en GKE con los ajustes actualizados.

    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"
    

Consola

La consola no permite volver a crear un clúster virtual de Dataproc en GKE importando la configuración de un clúster. Google Cloud