기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS ParallelCluster를 사용한 Slurm 회계
버전 3.3.0부터 AWS ParallelCluster은 클러스터 구성 파라미터 SlurmSettings/Database를 사용한 Slurm 회계를 지원합니다.
버전 3.10.0부터 AWS ParallelCluster는 클러스터 구성 파라미터 SlurmSettings / ExternalSlurmdbd가 포함된 외부 Slurmdbd를 통한 Slurm 회계를 지원합니다. 여러 클러스터가 동일한 데이터베이스를 공유하는 경우 외부 Slurmdbd를 사용하는 것이 좋습니다.
Slurm 회계를 사용하면 외부 계정 데이터베이스를 통합하여 다음 작업을 수행할 수 있습니다.
-
클러스터 사용자 또는 사용자 그룹 및 기타 엔터티를 관리합니다. 이 기능을 사용하면 리소스 제한 적용, 공정 공유 및 QoS와 같은 Slurm의 고급 기능을 사용할 수 있습니다.
-
작업을 실행한 사용자, 작업 기간, 사용한 리소스와 같은 작업 데이터를 수집하고 저장합니다.
sacct
유틸리티를 사용하여 저장된 데이터를 볼 수 있습니다.
참고
AWS ParallelCluster은 Slurm이 지원되는 MySQL 데이터베이스
AWS ParallelCluster v3.10.0 이상에서 외부 Slurmdbd를 사용하여 Slurm 회계 작업
Slurm 회계를 구성하기 전에 기존 외부 데이터베이스 서버에 연결하는 기존 Slurmdbd 데이터베이스 서버가 있어야 합니다.
이를 구성하려면 다음을 정의합니다.
-
ExternalSlurmdbd / Host의 외부 Slurmdbd 서버 주소. 서버가 존재하고 헤드 노드에서 연결할 수 있어야 합니다.
-
MungeKeySecretArn의 외부 Slurmdbd 서버와 통신할 munge 키.
튜토리얼을 단계별로 진행하려면 외부 Slurmdbd 회계를 사용하여 클러스터 생성을 참조하세요.
참고
Slurm 데이터베이스 회계 엔터티를 관리할 책임은 사용자에게 있습니다.
AWS ParallelCluster 외부 SlurmDB 지원 기능의 아키텍처를 사용하면 동일한 SlurmDB 및 동일한 데이터베이스를 공유하는 여러 클러스터를 사용할 수 있습니다.
주의
AWS ParallelCluster와 외부 SlurmDB간의 트래픽은 암호화되지 않습니다. 신뢰할 수 있는 네트워크에서 클러스터와 외부 SlurmDB를 실행하는 것이 좋습니다.
AWS ParallelCluster v3.3.0 이상에서 헤드 노드 Slurmdbd를 사용하여 Slurm 회계 작업
Slurm 회계를 구성하기 전에 mysql
프로토콜을 사용하는 기존 외부 데이터베이스 서버 및 데이터베이스가 있어야 합니다.
AWS ParallelCluster로 Slurm 회계를 구성하려면 다음을 정의해야 합니다.
튜토리얼을 단계별로 진행하려면 Slurm 화계를 사용하여 클러스터 생성을 참조하세요.
참고
AWS ParallelCluster은 Slurm 데이터베이스에서 기본 클러스터 사용자를 데이터베이스 관리자로 설정함으로써 Slurm 회계 데이터베이스의 기본 부트스트랩을 수행합니다. AWS ParallelCluster는 회계 데이터베이스에 다른 사용자를 추가하지 않습니다. 고객은 Slurm 데이터베이스의 회계 엔터티를 관리할 책임이 있습니다.
AWS ParallelCluster은 클러스터가 데이터베이스 서버에 자체 Slurm 데이터베이스를 갖도록 slurmdbd
slurmdbd
구성 파일 StorageLoc
주의
-
한 번에 같은 데이터베이스를 사용하기 위해 두 개 이상의 클러스터를 설정하지 않는 것이 좋습니다. 이렇게 하면 성능 문제가 발생하거나 데이터베이스 교착 상태가 발생할 수 있습니다.
-
클러스터의 헤드 노드에서 Slurm 회계를 활성화한 경우 강력한 CPU, 더 많은 메모리, 더 높은 네트워크 대역폭을 갖춘 인스턴스 유형을 사용하는 것이 좋습니다. Slurm 회계는 클러스터의 헤드 노드에 부담을 가중시킬 수 있습니다.
AWS ParallelCluster Slurm 회계 특성의 현재 아키텍처에서는 다음 다이어그램 예제 구성에서 볼 수 있듯이 각 클러스터에는 slurmdbd
대몬(daemon)의 자체 인스턴스가 있습니다.
클러스터 환경에 사용자 지정 Slurm 다중 클러스터 또는 페더레이션 기능을 추가하는 경우 모든 클러스터가 동일한 slurmdbd
인스턴스를 참조해야 합니다. 이 대안의 경우 한 클러스터에서 AWS ParallelCluster Slurm 회계를 활성화하고 첫 번째 클러스터에서 호스팅되는 slurmdbd
에 연결하도록 다른 클러스터를 수동으로 구성하는 것이 좋습니다.
버전 3.3.0 이전의 AWS ParallelCluster 버전을 사용하는 경우 이 HPC 블로그 게시물
Slurm 회계 고려 사항
서로 다른 VPC의 데이터베이스 및 클러스터
Slurm 회계를 활성화하려면 slurmdbd
대몬(daemon)이 수행하는 읽기 및 쓰기 작업을 위한 백엔드 역할을 하는 데이터베이스 서버가 필요합니다. Slurm 회계를 활성화하도록 클러스터가 생성되거나 업데이트되기 전에 헤드 노드가 데이터베이스 서버에 연결할 수 있어야 합니다.
클러스터가 사용하는 VPC가 아닌 다른 VPC에 데이터베이스 서버를 배포해야 하는 경우 다음 사항을 고려하세요.
데이터베이스 서버와 slurmdbd
간의 TLS 암호화 구성
AWS ParallelCluster가 제공하는 기본 Slurm 회계 구성을 사용하여 slurmdbd
은 서버가 TLS 암호화를 지원하는 경우 데이터베이스 서버에 대한 TLS 암호화 연결을 설정합니다. Amazon RDS와 Amazon Aurora 같은 AWS 데이터베이스 서비스는 기본적으로 TLS 암호화를 지원합니다.
데이터베이스 서버에서 require_secure_transport
파라미터를 설정하여 서버 측의 보안 연결을 요구할 수 있습니다. 이는 제공된 CloudFormation 템플릿에서 구성됩니다.
최상의 보안을 위해 slurmdbd
클라이언트에서 서버 ID 확인도 활성화하는 것이 좋습니다. 이렇게 하려면 slurmdbd.conf
에서 StorageParameterStorageParameters
의 SSL_CAslurmdbd.conf
경로로 설정합니다. 이렇게 하면 slurmdbd
측의 서버 ID 확인이 가능해집니다. 이러한 변경을 수행한 후에는 slurmdbd
서비스를 다시 시작하여 ID 검증이 활성화된 상태에서 데이터베이스 서버와의 연결을 다시 설정하세요.
데이터베이스 보안 인증 업데이트
Database/UserName 또는 PasswordSecretArn의 값을 업데이트하려면 먼저 컴퓨팅 플릿을 중지해야 합니다. AWS Secrets Manager 시크릿에 저장된 시크릿 값은 변경되고 ARN은 변경되지 않았다고 가정해 봅시다. 이 경우 클러스터는 데이터베이스 비밀번호를 새 값으로 자동 업데이트하지 않습니다. 새 암호 값에 맞게 클러스터를 업데이트하려면 헤드 노드에서 다음 명령을 실행합니다.
$
sudo /opt/parallelcluster/scripts/slurm/update_slurm_database_password.sh
주의
계정 데이터 손실을 방지하려면 컴퓨팅 플릿이 중지된 경우에만 데이터베이스 비밀번호를 변경하는 것이 좋습니다.
데이터베이스 모니터링
AWS 데이터베이스 서비스의 모니터링 기능을 활성화하는 것이 좋습니다. 자세한 내용은 Amazon RDS 모니터링 또는 Amazon Aurora 모니터링 설명서를 참조하세요.