Comienza a usar Batch

En esta página, se describe cómo comenzar a usar Batch para Google Cloud.

Descripción general

Batch es un servicio completamente administrado que te permite programar, poner en cola y ejecutar cargas de trabajo de procesamiento por lotes en los recursos de Google Cloud. Por ejemplo, considera usar Batch para cargas de trabajo de computación de alto rendimiento (HPC), aprendizaje automático (AA) y procesamiento de datos. Batch aprovisiona los recursos y administra la capacidad en tu nombre, lo que permite que tus cargas de trabajo por lotes se ejecuten a gran escala.

Con Batch, no necesitas configurar ni administrar programadores de trabajos de terceros, aprovisionar y desaprovisionar recursos ni solicitar recursos de una zona a la vez. Si deseas ejecutar un trabajo, debes especificar los parámetros de los recursos necesarios para tu carga de trabajo. Luego, Batch obtiene los recursos y pone en cola el trabajo para su ejecución. Batch proporciona integración nativa en otros servicios de Google Cloud para ayudar en la programación, ejecución, almacenamiento y análisis de trabajos por lotes, de modo que puedas enfocarte en enviar un trabajo y consumir los resultados.

Batch consta de los siguientes componentes:

  • Trabajo: Un programa programado que ejecuta un conjunto de tareas hasta su finalización sin ninguna interacción del usuario, por lo general, para cargas de trabajo de procesamiento. Por ejemplo, un trabajo puede ser una secuencia de comandos de shell única o un procesamiento complejo de varias partes.

    Específicamente, un trabajo por lotes representa un array de una o más tareas y el entorno en el que se ejecutarán. Defines el programa para el trabajo como una secuencia de uno o más ejecutables. Cada tarea ejecuta la secuencia de ejecutables en los recursos del trabajo. Puedes configurar las tareas de un trabajo para que se ejecuten en paralelo o secuencialmente.

  • Tarea: Una ejecución de la secuencia de ejecutables de un trabajo. Cuando un trabajo tiene varias tareas, especifica cómo quieres que varíe cada ejecución haciendo referencia a la variable de entorno para el índice de una tarea en los ejecutables del trabajo.

  • Runnable: Una secuencia de comandos o contenedor ejecutable que defines como parte de un trabajo.

  • Recursos: La infraestructura necesaria para ejecutar un trabajo Como mínimo, solo debes especificar los recursos de procesamiento necesarios por tarea: núcleos de CPU, memoria y, si es necesario, almacenamiento adicional en el disco de arranque. De manera opcional, también puedes especificar otras opciones de recursos para el trabajo. Batch crea y borra de forma automática los recursos que cumplen con tus especificaciones durante el tiempo de ejecución del trabajo.

    Específicamente, cada trabajo por lotes se ejecuta en un grupo de instancias administrado (MIG) regional, que es un grupo de una o más instancias de máquina virtual (VM) de Compute Engine que coinciden y se ubican en una de las zonas incluidas. Cada VM tiene hardware dedicado para los núcleos de CPU y la memoria, que afectan el rendimiento de tu trabajo, y un disco de arranque, que almacena una imagen del sistema operativo (SO) y las instrucciones para ejecutar tu trabajo. Si se especifica, un trabajo también puede incluir recursos adicionales o acceder a ellos, por ejemplo, GPU o volúmenes de almacenamiento externo. La cantidad de VM aprovisionadas para un trabajo depende de los requisitos de hardware y las opciones de programación de tareas que especifiques.

En resumen, Batch te permite crear y ejecutar trabajos que aprovisionan y usan de forma automática los recursos necesarios para ejecutar sus tareas.

Para obtener más información sobre el comportamiento y las opciones del trabajo, consulta la página Descripción general de la creación y ejecución de trabajos.

Precios

El uso de Batch no tiene costo adicional. Solo se te cobra el costo de los recursos subyacentes necesarios para ejecutar tus trabajos.

Si quieres obtener más información sobre los costos asociados con Batch y cómo filtrar los informes de la Facturación de Cloud para ver los costos de Batch, consulta Precios.

Restricciones

Batch tiene las siguientes restricciones:

  • No puedes exceder las cuotas y los límites de lotes de tu proyecto.
  • Solo puedes especificar un tipo de máquina por trabajo, que puede ser predefinido o personalizado.
  • No puedes especificar más de un grupo de tareas por trabajo. Todos los trabajos tienen solo un grupo de tareas llamado group0.

Requisitos previos

Para comenzar a usar Batch, completa los siguientes requisitos previos:

  1. Si tu proyecto no usó Batch antes, habilita Batch para tu proyecto.
  2. Configura Batch para cada usuario nuevo.

Habilita Batch para un proyecto

Para comenzar a usar Batch con un proyecto, haz lo siguiente:

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  2. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  3. Asegúrate de que Batch esté habilitado para tu proyecto:

    1. Habilita las APIs para Batch con la consola de Google Cloud o Google Cloud CLI.

      Console

      Habilita las API de Batch, Compute Engine, and Cloud Logging.

      Habilita las API

      gcloud

      Habilita las APIs de Batch, Compute Engine, and Cloud Logging:

      gcloud services enable batch.googleapis.com compute.googleapis.com logging.googleapis.com

    2. Asegúrate de que tu proyecto tenga una o más cuentas de servicio con los permisos necesarios para crear y acceder a los recursos necesarios para ejecutar trabajos de Batch.

      Es importante destacar que todos los usuarios a los que quieras permitirles crear y ejecutar trabajos por lotes en tu proyecto deben tener permiso para usar una de estas cuentas de servicio. Por lo tanto, no selecciones cuentas de servicio que tengan más permisos de los que deseas otorgar a estos usuarios.

      La cuenta de servicio que usa cada trabajo de forma predeterminada es la cuenta de servicio predeterminada de Compute Engine, pero también puedes personalizar qué cuenta de servicio usa un trabajo.

      A menos que planees usar solo la configuración predeterminada para las cuentas de servicio de tu trabajo, otorga las siguientes funciones de IAM a cualquier cuenta de servicio que tu proyecto use para los trabajos por lotes.

      • Informante del agente por lotes (roles/batch.agentReporter) en el proyecto
      • Para permitir que los trabajos generen registros en Cloud Logging: Escritor de registros (roles/logging.logWriter) en el proyecto

      La cuenta de servicio que usas para un trabajo también puede requerir funciones adicionales según las opciones de configuración que deseas usar en tus trabajos. Consulta la documentación de cada tarea para ver si se requieren permisos adicionales. Para obtener más información sobre cómo otorgar funciones a las cuentas de servicio, consulta Restringe cuentas de servicio y Administra el acceso a las cuentas de servicio.

    3. Asegúrate de estar familiarizado con el agente de servicio de Batch de tu proyecto:

      Después de crear un trabajo por lotes, el agente de servicio de Batch se crea de forma automática para tu proyecto con el siguiente nombre:

      service-PROJECT_NUMBER@gcp-sa-cloudbatch.iam.gserviceaccount.com
      

      Reemplaza PROJECT_NUMBER por el número de proyecto de tu proyecto.

      Al agente de servicio de Batch se le otorga de forma automática la función de IAM del agente de servicio de Batch de Google (roles/batch.serviceAgent). Esta configuración es necesaria para que tu proyecto use Batch.

      Sin embargo, algunos casos de uso, como ejecutar un trabajo en una red de VPC compartida, requieren que otorgues permisos adicionales al agente de servicio de Batch de tu proyecto.

      Para obtener más información, consulta Agentes de servicio.

Configura Batch para un usuario nuevo

Para comenzar a usar Batch como usuario, haz lo siguiente:

  1. A fin de obtener los permisos que necesitas para usar Batch, pídele a tu administrador que te otorgue los roles de IAM necesarios en el proyecto. Consulta la documentación de cada tarea para ver los permisos necesarios.

    Por ejemplo, si deseas comenzar a aprender a usar Batch mediante la creación de un trabajo básico, considera solicitar funciones para las siguientes tareas:

    • Para crear trabajos, sigue estos pasos:
    • Para enumerar y describir trabajos: Editor de trabajos por lotes (roles/batch.jobsEditor) o Visualizador de trabajos por lotes (roles/batch.jobsViewer) en el proyecto
    • Para ver los registros de los trabajos: Visor de registros (roles/logging.viewer) en el proyecto
    • Para borrar trabajos: Editor de trabajos por lotes (roles/batch.jobsEditor) en el proyecto

    Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

  2. Si deseas usar los ejemplos de la línea de comandos para Batch, configura Google Cloud CLI de la siguiente manera. Obtén más información sobre la autenticación de Google Cloud CLI.

    1. Instala Google Cloud CLI y, luego, inicializa la ejecución del siguiente comando:

      gcloud init

    2. Recomendado: Configura un proyecto predeterminado con el comando gcloud config set project:

      gcloud config set project PROJECT_ID
      

      Reemplaza PROJECT_ID por el ID del proyecto.

  3. Si quieres usar los ejemplos de la API o los ejemplos de la biblioteca cliente para Batch, consulta Autentícate en Batch.

Obtenga asistencia

Puedes analizar Batch con la comunidad en los foros de Cloud.

Si tienes problemas con Batch, consulta la documentación de solución de problemas.

Para obtener asistencia o proporcionar comentarios sobre Batch, usa los siguientes recursos:

  • Si tienes problemas de facturación con Google Cloud, comunícate con Asistencia para la facturación.

  • Si tienes un paquete de asistencia pago, comunícate directamente con el equipo de asistencia de Google Cloud para resolver problemas con Batch.

    Google Cloud ofrece diferentes paquetes de asistencia para satisfacer distintas necesidades, como acceso a un administrador de asistencia técnica, asistencia telefónica y cobertura las 24 horas, todos los días. Para obtener más información, consulta Planes de asistencia de Google Cloud Platform.

  • Si quieres proporcionar comentarios o solicitudes de funciones para Batch, o informar problemas de Batch sin un paquete de asistencia pagado, haz clic en el botón Send feedback, que puedes encontrar al principio y al final de cada página de documentación de Batch. Luego, selecciona una de las siguientes opciones:

    • Para comentarios relacionados con la documentación de Batch, selecciona “Comentarios sobre la documentación”.
    • Para todos los demás comentarios sobre Batch, selecciona “Comentarios sobre productos”.

¿Qué sigue?