기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS ParallelCluster 2.x에서 3.x로 이동
다음 단원에서는 한 버전에서 다른 버전으로의 변경 사항을 포함하여 AWS ParallelCluster 2.x에서 3.x로 이동할 때 어떤 일이 발생하는지 설명합니다.
사용자 지정 부트스트랩 작업
AWS ParallelCluster 3을 사용하면 HeadNode 및 Scheduling / SlurmQueues 섹션에서 OnNodeStart
(pre_install
AWS ParallelCluster 버전 2) 및 OnNodeConfigured
(post_install
AWS ParallelCluster 버전 2) 파라미터를 사용하여 헤드 노드 및 컴퓨팅 노드에 대해 다양한 사용자 지정 부트스트랩 작업 스크립트를 지정할 수 있습니다. 자세한 내용은 사용자 지정 부트스트랩 작업 단원을 참조하십시오.
for AWS ParallelCluster 2용으로 개발된 사용자 지정 부트스트랩 작업 스크립트는 AWS ParallelCluster 3에서 사용하도록 조정해야 합니다.
-
헤드 노드와 컴퓨팅 노드를 구분하기 위해
/etc/parallelcluster/cfnconfig
및cfn_node_type
을 사용하지 않는 것이 좋습니다. 대신, HeadNode 및 Scheduling/SlurmQueues에 서로 다른 두 스크립트를 지정하는 것이 좋습니다. -
부트스트랩 액션 스크립트에서 사용하기 위해
/etc/parallelcluster/cfnconfig
를 계속 로드하려면cfn_node_type
의 값이 “MasterServer”에서 “HeadNode”로 변경되었다는 점에 유의하세요(포괄적인 언어 참조). -
On AWS ParallelCluster 2에서 부트스트랩 작업 스크립트에 대한 첫 번째 입력 인수는 스크립트의 S3 URL이며 예약되었습니다. AWS ParallelCluster 3에서는 구성에 구성된 인수만 스크립트에 전달됩니다.
주의
/etc/parallelcluster/cfnconfig
파일을 통해 제공된 내부 변수를 사용하는 것은 공식적으로 지원되지 않습니다. 이 파일은 향후 릴리스에서 제거될 수 있습니다.
AWS ParallelCluster 2.x 및 3.x는 다른 구성 파일 구문을 사용합니다.
AWS ParallelCluster 3.x 구성은 YAML 구문을 사용합니다. 전체 참조는 구성 파일에서 찾을 수 있습니다.
YAML 파일 형식을 요구하는 것 외에도 여러 구성 섹션, 설정 및 파라미터 값이 AWS ParallelCluster 3.x에서 업데이트되었습니다. 이 단원에서는 AWS ParallelCluster 구성의 주요 변경 사항과 각 버전에서 이러한 차이를 보여주는 side-by-side 예제를 살펴봅니다 AWS ParallelCluster.
하이퍼스레딩을 활성화하거나 비활성화한 다중 스케줄러 대기열 구성의 예
AWS ParallelCluster 2:
[cluster default] queue_settings = ht-enabled, ht-disabled ... [queue ht-enabled] compute_resource_settings = ht-enabled-i1 disable_hyperthreading = false [queue ht-disabled] compute_resource_settings = ht-disabled-i1 disable_hyperthreading = true [compute_resource ht-enabled-i1] instance_type = c5n.18xlarge [compute_resource ht-disabled-i1] instance_type = c5.xlarge
AWS ParallelCluster 3:
... Scheduling: Scheduler: slurm SlurmQueues: - Name: ht-enabled Networking: SubnetIds: -
compute_subnet_id
ComputeResources: - Name: ht-enabled-i1 DisableSimultaneousMultithreading: true InstanceType: c5n.18xlarge - Name: ht-disabled Networking: SubnetIds: -compute_subnet_id
ComputeResources: - Name: ht-disabled-i1 DisableSimultaneousMultithreading: false InstanceType: c5.xlarge
새로운 FSx for Lustre 파일 시스템 구성의 예
AWS ParallelCluster 2:
[cluster default] fsx_settings = fsx ... [fsx fsx] shared_dir = /shared-fsx storage_capacity = 1200 imported_file_chunk_size = 1024 import_path = s3://
amzn-s3-demo-bucket
export_path = s3://amzn-s3-demo-bucket
/export_dir weekly_maintenance_start_time = 3:02:30 deployment_type = PERSISTENT_1 data_compression_type = LZ4
AWS ParallelCluster 3:
... SharedStorage: - Name: fsx MountDir: /shared-fsx StorageType: FsxLustre FsxLustreSettings: StorageCapacity: 1200 ImportedFileChunkSize: 1024 ImportPath: s3://
amzn-s3-demo-bucket
ExportPath: s3://amzn-s3-demo-bucket
/export_dir WeeklyMaintenanceStartTime: "3:02:30" DeploymentType: PERSISTENT_1 DataCompressionType: LZ4
기존 FSx for Lustre 파일 시스템을 탑재하는 클러스터 구성의 예
AWS ParallelCluster 2:
[cluster default] fsx_settings = fsx ... [fsx fsx] shared_dir = /shared-fsx fsx_fs_id =
fsx_fs_id
AWS ParallelCluster 3:
... SharedStorage: - Name: fsx MountDir: /shared-fsx StorageType: FsxLustre FsxLustreSettings: FileSystemId:
fsx_fs_id
인텔 HPC 플랫폼 사양 소프트웨어 스택이 포함된 클러스터의 예
AWS ParallelCluster 2:
[cluster default] enable_intel_hpc_platform = true ...
AWS ParallelCluster 3:
... AdditionalPackages: IntelSoftware: IntelHpcPlatform: true
참고:
-
Intel HPC 플랫폼 사양 소프트웨어의 설치에는 해당 Intel 최종 사용자 사용권 계약
의 약관이 적용됩니다.
사용자 지정 IAM 구성의 예: 인스턴스 프로파일, 인스턴스 역할, 인스턴스에 대한 추가 정책, 클러스터와 관련된 Lambda 함수의 역할 등
AWS ParallelCluster 2:
[cluster default] additional_iam_policies = arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess,arn:aws:iam::aws:policy/AmazonDynamoDBReadOnlyAccess ec2_iam_role =
ec2_iam_role
iam_lambda_role =lambda_iam_role
...
AWS ParallelCluster 3:
... Iam: Roles: CustomLambdaResources:
lambda_iam_role
HeadNode: ... Iam: InstanceRole:ec2_iam_role
Scheduling: Scheduler: slurm SlurmQueues: - Name: queue1 ... Iam: InstanceProfile:iam_instance_profile
- Name: queue2 ... Iam: AdditionalIamPolicies: - Policy: arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess - Policy: arn:aws:iam::aws:policy/AmazonDynamoDBReadOnlyAccess
참고:
-
AWS ParallelCluster 2의 경우 IAM 설정은 클러스터의 모든 인스턴스에 적용되며와 함께 사용할
additional_iam_policies
수 없습니다ec2_iam_role
. -
For AWS ParallelCluster 3의 경우 헤드 및 컴퓨팅 노드에 대해 서로 다른 IAM 설정을 가질 수 있으며 각 컴퓨팅 대기열에 대해 서로 다른 IAM 설정을 지정할 수도 있습니다.
-
For AWS ParallelCluster 3에서는 IAM 인스턴스 프로파일을 IAM 역할의 대안으로 사용할 수 있습니다.
InstanceRole
또는InstanceProfile
를 함께 구성할AdditionalIamPolicies
수 없습니다.
사용자 지정 부트스트랩 작업의 예
AWS ParallelCluster 2:
[cluster default] s3_read_resource = arn:aws:s3:::
amzn-s3-demo-bucket
/* pre_install = s3://amzn-s3-demo-bucket
/scripts/pre_install.sh pre_install_args = 'R curl wget' post_install = s3://amzn-s3-demo-bucket
/scripts/post_install.sh post_install_args = "R curl wget" ...
AWS ParallelCluster 3:
... HeadNode: ... CustomActions: OnNodeStart: Script: s3://
amzn-s3-demo-bucket
/scripts/pre_install.sh Args: - R - curl - wget OnNodeConfigured: Script: s3://amzn-s3-demo-bucket
/scripts/post_install.sh Args: ['R', 'curl', 'wget'] Iam: S3Access: - BucketName:amzn-s3-demo-bucket
Scheduling: Scheduler: slurm SlurmQueues: - Name: queue1 ... CustomActions: OnNodeStart: Script: s3://amzn-s3-demo-bucket
/scripts/pre_install.sh Args: ['R', 'curl', 'wget'] OnNodeConfigured: Script: s3://amzn-s3-demo-bucket
/scripts/post_install.sh Args: ['R', 'curl', 'wget'] Iam: S3Access: - BucketName:amzn-s3-demo-bucket
S3 버킷 리소스에 대한 읽기 및 쓰기 액세스 권한이 있는 클러스터의 예
AWS ParallelCluster 2:
[cluster default] s3_read_resource = arn:aws:s3:::
amzn-s3-demo-bucket
/read_only/* s3_read_write_resource = arn:aws:s3:::amzn-s3-demo-bucket
/read_and_write/* ...
AWS ParallelCluster 3:
... HeadNode: ... Iam: S3Access: - BucketName:
amzn-s3-demo-bucket
KeyName: read_only/ EnableWriteAccess: False - BucketName:amzn-s3-demo-bucket
KeyName: read_and_write/ EnableWriteAccess: True Scheduling: Scheduler: slurm SlurmQueues: - Name: queue1 ... Iam: S3Access: - BucketName:amzn-s3-demo-bucket
KeyName: read_only/ EnableWriteAccess: False - BucketName:amzn-s3-demo-bucket
KeyName: read_and_write/ EnableWriteAccess: True
포괄적인 언어
AWS ParallelCluster 3은 "마스터"가 AWS ParallelCluster 2에서 사용된 위치에서 "헤드 노드"라는 단어를 사용합니다. 다음 내용이 포함됩니다:
-
AWS Batch 작업 환경에서 내보낸 변수가에서
MASTER_IP
로 변경되었습니다PCLUSTER_HEAD_NODE_IP
. -
모든 AWS CloudFormation 출력이에서
Master*
로 변경되었습니다HeadNode*
. -
모든 NodeType 및 태그가
Master
에서HeadNode
로 변경되었습니다.
스케줄러 지원
AWS ParallelCluster 3.x는 Son of Grid Engine(SGE) 및 Torque 스케줄러를 지원하지 않습니다.
AWS Batch 명령 awsbhosts
, awsbkill
, awsbout
, awsbstat
, 및 awsbqueues
는 별도의 aws-parallelcluster-awsbatch-cli
PyPI 패키지로 배포awsbsub
됩니다. 헤드 노드에는 AWS ParallelCluster 에 의해 이 패키지가 설치됩니다. 클러스터의 헤드 노드에서 이러한 AWS Batch 명령을 계속 사용할 수 있습니다. 그러나 헤드 노드가 아닌 다른 위치에서 AWS Batch
명령을 사용하려면 먼저 aws-parallelcluster-awsbatch-cli
PyPI 패키지를 설치해야 합니다.
AWS ParallelCluster CLI
AWS ParallelCluster 명령줄 인터페이스(CLI)가 변경되었습니다. 새 구문은 AWS ParallelCluster CLI 명령에 설명되어 있습니다. CLI의 출력은 JSON
새 클러스터 구성
pcluster configure
명령에는 AWS ParallelCluster 2와 비교하여 in AWS ParallelCluster 3의 다양한 파라미터가 포함됩니다. 자세한 내용은 pcluster configure 단원을 참조하십시오.
또한 구성 파일 구문이 AWS ParallelCluster 2에서 변경되었습니다. 클러스터 구성 설정에 대한 전체 참조는 클러스터 구성 파일를 참조하세요.
새 클러스터 생성
AWS ParallelCluster 2의 pcluster create
명령이 pcluster create-cluster 명령으로 대체되었습니다.
-nw
옵션 없이 AWS ParallelCluster 2.x의 기본 동작은 클러스터 생성 이벤트를 기다리는 반면 AWS ParallelCluster 3.x 명령은 즉시를 반환합니다. pcluster describe-cluster를 사용하여 클러스터 생성 진행 상황을 모니터링할 수 있습니다.
An AWS ParallelCluster 3 구성 파일에는 단일 클러스터 정의가 포함되어 있으므로 -t
파라미터가 더 이상 필요하지 않습니다.
다음은 구성 파일의 예입니다.
# AWS ParallelCluster v2
$
pcluster create \ -r
REGION
\ -cV2_CONFIG_FILE
\ -nw \ -tCLUSTER_TEMPLATE
\CLUSTER_NAME
# AWS ParallelCluster v3
$
pcluster create-cluster \ --region
REGION
\ --cluster-configurationV3_CONFIG_FILE
\ --cluster-nameCLUSTER_NAME
클러스터 나열
pcluster list
AWS ParallelCluster 2.x 명령을 pcluster list-clusters 명령으로 바꿔야 합니다.
참고: 2.x 버전으로 생성된 클러스터를 나열하려면 AWS ParallelCluster v2 CLI가 필요합니다 AWS ParallelCluster. 가상 환경을 사용하는 AWS ParallelCluster 의 여러 버전을 설치하는 방법은 AWS ParallelCluster 가상 환경에 설치(권장)을 참조하세요.
# AWS ParallelCluster v2
$
pcluster list -r
REGION
# AWS ParallelCluster v3
$
pcluster list-clusters --region
REGION
클러스터 시작 및 중지
pcluster start
및 pcluster stop
AWS ParallelCluster 2.x 명령을 pcluster update-compute-fleet 명령으로 바꿔야 합니다.
컴퓨팅 플릿 시작:
# AWS ParallelCluster v2
$
pcluster start \ -r
REGION
\CLUSTER_NAME
# AWS ParallelCluster v3 - Slurm fleets
$
pcluster update-compute-fleet \ --region
REGION
\ --cluster-nameCLUSTER_NAME
\ --statusSTART_REQUESTED
# AWS ParallelCluster v3 - AWS Batch fleets
$
pcluster update-compute-fleet \ --region
REGION
\ --cluster-nameCLUSTER_NAME
\ --statusENABLED
컴퓨팅 플릿 중지:
# AWS ParallelCluster v2
$
pcluster stop \ -r
REGION
\CLUSTER_NAME
# AWS ParallelCluster v3 - Slurm fleets
$
pcluster update-compute-fleet \ --region
REGION
\ --cluster-nameCLUSTER_NAME
\ --statusSTOP_REQUESTED
# AWS ParallelCluster v3 - AWS Batch fleets
$
pcluster update-compute-fleet \ --region
REGION
\ --cluster-nameCLUSTER_NAME
\ --statusDISABLED
클러스터에 연결
pcluster ssh
AWS ParallelCluster 2.x 명령의 파라미터 이름은 AWS ParallelCluster 3.x에서 다릅니다. pcluster ssh을 참조하세요.
클러스터에 연결:
# AWS ParallelCluster v2
$
pcluster ssh \ -r
REGION
\CLUSTER_NAME
\ -i~/.ssh/id_rsa
# AWS ParallelCluster v3
$
pcluster ssh \ --region
REGION
\ --cluster-nameCLUSTER_NAME
\ -i~/.ssh/id_rsa
IMDS 구성 업데이트
버전 3.0.0부터는 기본적으로 헤드 노드의 IMDS(및 인스턴스 프로필 자격 증명)에 대한 액세스를 수퍼유저의 하위 집합으로 제한하는 지원을 AWS ParallelCluster 도입했습니다. 자세한 내용은 Imds 속성 단원을 참조하십시오.