Si una instancia A4X Max, A4X, A4, A3 Ultra, A3 Mega y A3 High (8 GPUs) tiene problemas de hardware que no puedes resolver por tu cuenta, como un rendimiento más lento dentro de un clúster o temperaturas de GPU constantemente altas, puedes informar que su host tiene fallas para minimizar el tiempo de inactividad de tu carga de trabajo.
En este documento, se explica cómo informar un host defectuoso y hacer un seguimiento del estado de la operación de informe en un clúster de Slurm o en otro clúster basado en instancias de procesamiento. Para informar hosts defectuosos en un clúster de Google Kubernetes Engine (GKE), consulta Informa hosts defectuosos a través de GKE.
Limitaciones
Cuando informas un host defectuoso, se aplican las siguientes limitaciones:
Solo puedes informar un host defectuoso si la instancia de procesamiento que se ejecuta en el host cumple con todas las condiciones siguientes:
La instancia de procesamiento se está ejecutando.
La instancia de procesamiento usa un tipo de máquina A4X Max, A4X, A4, A3 Ultra, A3 Mega y A3 High (8 GPUs). Las GPU generales no admiten la notificación de hosts defectuosos. Si tienes problemas de hardware con una instancia de GPU general, comunícate con Atención al cliente de Cloud.
La instancia de procesamiento usa el modelo de aprovisionamiento vinculado a la reserva.
Si borras una instancia de procesamiento mientras la operación
reportHostAsFaultyestá en curso, la operaciónreportHostAsFaultyfallará.Google Cloud hace todo lo posible para completar todas tus solicitudes de informe de host defectuoso. Sin embargo, debido a restricciones de capacidad o límites de frecuencia, es posible que no siempre se complete una solicitud.
Comprende el proceso de informe de hosts defectuosos
Después de informar que un host está defectuoso para una instancia de procesamiento, el momento en que se reinicia la instancia de procesamiento varía según el modo operativo de la reserva que se especifica en la reserva que usa la instancia de procesamiento. Para verificar el modo operativo de una reserva, consulta el camporeservationOperationalMode en la reserva.
En la siguiente tabla, se resume el proceso de host defectuoso para los dos modos operativos de reserva disponibles:
modo de capacidad total y modo administrado.
Modo All Capacity (ALL_CAPACITY) |
Modo administrado (HIGHLY_AVAILABLE_CAPACITY) |
|
|---|---|---|
| Tipos de máquina admitidos | A4X Max y A4X | A4, A3 Ultra, A3 Mega y A3 High (8 GPUs) |
| Límite de frecuencia de la API de informes de hosts defectuosos | No se aplican límites de frecuencia. | Es posible que las llamadas a la API tengan un límite de frecuencia. |
| Proceso de informe de host defectuoso |
Cuando informas un host defectuoso para una instancia de procesamiento que se ejecuta en el modo de capacidad total, ocurre lo siguiente:
|
Cuando informas que un host está defectuoso para una instancia de procesamiento que se ejecuta en modo administrado, sucede lo siguiente:
|
Soluciona problemas antes de informar un host defectuoso
Antes de informar un host defectuoso, te recomendamos que soluciones el problema para confirmar si se trata de un problema de hardware, en lugar de un problema con tu carga de trabajo o configuración del clúster. Este enfoque ayuda a evitar el tiempo de inactividad innecesario para tus cargas de trabajo.
Verifica si hay errores de memoria de GPU o Xid
Si observas errores de memoria de GPU o Xid en una instancia de procesamiento, verifica si las medidas de recuperación manuales, como restablecer las GPU o reiniciar la instancia de procesamiento, pueden resolver el problema antes de informar que el host tiene fallas. Para obtener más información, consulta Revisa los mensajes de Xid.
Verifica si hay problemas de rendimiento de la GPU y rezagados
Si notas un rendimiento lento, usa el servicio de detección de rezagados para identificar las instancias de procesamiento que podrían tener un rendimiento más lento que otras en el clúster.
Supervisa las temperaturas de las GPU y los incumplimientos térmicos
Si ves advertencias de incumplimiento térmico en tus registros o informadas por DCGM, revisa la siguiente guía:
Advertencias frente a errores críticos: Los diagnósticos de DCGM pueden informar incumplimientos térmicos como advertencias con una gravedad de
monitor. Esta gravedad significa que las GPU aún están listas para ejecutar cargas de trabajo, pero te recomendamos que las supervises.Falsos positivos: NVIDIA está investigando un aumento en la frecuencia de los informes de infracciones térmicas en las GPU que no muestran signos de problemas térmicos reales.
Recomendación: Antes de informar que un host tiene fallas debido a advertencias térmicas, verifica si las temperaturas reales de la GPU superan los umbrales seguros y si el rendimiento de tu carga de trabajo se ve afectado. Si las temperaturas se mantienen estables y el rendimiento es normal, te recomendamos que supervises la GPU en lugar de informar que está defectuosa.
Para obtener más información sobre la solución de problemas de GPU, consulta Soluciona problemas de VMs con GPU en la documentación de Compute Engine.
Antes de comenzar
Selecciona la pestaña según cómo planeas usar las muestras de esta página:
Console
Cuando usas la consola de Google Cloud para acceder a los servicios y las APIs de Google Cloud , no necesitas configurar la autenticación.
gcloud
En la consola de Google Cloud , activa Cloud Shell.
En la parte inferior de la consola de Google Cloud , se inicia una sesión de Cloud Shell en la que se muestra una ventana de línea de comandos. Cloud Shell es un entorno de shell con Google Cloud CLI ya instalada y con valores ya establecidos para el proyecto actual. La sesión puede tardar unos segundos en inicializarse.
REST
Para usar las muestras de la API de REST incluidas en esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la gcloud CLI.
Instala Google Cloud CLI.
Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.
Para obtener más información, consulta Autentícate para usar REST en la documentación de autenticación de Google Cloud .
Roles obligatorios
Para obtener los permisos que necesitas para informar un host defectuoso, pídele a tu administrador que te otorgue los siguientes roles de IAM:
- Administrador de instancias de Compute (v1) (
roles/compute.instanceAdmin.v1) en el proyecto -
Visualiza las operaciones de informe de host defectuoso con Logging:
Visualizador de registros (
roles/logging.viewer) en el proyecto
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para informar un host defectuoso. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para informar un host defectuoso:
-
Para informar un host defectuoso:
compute.instances.updateen la instancia de procesamiento o el proyecto -
Para ver una lista de operaciones con Logging, haz lo siguiente:
logging.logEntries.listen el proyecto -
Para ver una lista de operaciones en Compute Engine, haz lo siguiente:
compute.zoneOperations.listen el proyecto -
Para ver los detalles de una operación en Compute Engine:
compute.zoneOperations.geten el proyecto
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Cómo informar un host defectuoso
Para informar un host defectuoso, completa los siguientes pasos:
Revisa el host en el que se ejecuta tu instancia de procesamiento. Debes verificar el ID del host en el que se ejecuta tu instancia de procesamiento.
Para obtener instrucciones, consulta Visualiza la topología de una instancia de procesamiento.
Opcional: Crea una copia de seguridad de los datos de la SSD local. Cuando se detiene la instancia de procesamiento, Compute Engine descarta automáticamente los datos de los discos SSD locales que están conectados a la instancia de procesamiento. No puedes recuperar los datos de SSD locales después de que Compute Engine los descarta.
Para obtener instrucciones sobre cómo conservar los datos de SSD locales, consulta Copia de seguridad de datos de SSD locales.
Informa el host defectuoso. La operación de reparación del host comienza de inmediato, en un minuto después de que se completa la operación de informe de host defectuoso. Si la instancia de procesamiento deja de responder después de iniciar la operación de informe de host defectuoso, te recomendamos que esperes al menos 15 minutos y, luego, reinicies la instancia de procesamiento.
Para informar un host defectuoso, selecciona una de las siguientes opciones:
gcloud
Para informar sobre un host defectuoso, usa el comando
gcloud compute instances report-host-as-faulty:gcloud compute instances report-host-as-faulty INSTANCE_NAME \ --async \ --disruption-schedule=IMMEDIATE \ --fault-reasons=behavior=FAULT_REASON,description=DESCRIPTION \ --zone=ZONEReemplaza lo siguiente:
INSTANCE_NAME: Es el nombre de la instancia de procesamiento.FAULT_REASON: Es una lista de problemas de host que encontró tu instancia de procesamiento, separados por comas, por ejemplo,ISSUE_1,ISSUE_2. Puedes especificar los siguientes valores:PERFORMANCE: Las GPU que están conectadas a la instancia de procesamiento tienen problemas de rendimiento en comparación con otras GPU del clúster, no ves errores de Xid en los registros y Compute Engine no detecta otros patrones de falla habituales, como daños silenciosos en los datos.SILENT_DATA_CORRUPTION: Ves daños en los datos de tu instancia de procesamiento, pero esta sigue en ejecución. La corrupción de datos silenciosa puede deberse a problemas como defectos de las CPUs virtuales, errores de software o problemas del kernel.UNRECOVERABLE_GPU_ERROR: Identificaste un error de GPU irrecuperable con un Xid.BEHAVIOR_UNSPECIFIED: No tienes certeza de cuál es el problema con tu instancia de procesamiento.
DESCRIPTION: Es una descripción del problema que afecta a tu instancia de procesamiento, como la información de Xid o los problemas de rendimiento sospechosos.ZONE: Es la zona en la que existe la instancia de procesamiento.
REST
Para informar un host defectuoso, realiza una solicitud
POSTal métodoinstances.reportHostAsFaulty.Cuando informas un host defectuoso, puedes especificar varios motivos de falla a la vez. Por ejemplo, para especificar dos motivos de falla, realiza una solicitud de la siguiente manera:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/reportHostAsFaulty { "disruptionSchedule": "IMMEDIATE", "faultReasons": [ { "behavior": "FAULT_REASON_1", "description": "DESCRIPTION_1" }, { "behavior": "FAULT_REASON_2", "description": "DESCRIPTION_2" } ] }Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto en el que existe la instancia de procesamiento.ZONE: Es la zona en la que existe la instancia de procesamiento.INSTANCE_NAME: Es el nombre de la instancia de procesamiento.FAULT_REASON_1yFAULT_REASON_2: cada problema de host que encontró tu instancia de procesamiento. Puedes especificar los siguientes valores:PERFORMANCE: Las GPU que están conectadas a la instancia de procesamiento tienen problemas de rendimiento en comparación con otras GPU del clúster, no ves errores de Xid en los registros y Compute Engine no detecta otros patrones de fallas comunes, como la corrupción de datos silenciosa.SILENT_DATA_CORRUPTION: Ves daños en los datos de tu instancia de procesamiento, pero esta sigue en ejecución. La corrupción de datos silenciosa puede deberse a problemas como defectos de las CPUs virtuales, errores de software o problemas del kernel.UNRECOVERABLE_GPU_ERROR: Identificaste un error de GPU irrecuperable con un Xid.BEHAVIOR_UNSPECIFIED: No tienes certeza de cuál es el problema con tu instancia de procesamiento.
DESCRIPTION_1yDESCRIPTION_2: Es una descripción de cada problema del host que especificaste, como la información de Xid o los posibles problemas de rendimiento.
Revisa las operaciones para informar que el host está defectuoso
Después de informar un host defectuoso, Compute Engine inicia una serie de operaciones para marcarlo como defectuoso y lo prepara para su reparación. En específico, durante una operación de informe de host defectuoso, se produce el siguiente proceso:
Marca el host como defectuoso. Compute Engine crea la operación de informar un host defectuoso. Luego, la operación para informar que el host está defectuoso crea una secuencia de operaciones secundarias. Estas operaciones secundarias marcan el host subyacente como defectuoso.
Prepara el host para las reparaciones. Una vez que se completan todas las operaciones secundarias, comienza la operación de informar el host defectuoso. Compute Engine detiene la instancia de procesamiento y, luego, inicia la operación de reparación del host defectuoso. Según el modo operativo de la reserva y la disponibilidad del host, Compute Engine mantiene la instancia de procesamiento detenida o intenta migrarla y reiniciarla.
Finalización del informe y reparación del host. Compute Engine completa la operación de informar que el host está defectuoso y se ejecuta la operación de reparación del host.
Para obtener más información sobre otras operaciones que puedes usar para hacer un seguimiento de las reparaciones, la migración y el reinicio automático, consulta Comportamientos de mantenimiento y reinicio y Supervisa y planifica un evento de mantenimiento del host en la documentación de Compute Engine.
Para hacer un seguimiento del estado de las operaciones de informar un host defectuoso
(compute.instances.reportHostAsFaulty) en tu proyecto, selecciona una
de las siguientes opciones:
Consola (operaciones de instancia)
En la consola de Google Cloud , ve a la página Operaciones.
En la tabla que aparece, busca la instancia de procesamiento que informaste.
En la fila que contiene la instancia de procesamiento, en la columna Estado, puedes ver el estado de la operación de informar un host defectuoso. Cuando se completa la operación, el valor es Listo.
Opcional: Para verificar si Compute Engine reinició la instancia de procesamiento, consulta los detalles de la instancia.
Consola (registros de instancias de procesamiento)
En la consola de Google Cloud , accede a la página Explorador de registros.
Verifica que el botón de activación Mostrar consulta esté en la posición de activado.
En el editor de consultas, ingresa la consulta siguiente:
resource.type="gce_instance" AND protoPayload.methodName=~"compute\.instances\.reportHostAsFaulty"Haz clic en Ejecutar consulta. En el panel Resultados de la consulta, se muestran los resultados de la consulta.
gcloud
Para ver el estado de las operaciones de informe de host defectuoso en tu proyecto, usa el comando
gcloud compute operations listcon la marca--filterestablecida enoperationType:reportHostAsFaulty:gcloud compute operations list --filter="operationType:reportHostAsFaulty"Si deseas ver los detalles de una operación de host defectuosa específica, usa el comando
gcloud compute operations describe:gcloud compute operations describe OPERATION_NAME \ --zone="ZONE"Reemplaza lo siguiente:
OPERATION_NAME: Es el nombre de la operación.ZONE: Es la zona en la que existe la operación.
REST
Para ver el estado de las operaciones de informe de host defectuoso en tu proyecto,
realiza una solicitud GET al
método zoneOperations.list.
En la URL de la solicitud, incluye el parámetro de consulta filter configurado como items.operationType:reportHostAsFaulty.
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/operations&filter=items.operationType:reportHostAsFaulty
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto en el que existen las operaciones.ZONE: Es la zona en la que existen las operaciones.
¿Qué sigue?
- Si tienes problemas para informar un host defectuoso, consulta Soluciona problemas de la API de host defectuoso.