Monitorizar y optimizar los recursos de los trabajos viendo las métricas

En este documento se describe cómo monitorizar y optimizar los recursos de un trabajo de Batch consultando las métricas en Cloud Monitoring. Para obtener más información sobre los recursos en los que se ejecuta un trabajo, consulta Recursos de trabajo.

En cualquier trabajo, Monitoring proporciona métricas básicas, como el uso de la CPU y el tráfico de red. Sin embargo, algunas métricas, como la utilización de memoria y procesos, solo se pueden recoger si un trabajo instala el agente de operaciones. Las métricas de los recursos de un trabajo le ayudan a evaluar el rendimiento y la utilización de cada recurso. Esta información puede ayudarte a identificar mejoras para futuras iteraciones del trabajo. Por ejemplo, puede eliminar recursos que no se utilicen para optimizar los costes o mejorar o aumentar los recursos sobrecargados para mejorar el rendimiento.

Antes de empezar

  1. Si no has usado Batch antes, consulta el artículo Empezar a usar Batch y habilita Batch completando los requisitos previos para proyectos y usuarios.
  2. Opcional: Para recoger métricas adicionales de un trabajo, crea y ejecuta un trabajo que instale automáticamente el agente de operaciones.
  3. Si tu proyecto aún no lo ha hecho, habilita la API Monitoring:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  4. Para obtener los permisos que necesitas para ver las métricas de observabilidad, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Lector de métricas de Monitoring (roles/monitoring.metricViewer) en el proyecto. Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.

    También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.

Ver métricas de recursos de trabajos

En la sección Observar y monitorizar máquinas virtuales de la documentación de Compute Engine se proporciona información conceptual relevante sobre las métricas de las máquinas virtuales. Sin embargo, se recomiendan métodos diferentes para ver las métricas de las máquinas virtuales de los trabajos de Batch. En concreto, la documentación de Compute Engine explica cómo ver las métricas mediante los paneles de control de Monitoring predefinidos para Compute Engine o las páginas de Compute Engine en la Google Cloud consola. Sin embargo, es importante destacar que estos métodos no muestran información sobre las VMs que se han eliminado. Por lo tanto, no utilices esos métodos a menos que solo quieras ver las métricas de los trabajos por lotes mientras se están ejecutando.

Consulta las métricas de las tareas de Batch en curso y finalizadas mediante los gráficos del explorador de métricas, tal como se explica en esta sección. Ten en cuenta que los gráficos son temporales a menos que los guardes en paneles personalizados.

.

Para crear un gráfico en el que se muestren una o varias métricas, sigue estos pasos:

  1. Opcional: Si tiene previsto guardar el gráfico, identifique o cree un panel de control personalizado para el gráfico.
  2. Crea un gráfico del explorador de métricas para una o varias métricas.

    Si no se aplican filtros, cada métrica de máquina virtual de un gráfico incluye datos de todas las máquinas virtuales de tu proyecto. Si quiere filtrar el gráfico para que solo incluya métricas de todos los trabajos por lotes o de trabajos por lotes específicos, añada el siguiente filtro:

    group=RESOURCE_GROUP_NAME
    

    Sustituye RESOURCE_GROUP_NAME por el nombre de un grupo de recursos para los trabajos de Batch. Para obtener más información, consulta el artículo Crear grupos de recursos para filtrar métricas.

Crear grupos de recursos para filtrar métricas

Puede usar grupos de recursos como filtros personalizables para los gráficos del explorador de métricas. Para crear un grupo de recursos para todos los trabajos de Batch o para trabajos específicos de tu proyecto, haz lo siguiente:

  1. Seleccione una etiqueta para usarla como criterio de pertenencia en función de los trabajos que quiera incluir en el grupo:

    • Todas las tareas de Batch: usa la etiqueta batch-node predefinida, que se aplica automáticamente a todos los recursos de todas las tareas de Batch y tiene un valor nulo.
    • Tareas por lotes específicas: usa una etiqueta que se aplique a los recursos solo para tareas por lotes específicas.

      Por ejemplo, si quieres crear un grupo basado en nombres de empleo completos o parciales, usa el nombre de etiqueta batch-job-id predefinido con un valor específico. La etiqueta batch-job-id se aplica automáticamente a todos los recursos de todos los trabajos de Batch y se define con el nombre del trabajo.

      Si usas una etiqueta personalizada, debes aplicarla a todos los recursos de los trabajos por lotes que quieras incluir en el grupo al crear los trabajos.

  2. Asegúrate de que tu proyecto tenga al menos un trabajo con la etiqueta seleccionada y de que este trabajo esté en el estado RUNNING. De lo contrario, esta etiqueta no aparecerá como opción cuando intentes crear el grupo de recursos.

  3. Crea un grupo de recursos. Cuando especifique los criterios de pertenencia, haga lo siguiente:

    1. En Tipo, selecciona Etiqueta.
    2. En el campo Etiqueta, escribe el nombre de la etiqueta que hayas seleccionado. A continuación, define los siguientes campos en función de los valores de las etiquetas que quieras que incluya el grupo.

      Por ejemplo, si quiere que este grupo incluya todos los trabajos por lotes, defina Etiqueta como batch-node y Operador como Existe. Si quieres que este grupo incluya trabajos por lotes con nombres que empiecen por test, define Etiqueta como batch-job-id, Operador como Empieza por y Valor como test.

Siguientes pasos