View a markdown version of this page

Slurm 회계에서 누락된 작업 레코드 문제 해결 - AWS PCS

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Slurm 회계에서 누락된 작업 레코드 문제 해결

sacct 또는 sreport 명령의 출력과 같이 완료까지 실행된 작업이 Slurm 회계 보고서에서 누락되었습니다. 레코드는 제한된 기간 동안만 존재하지 않으며, 일반적으로 작업 제출률이 매우 높은 기간을 따릅니다. 회계 보고서는 해당 기간 전후에 완료됩니다. 이 주제는 Slurm 회계가 활성화된 클러스터에 적용됩니다. 회계에 대한 자세한 내용은 단원을 참조하십시오AWS PCS의 Slurm 회계.

일반적인 원인

Slurm 컨트롤러 데몬(slurmctld)은 회계 데이터베이스에 회계 데이터를 직접 쓰지 않습니다. 내부 인 메모리 대기열을 통해 Slurm 데이터베이스 데몬(slurmdbd)으로 데이터를 전송합니다. 작업이 데이터베이스에 레코드를 slurmdbd 커밋하는 것보다 빠르게 제출되면 대기열이 최대 크기에 도달할 수 있습니다. 대기열이 가득 차면는 새 회계 메시지를 대기열에 추가하는 대신 slurmctld 삭제합니다.

폐기된 메시지는 재시도되지 않으므로 전달된 작업 기록은 회계 데이터베이스에 영구적으로 없습니다. 회계 데이터만 영향을 받습니다. 작업 예약 및 작업 실행은 정상적으로 계속됩니다. slurmdbd 이미 커밋된 레코드는 데이터베이스에 남아 있습니다. 대기열이 드레이닝되면 회계가 자동으로 재개됩니다.

해결 방법

원인을 확인하고 재발 가능성을 줄이려면
  1. 클러스터의 slurmctld 로그에서 다음과 유사한 항목을 검색합니다.

    error: agent queue is full (33794), discarding DBD_JOB_START:1425 request

    각 항목은 삭제된 회계 메시지 하나에 해당합니다. 메시지 유형은 , DBD_JOB_START, DBD_STEP_START또는와 같이 손실된 레코드DBD_JOB_COMPLETE를 식별합니다DBD_STEP_COMPLETE. 클러스터가 스케줄러 로그를 전송하지 않는 경우 로그 전송을 설정합니다. 이렇게 하면 조건이 다시 발생하면 원인을 확인할 수 있습니다. 자세한 내용은 AWS PCS의 스케줄러 로그 단원을 참조하십시오.

  2. 클러스터의 slurmdbd 구성1에서 CommitDelay 파라미터를 로 설정합니다. 이 설정을 사용하면가 각 레코드를 개별적으로 커밋하는 대신 데이터베이스 커밋을 slurmdbd 그룹화하여 대기열을 비우는 속도를 높입니다. 클러스터의 SlurmdbdCustomSettings 속성을 사용하여 설정을 적용합니다. 자세한 내용은 Slurm 설명서CommitDelayAWS PCS에서 사용자 지정 SlurmDBD 설정 구성 및 섹션을 참조하세요.

    중요

    SlurmdbdCustomSettings는 클러스터에를 추가하는 대신 클러스터의 slurmdbd 설정을 대체합니다. 업데이트 요청에서 생략한 설정은 모두 제거됩니다. 클러스터에 이미 slurmdbd 설정이 있을 수 있는 경우 aws pcs get-cluster 먼저 {parameterName=CommitDelay,parameterValue="1"}를 실행하고 검색된 목록에를 추가한 다음 전체 목록을 제출합니다.

    예- 클러스터CommitDelay에서 설정
    aws pcs update-cluster --cluster-identifier my-cluster \ --slurm-configuration \ 'SlurmdbdCustomSettings=[{parameterName=CommitDelay,parameterValue="1"}]'
  3. 설정이 적용되었는지 확인합니다. 에서 클러스터에 대한 추가 스케줄러 설정을 AWS Management Console확인합니다. 에서 다음 명령을 AWS CLI실행하고 응답의 slurmConfiguration 필드를 확인합니다.

    aws pcs get-cluster --cluster-identifier my-cluster
참고

slurmctld 폐기된 회계 레코드는 복구할 수 없습니다. 영향을 받는 기간 동안 실행된 작업은 회계 보고서에서 제외됩니다.

예방책

나중에 누락된 레코드를 찾는 대신 대기열 포화를 감지하려면 Amazon CloudWatch Logs, Amazon Simple Storage Service(Amazon S3) 또는 Amazon Data Firehose에 slurmctld 로그를 전송하고 agent queue is full 항목을 모니터링합니다. 자세한 내용은 AWS PCS의 스케줄러 로그 단원을 참조하십시오.

작업 제출률이 높은 워크로드를 실행하는 클러스터1에서를 로 CommitDelay 설정합니다.