Gestionar las actualizaciones de versión de instancias y flujos de procesamiento

En esta página se describe cómo actualizar la versión de tus instancias o de tus canalizaciones por lotes.

Actualiza tus instancias y flujos de procesamiento por lotes de Cloud Data Fusion a las versiones más recientes de la plataforma y los complementos para disfrutar de las últimas funciones, correcciones de errores y mejoras de rendimiento.

Antes de empezar

  • Planifica un periodo de inactividad para la actualización. El proceso puede tardar hasta una hora.
  • In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

Limitaciones

  • Una vez que hayas creado una instancia de Cloud Data Fusion, no podrás cambiar su edición, ni siquiera mediante una operación de actualización.

  • No actives una actualización con Terraform, ya que elimina y vuelve a crear la instancia en lugar de realizar una actualización in situ. Este problema provoca la pérdida de los datos que haya en la instancia.

  • Cloud Data Fusion no reinicia los flujos de procesamiento que se detienen como resultado de la operación de actualización.

  • Cuando actualizas una instancia desde versiones anteriores a la 6.11.0, el tiempo de inactividad de la actualización será mayor, sobre todo si la instancia gestiona una gran cantidad de datos.

  • No se pueden actualizar las canalizaciones en tiempo real, excepto las que se hayan creado en la versión 6.8.0 con una fuente en tiempo real de Kafka. Para encontrar una solución alternativa, consulta Actualizar flujos de procesamiento en tiempo real.

Actualizar instancias de Cloud Data Fusion

Para actualizar una instancia de Cloud Data Fusion a una nueva versión de Cloud Data Fusion, ve a la página Detalles de la instancia:

  1. En la Google Cloud consola, ve a la página de Cloud Data Fusion.

  2. Haz clic en Instancias y, a continuación, en el nombre de la instancia para ir a la página Detalles de la instancia.

    Ir a Instancias

A continuación, realiza la actualización con la Google Cloud consola o la CLI de gcloud:

Consola

  1. Haz clic en Actualizar para ver una lista de las versiones disponibles.

  2. Selecciona una versión.

  3. Haz clic en Actualizar.

  4. Verifica que la actualización se haya realizado correctamente:

    1. Actualiza la página Detalles de la instancia.

    2. Haga clic en Ver instancia para acceder a la instancia actualizada en la interfaz web de Cloud Data Fusion.

    3. En la barra de menús, haga clic en Administrador del sistema.

      El nuevo número de versión aparece en la parte superior de la página.

  5. Para evitar que tus pipelines se queden bloqueados cuando los ejecutes en la nueva versión, asigna los roles necesarios en tu instancia actualizada.

gcloud

  1. Para actualizar a una nueva versión de Cloud Data Fusion, ejecuta el siguiente comando de la CLI de gcloud desde una sesión de terminal local o de Cloud Shell:

      gcloud beta data-fusion instances update INSTANCE_ID \
        --project=PROJECT_ID \
        --location=LOCATION_NAME \
        --version=AVAILABLE_INSTANCE_VERSION
    
  2. Para verificar que la actualización se ha completado correctamente, sigue estos pasos:

    1. En la Google Cloud consola, ve a la página Instancias de Cloud Data Fusion.

    2. Haga clic en Ver instancia para acceder a la instancia actualizada en la interfaz web de Cloud Data Fusion.

    3. En la barra de menús, haga clic en Administración del sistema.

      El nuevo número de versión aparece en la parte superior de la página.

  3. Para evitar que tus pipelines se queden bloqueados cuando los ejecutes en la nueva versión, asigna los roles necesarios en tu instancia actualizada.

Actualizar flujos de procesamiento por lotes

Para actualizar tus flujos de procesamiento por lotes de Cloud Data Fusion y usar las versiones más recientes de los complementos, sigue estos pasos:

  1. Define variables de entorno.

  2. Recomendación: crea una copia de seguridad de todas las canalizaciones. Puedes crear copias de seguridad de las canalizaciones de dos formas:

    • Para descargar el archivo ZIP, sigue estos pasos:

      1. Para activar la descarga de un archivo ZIP, crea una copia de seguridad de todas las canalizaciones con el siguiente comando:
      echo $CDAP_ENDPOINT/v3/export/apps
      
      1. Copia la URL de salida en tu navegador.
      2. Extrae el archivo descargado y confirma que se han exportado todas las canalizaciones. Las canalizaciones se organizan por espacio de nombres.
    • Crea copias de seguridad de las canalizaciones con Gestión de control de versiones (SCM), disponible en la versión 6.9 y posteriores. SCM ofrece integración con GitHub, que puedes usar para crear copias de seguridad de las canalizaciones.

  3. Para actualizar las canalizaciones, sigue estos pasos:

    1. Crea una variable que apunte al archivo pipeline_upgrade.json que crearás en el siguiente paso para guardar una lista de canalizaciones.

      export PIPELINE_LIST=PATH/pipeline_upgrade.json
      

      Sustituye PATH por la ruta al archivo.

    2. Crea una lista de todos los flujos de procesamiento de una instancia y un espacio de nombres con el siguiente comando. El resultado se almacena en el archivo $PIPELINE_LIST en formato JSON. Puedes editar la lista para quitar las canalizaciones que no necesiten actualizarse.

      curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps -o $PIPELINE_LIST
      

      Sustituye NAMESPACE_ID por el espacio de nombres en el que quieras que se realice la actualización.

    3. Actualiza las canalizaciones que se indican en pipeline_upgrade.json. Inserta el NAMESPACE_ID de las canalizaciones que quieras actualizar. El comando muestra una lista de las canalizaciones actualizadas con su estado de actualización.

      curl -N -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/upgrade --data @$PIPELINE_LIST
      

      Sustituye NAMESPACE_ID por el ID del espacio de nombres de las canalizaciones que se van a actualizar.

  4. Para evitar que tus canalizaciones se queden bloqueadas al ejecutarlas en la nueva versión, concede los roles necesarios en tu instancia actualizada.

Actualizar las canalizaciones en tiempo real

No se pueden actualizar las canalizaciones en tiempo real, excepto las que se hayan creado en la versión 6.8.0 con una fuente en tiempo real de Kafka.

En el resto de los casos, haz lo siguiente:

  1. Detén y exporta los flujos de procesamiento.
  2. Actualiza la instancia.
  3. Importa las canalizaciones en tiempo real a tu instancia actualizada.

Actualizar cuenta para habilitar la replicación

La replicación se puede habilitar en entornos de Cloud Data Fusion con la versión 6.3.0 o posterior. Si tienes la versión 6.2.3, actualiza a la 6.3.0 y, después, a la versión más reciente. Después, puedes habilitar la replicación.

Conceder roles a instancias actualizadas

Una vez que se haya completado la actualización, asigna los roles Ejecutor de Cloud Data Fusion (roles/datafusion.runner) y Administrador de Cloud Storage (roles/storage.admin) a la cuenta de servicio de Dataproc en tu proyecto.

Siguientes pasos