En esta página, se describe cómo cambiar la versión de imagen de Dataproc usada por tu instancia de Cloud Data Fusion. Puedes cambiar la imagen en la instancia, espacio de nombres o canalización.
Antes de comenzar
Detén todas las canalizaciones y los trabajos de replicación en tiempo real en la instancia de Cloud Data Fusion. Si se está ejecutando una canalización o replicación en tiempo real cuando cambias la versión de la imagen de Dataproc, los cambios no se aplican a la ejecución de la canalización.
En el caso de las canalizaciones en tiempo real, si está habilitado el registro de puntos de control, detener las canalizaciones no causa ninguna pérdida de datos. En el caso de los trabajos de replicación, siempre que los registros de la base de datos estén disponibles, detener y reiniciar el trabajo de replicación no causará pérdida de datos.
Console
Dirígete a la página Instancias de Cloud Data Fusion y abre en la que debes detener una canalización.
Abre cada canalización en tiempo real en Pipeline Studio y haz clic en Detener.
Abre cada trabajo de replicación en la página Replicar y haz clic en Detener.
API de REST
Para recuperar todas las canalizaciones, usa la siguiente llamada a la API de REST:
GET -H "Authorization: Bearer ${AUTH_TOKEN}" \ "${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps"
Reemplaza
NAMESPACE_ID
por el nombre de tu espacio de nombres.Para detener una canalización en tiempo real, usa la siguiente llamada a la API de REST:
POST -H "Authorization: Bearer ${AUTH_TOKEN}" \ "${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps/PIPELINE_NAME/spark/DataStreamsSparkStreaming/stop"
Reemplaza NAMESPACE_ID por el nombre de tu espacio de nombres y PIPELINE_NAME por el nombre de la canalización en tiempo real.
Para detener un trabajo de replicación, usa la siguiente llamada a la API de REST:
POST -H "Authorization: Bearer ${AUTH_TOKEN}" \ "${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps/REPLICATION_JOB_NAME/workers/DeltaWorker/stop"
Reemplaza NAMESPACE_ID por el nombre de tu Espacio de nombres y REPLICATION_JOB_NAME con el nombre del trabajo de replicación.
Para obtener más información, consulta cómo detener las canalización en tiempo real y cómo detener los trabajos de replicación.
Cómo verificar y anular la versión predeterminada de Dataproc en Cloud Data Fusion
Haz clic en Administrador del sistema > Configuración > Sistema. Preferencias.
Si no se especifica una imagen de Dataproc en Preferencias del sistema o para cambiar la preferencia, haz clic en Editar las preferencias del sistema.
Ingresa el siguiente texto en el campo Clave:
system.profile.properties.imageVersion
Ingresa la imagen de Dataproc elegida en el campo Valor, como
2.1
.Haz clic en Guardar y cerrar.
Este cambio afecta a toda la instancia de Cloud Data Fusion, incluidas todas su espacio de nombres y ejecuciones de canalizaciones, a menos que la propiedad de la versión de la imagen esté se anula en un espacio de nombres, una canalización o un argumento de entorno de ejecución en tu instancia.
Cambia la versión con imágenes de Dataproc
La versión de la imagen se puede establecer en la interfaz web de Cloud Data Fusion en los argumentos de configuración de procesamiento, las preferencias de espacio de nombres o el tiempo de ejecución de la canalización.
Cambia la imagen en Preferencias de espacio de nombres
Si anulaste la versión de la imagen en las propiedades de tu espacio de nombres, sigue estos pasos:
Haz clic en Administrador del sistema > Configuración > Espacios de nombres.
Abre cada espacio de nombres y haz clic en Preferencias.
Asegúrate de que no haya anulación con la clave
system.profile.properties.imageVersion
con una imagen incorrecta de la versión.Haz clic en Finish (Finalizar).
Cambia la imagen en los perfiles de procesamiento del sistema
Haz clic en Administrador del sistema > Configuración.
Haz clic en System Compute Profiles > Create New Profile.
Selecciona el aprovisionador de Dataproc.
Crea el perfil para Dataproc. En la versión con imágenes , ingresa una versión de imagen de Dataproc.
Selecciona este perfil de procesamiento mientras ejecutas la canalización en Studio . En la página de ejecución de la canalización, haz clic en Configurar > Configuración de procesamiento y selecciona este perfil.
Selecciona el perfil de Dataproc y haz clic en Guardar.
Haz clic en Finish (Finalizar).
Cambia la imagen en los argumentos del entorno de ejecución de la canalización
Si anulaste la versión de la imagen con una propiedad en los argumentos de tiempo de ejecución de tu canalización, sigue estos pasos:
Haz clic en el menú Menú > Lista.
En la página List, selecciona la canalización que deseas actualizar.
La canalización se abrirá en la página Studio.
Para expandir las opciones de Run, haz clic en la flecha de expansión
.Se abrirá la ventana Argumentos del entorno de ejecución.
Verifica que no haya anulación con la clave
system.profile.properties.imageVersion
con una versión de imagen incorrecta como valor.Haz clic en Guardar.
Cómo volver a crear los clústeres estáticos de Dataproc que usa Cloud Data Fusion con la versión de imagen elegida
Si usas clústeres de Dataproc existentes con Cloud Data Fusion, sigue la guía de Dataproc para volver a crear los clústeres con la versión de imagen de Dataproc elegida para tu versión de Cloud Data Fusion.
Como alternativa, puedes crear un clúster de Dataproc nuevo con la versión de imagen de Dataproc elegida y borrar y volver a crear el perfil de procesamiento en Cloud Data Fusion con el mismo nombre de perfil de procesamiento y el nombre actualizado del clúster de Dataproc. De esta manera, las canalizaciones por lotes en ejecución pueden completar la ejecución en el clúster existente, y las ejecuciones de canalizaciones posteriores se realizan en el nuevo clúster de Dataproc. Puedes borrar el clúster de Dataproc anterior después de confirmar que se completaron todas las ejecuciones de canalización.
Verifica que la versión de la imagen de Dataproc esté actualizada
Console
En la consola de Google Cloud, ve a la página Clústeres de Dataproc.
Abre la página Detalles del clúster del clúster nuevo que Cloud Data Fusion creó cuando especificaste la versión nueva.
El campo Image version tiene el valor nuevo que especificaste en Cloud Data Fusion.
API de REST
Obtén la lista de clústeres con sus metadatos:
GET -H "Authorization: Bearer ${AUTH_TOKEN}" \ https://dataproc.googleapis.com/v1/projects/PROJECT_ID/regions/REGION_ID/clusters
Reemplaza lo siguiente:
PROJECT_ID
por el nombre de tu espacio de nombresREGION_ID
por el nombre de la región en la que se encuentran tus clústeres
Busca el nombre de tu canalización (nombre del clúster).
Debajo de ese objeto JSON, observa la imagen en
config > softwareConfig > imageVersion
.
Cambia la imagen de Dataproc a la versión 2.2 o 2.1
Las versiones 6.9.1 y posteriores de Cloud Data Fusion admiten la imagen de Dataproc 2.1 de Compute Engine, que se ejecuta en Java 11. En las versiones 6.10.0 y posteriores, la imagen 2.1 es la predeterminada.
Si cambias a la imagen 2.2 o 2.1 de una imagen anterior, las canalizaciones y los trabajos de replicación, los controladores de JDBC a los que complementos de base de datos que se usen en esas instancias deben ser compatibles con Java 11.
Las imágenes 2.2 y 2.1 de Dataproc tienen las siguientes limitaciones en Cloud Data Fusion:
- No se admiten trabajos de MapReduce.
- Las versiones de los controladores de JDBC que se usan en los complementos de la base de datos de tu instancia deben actualizarse para admitir Java 11. Consulta la siguiente tabla para ver las versiones de los controladores que funcionan con Dataproc 2.2, 2.1 y Java 11:
Controladores de JDBC | Se quitaron versiones anteriores de Cloud Data Fusion 6.9.1 | Versiones compatibles con Java 8 y Java 11 que funcionan con Dataproc 2.2, 2.1 o 2.0 |
---|---|---|
Controlador JDBC de Cloud SQL para MySQL | - | 1.0.16 |
Controlador JDBC de Cloud SQL para PostgreSQL | - | 1.0.16 |
Controlador JDBC de Microsoft SQL Server | Controlador de Microsoft JDBC 6.0 | Controlador de Microsoft JDBC 9.4 |
Controlador JDBC para MySQL | 5.0.8 y 5.1.39 | 8.0.25 |
Controlador de JDBC de PostgreSQL | 9.4.1211.jre7 y 9.4.1211.jre8 | 42.6.0.jre8 |
Controlador de JDBC de Oracle | ojdbc7 | ojdbc8 (12c y superiores) |
Uso de memoria cuando se usa Dataproc 2.2 o 2.1
Es posible que el uso de memoria aumente en las canalizaciones que usan clústeres de Dataproc 2.2 o 2.1. Si actualizas la instancia a la versión 6.10 o posterior
las canalizaciones anteriores fallan debido a problemas de memoria, aumentar el controlador y
del ejecutor a 2,048 MB en la configuración Resources
para
en una canalización de integración continua.
Como alternativa, puedes anular la versión de Dataproc si configuras
el argumento de tiempo de ejecución system.profile.properties.imageVersion
en 2.0-debian10
.