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.
Reemplace o reinicie manualmente un nodo mediante Slurm
En esta sección se explica cuándo se debe reiniciar o reemplazar manualmente un nodo, con instrucciones sobre cómo hacer ambas cosas.
Cuándo reiniciar o reemplazar un nodo manualmente
La HyperPod función de reanudación automática monitorea si el estado de los nodos de Slurm cambia a o. fail down Puede comprobar el estado de los nodos de Slurm ejecutando sinfo.
Si un nodo permanece atascado o no responde y el proceso de reanudación automática no lo recupera, puede iniciar la recuperación manualmente. La elección entre reiniciar o reemplazar un nodo depende de la naturaleza del problema. Considera la posibilidad de reiniciarlo cuando tengas problemas temporales o relacionados con el software, como bloqueos del sistema, pérdidas de memoria, problemas con los controladores de la GPU, actualizaciones del núcleo o procesos bloqueados. Sin embargo, si te encuentras con problemas persistentes o relacionados con el hardware, como fallos GPUs, fallos en la memoria o la red, fallos repetidos en las comprobaciones de estado o nodos que siguen sin responder tras varios intentos de reinicio, la solución más adecuada es sustituir los nodos.
Formas de reiniciar o reemplazar los nodos manualmente
SageMaker HyperPod ofrece dos métodos para la recuperación manual de nodos. El enfoque preferido es utilizar el SageMaker HyperPod sistema Reboot and Replace APIs, que proporciona un proceso de recuperación más rápido y transparente que funciona en todos los orquestadores. Como alternativa, puedes usar los comandos tradicionales de Slurmscontrol update, aunque este método tradicional requiere acceso directo al nodo controlador del Slurm. Ambos métodos activan los mismos procesos de recuperación. SageMaker HyperPod
Reinicie manualmente un nodo mediante la API de reinicio
Puede utilizarla BatchRebootClusterNodespara reiniciar manualmente un nodo defectuoso SageMaker HyperPod del clúster.
A continuación, se muestra un ejemplo de cómo ejecutar la operación de reinicio en dos instancias de un clúster medianteAWS Command Line Interface:
aws sagemaker batch-reboot-cluster-nodes \ --cluster-name arn:aws:sagemaker:ap-northeast-1:123456789:cluster/test-cluster \ --node-ids i-0123456789abcdef0 i-0fedcba9876543210
Reemplace manualmente un nodo mediante la API de reemplazo
Puede utilizarla BatchReplaceClusterNodespara reemplazar manualmente un nodo defectuoso SageMaker HyperPod del clúster.
A continuación, se muestra un ejemplo de cómo ejecutar la operación de reemplazo en dos instancias de un clúster medianteAWS Command Line Interface:
aws sagemaker batch-replace-cluster-nodes \ --cluster-name arn:aws:sagemaker:ap-northeast-1:123456789:cluster/test-cluster \ --node-ids i-0123456789abcdef0 i-0fedcba9876543210
Reinicie manualmente un nodo mediante Slurm
También puede utilizar los comandos scontrol Slurm para activar la recuperación del nodo. Estos comandos interactúan directamente con el plano de control de Slurm e invocan los mismos mecanismos de recuperación subyacentes. SageMaker HyperPod
En el siguiente comando, <ip-ipv4>sustitúyalo por el nombre del nodo de Slurm (nombre de host) de la instancia defectuosa que deseas reiniciar.
scontrol update node=<ip-ipv4>state=failreason="Action:Reboot"
Esto marca el nodo como FALLIDO por el motivo especificado. SageMaker HyperPod lo detecta y reinicia la instancia. Evite cambiar el estado del nodo o reiniciar el controlador Slurm durante la operación.
Sustituya manualmente un nodo con Slurm
Puede usar el comando scontrol update de la siguiente manera para reemplazar un nodo.
En el siguiente comando, sustitúyalo por el nombre del nodo de Slurm (nombre de host) de la instancia defectuosa que deseas reemplazar.<ip-ipv4>
scontrol update node=<ip-ipv4>state=failreason="Action:Replace"
Tras ejecutar este comando, el nodo pasará a ese fail estado, esperará a que finalicen las tareas que se están ejecutando actualmente, se sustituirá por una instancia en buen estado y se recuperará con el mismo nombre de host. Este proceso lleva tiempo en función de las instancias disponibles en la zona de disponibilidad y del tiempo que se tarda en ejecutar los scripts de ciclo de vida. Durante los procesos de actualización y reemplazo, evite volver a cambiar el estado del nodo manualmente o reiniciar el controlador de Slurm; de lo contrario, podría producirse un error de reemplazo. Si el nodo no se recupera ni pasa al estado idle después de un periodo de tiempo prolongado, póngase en contacto con el Soporte de AWS
Forzar el cambio manual de un nodo
Si el nodo defectuoso se mantiene atascado en el estado fail, el último recurso que puede intentar es forzar manualmente el cambio de estado del nodo a down. Esto requiere privilegios de administrador (permisos sudo).
aviso
Proceda con cuidado antes de ejecutar el siguiente comando, ya que provocará la eliminación de todos los trabajos y podría perder todo el trabajo no guardado.
scontrol update node=<ip-ipv4>state=downreason="Action:Replace"