Usar contenedores personalizados en Dataflow

Puedes personalizar el entorno de ejecución del código de usuario en las canalizaciones de Dataflow proporcionando una imagen de contenedor personalizada. Los contenedores personalizados se admiten en las canalizaciones que usan Runner v2 de Dataflow.

Cuando Dataflow inicia las VMs de los trabajadores, usa imágenes de contenedores Docker para lanzar procesos de SDK en contenedores en los trabajadores. De forma predeterminada, una pipeline usa una imagen de Apache Beam prediseñada. Sin embargo, puedes proporcionar una imagen de contenedor personalizada para tu trabajo de Dataflow. Cuando especificas una imagen de contenedor personalizada, Dataflow inicia trabajadores que extraen la imagen especificada.

Puede usar un contenedor personalizado por los siguientes motivos:

  • Preinstala las dependencias de la canalización para reducir el tiempo de inicio de los trabajadores.
  • Preinstala las dependencias de la canalización que no estén disponibles en repositorios públicos.
  • Preinstala las dependencias de la canalización cuando el acceso a los repositorios públicos esté desactivado. El acceso puede estar desactivado por motivos de seguridad.
  • Prepara archivos de gran tamaño para reducir el tiempo de inicio de los trabajadores.
  • Iniciar software de terceros en segundo plano.
  • Personaliza el entorno de ejecución.

Para obtener más información sobre los contenedores personalizados en Apache Beam, consulta la guía de contenedores personalizados de Apache Beam. Para ver ejemplos de flujos de procesamiento de Python que usan contenedores personalizados, consulta Contenedores personalizados de Dataflow.

Pasos siguientes