Slurm회계 담당자: AWS ParallelCluster - AWS ParallelCluster

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

Slurm회계 담당자: AWS ParallelCluster

버전 3.3.0부터 클러스터 구성 SlurmSettings매개변수/데이터베이스를 사용한 Slurm 어카운팅을 AWS ParallelCluster 지원합니다.

버전 3.10.0부터 클러스터 구성 매개 변수 /를 사용하여 외부 Slurmdbd를 사용한 Slurm 어카운팅을 AWS ParallelCluster 지원합니다. SlurmSettingsExternalSlurmdbd 여러 클러스터가 동일한 데이터베이스를 공유하는 경우 외부 Slurmdbd를 사용하는 것이 좋습니다.

Slurm 회계를 사용하면 외부 계정 데이터베이스를 통합하여 다음 작업을 수행할 수 있습니다.

  • 클러스터 사용자 또는 사용자 그룹 및 기타 엔터티를 관리합니다. 이 기능을 사용하면 리소스 제한 적용, 공정 공유 및 QoS와 같은 Slurm의 고급 기능을 사용할 수 있습니다.

  • 작업을 실행한 사용자, 작업 기간, 사용한 리소스와 같은 작업 데이터를 수집하고 저장합니다. sacct 유틸리티를 사용하여 저장된 데이터를 볼 수 있습니다.

참고

AWS ParallelCluster Slurm지원되는 MySQL 데이터베이스 서버의 Slurm 계정을 지원합니다.

AWS ParallelCluster v3.10.0 Slurmdbd 이상에서 외부를 사용하여 Slurm 계정 작업을 수행합니다.

Slurm계정을 구성하려면 먼저 기존 외부 데이터베이스 서버에 연결되는 기존 외부 Slurmdbd 데이터베이스 서버가 있어야 합니다.

이를 구성하려면 다음을 정의하십시오.

  • ExternalSlurmdbd/Host의 외부 Slurmdbd 서버 주소. 서버가 존재하고 헤드 노드에서 연결할 수 있어야 합니다.

  • 에서 외부 Slurmdbd 서버와 통신하기 위한 Munge 키입니다. MungeKeySecretArn

튜토리얼을 단계별로 진행하려면 외부 Slurmdbd 어카운팅을 사용하여 클러스터 생성을 참조하세요.

참고

Slurm데이터베이스 회계 엔티티를 관리할 책임은 귀하에게 있습니다.

AWS ParallelCluster 외부 SlurmDB 지원 기능의 아키텍처를 통해 여러 클러스터가 SlurmDB 동일하고 동일한 데이터베이스를 공유할 수 있습니다.

A flowchart depicting the Database Stack, Slurmdbd stack, PC Cluster Stack 1, and PC Cluster Stack 2. Containing components such as Slurmdbd instance, RDS Aurora MySQL Database, and Login nodes.

주의

외부 AWS ParallelCluster 트래픽과 외부 SlurmDB 트래픽은 암호화되지 않습니다. 클러스터와 외부 네트워크는 신뢰할 수 SlurmDB 있는 네트워크에서 실행하는 것이 좋습니다.

AWS ParallelCluster v3.3.0 Slurmdbd 이상에서 헤드 노드를 사용한 Slurm 어카운팅 작업

Slurm 회계를 구성하기 전에 mysql 프로토콜을 사용하는 기존 외부 데이터베이스 서버 및 데이터베이스가 있어야 합니다.

를 사용하여 Slurm 어카운팅을 AWS ParallelCluster구성하려면 다음을 정의해야 합니다.

튜토리얼을 단계별로 진행하려면 Slurm 화계를 사용하여 클러스터 생성을 참조하세요.

참고

AWS ParallelCluster 데이터베이스의 기본 클러스터 사용자를 데이터베이스 관리자로 설정하여 Slurm 계정 데이터베이스의 기본 부트스트랩을 수행합니다. Slurm AWS ParallelCluster 계정 데이터베이스에 다른 사용자를 추가하지 않습니다. 고객은 Slurm 데이터베이스의 회계 엔터티를 관리할 책임이 있습니다.

AWS ParallelCluster 클러스터가 데이터베이스 서버에 자체 Slurm 데이터베이스를 slurmdbd갖도록 구성합니다. 여러 클러스터에서 동일한 데이터베이스 서버를 사용할 수 있지만 각 클러스터에는 별도의 데이터베이스가 있습니다. AWS ParallelCluster 클러스터 이름을 사용하여 slurmdbd 구성 파일 StorageLoc매개 변수에 데이터베이스 이름을 정의합니다. 다음 상황을 고려하세요. 데이터베이스 서버에 있는 데이터베이스에는 활성 클러스터 이름에 매핑되지 않는 클러스터 이름이 포함되어 있습니다. 이 경우 해당 클러스터 이름으로 새 클러스터를 만들어 해당 데이터베이스에 매핑할 수 있습니다. Slurm은 데이터베이스를 새 클러스터에 재사용합니다.

주의
  • 한 번에 같은 데이터베이스를 사용하기 위해 두 개 이상의 클러스터를 설정하지 않는 것이 좋습니다. 이렇게 하면 성능 문제가 발생하거나 데이터베이스 교착 상태가 발생할 수 있습니다.

  • 클러스터의 헤드 노드에서 Slurm 회계를 활성화한 경우 강력한 CPU, 더 많은 메모리, 더 높은 네트워크 대역폭을 갖춘 인스턴스 유형을 사용하는 것이 좋습니다. Slurm 회계는 클러스터의 헤드 노드에 부담을 가중시킬 수 있습니다.

AWS ParallelCluster Slurm계정 기능의 현재 아키텍처에서는 다음 다이어그램 예제 구성에서 볼 수 있듯이 각 클러스터에는 자체 slurmdbd 데몬 인스턴스가 있습니다.

A configuration with two clusters that are connected to a MySQL server. Each cluster has their own slurmdbd daemon instance. Moreover, each cluster is connected to its own database through the server. Another configuration with a single cluster that has its own slurmdbd daemon instance. This configuration is connected to a MySQL server and is also connected to its own database through the server.

클러스터 환경에 사용자 지정 Slurm 다중 클러스터 또는 페더레이션 기능을 추가하는 경우 모든 클러스터가 동일한 slurmdbd 인스턴스를 참조해야 합니다. 이 대안의 경우 한 클러스터에서 AWS ParallelCluster Slurm 어카운팅을 활성화하고 다른 클러스터는 첫 번째 클러스터에서 호스팅되는 클러스터에 연결하도록 수동으로 구성하는 것이 좋습니다. slurmdbd

버전 3.3.0 이전 AWS ParallelCluster 버전을 사용하는 경우 이 HPC 블로그 게시물에 설명된 Slurm 어카운팅을 구현하는 대체 방법을 참조하십시오.

Slurm 회계 고려 사항

서로 다른 VPC의 데이터베이스 및 클러스터

Slurm 회계를 활성화하려면 slurmdbd 대몬(daemon)이 수행하는 읽기 및 쓰기 작업을 위한 백엔드 역할을 하는 데이터베이스 서버가 필요합니다. Slurm 회계를 활성화하도록 클러스터가 생성되거나 업데이트되기 전에 헤드 노드가 데이터베이스 서버에 연결할 수 있어야 합니다.

클러스터가 사용하는 VPC가 아닌 다른 VPC에 데이터베이스 서버를 배포해야 하는 경우 다음 사항을 고려하세요.

  • 클러스터 측의 slurmdbd과 데이터베이스 서버 간의 통신을 활성화하려면 두 VPC 간의 연결을 설정해야 합니다. 자세한 내용은 Amazon Virtual Private Cloud 사용 설명서VPC 피어링을 참조하세요.

  • 클러스터의 VPC에 있는 헤드 노드에 연결할 보안 그룹을 만들어야 합니다. 두 VPC가 피어링된 후에는 데이터베이스 측과 클러스터 측 보안 그룹 간의 상호 연결을 사용할 수 있습니다. 자세한 내용을 알아보려면 Amazon Virtual Private Cloud 사용 설명서보안 그룹 규칙을 참조하세요.

데이터베이스 서버와 slurmdbd 간의 TLS 암호화 구성

를 AWS ParallelCluster 제공하는 기본 Slurm 계정 구성을 사용하면 서버가 TLS 암호화를 지원하는 경우 데이터베이스 서버에 대한 TLS 암호화 연결을 slurmdbd 설정합니다. AWS Amazon RDS와 같은 데이터베이스 서비스는 기본적으로 TLS 암호화를 Amazon Aurora 지원합니다.

데이터베이스 서버에서 require_secure_transport 파라미터를 설정하여 서버 측의 보안 연결을 요구할 수 있습니다. 이는 제공된 CloudFormation 템플릿에서 구성됩니다.

최상의 보안을 위해 slurmdbd 클라이언트에서 서버 ID 확인도 활성화하는 것이 좋습니다. 이렇게 하려면 StorageParameters에서 를 구성하십시오slurmdbd.conf. 서버 CA 인증서를 클러스터의 헤드 노드에 업로드합니다. 그런 다음 StorageParametersSSL_CA 옵션을 헤드 노드의 서버 CA 인증서 slurmdbd.conf 경로로 설정합니다. 이렇게 하면 slurmdbd 측의 서버 ID 확인이 가능해집니다. 이러한 변경을 수행한 후에는 slurmdbd 서비스를 다시 시작하여 ID 검증이 활성화된 상태에서 데이터베이스 서버와의 연결을 다시 설정하세요.

데이터베이스 보안 인증 업데이트

Database/UserNamePasswordSecretArnor의 값을 업데이트하려면 먼저 컴퓨팅 플릿을 중지해야 합니다. 시크릿에 저장된 시크릿 값은 변경되고 ARN은 변경되지 않았다고 가정해 봅시다. AWS Secrets Manager 이 경우 클러스터는 데이터베이스 비밀번호를 새 값으로 자동 업데이트하지 않습니다. 새 암호 값에 맞게 클러스터를 업데이트하려면 헤드 노드에서 다음 명령을 실행합니다.

$ sudo /opt/parallelcluster/scripts/slurm/update_slurm_database_password.sh
주의

계정 데이터 손실을 방지하려면 컴퓨팅 플릿이 중지된 경우에만 데이터베이스 비밀번호를 변경하는 것이 좋습니다.

데이터베이스 모니터링

AWS 데이터베이스 서비스의 모니터링 기능을 활성화하는 것이 좋습니다. 자세한 내용은 Amazon RDS 모니터링 또는 Amazon Aurora 모니터링 설명서를 참조하세요.