Recuperación y conservación de registros - AWS ParallelCluster

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.

Recuperación y conservación de registros

AWS ParallelCluster crea métricas de EC2 para las instancias y el almacenamiento de HeadNode y Compute. Puede ver las métricas en los paneles personalizados de la consola CloudWatch. AWS ParallelClustertambién crea flujos de registro de CloudWatch del clúster en grupos de registros. Puede ver estos registros en los paneles personalizados o grupos de registros de la consola CloudWatch. En la sección de configuración del clúster Monitoreo, se describe cómo se pueden modificar los registros y el panel de CloudWatch del clúster. Para obtener más información, consulte Integración con Amazon CloudWatch Logs y Panel de Amazon CloudWatch.

Los registros son un recurso útil para solucionar problemas. Por ejemplo, si desea eliminar un clúster que falla, puede ser útil crear primero un archivo con los registros del clúster. Siga los pasos que se indican en Registros de archivos para crear un archivo.

Registros del clúster no disponibles en CloudWatch

Si los registros del clúster no están disponibles en CloudWatch, asegúrese de no haber sobrescrito la configuración de registros de CloudWatch de AWS ParallelCluster al añadir registros personalizados a la configuración.

Para añadir registros personalizados a la configuración de CloudWatch, asegúrese de añadirlos a la configuración en lugar de buscarlos y sobrescribirlos. Para obtener más información sobre fetch-config y append-config, consulte Varios archivos de configuración del agente de CloudWatch en la Guía del usuario de CloudWatch.

Para restaurar la configuración de registro de CloudWatch de AWS ParallelCluster, puede ejecutar los siguientes comandos dentro de un nodo de AWS ParallelCluster:

$ PLATFORM="$(ohai platform | jq -r ".[]")" LOG_GROUP_NAME="$(cat /etc/chef/dna.json | jq -r ".cluster.log_group_name")" SCHEDULER="$(cat /etc/chef/dna.json | jq -r ".cluster.scheduler")" NODE_ROLE="$(cat /etc/chef/dna.json | jq -r ".cluster.node_type")" CONFIG_DATA_PATH="/usr/local/etc/cloudwatch_agent_config.json" /opt/parallelcluster/pyenv/versions/cookbook_virtualenv/bin/python /usr/local/bin/write_cloudwatch_agent_json.py --platform $PLATFORM --config $CONFIG_DATA_PATH --log-group $LOG_GROUP_NAME --scheduler $SCHEDULER --node-role $NODE_ROLE /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -c file:/opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json -s

Registros de archivos

Puede archivar los registros en Amazon S3 o en un archivo local (según el parámetro --output-file).

nota

Añada permisos a la política del bucket de Amazon S3 para conceder acceso a CloudWatch. Para obtener más información, consulte Establecer permisos en un bucket de Amazon S3 en la Guía del usuario de los Registros de CloudWatch.

$ pcluster export-cluster-logs --cluster-name mycluster --region eu-west-1 \ --bucket bucketname --bucket-prefix logs { "url": "https://bucketname.s3.eu-west-1.amazonaws.com/export-log/mycluster-logs-202109071136.tar.gz?..." } # use the --output-file parameter to save the logs locally $ pcluster export-cluster-logs --cluster-name mycluster --region eu-west-1 \ --bucket bucketname --bucket-prefix logs --output-file /tmp/archive.tar.gz { "path": "/tmp/archive.tar.gz" }

El archivo contiene los eventos de pila de AWS CloudFormation y de flujos de Registros de Amazon CloudWatch desde el nodo principal y los nodos de computación de los últimos 14 días, a menos que se especifique explícitamente en la configuración o en los parámetros del comando export-cluster-logs. El tiempo que tarda el comando en finalizar depende del número de nodos del clúster y del número de flujos de registro disponibles en los Registros de CloudWatch. Para obtener más información sobre las opciones disponibles, consulte Integración con Amazon CloudWatch Logs.

Registros conservados

A partir de la versión 3.0.0, AWS ParallelCluster conserva los Registros de CloudWatch de forma predeterminada cuando se elimina un clúster. Si quiere eliminar un clúster y conservar sus registros, asegúrese de que Monitoring/Logs/CloudWatch/DeletionPolicy no esté establecido como Delete en la configuración del clúster. De lo contrario, cambie el valor de este campo a Retain y ejecute el comando pcluster update-cluster. A continuación, ejecute pcluster delete-cluster --cluster-name <cluster_name> para eliminar el clúster, pero retenga el grupo de registros que está almacenado en Amazon CloudWatch.

Registros de nodos finalizados

Si un nodo de computación estático finaliza inesperadamente y CloudWatch no tiene registros, compruebe si AWS ParallelCluster ha registrado la salida de la consola para ese nodo de computación en el nodo principal del registro /var/log/parallelcluster/compute_console_output. Para obtener más información, consulte Registros clave para la depuración.

Si el registro /var/log/parallelcluster/compute_console_output no está disponible o no contiene la salida del nodo, utilice la AWS CLI para recuperar la salida de la consola del nodo que ha fallado. Inicie sesión en el nodo principal del clúster y obtenga el nodo fallido instance-id del archivo /var/log/parallelcluster/slurm_resume.log.

Recupere la salida de la consola mediante el siguiente comando con el instance-id:

$ aws ec2 get-console-output --instance-id i-abcdef01234567890

Si un nodo de computación dinámico finaliza automáticamente tras su lanzamiento y CloudWatch no tiene registros de este, envíe un trabajo que active una acción de escalado de clústeres. Espere a que se produzca un error en la instancia y recupere el registro de la consola de la instancia.

Inicie sesión en el nodo principal del clúster y obtenga el nodo de computación instance-id del archivo /var/log/parallelcluster/slurm_resume.log.

Recupere el registro de la consola de la instancia mediante el siguiente comando:

$ aws ec2 get-console-output --instance-id i-abcdef01234567890

El registro de salidas de la consola puede ayudarle a depurar la causa raíz de un error en un nodo de computación cuando el registro del nodo de computación no esté disponible.