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. Batch aprovisiona recursos y administra la capacidad en tu nombre, lo que permite que las cargas de trabajo por lotes se ejecuten a gran escala.

Con Batch, no necesitas configurar y administrar programadores de trabajos de terceros, aprovisionar y desaprovisionar recursos, ni solicitar recursos de una zona a la vez. A fin de ejecutar un trabajo, especifica parámetros para los recursos necesarios para tu carga de trabajo y, luego, Batch obtiene los recursos y pone en cola el trabajo para su ejecución. Batch proporciona una integración nativa con otros servicios de Google Cloud para ayudar en la programación, la ejecución, el almacenamiento y el 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 cálculo complejo de varias partes.

    Específicamente, un trabajo por lotes representa un arreglo 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, debes especificar cómo deseas que varíe cada ejecución haciendo referencia a la variable de entorno para el índice de una tarea en los ejecutables del trabajo.

  • Ejecutable: una secuencia de comandos o un 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 automáticamente los recursos que cumplen con tus especificaciones durante el tiempo de ejecución del trabajo.

    En particular, cada trabajo por lotes se ejecuta en un grupo de instancias administrado regional (MIG), que es un grupo de una o más instancias de máquina virtual (VM) de Compute Engine coincidentes y ubicadas 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 el trabajo. Si se especifica, un trabajo también puede incluir recursos adicionales, o acceder a ellos, como 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, cada uno aprovisiona y usa 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

No se aplican costos adicionales por usar Batch. Solo se te cobra el costo de los recursos subyacentes que se necesitan para ejecutar tus trabajos.

Si quieres obtener más información sobre los costos asociados con Batch y cómo filtrar los informes de 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 por lotes de tu proyecto.
  • Solo puedes especificar un tipo de máquina, que puede ser predefinido o personalizado, por trabajo.
  • No puedes especificar más de un grupo de tareas por trabajo. Todos los trabajos tienen un solo 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 en un proyecto, haz lo siguiente:

  1. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  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 mediante la consola de Google Cloud o Google Cloud CLI.

      Consola

      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 el proyecto tenga una o más cuentas de servicio con los permisos necesarios para crear y acceder a los recursos destinados a ejecutar trabajos por lotes.

      Es importante destacar que cualquier usuario que desees permitir que cree y ejecute trabajos por lotes en tu proyecto debe 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 otorgarles 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.

      Otorga las siguientes funciones de IAM a cualquier cuenta de servicio que tu proyecto use para trabajos por lotes.

      • Informante del agente por lotes (roles/batch.agentReporter) en el proyecto
      • Para permitir que los trabajos accedan a un bucket de Cloud Storage, usa el administrador de almacenamiento (roles/storage.admin) en el bucket.
      • Para permitir que los trabajos generen registros en Cloud Logging: escritor de registros (roles/logging.logWriter) en el proyecto

      Para obtener más información sobre cómo otorgar funciones a las cuentas de servicio, consulta Restringe las cuentas de servicio y Administra el acceso a las cuentas de servicio.

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

      Después de crear un trabajo por lotes, el agente de servicio de Batch (una cuenta de servicio administrada por Google) 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 el rol de IAM del agente de servicio de Batch (roles/batch.serviceAgent) de Google. Esta configuración es necesaria para que tu proyecto use Batch.

      Sin embargo, ciertos casos prácticos, 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, usa el visor de registros (roles/logging.viewer) del proyecto.
    • Para borrar trabajos, usa el Editor de trabajos por lotes (roles/batch.jobsEditor) del 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 de Batch, configura Google Cloud CLI de la siguiente manera. Obtén más información sobre la autenticación para 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 deseas usar los ejemplos de la API o de la biblioteca cliente para Batch, consulta Autentícate en Batch.

Obtener asistencia

Puedes hablar sobre Batch con la comunidad en Foros de Cloud.

Si tienes problemas con Batch, consulta la documentación para solucionar 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 pagado, comunícate directamente con la asistencia de Google Cloud para resolver problemas con Batch.

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

  • Si deseas proporcionar comentarios o solicitudes de funciones para Batch, o informar problemas de Batch sin un paquete de asistencia pago, 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 obtener comentarios relacionados con la documentación de Batch, selecciona “Comentarios de la documentación”.
    • Para todos los demás comentarios sobre Batch, selecciona “Comentarios sobre productos”.

¿Qué sigue?