기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
SageMaker HyperPod 콘솔 UI 사용
SageMaker HyperPod 콘솔 UI를 사용하여 첫 번째 SageMaker HyperPod 클러스터를 생성합니다.
Slurm을 사용하여 첫 번째 SageMaker HyperPod 클러스터 생성
다음 자습서에서는 SageMaker 콘솔 UI를 통해 새 SageMaker HyperPod 클러스터를 생성하고 Slurm으로 설정하는 방법을 보여줍니다. 자습서 다음에 세 개의 Slurm 노드, , my-login-group
및 my-controller-group
가 있는 HyperPod 클러스터를 생성합니다worker-group-1
.
에서 Amazon SageMaker 콘솔을 엽니다https://console.aws.amazon.com/sagemaker/
. -
왼쪽 탐색 창에서 HyperPod 클러스터를 선택합니다.
-
SageMaker HyperPod 클러스터 페이지에서 클러스터 생성을 선택합니다.
-
1단계: 클러스터 설정 에서 새 클러스터의 이름을 지정합니다. 태그 섹션을 건너뜁니다.
-
2단계: 인스턴스 그룹 에서 인스턴스 그룹을 추가합니다. 각 인스턴스 그룹을 다르게 구성할 수 있으며 다양한 인스턴스 유형을 가진 여러 인스턴스 그룹으로 구성된 이종 클러스터를 생성할 수 있습니다. 클러스터 생성 중에 인스턴스 그룹에서 수명 주기 구성 스크립트를 실행하려면 Awsome Distributed Training GitHub 리포지토리
에 제공된 샘플 수명 주기 스크립트를 사용하는 것으로 시작할 수 있습니다. -
인스턴스 그룹 이름 에 인스턴스 그룹의 이름을 지정합니다. 이 자습서에서는 ,
my-controller-group
my-login-group
및 라는 인스턴스 그룹을 세 개 생성합니다worker-group-1
. -
인스턴스 유형 선택에서 인스턴스 그룹의 인스턴스를 선택합니다. 이 자습서에서는
ml.c5.xlarge
에 대해 를,my-controller-group
ml.m5.4xlarge
에 대해 를my-login-group
, 에ml.trn1.32xlarge
대해 를 선택합니다worker-group-1
.계정에 충분한 할당량이 있는 인스턴스 유형을 선택하거나 에서 다음을 수행하여 추가 할당량을 요청해야 합니다SageMaker HyperPod 할당량.
-
수량 에서 클러스터 사용에 대한 인스턴스 할당량을 초과하지 않는 정수를 지정합니다. 이 자습서에서는 세 그룹 모두에 대해 1을 입력합니다.
-
수명 주기 스크립트 파일의 S3 경로 에 수명 주기 스크립트가 저장되는 Amazon S3 경로를 입력합니다. 수명 주기 스크립트가 없는 경우 다음 하위 단계를 수행하여 SageMaker HyperPod 서비스 팀이 제공하는 기본 수명 주기 스크립트를 사용합니다.
-
Awsome 분산 훈련 GitHub 리포지토리를
복제합니다. git clone https://github.com/aws-samples/awsome-distributed-training/
-
에서 기본 수명 주기 스크립트 세트를 찾을
1.architectures/5.sagemaker_hyperpods/LifecycleScripts/base-config
수 있습니다. 수명 주기 스크립트에 대한 자세한 내용은 를 참조하세요수명 주기 스크립트를 사용하여 클러스터 사용자 지정 SageMaker HyperPod . -
Slurm 구성 파일을 작성하고 로 저장합니다
provisioning_params.json
. 파일에서 기본 Slurm 구성 파라미터를 지정하여 SageMaker HyperPod 클러스터 인스턴스 그룹에 Slurm 노드를 올바르게 할당합니다. 예를 들어, 는 이전 5a, 5b 및 5c 단계를 통해 구성된 HyperPod 클러스터 인스턴스 그룹을 기반으로 다음과 유사해야provisioning_params.json
합니다.{ "version": "1.0.0", "workload_manager": "
slurm
", "controller_group": "my-controller-group
", "login_group": "my-login-group
", "worker_groups": [ { "instance_group_name": "worker-group-1
", "partition_name": "partition-1
" } ] } -
Amazon S3 버킷에 스크립트를 업로드합니다. 경로가 인 S3 버킷을 생성합니다
s3://sagemaker-
. Amazon S3 콘솔을 사용하여 이 버킷을 생성할 수 있습니다.<unique-s3-bucket-name>
/<lifecycle-script-directory>
/src참고
sagemaker-
가 IAM역할: SageMaker HyperPod 있는 는 보안 주체AmazonSageMakerClusterInstanceRolePolicy
만 이 특정 접두사를 사용하여 S3 버킷에 액세스할 수 있도록 허용하므로 S3 버킷 경로에 접두사를 지정해야 합니다.
-
-
생성 시 수명 주기 스크립트 의 디렉터리 경로에 수명 주기 스크립트 파일 의 S3 경로 아래에 수명 주기 스크립트의 파일 이름을 입력합니다.
-
IAM 역할 의 경우 섹션에서
AmazonSageMakerClusterInstanceRolePolicy
를 사용하여 생성한 IAM 역할을 선택합니다IAM역할: SageMaker HyperPod. -
고급 구성 에서 다음과 같은 선택적 구성을 설정할 수 있습니다.
-
(선택 사항) 코어당 스레드 의 경우 다중 스레드 비활성화 및 다중 스레드 활성화
2
를1
지정합니다. 멀티스레딩을 지원하는 인스턴스 유형을 찾으려면 Amazon Elastic Compute Cloud 사용 설명서의 CPU 인스턴스 유형별 코어 및 CPU 코어당 스레드의 참조 테이블을 참조하세요. -
(선택 사항) 추가 인스턴스 스토리지 구성의 경우 1~16384 사이의 정수를 지정하여 추가 Elastic Block Store(EBS) 볼륨의 크기를 기가바이트(GB) 단위로 설정합니다. EBS 볼륨은 인스턴스 그룹의 각 인스턴스에 연결됩니다. 추가 EBS 볼륨의 기본 탑재 경로는 입니다
/opt/sagemaker
. 클러스터가 성공적으로 생성된 후 클러스터 인스턴스(노드)SSH로 들어가df -h
명령을 실행하여 EBS 볼륨이 올바르게 마운트되었는지 확인할 수 있습니다. 추가 EBS 볼륨을 연결하면 Amazon Elastic Block Store 사용 설명서의 Amazon EBS 볼륨 섹션에 설명된 대로 안정적이고 인스턴스가 아니며 독립적으로 지속되는 스토리지가 제공됩니다.
-
-
-
3단계: 고급 구성 에서 클러스터 내부 및 외부에서 네트워크 설정을 설정합니다. 에 SageMaker 대한 액세스 권한을 부여하는 가 이미 있는 VPC 경우 자체 를 선택합니다VPC. 가 없지만 새 를 생성하려는 경우 Amazon Virtual Private Cloud 사용 설명서의 생성VPC의 지침을 VPC따르세요. 기본 를 사용하려면 아니오VPC로 두어도 됩니다 SageMaker VPC.
-
4단계: 검토 및 생성에서 1~3단계에서 설정한 구성을 검토하고 클러스터 생성 요청 제출을 완료합니다.
-
새 클러스터는 SageMaker HyperPod 콘솔의 기본 창의 클러스터 아래에 나타나야 합니다. 상태 열에서 표시된 상태를 확인할 수 있습니다.
-
클러스터 상태가 로 전환되면 클러스터 노드에 로그인을 시작할
InService
수 있습니다. 클러스터 노드에 액세스하고 ML 워크로드 실행을 시작하려면 섹션을 참조하세요 SageMaker HyperPod 클러스터의 작업.
클러스터 삭제 및 리소스 정리
SageMaker HyperPod 클러스터 생성을 성공적으로 테스트한 후 클러스터를 삭제할 때까지 해당 InService
상태에서 계속 실행됩니다. 온디맨드 요금을 기준으로 지속적인 서비스 요금이 발생하지 않도록 온디맨드 SageMaker 인스턴스를 사용하여 생성된 클러스터를 사용하지 않을 때는 삭제하는 것이 좋습니다. 이 자습서에서는 두 인스턴스 그룹으로 구성된 클러스터를 생성했습니다. 이 중 하나는 C5 인스턴스를 사용하므로 의 지침에 따라 클러스터를 삭제해야 합니다 SageMaker HyperPod 클러스터 삭제.
그러나 예약된 컴퓨팅 용량이 있는 클러스터를 생성한 경우 클러스터의 상태는 서비스 청구에 영향을 주지 않습니다.
이 자습서에 사용된 S3 버킷에서 수명 주기 스크립트를 정리하려면 클러스터 생성 중에 사용한 S3 버킷으로 이동하여 파일을 완전히 제거합니다.
클러스터에서 워크로드 실행을 테스트한 경우 데이터를 업로드했는지 또는 Amazon FSx for Lustre 및 Amazon Elastic File System과 같은 다른 S3 버킷 또는 파일 시스템 서비스에 아티팩트를 저장했는지 확인합니다. 요금이 발생하지 않도록 하려면 스토리지 또는 파일 시스템에서 모든 아티팩트와 데이터를 삭제합니다.