

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Observabilidad del SageMaker HyperPod clúster de Amazon orquestado por Amazon EKS
<a name="sagemaker-hyperpod-eks-cluster-observability"></a>

Para lograr una observabilidad completa de los recursos y componentes de software de su clúster de Amazon SageMaker HyperPod (SageMaker HyperPod), integre el clúster con [Amazon CloudWatch Container Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ContainerInsights.html), [Amazon Managed Service for Prometheus](https://docs.aws.amazon.com/prometheus/latest/userguide/what-is-Amazon-Managed-Service-Prometheus.html) y [Amazon](https://docs.aws.amazon.com/grafana/latest/userguide/what-is-Amazon-Managed-Service-Grafana.html) Managed Grafana. Estas herramientas proporcionan visibilidad del estado del clúster, las métricas de rendimiento y la utilización de los recursos.

La integración con Amazon Managed Service para Prometheus permite exportar métricas relacionadas con los recursos de HyperPod su clúster, lo que proporciona información sobre su rendimiento, uso y estado. La integración con Amazon Managed Grafana permite la visualización de estas métricas a través de varios paneles de Grafana que ofrecen una interfaz intuitiva para supervisar y analizar el comportamiento del clúster. Al aprovechar estos servicios, obtiene una visión centralizada y unificada de su HyperPod clúster, lo que facilita la supervisión proactiva, la solución de problemas y la optimización de sus cargas de trabajo de formación distribuidas.

**nota**  
Si bien CloudWatch Amazon Managed Service for Prometheus y Amazon Managed Grafana se centran en las métricas operativas (por ejemplo, el estado del sistema o la formación, el desempeño laboral) SageMaker HyperPod , los informes de uso [complementan la gobernanza de tareas](sagemaker-hyperpod-eks-operate-console-ui-governance.md) para proporcionar información sobre la responsabilidad financiera y de los recursos. Estos informes registran lo siguiente:  
Utilización del cómputo (GPU/CPU/Neuron Core hours) across namespaces/teams
Atribución de costos de los recursos asignados y prestados
Tendencias históricas (hasta 180 días) de auditoría y optimización
Para obtener más información sobre cómo configurar y generar informes de uso, consulte Cómo [informar sobre el uso de la informática en HyperPod](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-hyperpod-usage-reporting.html). 

**sugerencia**  
Para encontrar ejemplos prácticos y soluciones, consulte también la sección [Observabilidad](https://catalog.us-east-1.prod.workshops.aws/workshops/2433d39e-ccfe-4c00-9d3d-9917b729258e/en-US/06-observability) del [ SageMaker HyperPod taller Amazon EKS Support in](https://catalog.us-east-1.prod.workshops.aws/workshops/2433d39e-ccfe-4c00-9d3d-9917b729258e).

Continúe con los siguientes temas para configurar la observabilidad de los SageMaker HyperPod clústeres.

**Topics**
+ [Observabilidad de modelos para trabajos de formación en SageMaker HyperPod clústeres orquestados por Amazon EKS](sagemaker-hyperpod-eks-cluster-observability-model.md)
+ [Observabilidad de clústeres y tareas](sagemaker-hyperpod-eks-cluster-observability-cluster.md)

# Observabilidad de modelos para trabajos de formación en SageMaker HyperPod clústeres orquestados por Amazon EKS
<a name="sagemaker-hyperpod-eks-cluster-observability-model"></a>

SageMaker HyperPod los clústeres organizados con Amazon EKS se pueden integrar con la [MLflow aplicación de Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/mlflow.html). Los administradores de clústeres configuran el MLflow servidor y lo conectan a los SageMaker HyperPod clústeres. Los científicos de datos pueden obtener información sobre el modelo.

**Para configurar un MLflow servidor mediante AWS CLI**

Un administrador de clústeres debe crear un servidor MLflow de seguimiento.

1. Cree un servidor MLflow de seguimiento de SageMaker IA siguiendo las instrucciones de [Crear un servidor de seguimiento mediante la AWS CLI](https://docs.aws.amazon.com/sagemaker/latest/dg/mlflow-create-tracking-server-cli.html#mlflow-create-tracking-server-cli-infra-setup).

1. Asegúrese de que el [https://docs.aws.amazon.com/eks/latest/APIReference/API_auth_AssumeRoleForPodIdentity.html](https://docs.aws.amazon.com/eks/latest/APIReference/API_auth_AssumeRoleForPodIdentity.html)permiso existe en la función de ejecución de IAM para SageMaker HyperPod.

1. Si el complemento `eks-pod-identity-agent` aún no está instalado en el clúster de EKS, instálelo en dicho clúster.

   ```
   aws eks create-addon \
       --cluster-name <eks_cluster_name> \
       --addon-name eks-pod-identity-agent \
       --addon-version vx.y.z-eksbuild.1
   ```

1. Crea un `trust-relationship.json` archivo para que Pod lo llame MLflow APIs a un nuevo rol.

   ```
   cat >trust-relationship.json <<EOF
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowEksAuthToAssumeRoleForPodIdentity",
               "Effect": "Allow",
               "Principal": {
                   "Service": "pods.eks.amazonaws.com"
   
               },
               "Action": [
                   "sts:AssumeRole",
                   "sts:TagSession"
               ]
           }
       ]
   }
   EOF
   ```

   Ejecute el siguiente comando para crear el rol y asociar la relación de confianza.

   ```
   aws iam create-role --role-name hyperpod-mlflow-role \
       --assume-role-policy-document file://trust-relationship.json \
       --description "allow pods to emit mlflow metrics and put data in s3"
   ```

1. Cree la siguiente política que conceda acceso al pod para llamar a todas las operaciones `sagemaker-mlflow` y colocar los artefactos del modelo en S3. El permiso S3 ya existe en el servidor de rastreo, pero si los artefactos del modelo son demasiado grandes, se llama directamente a s3 desde el MLflow código para cargar los artefactos.

   ```
   cat >hyperpod-mlflow-policy.json <<EOF
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "sagemaker-mlflow:AccessUI",
                   "sagemaker-mlflow:CreateExperiment",
                   "sagemaker-mlflow:SearchExperiments",
                   "sagemaker-mlflow:GetExperiment",
                   "sagemaker-mlflow:GetExperimentByName",
                   "sagemaker-mlflow:DeleteExperiment",
                   "sagemaker-mlflow:RestoreExperiment",
                   "sagemaker-mlflow:UpdateExperiment",
                   "sagemaker-mlflow:CreateRun",
                   "sagemaker-mlflow:DeleteRun",
                   "sagemaker-mlflow:RestoreRun",
                   "sagemaker-mlflow:GetRun",
                   "sagemaker-mlflow:LogMetric",
                   "sagemaker-mlflow:LogBatch",
                   "sagemaker-mlflow:LogModel",
                   "sagemaker-mlflow:LogInputs",
                   "sagemaker-mlflow:SetExperimentTag",
                   "sagemaker-mlflow:SetTag",
                   "sagemaker-mlflow:DeleteTag",
                   "sagemaker-mlflow:LogParam",
                   "sagemaker-mlflow:GetMetricHistory",
                   "sagemaker-mlflow:SearchRuns",
                   "sagemaker-mlflow:ListArtifacts",
                   "sagemaker-mlflow:UpdateRun",
                   "sagemaker-mlflow:CreateRegisteredModel",
                   "sagemaker-mlflow:GetRegisteredModel",
                   "sagemaker-mlflow:RenameRegisteredModel",
                   "sagemaker-mlflow:UpdateRegisteredModel",
                   "sagemaker-mlflow:DeleteRegisteredModel",
                   "sagemaker-mlflow:GetLatestModelVersions",
                   "sagemaker-mlflow:CreateModelVersion",
                   "sagemaker-mlflow:GetModelVersion",
                   "sagemaker-mlflow:UpdateModelVersion",
                   "sagemaker-mlflow:DeleteModelVersion",
                   "sagemaker-mlflow:SearchModelVersions",
                   "sagemaker-mlflow:GetDownloadURIForModelVersionArtifacts",
                   "sagemaker-mlflow:TransitionModelVersionStage",
                   "sagemaker-mlflow:SearchRegisteredModels",
                   "sagemaker-mlflow:SetRegisteredModelTag",
                   "sagemaker-mlflow:DeleteRegisteredModelTag",
                   "sagemaker-mlflow:DeleteModelVersionTag",
                   "sagemaker-mlflow:DeleteRegisteredModelAlias",
                   "sagemaker-mlflow:SetRegisteredModelAlias",
                   "sagemaker-mlflow:GetModelVersionByAlias"
               ],
               "Resource": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-tracking-server/<ml tracking server name>"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:PutObject"
               ],
               "Resource": "arn:aws:s3:::<mlflow-s3-bucket_name>"
           }
       ]
   }
   EOF
   ```
**nota**  
 ARNs Son el del MLflow servidor y el bucket de S3 configurado con el MLflow servidor durante el servidor que creó siguiendo las instrucciones de [configuración de la MLflow infraestructura](https://docs.aws.amazon.com/sagemaker/latest/dg/mlflow-create-tracking-server-cli.html#mlflow-create-tracking-server-cli-infra-setup).

1. Asocie la política `mlflow-metrics-emit-policy` al `hyperpod-mlflow-role` mediante el documento de política guardado en el paso anterior.

   ```
   aws iam put-role-policy \
     --role-name hyperpod-mlflow-role \
     --policy-name mlflow-metrics-emit-policy \
     --policy-document file://hyperpod-mlflow-policy.json
   ```

1. Crea una cuenta de servicio de Kubernetes para que Pod acceda al servidor. MLflow 

   ```
   cat >mlflow-service-account.yaml <<EOF
   apiVersion: v1
   kind: ServiceAccount
   metadata:
     name: mlflow-service-account
     namespace: kubeflow
   EOF
   ```

   Ejecute el siguiente comando para que se aplique el clúster de EKS.

   ```
   kubectl apply -f mlflow-service-account.yaml
   ```

1. Cree una asociación de Pod Identity.

   ```
   aws eks create-pod-identity-association \
       --cluster-name EKS_CLUSTER_NAME \
       --role-arn arn:aws:iam::111122223333:role/hyperpod-mlflow-role \
       --namespace kubeflow \
       --service-account mlflow-service-account
   ```

**Para recopilar métricas de los trabajos de formación y enviarlas al servidor MLflow**

Los científicos de datos deben configurar el script de entrenamiento y la imagen del docker para emitir métricas al MLflow servidor.

1. Añada las siguientes líneas al principio del script de entrenamiento.

   ```
   import mlflow
   
   # Set the Tracking Server URI using the ARN of the Tracking Server you created
   mlflow.set_tracking_uri(os.environ['MLFLOW_TRACKING_ARN'])
   # Enable autologging in MLflow
   mlflow.autolog()
   ```

1. Cree una imagen de Docker con el script de entrenamiento y envíela a Amazon ECR. Obtenga el ARN del contenedor de ECR. Para obtener más información sobre cómo crear y enviar una imagen de Docker, consulte [Pushing a Docker image](https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-push-ecr-image.html) en la *Guía del usuario de ECR*.
**sugerencia**  
Asegúrese de añadir la instalación de los paquetes de mlflow y sagemaker-mlflow en el archivo de Docker. Para obtener más información sobre la instalación de los paquetes, los requisitos y las versiones compatibles de los paquetes, consulte [Instalación MLflow y el MLflow complemento SageMaker AI](https://docs.aws.amazon.com/sagemaker/latest/dg/mlflow-track-experiments.html#mlflow-track-experiments-install-plugin).

1. Añada una cuenta de servicio a los pods del trabajo de entrenamiento para darles acceso a `hyperpod-mlflow-role`. Esto permite que los Pods llamen MLflow APIs. Ejecute la siguiente plantilla de envío de trabajos de SageMaker HyperPod CLI. Cree esto con el nombre del archivo `mlflow-test.yaml`.

   ```
   defaults:
    - override hydra/job_logging: stdout
   
   hydra:
    run:
     dir: .
    output_subdir: null
   
   training_cfg:
    entry_script: ./train.py
    script_args: []
    run:
     name: test-job-with-mlflow # Current run name
     nodes: 2 # Number of nodes to use for current training
     # ntasks_per_node: 1 # Number of devices to use per node
   cluster:
    cluster_type: k8s # currently k8s only
    instance_type: ml.c5.2xlarge
    cluster_config:
     # name of service account associated with the namespace
     service_account_name: mlflow-service-account
     # persistent volume, usually used to mount FSx
     persistent_volume_claims: null
     namespace: kubeflow
     # required node affinity to select nodes with SageMaker HyperPod
     # labels and passed health check if burn-in enabled
     label_selector:
         required:
             sagemaker.amazonaws.com/node-health-status:
                 - Schedulable
         preferred:
             sagemaker.amazonaws.com/deep-health-check-status:
                 - Passed
         weights:
             - 100
     pullPolicy: IfNotPresent # policy to pull container, can be Always, IfNotPresent and Never
     restartPolicy: OnFailure # restart policy
   
   base_results_dir: ./result # Location to store the results, checkpoints and logs.
   container: 111122223333.dkr.ecr.us-west-2.amazonaws.com/tag # container to use
   
   env_vars:
    NCCL_DEBUG: INFO # Logging level for NCCL. Set to "INFO" for debug information
    MLFLOW_TRACKING_ARN: arn:aws:sagemaker:us-west-2:11112223333:mlflow-tracking-server/tracking-server-name
   ```

1. Inicie el trabajo con el archivo YAML de la siguiente manera.

   ```
   hyperpod start-job --config-file /path/to/mlflow-test.yaml
   ```

1. Genere una URL prefirmada para el servidor MLflow de seguimiento. Puede abrir el enlace en el navegador y empezar a realizar un seguimiento del trabajo de entrenamiento.

   ```
   aws sagemaker create-presigned-mlflow-tracking-server-url \                          
       --tracking-server-name "tracking-server-name" \
       --session-expiration-duration-in-seconds 1800 \
       --expires-in-seconds 300 \
       --region region
   ```

# Observabilidad de clústeres y tareas
<a name="sagemaker-hyperpod-eks-cluster-observability-cluster"></a>

Existen dos opciones para monitorear SageMaker HyperPod los clústeres:

**El complemento de SageMaker HyperPod observabilidad**: SageMaker HyperPod proporciona un out-of-the-box panel de control completo que le brinda información sobre las tareas de desarrollo del modelo básico (FM) y los recursos del clúster. Esta solución de observabilidad unificada publica automáticamente métricas clave en Amazon Managed Service para Prometheus y las muestra en los paneles de Amazon Managed Grafana. Los paneles están optimizados específicamente para el desarrollo del FM y abarcan en profundidad el estado del hardware, la utilización de los recursos y el rendimiento de las tareas. Con este complemento, puede consolidar los datos de estado y rendimiento de NVIDIA DCGM, los exportadores de nodos de Kubernetes a nivel de instancia, el adaptador Elastic Fabric, los sistemas de archivos integrados, Kubernetes, Kueue y los operadores de tareas. APIs SageMaker HyperPod 

**Amazon CloudWatch Insights**: Amazon CloudWatch Insights recopila métricas para los recursos informáticos, como la CPU, la memoria, el disco y la red. Información de contenedores también proporciona información de diagnóstico, como, por ejemplo, errores de reinicio de contenedores, para ayudarlo a aislar problemas y solucionarlos rápidamente. También puede configurar CloudWatch alarmas en las métricas que recopila Container Insights.

**Topics**
+ [SageMaker HyperPod Observabilidad de Amazon con Amazon Managed Grafana y Amazon Managed Service para Prometheus](sagemaker-hyperpod-observability-addon.md)
+ [Observabilidad con Amazon CloudWatch](sagemaker-hyperpod-eks-cluster-observability-cluster-cloudwatch-ci.md)

# SageMaker HyperPod Observabilidad de Amazon con Amazon Managed Grafana y Amazon Managed Service para Prometheus
<a name="sagemaker-hyperpod-observability-addon"></a>

Amazon SageMaker HyperPod (SageMaker HyperPod) proporciona un out-of-the-box panel de control completo que le proporciona información sobre las tareas de desarrollo del modelo básico (FM) y los recursos del clúster. Esta solución de observabilidad unificada publica automáticamente métricas clave en Amazon Managed Service para Prometheus y las muestra en los paneles de Amazon Managed Grafana. Los paneles están optimizados específicamente para el desarrollo del FM y abarcan en profundidad el estado del hardware, la utilización de los recursos y el rendimiento de las tareas. Con este complemento, puede consolidar los datos de estado y rendimiento de NVIDIA DCGM, los exportadores de nodos de Kubernetes a nivel de instancia, el adaptador Elastic Fabric, los sistemas de archivos integrados, Kubernetes, APIs Kueue y los operadores de tareas. SageMaker HyperPod 

## Compatibilidad con grupos de instancias restringidos (RIG)
<a name="hyperpod-observability-addon-rig-support"></a>

El complemento de observabilidad también admite clústeres que contienen grupos de instancias restringidos. En los clústeres de RIG, el complemento adapta automáticamente su estrategia de implementación para cumplir con las restricciones de seguridad y aislamiento de la red de los nodos restringidos. DaemonSet los componentes (exportador de nodos, exportador de DCGM, exportador EFA, monitor Neuron y colector de nodos) se ejecutan tanto en nodos estándar como restringidos. Los componentes de despliegue (recopilador central, Kube State Metrics y Training Metrics Agent) se programan con una lógica que reconoce los límites para respetar el aislamiento de la red entre los grupos de instancias. La recopilación de registros de contenedores con Fluent Bit no está disponible en los nodos restringidos.

Para obtener información sobre cómo configurar el complemento en clústeres con grupos de instancias restringidos, consulte[Configuración del complemento de SageMaker HyperPod observabilidad](hyperpod-observability-addon-setup.md).

**Topics**
+ [Compatibilidad con grupos de instancias restringidos (RIG)](#hyperpod-observability-addon-rig-support)
+ [Configuración del complemento de SageMaker HyperPod observabilidad](hyperpod-observability-addon-setup.md)
+ [Paneles de SageMaker HyperPod observabilidad de Amazon](hyperpod-observability-addon-viewing-dashboards.md)
+ [Explorando las métricas de los SageMaker HyperPod clústeres en Amazon Managed Grafana](hyperpod-observability-addon-exploring-metrics.md)
+ [Personalización de las métricas, los paneles y las alertas del SageMaker HyperPod clúster](hyperpod-observability-addon-customizing.md)
+ [Crear métricas de clúster personalizadas SageMaker HyperPod](hyperpod-observability-addon-custom-metrics.md)
+ [SageMaker HyperPod métricas de clúster](hyperpod-observability-cluster-metrics.md)
+ [Alertas preconfiguradas](hyperpod-observability-addon-alerts.md)
+ [Solución de problemas con el complemento de SageMaker HyperPod observabilidad de Amazon](hyperpod-observability-addon-troubleshooting.md)

# Configuración del complemento de SageMaker HyperPod observabilidad
<a name="hyperpod-observability-addon-setup"></a>

En la siguiente lista se indican los requisitos previos para configurar el complemento de observabilidad.

Para que las métricas de tu clúster de Amazon SageMaker HyperPod (SageMaker HyperPod) se envíen a un espacio de trabajo de Amazon Managed Service for Prometheus y, de forma opcional, verlas en Amazon Managed Grafana, adjunta primero las siguientes políticas y permisos gestionados a tu rol de consola.
+ Para usar Amazon Managed Grafana, habilite AWS IAM Identity Center (IAM Identity Center) en un lugar donde esté disponible Región de AWS Amazon Managed Grafana. Para obtener instrucciones, consulte [Getting started with IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/getting-started.html) en la *Guía del usuario de AWS IAM Identity Center *. Para ver una lista de Regiones de AWS donde está disponible Amazon Managed Grafana, consulte [Regiones admitidas](https://docs.aws.amazon.com/grafana/latest/userguide/what-is-Amazon-Managed-Service-Grafana.html#AMG-supported-Regions) en la *Guía del usuario de Amazon Managed Grafana*.
+ Cree al menos un usuario en IAM Identity Center.
+ Asegúrese de que el complemento [Agente de Pod Identity de Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/workloads-add-ons-available-eks.html#add-ons-pod-id) esté instalado en su clúster de Amazon EKS. El complemento Amazon EKS Pod Identity Agent permite que el complemento de SageMaker HyperPod observabilidad obtenga las credenciales para interactuar con Amazon Managed Service for CloudWatch Prometheus y Logs. Para comprobar si su clúster de Amazon EKS tiene el complemento, vaya a la consola de Amazon EKS y consulte la pestaña **Complementos** de su clúster. Para obtener más información sobre cómo instalar el complemento si no está instalado, consulte [Creación de complemento (Consola de administración de AWS)](https://docs.aws.amazon.com/eks/latest/userguide/creating-an-add-on.html#_create_add_on_console) en la *Guía del usuario de Amazon EKS*.
**nota**  
El agente de identidad de Amazon EKS Pod es obligatorio para los grupos de instancias estándar. En el caso de los grupos de instancias restringidos (RIG), el agente de identidad del pod no está disponible debido a restricciones de aislamiento de la red. La función de IAM de ejecución del grupo de instancias del clúster se utiliza para interactuar con Amazon Managed Service for Prometheus. Para obtener información sobre cómo configurar ese rol, consulte. [Requisitos previos adicionales para los grupos de instancias restringidos](#hyperpod-observability-addon-rig-prerequisites)
+ Asegúrese de tener al menos un nodo en el SageMaker HyperPod clúster antes de instalar el complemento de SageMaker HyperPod observabilidad. El tipo de instancia de Amazon EC2 más pequeño que funciona en este caso es `4xlarge`. Este requisito de tamaño mínimo de nodo garantiza que el nodo pueda alojar todos los pods que cree el complemento de SageMaker HyperPod observabilidad junto con cualquier otro pod que ya se esté ejecutando en el clúster.
+ Añada las siguientes políticas y permisos a su rol.
  + [AWS política gestionada: AmazonSageMakerHyperPodObservabilityAdminAccess](security-iam-awsmanpol-AmazonSageMakerHyperPodObservabilityAdminAccess.md)
  + [AWS política gestionada: V2 AWSGrafana WorkspacePermissionManagement](https://docs.aws.amazon.com/grafana/latest/userguide/security-iam-awsmanpol.html#security-iam-awsmanpol-AWSGrafanaWorkspacePermissionManagementV2)
  + [AWS política gestionada: AmazonSageMakerFullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSageMakerFullAccess.html)
  + Permisos adicionales para configurar los roles de IAM necesarios para acceder a los complementos de Amazon Managed Grafana y Amazon Elastic Kubernetes Service:

------
#### [ JSON ]

****  

    ```
    {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
            {
                "Sid": "CreateRoleAccess",
                "Effect": "Allow",
                "Action": [
                    "iam:CreateRole",
                    "iam:CreatePolicy",
                    "iam:AttachRolePolicy",
                    "iam:ListRoles"
                ],
                "Resource": [
                    "arn:aws:iam::*:role/service-role/AmazonSageMakerHyperPodObservabilityGrafanaAccess*",
                    "arn:aws:iam::*:role/service-role/AmazonSageMakerHyperPodObservabilityAddonAccess*",
                    "arn:aws:iam::*:policy/service-role/HyperPodObservabilityAddonPolicy*",
                    "arn:aws:iam::*:policy/service-role/HyperPodObservabilityGrafanaPolicy*"
                ]
            }
        ]
    }
    ```

------
  + Se necesitan permisos adicionales para administrar los usuarios de IAM Identity Center para Amazon Managed Grafana:

------
#### [ JSON ]

****  

    ```
    {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
            {
                "Sid": "SSOAccess",
                "Effect": "Allow",
                "Action": [
                    "sso:ListProfileAssociations",
                    "sso-directory:SearchUsers",
                    "sso-directory:SearchGroups",
                    "sso:AssociateProfile",
                    "sso:DisassociateProfile"
                ],
                "Resource": [
                    "*"
                ]
            }
        ]
    }
    ```

------

## Requisitos previos adicionales para los grupos de instancias restringidos
<a name="hyperpod-observability-addon-rig-prerequisites"></a>

Si tu clúster contiene grupos de instancias restringidos, la función de ejecución del grupo de instancias debe tener permisos para escribir métricas en Amazon Managed Service for Prometheus. Cuando utilizas la **configuración rápida** para crear tu clúster con la observabilidad habilitada, estos permisos se añaden automáticamente a la función de ejecución.

Si utilizas una **configuración personalizada** o agregas la observabilidad a un clúster de RIG existente, asegúrate de que la función de ejecución de cada grupo de instancias restringido tenga los siguientes permisos:

```
{
    "Version": "2012-10-17", 		 	 	 
    "Statement": [
        {
            "Sid": "PrometheusAccess",
            "Effect": "Allow",
            "Action": "aps:RemoteWrite",
            "Resource": "arn:aws:aps:us-east-1:account_id:workspace/workspace-ID"
        }
    ]
}
```

Sustituya *us-east-1* y *workspace-ID* por su Región de AWS ID de cuenta y el ID de espacio de trabajo de Amazon Managed Service for Prometheus. *account\$1id*

Cuando se haya asegurado de que cumple los requisitos anteriores, ya podrá instalar el complemento de observabilidad.

**Cómo instalar el complemento de observabilidad rápidamente**

1. Abre la consola Amazon SageMaker AI en [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

1. Vaya a la página de detalles de su clúster.

1. En la pestaña **Panel** de control, busca el complemento denominado **HyperPod Monitoring & Observability** y selecciona **Instalación rápida**.

**Cómo instalar el complemento de observabilidad de forma personalizada**

1. Vaya a la página de detalles de su clúster.

1. En la pestaña **Panel** de control, busca el complemento denominado **HyperPod Monitoring & Observability** y selecciona Instalación **personalizada**.

1. Especifique las categorías de métricas que desee ver. Para obtener más información sobre estas categorías de métricas, consulte [SageMaker HyperPod métricas de clúster](hyperpod-observability-cluster-metrics.md).

1. Especifica si quieres activar Amazon CloudWatch Logs.

1. Especifique si desea que el servicio cree un nuevo espacio de trabajo de Amazon Managed Service para Prometheus.

1. Para poder ver las métricas en los paneles de Amazon Managed Grafana, marque la casilla **Utilice un espacio de trabajo de Grafana gestionado por Amazon**. Puede especificar su propio espacio de trabajo o dejar que el servicio cree uno nuevo. 
**nota**  
Amazon Managed Grafana no está disponible en todos los países Regiones de AWS en los que está disponible Amazon Managed Service for Prometheus. Sin embargo, puede configurar un espacio de trabajo de Grafana en cualquier Región de AWS y especificar que tome los datos de las métricas de un espacio de trabajo de Prometheus que se encuentre en otra Región de AWS. Para obtener más información, consulte [Uso de la configuración del origen de datos de AWS para agregar Amazon Managed Service para Prometheus como origen de datos](https://docs.aws.amazon.com/grafana/latest/userguide/AMP-adding-AWS-config.html) y [Conexión a Amazon Managed Service para Prometheus y a los orígenes de datos de Prometheus de código abierto](https://docs.aws.amazon.com/grafana/latest/userguide/prometheus-data-source.html). 

# Paneles de SageMaker HyperPod observabilidad de Amazon
<a name="hyperpod-observability-addon-viewing-dashboards"></a>

En este tema se describe cómo ver los paneles de métricas de tus clústeres de Amazon SageMaker HyperPod (SageMaker HyperPod) y cómo añadir nuevos usuarios a un panel. En este tema también se describen los distintos tipos de panel.

## Acceso a paneles
<a name="hyperpod-observability-addon-accessing-dashboards"></a>

Para ver las métricas de su SageMaker HyperPod clúster en Amazon Managed Grafana, lleve a cabo los siguientes pasos:

1. Abre la consola Amazon SageMaker AI en [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

1. Vaya a la página de detalles de su clúster.

1. En la pestaña **Panel** de control, localice la sección **HyperPod Observabilidad** y elija **Abrir panel en Grafana**.

## Adición de nuevos usuarios a un espacio de trabajo de Amazon Managed Grafana
<a name="hyperpod-observability-addon-adding-users"></a>

Para obtener más información sobre cómo añadir usuarios a un espacio de trabajo de Amazon Managed Grafana, consulte [Use AWS IAM Identity Center with your Amazon Managed Grafana workspace](https://docs.aws.amazon.com/grafana/latest/userguide/authentication-in-AMG-SSO.html) en la *Guía del usuario de Amazon Managed Grafana*.

## Paneles de observabilidad
<a name="hyperpod-observability-addon-dashboards.title"></a>

El complemento de SageMaker HyperPod observabilidad proporciona seis paneles interconectados en tu espacio de trabajo predeterminado de Amazon Managed Grafana. Cada panel proporciona información detallada sobre los diferentes recursos y tareas de los clústeres para distintos usuarios, como científicos de datos, ingenieros de machine learning y administradores.

### Panel de tareas
<a name="hyperpod-observability-addon-task-dashboard"></a>

El panel de tareas proporciona una supervisión y visualización exhaustivas de las métricas de utilización de los recursos para las tareas. SageMaker HyperPod El panel principal muestra una tabla detallada que agrupa el uso de los recursos por tareas principales y muestra el uso de la CPU, la GPU y la memoria en los distintos pods. Los gráficos interactivos de series temporales realizan un seguimiento del uso de la CPU, el consumo de memoria del sistema, los porcentajes de uso de la GPU y el uso de la memoria de la GPU en determinados pods, lo que le permite supervisar las tendencias de rendimiento a lo largo del tiempo. El panel incluye potentes funciones de filtrado a través de variables como el nombre del clúster, el espacio de nombres, el tipo de tarea y los pods específicos, lo que facilita el análisis detallado de cargas de trabajo específicas. Esta solución de monitoreo es esencial para optimizar la asignación de recursos y mantener el rendimiento de las cargas de trabajo de aprendizaje automático. SageMaker HyperPod

### Panel de entrenamiento
<a name="hyperpod-observability-addon-training-dashboard"></a>

El panel de entrenamiento proporciona un seguimiento exhaustivo de las métricas de estado, fiabilidad y administrado de fallos de los trabajos de entrenamiento. El panel incluye indicadores clave de rendimiento, como el recuento de tareas creadas, las tasas de éxito y los porcentajes de tiempo de actividad, además del seguimiento detallado de los reinicios automáticos y manuales. Además, muestra con detalle los patrones de fallos con gráficos circulares y mapas térmicos que desglosan los incidentes por tipo y latencia de remediación, lo que permite identificar los problemas recurrentes y optimizar la fiabilidad de las tareas. Esta interfaz incluye supervisión en tiempo real de métricas críticas, como los tiempos de recuperación del sistema y las latencias de detección de fallos, lo que la convierte en una herramienta esencial para mantener una alta disponibilidad de las cargas de trabajo de entrenamiento. Además, la ventana de seguimiento de 24 horas del panel proporciona un contexto histórico para analizar las tendencias y los patrones del rendimiento de los trabajos de entrenamiento, lo que ayuda a los equipos a abordar de forma proactiva los posibles problemas antes de que afecten a las cargas de trabajo de producción.

### Panel de inferencia
<a name="hyperpod-observability-addon-inference-dashboard"></a>

El panel de inferencia proporciona una supervisión exhaustiva del rendimiento de la implementación del modelo y las métricas de estado en múltiples dimensiones. Incluye una descripción detallada de las implementaciones activas, la supervisión en tiempo real de las tasas de solicitudes, los porcentajes de éxito y las métricas de latencia, lo que le permite realizar un seguimiento del rendimiento del servicio de modelos e identificar posibles cuellos de botella. El panel incluye paneles especializados tanto de las métricas de inferencia generales como de las métricas específicas de token de los modelos de lenguaje, como el tiempo transcurrido hasta el primer token (TTFT) y el rendimiento del token, por lo que es especialmente importante para supervisar las implementaciones de modelos de lenguaje de gran tamaño. Además, proporciona información sobre la infraestructura mediante el seguimiento de la asignación de nodos y pods, al tiempo que ofrece funciones detalladas de análisis de errores para ayudar a mantener una alta disponibilidad y un alto rendimiento de las cargas de trabajo de inferencia.

### Panel del clúster
<a name="hyperpod-observability-addon-cluster-dashboard"></a>

El panel de control del clúster proporciona una visión integral del estado y el rendimiento del clúster, y ofrece visibilidad en tiempo real de los recursos de cómputo, memoria, red y almacenamiento en todo su entorno Amazon SageMaker HyperPod (SageMaker HyperPod). Puede ver, de un vistazo, las métricas más importantes, como el total de instancias, el uso de la GPU, el uso de la memoria y el rendimiento de la red, a través de una interfaz intuitiva que actualiza automáticamente los datos cada pocos segundos. El panel está organizado en secciones lógicas: comienza con una descripción general del clúster que muestra las métricas clave, así como el porcentaje de instancias en buen estado y el recuento total de recursos, seguida de secciones detalladas sobre el rendimiento de la GPU, el uso de la memoria, las estadísticas de red y las métricas de almacenamiento. Cada sección incluye gráficos y paneles interactivos que le permiten desglosar métricas específicas, con intervalos de tiempo personalizables y opciones de filtrado por nombre de clúster, instancia o ID de GPU.

### Panel del sistema de archivos
<a name="hyperpod-observability-addon-filesystem-dashboard"></a>

El panel del sistema de archivos proporciona una visibilidad completa de las métricas de rendimiento y estado del sistema de archivos (Amazon FSx for Lustre). El panel muestra las métricas de almacenamiento fundamentales, como la capacidad libre, los ahorros en la deduplicación, la CPU/memory utilización, las IOPS del disco, el rendimiento y las conexiones de los clientes en múltiples visualizaciones. Le permite monitorear tanto los indicadores de rendimiento a nivel del sistema, como el uso de la CPU y la memoria, como las métricas específicas del almacenamiento, como las operaciones y los patrones de uso del disco. read/write La interfaz incluye funciones de supervisión de alertas y gráficos detallados de series temporales para hacer un seguimiento de las tendencias del rendimiento a lo largo del tiempo, por lo que es muy importante para el mantenimiento proactivo y la planificación de la capacidad. Además, gracias a su amplia cobertura de métricas, el panel ayuda a identificar posibles cuellos de botella, a optimizar el rendimiento del almacenamiento y a garantizar un funcionamiento fiable del sistema de archivos para las cargas de trabajo. SageMaker HyperPod 

### Panel de particiones de GPU
<a name="hyperpod-observability-addon-gpu-partition-dashboard"></a>

Para monitorear las métricas específicas de las particiones de la GPU cuando se utilizan configuraciones de GPU de varias instancias (MIG), debe instalar o actualizar a la última versión del complemento Observability. SageMaker HyperPod Este complemento proporciona capacidades de monitoreo integrales, que incluyen métricas específicas de MIG, como el recuento de particiones, el uso de memoria y el uso de cómputo por partición de GPU.

Si ya tienes instalado SageMaker HyperPod Observability pero necesitas compatibilidad con las métricas MIG, solo tienes que actualizar el complemento a la última versión. Este proceso no es disruptivo y mantiene la configuración de monitoreo existente.

SageMaker HyperPod expone automáticamente las métricas específicas de MIG, que incluyen:
+ `nvidia_mig_instance_count`: Número de instancias MIG por perfil
+ `nvidia_mig_memory_usage`: Utilización de memoria por instancia MIG
+ `nvidia_mig_compute_utilization`: Utilización de cómputo por instancia MIG

### Panel de registros de clústeres
<a name="hyperpod-observability-addon-cluster-logs-dashboard"></a>

El panel de registros de clústeres proporciona una vista centralizada de CloudWatch los registros del SageMaker HyperPod clúster. El panel consulta el grupo de `/aws/sagemaker/Clusters/{cluster-name}/{cluster-id}` registros y muestra los eventos de registro con funciones de filtrado por ID de instancia, nombre del flujo de registro, nivel de registro (ERROR, WARN, INFO, DEBUG) y búsqueda de texto libre. El panel incluye una cronología de los eventos que muestra la distribución de los eventos del registro a lo largo del tiempo, un contador total de eventos, una cronología de los eventos buscados para filtrar los resultados y un panel de registros detallado con mensajes de registro completos, marcas de tiempo y metadatos del flujo de registro. Este panel se utiliza CloudWatch como fuente de datos y es útil para depurar los problemas del clúster, supervisar los eventos de estado de las instancias e investigar los fallos en las tareas de formación.

# Explorando las métricas de los SageMaker HyperPod clústeres en Amazon Managed Grafana
<a name="hyperpod-observability-addon-exploring-metrics"></a>

Tras conectar Amazon Managed Grafana a su espacio de trabajo de Amazon Managed Service para Prometheus, podrá utilizar el editor de consultas y las herramientas de visualización de Grafana para explorar los datos de las métricas. Amazon Managed Grafana ofrece varias formas de interactuar con los datos de Prometheus, como un editor de consultas completo para crear expresiones de PromQL, un navegador de métricas para descubrir las métricas y etiquetas disponibles, y funciones de creación de plantillas para crear paneles dinámicos. Puede realizar consultas de rango para visualizar datos de series temporales a lo largo de los períodos y consultas instantáneas para obtener los valores más recientes, con opciones para formatear los resultados como gráficos de series temporales, tablas o mapas térmicos. Para obtener más información detallada sobre la configuración de las consultas, el uso del navegador de métricas y el aprovechamiento de las características de las plantillas, consulte [Uso del origen de datos de Prometheus](https://docs.aws.amazon.com/grafana/latest/userguide/using-prometheus-datasource.html).

# Personalización de las métricas, los paneles y las alertas del SageMaker HyperPod clúster
<a name="hyperpod-observability-addon-customizing"></a>

Amazon Managed Grafana le permite crear paneles integrales que muestran sus datos a través de paneles que contienen consultas conectadas a sus orígenes de datos. Puede crear paneles desde cero, importar los existentes o exportar sus creaciones para compartirlos y hacer copias de seguridad. Los paneles de Grafana incluyen características dinámicas a través de las variables que reemplazan los valores con codificación rígida en las consultas, de manera que sus visualizaciones son más flexibles e interactivas. También puede mejorar sus paneles con características como anotaciones, paneles de biblioteca para reutilizarlos, administración del historial de versiones y enlaces personalizados para crear una solución completa de supervisión y observabilidad. Para obtener step-by-step instrucciones sobre cómo crear, importar, configurar y administrar paneles, consulte [Creación](https://docs.aws.amazon.com/grafana/latest/userguide/v10-dash-building-dashboards.html) de paneles.

# Crear métricas de clúster personalizadas SageMaker HyperPod
<a name="hyperpod-observability-addon-custom-metrics"></a>

El complemento de observabilidad Amazon SageMaker HyperPod (SageMaker HyperPod) proporciona cientos de métricas out-of-the-box de salud, rendimiento y eficiencia. Además de esas métricas, es posible que tenga que supervisar las métricas personalizadas específicas de sus aplicaciones o según sus necesidades empresariales que no se recopilan en las métricas predeterminadas, como los indicadores de rendimiento específicos del modelo, las estadísticas de procesamiento de datos o las mediciones específicas de la aplicación. Para abordar esta necesidad, puede implementar una recopilación de métricas personalizada OpenTelemetry mediante la integración de un fragmento de código de Python en su aplicación.

Para crear métricas personalizadas, primero ejecute el siguiente comando de shell para instalar los OpenTelemetry componentes principales necesarios para instrumentar las aplicaciones de Python para la observabilidad. Esta instalación hace posible que las aplicaciones de Python que se ejecutan en SageMaker HyperPod clústeres emitan datos de telemetría personalizados. El OpenTelemetry recopilador recopila esos datos y los envía a la infraestructura de observabilidad.

```
pip install opentelemetry-api opentelemetry-sdk opentelemetry-exporter-otlp-proto-grpc
```

El siguiente script de ejemplo configura una canalización de OpenTelemetry métricas que etiqueta automáticamente las métricas con la información de los nodos y los nodos, lo que garantiza una atribución adecuada dentro del clúster, y envía estas métricas a la pila de observabilidad SageMaker HyperPod integrada cada segundo. El script establece una conexión con el recopilador de SageMaker HyperPod métricas, configura los atributos de recursos adecuados para su identificación y proporciona una interfaz de medición a través de la cual se pueden crear varios tipos de métricas (contadores, indicadores o histogramas) para realizar un seguimiento de cualquier aspecto del rendimiento de la aplicación. Las métricas personalizadas se integran en los paneles de SageMaker HyperPod control junto con las métricas del sistema. Esta integración permite una observabilidad completa a través de una única interfaz en la que puede crear alertas, visualizaciones e informes personalizados para supervisar el perfil de rendimiento completo de su carga de trabajo.

```
import os
from opentelemetry import metrics
from opentelemetry.exporter.otlp.proto.grpc.metric_exporter import OTLPMetricExporter
from opentelemetry.sdk.metrics import MeterProvider
from opentelemetry.sdk.metrics.export import PeriodicExportingMetricReader
from opentelemetry.sdk.resources import Resource

# Get hostname/pod name
hostname = os.uname()[1]
node_name = os.getenv('NODE_NAME', 'unknown')

collector_endpoint = "hyperpod-otel-collector.hyperpod-observability:4317"

# Configure the OTLP exporter
exporter = OTLPMetricExporter(
    endpoint=collector_endpoint,
    insecure=True,
    timeout=5000  # 5 seconds timeout
)

reader = PeriodicExportingMetricReader(
    exporter,
    export_interval_millis=1000
)

resource = Resource.create({
    "service.name": "metric-test",
    "pod.name": hostname,
    "node.name": node_name
})

meter_provider = MeterProvider(
    metric_readers=[reader],
    resource=resource
)
metrics.set_meter_provider(meter_provider)

# Create a meter
meter = metrics.get_meter("test-meter")

# Create a counter
counter = meter.create_counter(
    name="test.counter",
    description="A test counter"
)

counter.add(1, {"pod": hostname, "node": node_name})
```

# SageMaker HyperPod métricas de clúster
<a name="hyperpod-observability-cluster-metrics"></a>

Amazon SageMaker HyperPod (SageMaker HyperPod) publica varias métricas en 9 categorías distintas en tu espacio de trabajo de Amazon Managed Service for Prometheus. No todas las métricas están activadas de forma predeterminada ni se muestran en el espacio de trabajo de Amazon Managed Grafana. En la siguiente tabla se muestra qué métricas están activas de forma predeterminada al instalar el complemento de observabilidad, qué categorías tienen métricas adicionales que se pueden activar para obtener información de clúster más detallada y dónde aparecen en el espacio de trabajo de Amazon Managed Grafana.


| Categoría métrica | ¿Activada de forma predeterminada? | ¿Hay métricas avanzadas adicionales disponibles? | ¿En qué paneles de Grafana está disponible? | 
| --- | --- | --- | --- | 
| Métricas de entrenamiento | Sí | Sí | Formación | 
| Métricas de inferencia | Sí | No | Inferencia | 
| Métricas de gobernanza de tareas | No | Sí | Ninguna. Consulte el espacio de trabajo de Amazon Managed Service para Prometheus para crear su propio panel. | 
| Métricas de escalado | No | Sí | Ninguna. Consulte el espacio de trabajo de Amazon Managed Service para Prometheus para crear su propio panel. | 
| Métricas de clúster | Sí | Sí | Clúster | 
| Métricas de la instancia | Sí | Sí | Clúster | 
| Métricas de computación acelerada | Sí | Sí | Tarea, clúster | 
| Métricas de red | No | Sí | Clúster | 
| Sistema de archivos | Sí | No | Sistema de archivos | 

En las siguientes tablas se describen las métricas disponibles para monitorizar su SageMaker HyperPod clúster, organizadas por categoría.

## Disponibilidad de las métricas en los grupos de instancias restringidos
<a name="hyperpod-observability-rig-metrics-availability"></a>

Cuando el clúster contiene grupos de instancias restringidos, la mayoría de las categorías de métricas están disponibles en los nodos restringidos, con las siguientes excepciones y consideraciones. También puedes configurar las alertas en cualquier métrica que desees.


| Categoría métrica | ¿Disponible en los nodos RIG? | Notas | 
| --- | --- | --- | 
| Métricas de entrenamiento | Sí | Se recopilan las métricas de los pods de Kubeflow y Kubernetes. Las métricas de KPI de entrenamiento avanzadas (del agente de métricas de entrenamiento) no están disponibles en los nodos de RIG. | 
| Métricas de inferencia | No | Los grupos de instancias restringidos no admiten cargas de trabajo de inferencia. | 
| Métricas de gobernanza de tareas | No | Las métricas de Kueue solo se recopilan de los nodos estándar, si los hay. | 
| Métricas de escalado | No | Las métricas de KEDA se recopilan únicamente de los nodos estándar, si los hay. | 
| Métricas de clúster | Sí | Están disponibles las métricas de Kube State y las métricas del servidor API. Kube State Metrics se programa preferentemente en nodos estándar, pero puede ejecutarse en nodos restringidos en clústeres exclusivos de RIG. | 
| Métricas de la instancia | Sí | Las métricas de Node Exporter y cAdvisor se recopilan en todos los nodos, incluidos los nodos restringidos. | 
| Métricas de computación acelerada | Sí | DCGM Exporter se ejecuta en nodos restringidos habilitados para la GPU. Neuron Monitor se ejecuta en nodos restringidos habilitados para Neuron cuando el modo avanzado está activado. | 
| Métricas de red | Sí | EFA Exporter se ejecuta en nodos restringidos habilitados para EFA cuando el modo avanzado está activado. | 
| Métricas del sistema de archivos | Sí | FSx para Lustre, las métricas de uso del clúster son compatibles con los grupos de instancias restringidos. | 

**nota**  
La recopilación de registros de contenedores con Fluent Bit no se implementa en nodos restringidos. Los registros de clúster de los nodos restringidos están disponibles a través de la SageMaker HyperPod plataforma, independientemente del complemento de observabilidad. Puede ver estos registros en el panel de registros de clústeres.

## Métricas de entrenamiento
<a name="hyperpod-observability-training-metrics"></a>

Utilice estas métricas para realizar un seguimiento del rendimiento de las tareas de entrenamiento ejecutadas en el SageMaker HyperPod clúster.


| Nombre o tipo de métrica | Description (Descripción) | ¿Activada de forma predeterminada? | Origen de la métrica | 
| --- | --- | --- | --- | 
| Métricas de Kubeflow | [https://github.com/kubeflow/entrenador](https://github.com/kubeflow/trainer) | Sí | Kubeflow | 
| Métricas del pod de Kubernetes | [https://github.com/kubernetes/kube-state-metrics](https://github.com/kubernetes/kube-state-metrics) | Sí | Kubernetes  | 
| training\$1uptime\$1percentage | Porcentaje del tiempo de entrenamiento del tamaño total de la ventana | No | SageMaker HyperPod operador de entrenamiento | 
| training\$1manual\$1recovery\$1count | Número total de reinicios manuales realizados en el trabajo | No | SageMaker HyperPod operador de formación | 
| training\$1manual\$1downtime\$1ms | Tiempo total en milisegundos durante el cual el trabajo ha estado inactivo debido a intervenciones manuales | No | SageMaker HyperPod operador de formación | 
| training\$1auto\$1recovery\$1count | Número total de recuperaciones automáticas | No | SageMaker HyperPod operador de formación | 
| training\$1auto\$1recovery\$1downtime | Tiempo total de sobrecarga de la infraestructura en milisegundos durante la recuperación de errores | No | SageMaker HyperPod operador de formación | 
| training\$1fault\$1count | Número total de errores detectados durante el entrenamiento | No | SageMaker HyperPod operador de formación | 
| training\$1fault\$1type\$1count | Distribución de los fallos por tipo | No | SageMaker HyperPod operador de formación | 
| training\$1fault\$1recovery\$1time\$1ms | Tiempo de recuperación en milisegundos para cada tipo de fallo | No | SageMaker HyperPod operador de formación | 
| training\$1time\$1ms | Tiempo total en milisegundos dedicado al entrenamiento real | No | SageMaker HyperPod operador de formación | 

## Métricas de inferencia
<a name="hyperpod-observability-inference-metrics"></a>

Utilice estas métricas para realizar un seguimiento del rendimiento de las tareas de inferencia en el SageMaker HyperPod clúster.


| Nombre o tipo de métrica | Description (Descripción) | ¿Activada de forma predeterminada? | Origen de la métrica | 
| --- | --- | --- | --- | 
| model\$1invocations\$1total | Número total de solicitudes de invocación realizadas al modelo | Sí | SageMaker HyperPod operador de inferencia | 
| model\$1errors\$1total | Número total de errores al invocar el modelo | Sí | SageMaker HyperPod operador de inferencia | 
| model\$1concurrent\$1requests | Solicitudes al modelo simultáneas activas | Sí | SageMaker HyperPod operador de inferencia | 
| model\$1latency\$1milliseconds | Latencia de invocación del modelo en milisegundos | Sí | SageMaker HyperPod operador de inferencia | 
| model\$1ttfb\$1milliseconds | Latencia del modelo con respecto al primer byte en milisegundos | Sí | SageMaker HyperPod operador de inferencia | 
| TGI | Estas métricas se pueden utilizar para supervisar el rendimiento de TGI, escalar automáticamente la implementación y ayudar a identificar los cuellos de botella. Para obtener una lista detallada de las métricas, consulte [https://github.com/deepjavalibrary/djl- serving/blob/master/prometheus/README .md.](https://github.com/deepjavalibrary/djl-serving/blob/master/prometheus/README.md) | Sí | Contenedor de modelos | 
| LMI | Estas métricas se pueden utilizar para supervisar el rendimiento de LMI y ayudar a identificar los cuellos de botella. Para obtener una lista detallada de las métricas, consulta [https://github.com/deepjavalibrary/djl](https://github.com/deepjavalibrary/djl-serving/blob/master/prometheus/README.md) - .md. serving/blob/master/prometheus/README | Sí | Contenedor de modelos | 

## Métricas de gobernanza de tareas
<a name="hyperpod-observability-task-governance-metrics"></a>

Utilice estas métricas para supervisar la gobernanza de las tareas y la asignación de recursos en el SageMaker HyperPod clúster.


| Nombre o tipo de métrica | Description (Descripción) | ¿Activada de forma predeterminada? | Origen de la métrica | 
| --- | --- | --- | --- | 
| Kueue | Consulte [https://kueue.sigs.k8s. io/docs/reference/metrics](https://kueue.sigs.k8s.io/docs/reference/metrics/)/. | No | Kueue | 

## Métricas de escalado
<a name="hyperpod-observability-scaling-metrics"></a>

Usa estas métricas para monitorear el comportamiento y el rendimiento del autoscalamiento en el SageMaker HyperPod clúster.


| Nombre o tipo de métrica | Description (Descripción) | ¿Activada de forma predeterminada? | Origen de la métrica | 
| --- | --- | --- | --- | 
| Métricas del KEDA Operator | Consulte [https://keda. sh/docs/2.17/integrations/prometheus/\$1operator](https://keda.sh/docs/2.17/integrations/prometheus/#operator). | No | Escalado automático basado en eventos de Kubernetes (KEDA) | 
| Métricas de KEDA Webhooks | Consulte [https://keda. sh/docs/2.17/integrations/prometheus/\$1admission -webhooks](https://keda.sh/docs/2.17/integrations/prometheus/#admission-webhooks). | No | Escalado automático basado en eventos de Kubernetes (KEDA) | 
| Métricas del servidor de KEDA Metrics | [Consulte https://keda. sh/docs/2.17/integrations/prometheus/\$1metrics -server](https://keda.sh/docs/2.17/integrations/prometheus/#metrics-server). | No | Escalado automático basado en eventos de Kubernetes (KEDA) | 

## Métricas de clúster
<a name="hyperpod-observability-cluster-health-metrics"></a>

Utilice estas métricas para supervisar el estado general del clúster y la asignación de recursos.


| Nombre o tipo de métrica | Description (Descripción) | ¿Activada de forma predeterminada? | Origen de la métrica | 
| --- | --- | --- | --- | 
| Estado del clúster | Métricas del servidor de la API de Kubernetes. Consulte [https://kubernetes. io/docs/reference/instrumentation/metrics](https://kubernetes.io/docs/reference/instrumentation/metrics/)/. | Sí | Kubernetes  | 
| Kubestate | Consulte [https://github.com/kubernetes/kube-state-metrics/tree/main/docs\$1default -resources](https://github.com/kubernetes/kube-state-metrics/tree/main/docs#default-resources). | Limitado | Kubernetes  | 
| KubeState Avanzado | Consulte [https://github.com/kubernetes/kube-state-metrics/tree/main/docs\$1optional -resources](https://github.com/kubernetes/kube-state-metrics/tree/main/docs#optional-resources). | No | Kubernetes  | 

## Métricas de la instancia
<a name="hyperpod-observability-instance-metrics"></a>

Utilice estas métricas para supervisar el rendimiento y el estado de las instancias individuales.


| Nombre o tipo de métrica | Description (Descripción) | ¿Activada de forma predeterminada? | Origen de la métrica | 
| --- | --- | --- | --- | 
| Métricas de nodos | ¿Ves [https://github.com/prometheus/node\$1exporter? readme-ov-filetab= \$1 enabled-by-default](https://github.com/prometheus/node_exporter?tab=readme-ov-file#enabled-by-default). | Sí | Kubernetes  | 
| Métricas de contenedores | Métricas de contenedores expuestas por Cadvisor. Consulte [https://github.com/google/cadvisor](https://github.com/google/cadvisor). | Sí | Kubernetes  | 

## Métricas de computación acelerada
<a name="hyperpod-observability-accelerated-compute-metrics"></a>

Utilice estas métricas para supervisar el rendimiento, el estado y la utilización de los dispositivos de computación acelerada individuales de su clúster.

**nota**  
Cuando la partición de GPU con MIG (GPU de instancias múltiples) está habilitada en el clúster, las métricas de DCGM proporcionan automáticamente una granularidad a nivel de partición para monitorear instancias MIG individuales. Cada partición MIG se expone como un dispositivo de GPU independiente con sus propias métricas de temperatura, potencia, uso de memoria y actividad informática. Esto le permite realizar un seguimiento del uso y el estado de los recursos de cada partición de la GPU de forma independiente, lo que permite una supervisión precisa de las cargas de trabajo que se ejecutan en recursos fraccionados de la GPU. Para obtener más información sobre la configuración de la partición de la GPU, consulte. [Uso de particiones de GPU en Amazon SageMaker HyperPod](sagemaker-hyperpod-eks-gpu-partitioning.md)


| Nombre o tipo de métrica | Description (Descripción) | ¿Activada de forma predeterminada? | Origen de la métrica | 
| --- | --- | --- | --- | 
| NVIDIA GPU | Métricas de DCGM. Consulte [https://github.com/NVIDIA/dcgm- -metrics-included.csv. exporter/blob/main/etc/dcp](https://github.com/NVIDIA/dcgm-exporter/blob/main/etc/dcp-metrics-included.csv) | Limitado |  NVIDIA Data Center GPU Manager (DCGM)  | 
|  NVIDIA GPU (avanzado)  | Métricas de DCGM que se comentan en el siguiente archivo CSV:[https://github.com/NVIDIA/dcgm- -metrics-included.csv exporter/blob/main/etc/dcp](https://github.com/NVIDIA/dcgm-exporter/blob/main/etc/dcp-metrics-included.csv) | No |  NVIDIA Data Center GPU Manager (DCGM)  | 
| AWS Trainio | Métricas de Neuron. Consulte [https://awsdocs-neuron.readthedocs-hosted.com/en/latest/tools/neuron-sys-tools/neuron- .html\$1 monitor-user-guide](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/tools/neuron-sys-tools/neuron-monitor-user-guide.html#neuron-monitor-nc-counters). neuron-monitor-nc-counters | No | AWS Monitor de neuronas | 

## Métricas de red
<a name="hyperpod-observability-network-metrics"></a>

Utilice estas métricas para supervisar el rendimiento y el estado de los Elastic Fabric Adapter (EFA) de su clúster.


| Nombre o tipo de métrica | Description (Descripción) | ¿Activada de forma predeterminada? | Origen de la métrica | 
| --- | --- | --- | --- | 
| EFA | Véase [https://github.com/aws-samples/awsome-distributed-training//blob/main/4.validation\$1and\$1observability/3.efa-node-exporter/README.md.](https://github.com/aws-samples/awsome-distributed-training/blob/main/4.validation_and_observability/3.efa-node-exporter/README.md) | No | Elastic Fabric Adapter | 

## Métricas del sistema de archivos
<a name="hyperpod-observability-file-system-metrics"></a>


| Nombre o tipo de métrica | Description (Descripción) | ¿Activada de forma predeterminada? | Origen de la métrica | 
| --- | --- | --- | --- | 
| Sistema de archivos | Métricas de Amazon FSx for Lustre: CloudWatch[Monitorización con Amazon CloudWatch](https://docs.aws.amazon.com/fsx/latest/LustreGuide/monitoring-cloudwatch.html). | Sí | Amazon FSx para Lustre | 

# Alertas preconfiguradas
<a name="hyperpod-observability-addon-alerts"></a>

El complemento de observabilidad Amazon SageMaker HyperPod (SageMaker HyperPod) habilita alertas predeterminadas para el clúster y las cargas de trabajo que le notifican cuando el sistema detecta indicadores tempranos comunes de bajo rendimiento del clúster. Estas alertas se definen en el sistema de alertas integrado de Amazon Managed Grafana. Para obtener más información sobre cómo modificar estas alertas preconfiguradas o crear alertas nuevas, consulte [Alertas en la versión 10 de Grafana](https://docs.aws.amazon.com/grafana/latest/userguide/v10-alerts.html) en la *Guía del usuario de Amazon Managed Grafana*. El siguiente archivo YAML muestra las alertas predeterminadas.

```
groups:
- name: sagemaker_hyperpod_alerts
  rules:
  # GPU_TEMP_ABOVE_80C
  - alert: GPUHighTemperature
    expr: DCGM_FI_DEV_GPU_TEMP > 80
    for: 5m
    labels:
      severity: warning
    annotations:
      summary: "GPU Temperature Above 80C"
      description: "GPU {{ $labels.gpu }} temperature is {{ $value }}°C."

  # GPU_TEMP_ABOVE_85C  
  - alert: GPUCriticalTemperature  
    expr: DCGM_FI_DEV_GPU_TEMP > 85
    for: 1m
    labels:
      severity: critical
    annotations:
      summary: "GPU Temperature Above 85C"
      description: "GPU {{ $labels.gpu }} temperature is {{ $value }}°C."

  # GPU_MEMORY_ERROR
  # Any ECC double-bit errors indicate serious memory issues requiring immediate attention
  - alert: GPUMemoryErrorDetected
    expr: DCGM_FI_DEV_ECC_DBE_VOL_TOTAL > 0 or DCGM_FI_DEV_ECC_DBE_AGG_TOTAL > DCGM_FI_DEV_ECC_DBE_AGG_TOTAL offset 5m
    labels:
      severity: critical
    annotations:
      summary: "GPU ECC Double-Bit Error Detected"
      description: "GPU {{ $labels.gpu }} has detected ECC double-bit errors."

  # GPU_POWER_WARNING
  # Sustained power limit violations can impact performance and stability
  - alert: GPUPowerViolation
    expr: DCGM_FI_DEV_POWER_VIOLATION > 100
    for: 5m
    labels:
      severity: warning  
    annotations:
      summary: "GPU Power Violation"
      description: "GPU {{ $labels.gpu }} has been operating at power limit for extended period."

  # GPU_NVLINK_ERROR
  # NVLink errors above threshold indicate interconnect stability issues
  - alert: NVLinkErrorsDetected
    expr: DCGM_FI_DEV_NVLINK_RECOVERY_ERROR_COUNT_TOTAL > 0 or DCGM_FI_DEV_NVLINK_REPLAY_ERROR_COUNT_TOTAL > 10
    labels:
      severity: warning
    annotations:
      summary: "NVLink Errors Detected" 
      description: "GPU {{ $labels.gpu }} has detected NVLink errors."

  # GPU_THERMAL_VIOLATION  
  # Immediate alert on thermal violations to prevent hardware damage
  - alert: GPUThermalViolation
    expr: increase(DCGM_FI_DEV_THERMAL_VIOLATION[5m]) > 0
    for: 1m
    labels:
      severity: critical
    annotations:
      summary: "GPU Thermal Violation Detected"
      description: "GPU {{ $labels.gpu }} has thermal violations on node {{ $labels.Hostname }}"

  # GPU_XID_ERROR
  # XID errors indicate driver or hardware level GPU issues requiring investigation
  - alert: GPUXidError
    expr: DCGM_FI_DEV_XID_ERRORS > 0
    for: 0m
    labels:
      severity: critical
    annotations:
      summary: "GPU XID Error Detected"
      description: "GPU {{ $labels.gpu }} experienced XID error {{ $value }} on node {{ $labels.Hostname }}"

  # MIG_CONFIG_FAILURE
  # MIG configuration failures indicate issues with GPU partitioning setup
  - alert: MIGConfigFailure
    expr: kubelet_node_name{nvidia_com_mig_config_state="failed"} > 0
    for: 1m
    labels:
      severity: critical
    annotations:
      summary: "MIG Configuration Failed"
      description: "MIG configuration failed on node {{ $labels.instance }}"

  # DISK_SPACE_WARNING
  # 90% threshold ensures time to respond before complete disk exhaustion
  - alert: NodeDiskSpaceWarning
    expr: (node_filesystem_size_bytes - node_filesystem_free_bytes) / node_filesystem_size_bytes * 100 > 90
    for: 5m
    labels:
      severity: warning
    annotations:
      summary: "High Disk Usage"
      description: "Node {{ $labels.instance }} disk usage is above 90%"

  # FSX_STORAGE_WARNING
  # 80% FSx utilization allows buffer for burst workloads
  - alert: FsxLustreStorageWarning
    expr: fsx_lustre_storage_used_bytes / fsx_lustre_storage_capacity_bytes * 100 > 80
    for: 5m
    labels:
      severity: warning
    annotations:
      summary: "High FSx Lustre Usage"
      description: "FSx Lustre storage usage is above 80% on file system {{ $labels.filesystem_id }}"
```

# Solución de problemas con el complemento de SageMaker HyperPod observabilidad de Amazon
<a name="hyperpod-observability-addon-troubleshooting"></a>

Usa la siguiente guía para resolver problemas comunes con el complemento de observabilidad Amazon SageMaker HyperPod (SageMaker HyperPod).

## Solución de problemas de métricas que faltan de Amazon Managed Grafana
<a name="troubleshooting-missing-metrics"></a>

Si las métricas no aparecen en los paneles de Amazon Managed Grafana, siga estos pasos para identificar y resolver el problema.

### Verificación de la conexión entre Amazon Managed Service para Prometheus y Amazon Managed Grafana
<a name="verify-amp-grafana-connection"></a>

1. Inicie sesión en la consola de Amazon Managed Grafana.

1. En el panel de navegación izquierdo, elija **Todos los espacios de trabajo**.

1. En la tabla **Espacios de trabajo**, elija su espacio de trabajo.

1. En la página de detalles del espacio de trabajo, seleccione la pestaña **Orígenes de datos**.

1. Compruebe que existe el origen de datos de Amazon Managed Service para Prometheus.

1. Compruebe los ajustes de la conexión:
   + Confirme que la URL del punto de conexión sea correcta.
   + Compruebe que la autenticación de IAM esté configurada correctamente.
   + Elija **Probar conexión**. Compruebe que el estado sea **El origen de datos funciona**.

### Verificación del estado del complemento de Amazon EKS
<a name="verify-eks-addon-status"></a>

1. Abra la consola Amazon EKS en [https://console.aws.amazon.com/eks/home\$1/clusters](https://console.aws.amazon.com/eks/home#/clusters).

1. Seleccione el clúster.

1. Elija la pestaña **Complementos**.

1. **Compruebe que el complemento de SageMaker HyperPod observabilidad aparezca en la lista y que su estado sea ACTIVO.**

1. Si el estado no es **ACTIVE**, consulte [Solución de errores al instalar el complemento](#troubleshooting-addon-installation-failures).

### Verificación de la asociación de Pod Identity
<a name="verify-pod-identity-association"></a>

1. Abra la consola Amazon EKS en [https://console.aws.amazon.com/eks/home\$1/clusters](https://console.aws.amazon.com/eks/home#/clusters).

1. Seleccione el clúster.

1. En la página Detalles del clúster, seleccione la pestaña **Acceso**.

1. En la tabla **Asociaciones de Pod Identity**, elija la asociación que tenga los siguientes valores de propiedad:
   + **Espacio de nombres:** `hyperpod-observability`
   + **Cuenta de servicio**: `hyperpod-observability-operator-otel-collector`
   + **Complemento**: `amazon-sagemaker-hyperpod-observability`

1. Asegúrese de que el rol de IAM vinculado a esta asociación tenga los siguientes permisos.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "PrometheusAccess",
               "Effect": "Allow",
               "Action": "aps:RemoteWrite",
               "Resource": "arn:aws:aps:us-east-1:111122223333:workspace/workspace-ID"
           },
           {
               "Sid": "CloudwatchLogsAccess",
               "Effect": "Allow",
               "Action": [
                   "logs:CreateLogGroup",
                   "logs:CreateLogStream",
                   "logs:DescribeLogGroups",
                   "logs:DescribeLogStreams",
                   "logs:PutLogEvents",
                   "logs:GetLogEvents",
                   "logs:FilterLogEvents",
                   "logs:GetLogRecord",
                   "logs:StartQuery",
                   "logs:StopQuery",
                   "logs:GetQueryResults"
               ],
               "Resource": [
                   "arn:aws:logs:us-east-1:111122223333:log-group:/aws/sagemaker/Clusters/*",
                   "arn:aws:logs:us-east-1:111122223333:log-group:/aws/sagemaker/Clusters/*:log-stream:*"
               ]
           }
       ]
   }
   ```

------

1. Asegúrese de que el rol de IAM vinculado a esta asociación tenga la siguiente política de confianza. Compruebe que el ARN de origen y la cuenta de origen sean correctos.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowEksAuthToAssumeRoleForPodIdentity",
               "Effect": "Allow",
               "Principal": {
                   "Service": "pods.eks.amazonaws.com"
               },
               "Action": [
                   "sts:AssumeRole",
                   "sts:TagSession"
               ],
               "Condition": {
                   "StringEquals": {
                       "aws:SourceArn": "arn:aws:eks:us-east-1:111122223333:cluster/cluster-name",
                       "aws:SourceAccount": "111122223333"
                   }
               }
           }
       ]
   }
   ```

------

### Verificación de la limitación de Amazon Managed Service para Prometheus
<a name="check-amp-throttling"></a>

1. Inicie sesión en la consola Service Quotas Consola de administración de AWS y ábrala en [https://console.aws.amazon.com/servicequotas/](https://console.aws.amazon.com/servicequotas/).

1. En el cuadro **Cuotas administradas**, busque y seleccione Amazon Managed Service para Prometheus.

1. Elige la cuota **Serie activa por espacio de trabajo**.

1. En la pestaña **Cuotas a nivel de recurso**, seleccione el espacio de trabajo de Amazon Managed Service para Prometheus.

1. Asegúrese de que la utilización sea inferior a la cuota actual.

1. Si ha alcanzado el límite de cuota, seleccione su espacio de trabajo pulsando el botón de opción situado a la izquierda y, a continuación, elija **Solicitud de aumento a nivel de recursos**.

### Compruebe que el almacenamiento en caché KV y el enrutamiento inteligente estén habilitados
<a name="verify-caching-routing"></a>

Si falta el `KVCache Metrics` panel de control, la función no está habilitada o el puerto no se menciona en el. `modelMetrics` Para obtener más información sobre cómo activarlo, consulta los pasos 1 y 3 de[Configure el almacenamiento en caché KV y el enrutamiento inteligente para mejorar el rendimiento](sagemaker-hyperpod-model-deployment-deploy-ftm.md#sagemaker-hyperpod-model-deployment-deploy-ftm-cache-route). 

Si falta el `Intelligent Router Metrics` panel de control, active la función para que aparezcan. Para obtener más información sobre cómo habilitar esto, consulte[Configure el almacenamiento en caché KV y el enrutamiento inteligente para mejorar el rendimiento](sagemaker-hyperpod-model-deployment-deploy-ftm.md#sagemaker-hyperpod-model-deployment-deploy-ftm-cache-route). 

## Solución de errores al instalar el complemento
<a name="troubleshooting-addon-installation-failures"></a>

Si el complemento de observabilidad no se instala, siga estos pasos para diagnosticar y resolver el problema.

### Comprobación del estado de la sonda
<a name="check-health-probe-status"></a>

1. Abra la consola Amazon EKS en [https://console.aws.amazon.com/eks/home\$1/clusters](https://console.aws.amazon.com/eks/home#/clusters).

1. Seleccione el clúster.

1. Elija la pestaña **Complementos**.

1. Seleccione el complemento que ha fallado.

1. Consulte la sección **Problemas de estado**.

1. Si el problema de estado está relacionado con las credenciales o Pod Identity, consulte [Verificación de la asociación de Pod Identity](#verify-pod-identity-association). Asegúrese también de que el complemento del agente de Pod Identity se esté ejecutando en el clúster.

1. Compruebe si hay errores en los registros del administrador. Para obtener instrucciones, consulte [Consulta de los registros del administrador](#review-manager-logs).

1. Póngase en contacto con AWS Support con los detalles del problema.

### Consulta de los registros del administrador
<a name="review-manager-logs"></a>

1. Obtención del pod del administrador de complementos:

   ```
   kubectl logs -n hyperpod-observability -l control-plane=hyperpod-observability-controller-manager
   ```

1. Si tiene problemas urgentes, póngase en contacto con Soporte.

## Consulta de todos los pods de observabilidad
<a name="review-all-observability-pods"></a>

Todos los módulos que crea el complemento de SageMaker HyperPod observabilidad están en el `hyperpod-observability` espacio de nombres. Ejecute el siguiente comando para obtener el estado de estos pods.

```
kubectl get pods -n hyperpod-observability
```

Busque los pods cuyo estado sea `pending` o `crashloopbackoff`. Ejecute el siguiente comando para obtener los registros de estos pods pendientes o fallidos.

```
kubectl logs -n hyperpod-observability pod-name
```

Si no encuentra errores en los registros, ejecute el siguiente comando para describir los pods y buscar errores.

```
kubectl describe -n hyperpod-observability pod pod-name
```

Para obtener más contexto, ejecute los dos comandos siguientes para describir las implementaciones y los daemonsets de estos pods.

```
kubectl describe -n hyperpod-observability deployment deployment-name
```

```
kubectl describe -n hyperpod-observability daemonset daemonset-name
```

## Solución de problemas de los pods que están bloqueados con el estado pendiente
<a name="pods-stuck-in-pending"></a>

Si ve que hay pods bloqueados con el estado `pending`, asegúrese de que el nodo sea suficientemente grande para que quepa en todos los pods. Para comprobarlo, realice los siguientes pasos.

1. Abra la consola Amazon EKS en [https://console.aws.amazon.com/eks/home\$1/clusters](https://console.aws.amazon.com/eks/home#/clusters).

1. Elija su clúster.

1. Elija la pestaña **Computación** del clúster.

1. Elija el nodo con el tipo de instancia más pequeño.

1. En la sección de asignación de capacidad, busque los pods disponibles.

1. Si no hay pods disponibles, necesitará un tipo de instancia más grande.

Si tiene problemas urgentes, póngase en contacto con AWS Support.

## Solución de problemas de observabilidad en grupos de instancias restringidos
<a name="troubleshooting-rig-observability"></a>

Usa la siguiente guía para resolver problemas específicos de los clústeres con grupos de instancias restringidos.

### Los módulos de observabilidad no se inician en los nodos restringidos
<a name="troubleshooting-rig-pods-not-starting"></a>

Si los módulos de observabilidad no se inician en los nodos restringidos, compruebe el estado y los eventos del módulo:

```
kubectl get pods -n hyperpod-observability -o wide
kubectl describe pod pod-name -n hyperpod-observability
```

Entre las causas comunes, se incluyen las siguientes:
+ **Fallos de extracción de imágenes:** los eventos del módulo pueden mostrar errores de extracción de imágenes si las imágenes del contenedor de observabilidad aún no están incluidas en la lista de permitidos en los nodos restringidos. Asegúrese de que está ejecutando la última versión del complemento de observabilidad. Si el problema persiste después de la actualización, ponte en contacto con Soporte.
+ **Tolerancias a la contaminación:** compruebe que las especificaciones del módulo incluyan la tolerancia requerida para los nodos restringidos. El complemento, a partir de la versión, añade `v1.0.5-eksbuild.1` automáticamente esta tolerancia cuando se habilita la compatibilidad con RIG. Si está utilizando una versión anterior, actualice a la última versión.

### Visualización de los registros de los pods en los nodos restringidos
<a name="troubleshooting-rig-viewing-logs"></a>

El `kubectl logs` comando no funciona para los pods que se ejecutan en nodos restringidos. Esta es una limitación esperada, ya que la ruta de comunicación necesaria para la transmisión de registros no está disponible en los nodos restringidos.

Para ver los registros de los nodos restringidos, utilice el panel **Cluster Logs** de Amazon Managed Grafana, que consulta CloudWatch los registros directamente. Puede filtrar por ID de instancia, flujo de registro, nivel de registro y búsqueda de texto libre para encontrar las entradas de registro relevantes.

### Fallos de resolución de DNS en clústeres con nodos estándar y restringidos
<a name="troubleshooting-rig-dns-resolution"></a>

En los clústeres híbridos (clústeres con grupos de instancias estándar y restringidos), los pods de los nodos estándar pueden experimentar tiempos de espera de resolución de DNS al intentar llegar a puntos de enlace de AWS servicio, como Amazon Managed Service for Prometheus o. CloudWatch

**Causa:** el `kube-dns` servicio tiene puntos de conexión tanto de pods de CoreDNS estándar como de pods de CoreDNS de RIG. Los pods de nodos estándar no pueden llegar a los puntos finales de RIG CoredNS debido al aislamiento de la red. Cuando se `kube-proxy` equilibra la carga de una solicitud de DNS desde un pod de nodo estándar a un punto final de RIG CoreDNS, se agota el tiempo de espera de la solicitud.

**Solución: `internalTrafficPolicy: Local` configúrelo** en el `kube-dns` servicio de modo que los pods solo lleguen a CoredNS en su nodo local:

```
kubectl patch svc kube-dns -n kube-system -p '{"spec":{"internalTrafficPolicy":"Local"}}'
```

Tras aplicar este parche, reinicie los módulos de observabilidad afectados:

```
kubectl delete pods -n hyperpod-observability -l app.kubernetes.io/name=hyperpod-node-collector
```

### Las métricas de los nodos restringidos no llegan a Amazon Managed Service para Prometheus
<a name="troubleshooting-rig-metrics-not-reaching-amp"></a>

Si las métricas de los nodos restringidos no aparecen en tu espacio de trabajo de Amazon Managed Service for Prometheus:

1. **Compruebe los permisos de la función de ejecución.** Asegúrese de que el rol de ejecución del grupo de instancias restringido tenga `aps:RemoteWrite` permiso para su espacio de trabajo de Prometheus. Para obtener más información, consulte [Requisitos previos adicionales para los grupos de instancias restringidos](hyperpod-observability-addon-setup.md#hyperpod-observability-addon-rig-prerequisites).

1. **Compruebe el estado del pod del recopilador de nodos.** Ejecute el siguiente comando y compruebe que los pods del recopilador de nodos se estén ejecutando en nodos restringidos:

   ```
   kubectl get pods -n hyperpod-observability | grep node-collector
   ```

1. **Compruebe las implementaciones del recopilador central.** En los clústeres con nodos restringidos, el complemento implementa un recopilador central por límite de red. Compruebe que existe un recopilador central para cada límite:

   ```
   kubectl get deployments -n hyperpod-observability | grep central-collector
   ```

1. **Compruebe si hay errores en los eventos del pod.** `kubectl describe`Utilízalo en los módulos recopiladores para buscar eventos de error:

   ```
   kubectl describe pod collector-pod-name -n hyperpod-observability
   ```

Si el problema persiste después de verificar lo anterior, ponte en contacto con nosotros Soporte.

### La verificación de identidad del pod no se aplica a los nodos de grupos de instancias restringidos
<a name="troubleshooting-rig-pod-identity"></a>

Los pasos [Verificación de la asociación de Pod Identity](#verify-pod-identity-association) de solución de problemas solo se aplican a los nodos estándar. En los nodos restringidos, el complemento utiliza la función de ejecución del grupo de instancias del clúster para la AWS autenticación en lugar de Amazon EKS Pod Identity. Si faltan métricas en los nodos restringidos, verifica los permisos de la función de ejecución en lugar de la asociación de Pod Identity.

### Fluent Bit no se ejecuta en nodos restringidos
<a name="troubleshooting-rig-fluent-bit"></a>

Este es el comportamiento esperado. Fluent Bit no se implementa intencionalmente en nodos restringidos. Los registros de los nodos restringidos se publican a CloudWatch través de la SageMaker HyperPod plataforma independientemente del complemento de observabilidad. Utilice el panel de **registros de clústeres** de Amazon Managed Grafana para ver estos registros.

# Observabilidad con Amazon CloudWatch
<a name="sagemaker-hyperpod-eks-cluster-observability-cluster-cloudwatch-ci"></a>

Utilice [Amazon CloudWatch Container Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ContainerInsights.html) para recopilar, agregar y resumir las métricas y los registros de las aplicaciones y microservicios en contenedores del clúster de EKS asociado a un clúster. HyperPod 

Amazon CloudWatch Insights recopila métricas de los recursos informáticos, como la CPU, la memoria, el disco y la red. Información de contenedores también proporciona información de diagnóstico, como, por ejemplo, errores de reinicio de contenedores, para ayudarlo a aislar problemas y solucionarlos rápidamente. También puede configurar CloudWatch alarmas en las métricas que recopila Container Insights.

Para obtener una lista completa de las métricas, consulte [Métricas de Información de contenedores de Kubernetes y de Amazon EKS](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Container-Insights-metrics-EKS.html) en la *Guía del usuario de Amazon EKS*.

## Instale CloudWatch Container Insights
<a name="sagemaker-hyperpod-eks-cluster-observability-cluster-cloudwatch-ci-setup"></a>

Los usuarios administradores de clústeres deben configurar CloudWatch Container Insights siguiendo las instrucciones que se indican en [Instalar el CloudWatch agente mediante el complemento Amazon CloudWatch Observability EKS o el diagrama de Helm](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/install-CloudWatch-Observability-EKS-addon.html) de la *Guía del CloudWatch usuario*. Para obtener más información sobre el complemento Amazon EKS, consulte también [Instalar el complemento Amazon CloudWatch Observability EKS](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Container-Insights-setup-EKS-addon.html) en la *Guía del usuario de Amazon EKS*.

Una vez finalizada la instalación, compruebe que el complemento CloudWatch Observability esté visible en la pestaña del complemento del clúster EKS. Es posible que pasen unos minutos hasta que se cargue el panel.

**nota**  
SageMaker HyperPod requiere la versión CloudWatch Insight v2.0.1-eksbuild.1 o posterior.

![\[CloudWatch Observability service card showing status, version, and IAM role information.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/hyperpod-eks-CIaddon.png)


# Acceda CloudWatch al panel de información sobre contenedores
<a name="sagemaker-hyperpod-eks-cluster-observability-cluster-cloudwatch-ci-access-dashboard"></a>

1. Abra la CloudWatch consola en [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Elija **Información** y, a continuación, **Información de contenedores**.

1. Seleccione el clúster EKS configurado con el HyperPod clúster que está utilizando.

1. Vea las métricas Pod/Cluster de nivel.

![\[Performance monitoring dashboard for EKS clúster showing node status, resource utilization, and pod metrics.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/hyperpod-eks-CIdashboard.png)


## Acceda a los registros de información sobre CloudWatch contenedores
<a name="sagemaker-hyperpod-eks-cluster-observability-cluster-cloudwatch-ci-access-log"></a>

1. Abra la CloudWatch consola en [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Elija **Logs** (Registros) y, a continuación, elija **Log groups** (Grupo de registro).

Cuando tenga los HyperPod clústeres integrados con Amazon CloudWatch Container Insights, podrá acceder a los grupos de registros correspondientes en el siguiente formato:`/aws/containerinsights /<eks-cluster-name>/*`. En este grupo de registros, puede buscar y explorar varios tipos de registros, como, por ejemplo, los registros de rendimiento, los registros de host, los registros de aplicaciones y los registros del plano de datos.